Software fault prediction based on change metrics using hybrid algorithms: An empirical study

Abstract Quality of the developed software depends on its bug free operation. Although bugs can be introduced in any phase of the software development life-cycle but their identification in earlier phase can lead to reduce the allocation cost of testing and maintenance resources. Software defect prediction studies advocates the use of defect prediction models for identification of bugs prior to the release of the software. Use of bug prediction models can help to reduce the cost and efforts required to develop software. Defect prediction models use the historical data obtained from software projects for training the models and test the model on future release of the software. In the present work, software change metrics have been used for defect prediction. Performances of good machine learning and hybrid algorithms are accessed in prediction of defect with the change metrics. Android project has been used for experimental purpose. Git repository has been used to extract the v4–v5, v2–v5 of android for defect prediction. Obtained results showed that GFS-logitboost-c has best defect prediction capability.

[1]  Luciano Sánchez,et al.  Induction of descriptive fuzzy classifiers with the Logitboost algorithm , 2006, Soft Comput..

[2]  C. Manjula,et al.  Hybrid Approach for Software Defect Prediction Using Machine Learning with Optimization Technique , 2018 .

[3]  Deepak Sharma,et al.  A comparative analysis of soft computing techniques in software fault prediction model development , 2018, International Journal of Information Technology.

[4]  Yuming Zhou,et al.  On the ability of complexity metrics to predict fault-prone classes in object-oriented systems , 2010, J. Syst. Softw..

[5]  Yi Zhang,et al.  Classifying Software Changes: Clean or Buggy? , 2008, IEEE Transactions on Software Engineering.

[6]  Arvinder Kaur,et al.  An empirical evaluation of classification algorithms for fault prediction in open source projects , 2018, J. King Saud Univ. Comput. Inf. Sci..

[7]  Wasiur Rhmann,et al.  Cross project defect prediction using hybrid search based algorithms , 2018, International Journal of Information Technology.

[8]  Sebastian Raschka,et al.  Python Machine Learning , 2015 .

[9]  Shari Lawrence Pfleeger,et al.  Software Metrics : A Rigorous and Practical Approach , 1998 .

[10]  María José del Jesús,et al.  Induction of fuzzy-rule-based classifiers with evolutionary boosting algorithms , 2004, IEEE Transactions on Fuzzy Systems.

[11]  Arvinder Kaur,et al.  Empirical Evaluation of Machine Learning Algorithms for Fault Prediction , 2014 .

[12]  Kuldeep Kumar,et al.  Empirical analysis of change metrics for software fault prediction , 2018, Comput. Electr. Eng..

[13]  Wasiur Rhmann,et al.  Application of Hybrid Search Based Algorithms for Software Defect Prediction , 2018 .

[14]  Xin Yao,et al.  A Learning-to-Rank Approach to Software Defect Prediction , 2015, IEEE Transactions on Reliability.

[15]  Iker Gondra,et al.  Applying machine learning to software fault-proneness prediction , 2008, J. Syst. Softw..

[16]  Ebru Akcapinar Sezer,et al.  A comparison of some soft computing methods for software fault prediction , 2015, Expert Syst. Appl..

[17]  Sinno Jialin Pan,et al.  Transfer defect learning , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[18]  Ruchika Malhotra,et al.  An empirical framework for defect prediction using machine learning techniques with Android software , 2016, Appl. Soft Comput..

[19]  Witold Pedrycz,et al.  A comparative analysis of the efficiency of change metrics and static code attributes for defect prediction , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.