Personal Software Process

From Wikipedia, the free encyclopedia

The Personal Software Process is a set of guidelines and best practices to incorporate discipline in the software development process. Designed by Software Engineering Institute at Carnegie Mellon, PSP has its roots in Capability Maturity Model (CMM). "Personal Software Process" and "PSP" are registered service marks of the Carnegie Mellon University [1].

The PSP philosophy is largely based on reviews at every stage of development cycle.

Before code is written, an outline of the desired behaviour is written. That description is 'implemented' in pseudo code, and then each line of pseudo code is then implemented in the target language.

Only when the entire unit of code is completely written, analysed and reviewed, is it compiled and run. It is expected to compile and run first time. If it does not, every error, including syntax errors, needs a root cause analysis. The philosophy is that by manually examining the code in such detail to exclude all detectable errors, a better design will be produced than would be produced by a code-compile-fix cycle.

[edit] The Personal Software Process consists of seven Competency Areas:
  • Competency Area 1: Foundational Knowledge
  • Competency Area 2: Basic PSP Concepts
  • Competency Area 3: Size Measuring and Estimating
  • Competency Area 4: Making and Tracking Project Plans
  • Competency Area 5: Planning and Tracking Software Quality
  • Competency Area 6: Software Design
  • Competency Area 7: Process Extensions

[edit] External links and other resources

In other languages