Deriving change-prone thresholds from software evolution using ROC curves

Raed Shatnawi
DOI: https://doi.org/10.1007/s11227-024-06366-5
IF: 3.3
2024-08-22
The Journal of Supercomputing
Abstract:Software evolution measurement is required to control software costs and aid in the development of cost-effective software. Early detection of potential changes gives developers time to plan for change. Simple techniques to detect the change-proneness of classes are required such as thresholds, particularly in incremental software development. In this study, we propose to derive thresholds to detect the change-proneness of classes using ROC analysis. The analysis is conducted on the evolution of five systems for six object-oriented metrics, Chidamber and Kemerer. Thresholds are considered in software evolution in three intervals: 6 months, 12 months, and 3 years. Thresholds are reported for four metrics that can predict change-proneness. Similar thresholds are reported at 6 and 12 months. For the same metrics, fault-proneness thresholds are identified, and the results are compared to their counterparts in change-proneness thresholds. The change-proneness thresholds derived are smaller and identify more classes for further investigation.
computer science, theory & methods,engineering, electrical & electronic, hardware & architecture
What problem does this paper attempt to address?