
Empirical study of fault prediction for open‐source systems using the Chidamber and Kemerer metrics
Author(s) -
Shatnawi Raed
Publication year - 2014
Publication title -
iet software
Language(s) - English
Resource type - Journals
ISSN - 1751-8814
DOI - 10.1049/iet-sen.2013.0008
Subject(s) - computer science , software fault tolerance , reliability engineering , fault (geology) , software metric , variable (mathematics) , predictive modelling , software , machine learning , software quality , data mining , software bug , reliability (semiconductor) , software system , class (philosophy) , artificial intelligence , software development , engineering , programming language , mathematics , mathematical analysis , power (physics) , physics , quantum mechanics , seismology , geology
Software testers are usually provoked with projects that have faults. Predicting a class's fault‐proneness is vital for minimising cost and improving the effectiveness of the software testing. Previous research on software metrics has shown strong relationships between software metrics and faults in object‐oriented systems using a binary variable. However, these models do not consider the history of faults in classes. In this work, a dependent variable is proposed that uses fault history to rate classes into four categories (none, low risk, medium risk and high risk) and to improve the predictive capability of fault models. The study is conducted on many releases of four open‐source systems. The study tests the statistical differences in seven machine learning algorithms to find whether the proposed variable can be used to build better prediction models. The performance of the classifiers using the four categories is significantly better than the binary variable. In addition, the results show improvements on the reliability of the prediction models as the software matures. Therefore the fault history improves the prediction of fault‐proneness of classes in open‐source systems.