Abstract

AbstractSoftware fault prediction (SFP) plays a vital part in quality of software. It helps in detecting the faulty constructs at an initial phases of software development life cycle (SDLC). This software fault is also known as defect, which occurs when the predicted results didn’t match the actual output. This can be referring as an error, fault, bug in a computer program. Machine learning (ML) handles with the subject of how to build or design computer programs that always increase their effectiveness at particular tasks via experiences. In field of software engineering, machine learning plays a very important role and contains different approaches like test effort prediction and cost prediction. In these prediction technique, software faults prediction (SFP) is the most prominent study in field of software engineering. In this paper, the predictions were made using machine learning algorithms such as Naive Bayes (NB), support vector machine (SVM), logistic regression (LR), random forest (RF). Feature selection method such as Spearman’s rank correlation is used for selecting highly correlated input variables. Dimensionality reduction methods such as LDA and PCA are used for reducing the dimensions. Performance and evaluation of these algorithms are carried out using accuracy, precision, and recall. Comparison is performed over four machine learning techniques with two feature selection and dimensionality reduction techniques. The results show that using Spearman’s rank correlation, SVM gives 94% of the highest accuracy compared to other algorithms. The results show that with LDA method on the dataset, NB and LR give highest accuracy of 92% over other techniques, and using PCA method, RF gives 92.8% of accuracy, which is highest among four classifiers.KeywordsMachine learning (ML)Software fault prediction (SFP)Feature selection (FS) and dimensionality reduction (DR)

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call