Machine learning based methods for software fault prediction: A survey

被引:56
|
作者
Pandey, Sushant Kumar [1 ]
Mishra, Ravi Bhushan [1 ]
Tripathi, Anil Kumar [1 ]
机构
[1] Indian Inst Technol BHU, Dept Comp Sci & Engn, Varanasi, Uttar Pradesh, India
关键词
Machine learning; Fault proneness; Statistical techniques; Fault prediction; Systematic literature review; DEFECT PREDICTION; EMPIRICAL-ANALYSIS; FEATURE-SELECTION; MODEL; QUALITY; METRICS; CLASSIFICATION; PRONENESS; FRAMEWORK; REGRESSION;
D O I
10.1016/j.eswa.2021.114595
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Several prediction approaches are contained in the arena of software engineering such as prediction of effort, security, quality, fault, cost, and re-usability. All these prediction approaches are still in the rudimentary phase. Experiments and research are conducting to build a robust model. Software Fault Prediction (SFP) is the process to develop the model which can be utilized by software practitioners to detect faulty classes/module before the testing phase. Prediction of defective modules before the testing phase will help the software development team leader to allocate resources more optimally and it reduces the testing effort. In this article, we present a Systematic Literature Review (SLR) of various studies from 1990 to June 2019 towards applying machine learning and statistical method over software fault prediction. We have cited 208 research articles, in which we studied 154 relevant articles. We investigated the competence of machine learning in existing datasets and research projects. To the best of our knowledge, the existing SLR considered only a few parameters over SFP?s performance, and they partially examined the various threats and challenges of SFP techniques. In this article, we aggregated those parameters and analyzed them accordingly, and we also illustrate the different challenges in the SFP domain. We also compared the performance between machine learning and statistical techniques based on SFP models. Our empirical study and analysis demonstrate that the prediction ability of machine learning techniques for classifying class/module as fault/non-fault prone is better than classical statistical models. The performance of machine learning-based SFP methods over fault susceptibility is better than conventional statistical purposes. The empirical evidence of our survey reports that the machine learning techniques have the capability, which can be used to identify fault proneness, and able to form well-generalized result. We have also investigated a few challenges in fault prediction discipline, i.e., quality of data, over-fitting of models, and class imbalance problem. We have also summarized 154 articles in a tabular form for quick identification.
引用
收藏
页数:35
相关论文
共 50 条
  • [1] Comparative study of three machine learning methods for software fault prediction
    Wang, Qi
    Zhu, Jie
    Yu, Bo
    Journal of Shanghai Jiaotong University (Science), 2005, 10 E (02) : 117 - 121
  • [2] A Comparative Study of Three Machine Learning Methods for Software Fault Prediction
    王琪
    朱杰
    于波
    Journal of Shanghai Jiaotong University(Science), 2005, (02) : 117 - 121
  • [3] Crime Prediction Methods Based on Machine Learning: A Survey
    Yin, Junxiang
    CMC-COMPUTERS MATERIALS & CONTINUA, 2023, 74 (02): : 4601 - 4629
  • [4] Applying Machine Learning to Software Fault Prediction
    Wojcicki, Bartlomiej
    Dabrowski, Robert
    E-INFORMATICA SOFTWARE ENGINEERING JOURNAL, 2018, 12 (01) : 199 - 216
  • [5] Fault Prediction Using Statistical and Machine Learning Methods for Improving Software Quality
    Malhotra, Ruchika
    Jain, Ankita
    JOURNAL OF INFORMATION PROCESSING SYSTEMS, 2012, 8 (02): : 241 - 262
  • [6] Survey of Software Vulnerability Mining Methods Based on Machine Learning
    Li Y.
    Huang C.-L.
    Wang Z.-F.
    Yuan L.
    Wang X.-C.
    Ruan Jian Xue Bao/Journal of Software, 2020, 31 (07): : 2040 - 2061
  • [7] The State of Machine Learning Methodology in Software Fault Prediction
    Hall, Tracy
    Bowes, David
    2012 11TH INTERNATIONAL CONFERENCE ON MACHINE LEARNING AND APPLICATIONS (ICMLA 2012), VOL 2, 2012, : 314 - 319
  • [8] Machine learning based software fault prediction utilizing source code metrics
    Bhandari, Guru Prasad
    Gupta, Ratneshwer
    PROCEEDINGS ON 2018 IEEE 3RD INTERNATIONAL CONFERENCE ON COMPUTING, COMMUNICATION AND SECURITY (ICCCS), 2018, : 40 - 45
  • [9] Prediction of software quality with Machine Learning-Based ensemble methods
    Ceran A.A.
    Ar Y.
    Tanrıöver Ö.Ö.
    Seyrek Ceran S.
    Materials Today: Proceedings, 2023, 81 : 18 - 25
  • [10] A survey on machine learning methods for churn prediction
    Louis Geiler
    Séverine Affeldt
    Mohamed Nadif
    International Journal of Data Science and Analytics, 2022, 14 : 217 - 242