6.5 ISO 9001


6.2 Personal Software Process SM

The Personal Software Process SM is a training curriculum. It teaches software engineers basic principles in software project and quality management. Beyond the classroom, the Personal Software Process SM consists of a basic software life cycle with five major stages. The five stages are planning, high-level design, high-level design review, development, and postmortem. Planning consists of developing program requirements, size estimates, and a cyclic development strategy and includes resource estimates, task and schedule plans, and defect estimates. High-level design consists of producing external specifications, module designs, prototypes , and a development strategy and includes documentation and issue tracking logs. High-level design review consists of verifying design coverage, state machines, logic, design consistency, and reuse and includes a development strategy as well as fixing defects. Development consists of producing module designs, reviewing designs, coding, and reviewing code and includes compiling, testing, and assessing the results. Postmortem consists of analyzing defects injected, defects removed, size, and time. Software engineers exhibit a productivity of 25 lines of code. This is for every hour spent in planning, high-level design, high-level design review, development, and postmortem. It's a simple equation that simplifies to lines of code divided by 25. Figure 20 illustrates the cost model for the Personal Software Process SM .

click to expand
Figure 20: Cost Model for Personal Software Process SM

If it takes a software engineer 10 hours to go through all six stages, 250 lines of code result. If a software engineer produces 2,500 lines of code, it requires 100 hours to perform all six stages including coding. A 10,000 line of code system requires only 400 hours of planning, high-level design, high-level design review, development, and postmortem. The Personal Software Process SM training curriculum consists of approximately 10 computer programming exercises. It is surprising to note that the productivity of individual software engineers does not seem to change across the 10 exercises, at least not the way productivity is measured in the classroom.

It is important to note that many consider the average productivity rate for the software industry to be one line of code per hour. Therefore, Personal Software Process SM students are performing 25 times better than industry average. This includes the additional overhead of planning, design, development, reviews, and measurement. The Personal Software Process SM shatters stereotypes associated with how long project and quality management require. That is, project and quality management can be performed 25 times faster than not using project and quality management at all.

As for the matter of how productivity is measured, productivity does improve with the Personal Software Process SM . The Personal Software Process SM results in near zero defects. That means total life cycle costs are reduced to the effort associated with development. Let's translate that into plain English. A 10,000-line-of-code system requires 105,100 hours to develop and maintain. This is true if the Software Inspection Process or software testing is not performed. That's a productivity of a single line of code every 9.5 hours. The Personal Software Process SM yields a productivity of 25 lines of code per hour. That's a productivity increase of 263 times using the Personal Software Process SM . However, it is questionable whether a productivity of 25 lines of code per hour is sustainable on large projects. Even though productivity using the Team Software Process SM is four times lower than the Personal Software Process SM , it is still very impressive.




ROI of Software Process Improvement. Metrics for Project Managers and Software Engineers
ROI of Software Process Improvement: Metrics for Project Managers and Software Engineers
ISBN: 193215924X
EAN: 2147483647
Year: 2004
Pages: 145

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net