Predicting Software Faults Based on K-Nearest Neighbors Classification

Software defect prediction is one of the most important task during the development of software systems in order to save developers’ time and effort. Discovering defects in an early stage of software development will allow programmers and developers to take action and resolve these faulty parts in software before its launch. In this paper, the KNearest Neighbor (KNN) machine learning algorithm is used to predict faulty software projects. Experimental studies are conducted on five public datasets with different similarly measures. Results showed that KNN can be used to predict software faults with accuracy rate that can achieve up to 87.2%.

[1]  Andreas Zeller,et al.  Mining metrics to predict component failures , 2006, ICSE.

[2]  Divya Tomar,et al.  A survey on Data Mining approaches for Healthcare , 2013, BSBT 2013.

[3]  Bruce Christianson,et al.  Software defect prediction using static code metrics underestimates defect-proneness , 2010, The 2010 International Joint Conference on Neural Networks (IJCNN).

[4]  P. Selvaraj,et al.  Support Vector Machine for Software Defect Prediction , 2013 .

[5]  Arvinder Kaur,et al.  Software Fault Proneness Prediction Using Support Vector Machines , 2009 .

[6]  E. Krause,et al.  Taxicab Geometry: An Adventure in Non-Euclidean Geometry , 1987 .

[7]  Guoshun Chen,et al.  Software Fault Diagnosing System Based on Multi-agent , 2012, 2012 Third Global Congress on Intelligent Systems.

[8]  Hongfang Liu,et al.  Building effective defect-prediction models in practice , 2005, IEEE Software.

[9]  Niclas Ohlsson,et al.  Predicting Fault-Prone Software Modules in Telephone Switches , 1996, IEEE Trans. Software Eng..

[10]  A. Zeller,et al.  Predicting Defects for Eclipse , 2007, Third International Workshop on Predictor Models in Software Engineering (PROMISE'07: ICSE Workshops 2007).

[11]  Lahouari Ghouti,et al.  Efficient prediction of software fault proneness modules using support vector machines and probabilistic neural networks , 2011, 2011 Malaysian Conference in Software Engineering.

[12]  Steven Skiena,et al.  Implementing discrete mathematics - combinatorics and graph theory with Mathematica , 1990 .

[13]  R. Suganya,et al.  Data Mining Concepts and Techniques , 2010 .

[14]  Bart Baesens,et al.  Benchmarking Classification Models for Software Defect Prediction: A Proposed Framework and Novel Findings , 2008, IEEE Transactions on Software Engineering.