An Experiment Measuring the Effects of Personal Software Process (PSP) Training

Author(s): Lutz Prechelt, Barbara Unger
Venue: Software Engineering, IEEE Transactions on Software Engineering
Date: 2001


This study does an analytical comparison between Masters level students who have received PSP training against a control group of students who have received some other form of software development training. The study first investigates the accuracy in time estimations and finds that both groups misestimate the time needed for the program by 48%. The results of the study also indicate that programs produced by the PSP group while not more reliable for standard types of input were slightly more reliable for edge-case inputs. The study also investigates productivity and finds that on average it takes members of the PSP group longer to complete the programming tasks but that the productivity in lines of code per hour does not vary significantly between the two groups. The programs written in the PSP group are larger partly because they do error checking which results in the higher reliability as sited above. Finally, the study shows that on many of the measurements recorded, the variability between individuals in the PSP group is much smaller than the variability among the Non-PSP group.

This study is significant because it provides data that contradicts two claims often made by proponents of PSP: that PSP significantly improves reliability of software and that PSP enables developers to better estimate the time needed to complete a task. On the other hand, the study does seem to indicate that PSP training can reduce the variability in productivity and reliability among a group of developers. It should be noted that the authors found evidence of the PSP process being followed for only 25% of the members in the PSP group. It is unclear how the results from the study could change had the students in the PSP group been required to use the process they had been taught.