: Xiaoming Zhong, Nazim H. Madhavji, Khaled El EmamVenue
: IEEE Software, 17 (6)Date
This study investigates how particular measurements recorded in the PSP process affect the specific attributes of software quality. The data is collected by 53 undergraduate students in the Personal Software Engineering course at McGill University. Base on analysis of the collected data and using quadratic regressions the paper presents several findings.
First, there exists a strong relationship between the number of defects removed per thousand lines of code developed (Dds) and the percentage of defects removed before the first compile (Yield). When Dds decreases this is an indication of improving quality. The analysis reveals that both low and high Yield values are related to low Dds. This indicates that when high Yield is associated with low Dds, code quality is improving as defects are detected earlier. On the other hand, low Dds with low Yield could indicate low defect detection and hence low quality software. The study finds that Dds reaches it maximum with a Yield of 49%.
The study also reveals that an optimal number of defects removed per hour (Drr) can be achieved by having a time spent in design review and code review to time spent in compile and test (A/FR) ratio of 190%. The authors suggest that A/FR may be helpful in allowing developers to adjust their behavior to achieve high defect removal rates. Finally, the study shows a dependent relation between LOC/hour and both A/FR and Yield where the LOC/hour increases as both values are independently increased. This shows that individual design and code reviews increase productivity.
This paper’s strength is in the use of formal statistical methods for analyzing the data and the comparison made between the different measurements that are recorded and calculated when using PSP. These results are useful in understanding how to develop experiments that test specific attributes of PSP and for engineers who are analyzing their individual information. The weakness of this paper is that the collection of the data is uncontrolled and the sample size is relatively small.