Int J Performability Eng ›› 2023, Vol. 19 ›› Issue (2): 133-143.doi: 10.23940/ijpe.23.02.p6.133143

Previous Articles     Next Articles

Software Fault Prediction using K-Mean-Based Machine Learning Approach

Ashima Arya* and Sanjay Kumar Malik   

  1. Department of Computer Science and Engineering, SRM University, Delhi-NCR, Sonepat (Haryana), 131029, India
  • Contact: * E-mail address: ashiarya18@gmail.com

Abstract: Software fault prediction is one of the most essential measures employed to evaluate software quality. There are many testing processes that are utilized to predict software faults, and among them, Black Box Testing (BBT) is used to predict faults without knowing the internal functioning of the application. In this article, a K-mean-based Machine Learning (ML) approach is explored to predict faults in software projects. The proposed model is divided into four phases. In the initial phase, the attributes of OOPs metrics that contribute to the accurate prediction of software faults are identified. In second phase, similarity between the metrics attributes is analysed using Cosine, Jaccard, and hybrid similarity measures. In the third stage, clustering of the correlated metrics attributes is performed using K-means as a clustering approach. At the last stage, Neural Network (NN) is applied as the ML approach for training and later on used for validation of the designed model. The comparative analysis is performed against the BBT and the existing work in terms of Positive Rate (TPR), Positive Predictive Value (PPV), F-score, and accuracy. The designed software fault prediction model using ML approach shows an overall classification accuracy of 94.3%.

Key words: black box testing, K-means, neural network, oops metrics, similarity measures, software fault prediction