Modeling distributed software defect removal effectiveness in the presence of code churn

Two types of discrete defect removal models that consider the dynamics of code churn behavior during software testing phases under distributed software development environment are proposed. The first model is based on a sequential debugging process, while the second model is based on an iterative debugging process during each testing phase. The mathematical relationship between the number of defects detected during a testing phase and the total estimated remaining defects at the end of the same testing phase for both models are elaborated in detail. The defect detection ratio is identified to have the greatest contribution to the variance of the estimated number of remaining defects based on the sensitivity analysis using Monte-Carlo simulation. Using the proposed models, we quantitatively show how to estimate the number of defects by varying the defect detection ratio, defect correction ratio, the percentage of added code, and the percentage of deleted code.

[1]  Sebastian G. Elbaum,et al.  Code churn: a measure for estimating the impact of code change , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[2]  Stephen N. Zilles,et al.  Prediction and Management of Program Quality , 1979, ICSE.

[3]  Hareton K. N. Leung Improving defect removal effectiveness for software development , 1998, Proceedings of the Second Euromicro Conference on Software Maintenance and Reengineering.

[4]  John C. Munson,et al.  Software evolution: code delta and code churn , 2000, J. Syst. Softw..

[5]  Stephen H. Kan Modeling and Software Development Quality , 1991, IBM Syst. J..

[6]  Tze-Jie Yu,et al.  An Analysis of Several Software Defect Models , 1988, IEEE Trans. Software Eng..

[7]  Nachimuthu Karunanithi A neural network approach for software reliability growth modeling in the presence of code churn , 1993, Proceedings of 1993 IEEE International Symposium on Software Reliability Engineering.