首页 | 本学科首页   官方微博 | 高级检索  
     


Comparative analysis of statistical and machine learning methods for predicting faulty modules
Affiliation:1. Unidad de Estudios Superiores Tepotzotlán, Universidad Mexiquense del Bicentenario, Tepotzotlán, México, México;2. Department of Information Systems, Universidad de Guadalajara, México;3. Laboratorio de Cómputo Inteligente, Instituto Politécnico Nacional, Centro de Investigación en Computación, México City, México;4. Department of Software Engineering and Information Technology, École de technologie supérieure, Université du Québec, Canada
Abstract:The demand for development of good quality software has seen rapid growth in the last few years. This is leading to increase in the use of the machine learning methods for analyzing and assessing public domain data sets. These methods can be used in developing models for estimating software quality attributes such as fault proneness, maintenance effort, testing effort. Software fault prediction in the early phases of software development can help and guide software practitioners to focus the available testing resources on the weaker areas during the software development. This paper analyses and compares the statistical and six machine learning methods for fault prediction. These methods (Decision Tree, Artificial Neural Network, Cascade Correlation Network, Support Vector Machine, Group Method of Data Handling Method, and Gene Expression Programming) are empirically validated to find the relationship between the static code metrics and the fault proneness of a module. In order to assess and compare the models predicted using the regression and the machine learning methods we used two publicly available data sets AR1 and AR6. We compared the predictive capability of the models using the Area Under the Curve (measured from the Receiver Operating Characteristic (ROC) analysis). The study confirms the predictive capability of the machine learning methods for software fault prediction. The results show that the Area Under the Curve of model predicted using the Decision Tree method is 0.8 and 0.9 (for AR1 and AR6 data sets, respectively) and is a better model than the model predicted using the logistic regression and other machine learning methods.
Keywords:Software quality  Static code metrics  Logistic regression  Machine learning  Receiver Operating Characteristic (ROC) curve
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号