Which Process Metrics Are Significantly Important to Change of Defects in Evolving Projects: an Empirical Study.

Li Jiang,Shujuan Jiang,Lina Gong,Yue Dong,Qiao Yu
DOI: https://doi.org/10.1109/access.2020.2994528
IF: 3.9
2020-01-01
IEEE Access
Abstract:Process metrics can reflect the software development process and the code changes which are the main causes of defects. So, recently, the researches have put more emphasis on process metrics in the field of software defect prediction. For evolving projects, it is more meaningful to study whether the software module introduces or eliminates defects or not, not whether the software module is defective or defect-free. However, no such work is available in the literature focusing on the change of defect state. Discovering the factors that influence the change of defect state in the process of software development can help us to understand the causes of software defects and improve the quality of subsequent software versions. Therefore, this paper presents an extensive empirical study on which process metrics are significantly important to change of defects in evolving projects. Five process metrics of 37 versions in 12 software projects are collected. We not only analyze the class correlation values and the classification performance values among five process metrics, but also perform statistical analysis to verify whether the experimental results are of practical value. The experimental results indicate that Number of Distinct Committers plays a significantly important role in the change of defect state, especially for elimination of defects, and Number of Revisions is the second, whereas Degree of Code Modification is the last. In addition, Average Number of Modified Lines is superior to Number of Modified Lines. Based on the experimental results, some suggestions for software development and software defect prediction are also discussed.
What problem does this paper attempt to address?