Empirical Evaluation of Coupling Metrics in Software Fault Prediction

M. Rizwan, A. Nadeem, M. Sindhu
{"title":"Empirical Evaluation of Coupling Metrics in Software Fault Prediction","authors":"M. Rizwan, A. Nadeem, M. Sindhu","doi":"10.1109/IBCAST47879.2020.9044489","DOIUrl":null,"url":null,"abstract":"Software Fault Prediction (SFP) techniques are commonly used to determine the fault proneness of software modules to complement the development and testing process. In SFP, fault prediction is based on software metrics that reflect any aspect of the software, where coupling is one of them. Software coupling is one such metric, which is a measure of the interdependency of software modules. Coupling induces complexity in the coupled module and makes it difficult to comprehend. Eventually, more coupled modules are likely to be faultier. This spurs a need to evaluate the impact of coupling exclusively, on fault proneness. Since, coupling by inheritance is harmless, as it promotes reusability, so coupling through inheritance is not considered. We evaluated seven coupling metrics on 87 different publicly available datasets. After pre-processing, selected datasets are split with all possible coupling metrics. Resulting 474 split datasets are used for the experiments. These datasets have only coupling metrics and nominal-binary class labels. Model building and validation are done for Support Vector Machine. Results of entropy-loss shows that coupling metrics are good predictors of faults in software. Furthermore, {Coupling Between Objects, Design Complexity, Fan-in} outperform the rest of the 30 feature set. Finally, coupling metrics are ranked by keeping in view their position achieved and the number of accompanying metrics. This declares Efferent Coupling as the best coupling metric with respect to the other six coupling metrics in 474 datasets. The paper concludes the viability of coupling metrics in software fault prediction. Evaluating the absolute impact of coupling in SFP and then the relative ranking of coupling metrics is the significance of this paper.","PeriodicalId":187761,"journal":{"name":"2020 17th International Bhurban Conference on Applied Sciences and Technology (IBCAST)","volume":"165 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 17th International Bhurban Conference on Applied Sciences and Technology (IBCAST)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IBCAST47879.2020.9044489","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

Abstract

Software Fault Prediction (SFP) techniques are commonly used to determine the fault proneness of software modules to complement the development and testing process. In SFP, fault prediction is based on software metrics that reflect any aspect of the software, where coupling is one of them. Software coupling is one such metric, which is a measure of the interdependency of software modules. Coupling induces complexity in the coupled module and makes it difficult to comprehend. Eventually, more coupled modules are likely to be faultier. This spurs a need to evaluate the impact of coupling exclusively, on fault proneness. Since, coupling by inheritance is harmless, as it promotes reusability, so coupling through inheritance is not considered. We evaluated seven coupling metrics on 87 different publicly available datasets. After pre-processing, selected datasets are split with all possible coupling metrics. Resulting 474 split datasets are used for the experiments. These datasets have only coupling metrics and nominal-binary class labels. Model building and validation are done for Support Vector Machine. Results of entropy-loss shows that coupling metrics are good predictors of faults in software. Furthermore, {Coupling Between Objects, Design Complexity, Fan-in} outperform the rest of the 30 feature set. Finally, coupling metrics are ranked by keeping in view their position achieved and the number of accompanying metrics. This declares Efferent Coupling as the best coupling metric with respect to the other six coupling metrics in 474 datasets. The paper concludes the viability of coupling metrics in software fault prediction. Evaluating the absolute impact of coupling in SFP and then the relative ranking of coupling metrics is the significance of this paper.
耦合度量在软件故障预测中的实证评价
软件故障预测(SFP)技术通常用于确定软件模块的故障倾向,以补充开发和测试过程。在SFP中,故障预测基于反映软件任何方面的软件度量,其中耦合是其中之一。软件耦合就是这样一种度量,它是对软件模块相互依赖性的度量。耦合导致了耦合模块的复杂性,使其难以理解。最终,更多耦合模块可能会出现更严重的故障。这促使我们需要专门评估耦合对故障倾向性的影响。由于继承的耦合是无害的,因为它促进了可重用性,因此不考虑继承的耦合。我们在87个不同的公开数据集上评估了7个耦合指标。预处理后,选择的数据集被分割为所有可能的耦合度量。得到的474个分割数据集用于实验。这些数据集只有耦合度量和名义二进制类标签。对支持向量机进行了模型构建和验证。熵损失结果表明,耦合度量是软件故障的良好预测指标。此外,{对象之间的耦合,设计复杂性,扇入}优于其他30个特征集。最后,通过观察它们所达到的位置和伴随度量的数量来对耦合度量进行排序。这声明了相对于474个数据集中的其他六个耦合度量,传出耦合是最好的耦合度量。本文总结了耦合度量在软件故障预测中的可行性。评估SFP中耦合的绝对影响,然后对耦合指标进行相对排序是本文的意义所在。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书