{"title":"利用 ROC 曲线从软件进化中得出易变阈值","authors":"Raed Shatnawi","doi":"10.1007/s11227-024-06366-5","DOIUrl":null,"url":null,"abstract":"<p>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.</p>","PeriodicalId":501596,"journal":{"name":"The Journal of Supercomputing","volume":"1 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Deriving change-prone thresholds from software evolution using ROC curves\",\"authors\":\"Raed Shatnawi\",\"doi\":\"10.1007/s11227-024-06366-5\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>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.</p>\",\"PeriodicalId\":501596,\"journal\":{\"name\":\"The Journal of Supercomputing\",\"volume\":\"1 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-07-20\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"The Journal of Supercomputing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1007/s11227-024-06366-5\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"The Journal of Supercomputing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1007/s11227-024-06366-5","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Deriving change-prone thresholds from software evolution using ROC curves
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.