The usefulness of software metric thresholds for detection of bad smells and fault prediction

被引:16
|
作者
Bigonha, Mariza A. S. [1 ]
Ferreira, Kecia [2 ]
Souza, Priscila [1 ]
Sousa, Bruno [1 ]
Januario, Marcela [2 ]
Lima, Daniele [2 ]
机构
[1] Univ Fed Minas Gerais, Comp Sci Dept, Belo Horizonte, MG, Brazil
[2] CEFET MG, Dept Comp, Belo Horizonte, MG, Brazil
关键词
Software metrics; Software quality; Thresholds; Detection strategies; Bad smell; Fault prediction; VALIDATION;
D O I
10.1016/j.infsof.2019.08.005
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context Software metrics may be an effective tool to assess the quality of software, but to guide their use it is important to define their thresholds. Bad smells and fault also impact the quality of software. Extracting metrics from software systems is relatively low cost since there are tools widely used for this purpose, which makes feasible applying software metrics to identify bad smells and to predict faults. Objective: To inspect whether thresholds of object-oriented metrics may be used to aid bad smells detection and fault predictions. Method: To direct this research, we have defined three research questions (RQ), two related to identification of bad smells, and one for identifying fault in software systems. To answer these RQs, we have proposed detection strategies for the bad smells: Large Class, Long Method, Data Class, Feature Envy, and Refused Bequest, based on metrics and their thresholds. To assess the quality of the derived thresholds, we have made two studies. The first one was conducted to evaluate their efficacy on detecting these bad smells on 12 systems. A second study was conducted to investigate for each of the class level software metrics: DIT, LCOM, NOF, NOM, NORM, NSC, NSF, NSM, SIX, and WMC, if the ranges of values determined by thresholds are useful to identify fault in software systems. Results: Both studies confirm that metric thresholds may support the prediction of faults in software and are significantly and effective in the detection of bad smells. Conclusion: The results of this work suggest practical applications of metric thresholds to identify bad smells and predict faults and hence, support software quality assurance activities.Their use may help developers to focus their efforts on classes that tend to fail, thereby minimizing the occurrence of future problems.
引用
收藏
页码:79 / 92
页数:14
相关论文
共 50 条
  • [21] A Framework for Software Defect Prediction and Metric Selection
    Huda, Shamsul
    Alyahya, Sultan
    Ali, Mohsin
    Ahmad, Shafiq
    Abawajy, Jemal
    Al-Dossari, Hmood
    Yearwood, John
    IEEE ACCESS, 2018, 6 : 2844 - 2858
  • [22] A Hybrid Approach for Software Fault Prediction
    Khoshgoftaar, Taghi M.
    Bullard, Lofton A.
    Gao, Kehan
    Wang, Huanjing
    16TH ISSAT INTERNATIONAL CONFERENCE ON RELIABILITY AND QUALITY IN DESIGN, 2010, : 210 - +
  • [23] A study on software fault prediction techniques
    Santosh S. Rathore
    Sandeep Kumar
    Artificial Intelligence Review, 2019, 51 : 255 - 327
  • [24] A Taxonomy of Metrics for Software Fault Prediction
    Caulo, Maria
    ESEC/FSE'2019: PROCEEDINGS OF THE 2019 27TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2019, : 1144 - 1147
  • [25] A study on software fault prediction techniques
    Rathore, Santosh S.
    Kumar, Sandeep
    ARTIFICIAL INTELLIGENCE REVIEW, 2019, 51 (02) : 255 - 327
  • [26] Classifier Ensembles in Software Fault Prediction
    Ozcift, Akin
    ICECCO'12: 9TH INTERNATIONAL CONFERENCE ON ELECTRONICS, COMPUTER AND COMPUTATION, 2012, : 288 - 291
  • [27] Software Fault Proneness Prediction Using Support Vector Machines
    Singh, Yogesh
    Kaur, Arvinder
    Malhotra, Ruchika
    WORLD CONGRESS ON ENGINEERING 2009, VOLS I AND II, 2009, : 240 - 245
  • [28] A comprehensive empirical study of count models for software fault prediction
    Gao, Kehan
    Khoshgoftaar, Taghi M.
    IEEE TRANSACTIONS ON RELIABILITY, 2007, 56 (02) : 223 - 236
  • [29] Causally Remove Negative Confound Effects of Size Metric for Software Defect Prediction
    Li, Chenlong
    Yuan, Yuyu
    Yang, Jincui
    APPLIED SCIENCES-BASEL, 2022, 12 (03):
  • [30] Mining software repositories for comprehensible software fault prediction models
    Vandecruys, Olivier
    Martens, David
    Baesens, Bart
    Mues, Christophe
    De Backer, Manu
    Haesen, Raf
    JOURNAL OF SYSTEMS AND SOFTWARE, 2008, 81 (05) : 823 - 839