ABSTRACT

Each programmer has personal goals in respect of personal efficiency and excellence in their work. We need to improve our capabilities with every completed program. While the improvement is not noticeable immediately, it will become evident over a period of time. All professional software development organizations have a documented and continuously improved process for all software development activities. Similarly, every professional programmer ought to have a personal process to achieve continuous improvement. To achieve this objective, we need to monitor our productivity and quality by computing those metrics and evaluating the trend. Productivity is measured in the number of lines of code produced per work day. We can measure this metric for the initial productivity and also the final productivity. Initial productivity is the number of the lines of code divided by the effort spent in coding and self-testing before submitting the program for testing by the quality assurance people. The final productivity is computed by dividing the final number of lines of code delivered per day after testing by the quality assurance people and all the effort spent, including the initial coding effort and the effort spent in rectifying the defects uncovered by the quality assurance people. Quality is measure by the defect density computed by dividing the lines of code by the defects uncovered. It will be specified as so many defects per 1000 lines of code or as defined by the organizational standards. To be able to compute these metrics periodically so that a trend can be plotted and assessed, we need to collect data. A sample work register is given in the chapter to record the details of all the work carried out by us so that we can use the data for computing the metrics. All these aspects are discussed in this chapter.