An empirical approach for software fault prediction

Measuring software quality in terms of fault proneness of data can help the tomorrow's programmers to predict the fault prone areas in the projects before development. Knowing the faulty areas early from previous developed projects can be used to allocate experienced professionals for development of fault prone modules. Experienced persons can emphasize the faulty areas and can get the solutions in minimum time and budget that in turn increases software quality and customer satisfaction. We have used Fuzzy C Means clustering technique for the prediction of faulty/ non-faulty modules in the project. The datasets used for training and testing modules available from NASA projects namely CM1, PC1 and JM1 include requirement and code metrics which are then combined to get a combination metric model. These three models are then compared with each other and the results show that combination metric model is found to be the best prediction model among three. Also, this approach is compared with others in the literature and is proved to be more accurate. This approach has been implemented in MATLAB 7.9.

[1]  Pierfrancesco Bellini,et al.  Comparing fault-proneness estimation models , 2005, 10th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS'05).

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

[3]  Norman E. Fenton,et al.  A Critique of Software Defect Prediction Models , 1999, IEEE Trans. Software Eng..

[4]  Filippo Lanubile,et al.  Comparing models for identifying fault-prone software components , 1995, SEKE.

[5]  N. E. Schneidewind,et al.  Body of Knowledge for Software Quality Measurement , 2002, Computer.

[6]  Taghi M. Khoshgoftaar,et al.  Analyzing software quality with limited fault-proneness defect data , 2005, Ninth IEEE International Symposium on High-Assurance Systems Engineering (HASE'05).

[7]  Yue Jiang,et al.  Fault Prediction using Early Lifecycle Data , 2007, The 18th IEEE International Symposium on Software Reliability (ISSRE '07).

[8]  Carla E. Brodley,et al.  Identifying Mislabeled Training Data , 1999, J. Artif. Intell. Res..

[9]  Darrel C. Ince,et al.  A critique of three metrics , 1994, J. Syst. Softw..

[10]  Arashdeep Kaur,et al.  Early Software Fault Prediction Using Real Time Defect Data , 2009, 2009 Second International Conference on Machine Vision.

[11]  Taghi M. Khoshgoftaar,et al.  The Detection of Fault-Prone Programs , 1992, IEEE Trans. Software Eng..