Abstract

Defect prediction at early stages of software development life cycle is a crucial activity of quality assurance process and has been broadly studied in the last two decades. The early prediction of defective modules in developing software can help the development team to utilize the available resources efficiently and effectively to deliver high quality software product in limited time. Until now, many researchers have developed defect prediction models by using machine learning and statistical techniques. Machine learning approach is an effective way to identify the defective modules, which works by extracting the hidden patterns among software attributes. In this study, several machine learning classification techniques are used to predict the software defects in twelve widely used NASA datasets. The classification techniques include: Naive Bayes (NB), Multi-Layer Perceptron (MLP). Radial Basis Function (RBF), Support Vector Machine (SVM), K Nearest Neighbor (KNN), kStar (K*), One Rule (OneR), PART, Decision Tree (DT), and Random Forest (RF). Performance of used classification techniques is evaluated by using various measures such as: Precision, Recall, F-Measure, Accuracy, MCC, and ROC Area. The detailed results in this research can be used as a baseline for other researches so that any claim regarding the improvement in prediction through any new technique, model or framework can be compared and verified.

Highlights

  • Prediction of defective modules in an early stage of software development is considered as one of most challenging aspect of quality assurance activity [11]

  • This section aims to analyze the performance of used classification techniques

  • In Recall, Naïve Bayes (NB) and Decision Tree (DT) both performed better in Y class whereas Radial Basis Function (RBF), Support Vector Machine (SVM) and PART showed better performance in N class and in F-measure, NB showed better performance in Y class whereas RBF, SVM and PART performed better in N class

Read more

Summary

Introduction

Prediction of defective modules in an early stage of software development is considered as one of most challenging aspect of quality assurance activity [11]. Predicting defective modules in the developing software has been investigated by many studies since the last two decades. Machine learning techniques are considered a promising way to predict the software defects in an early stage of SDLC by detecting the hidden pattern in historical software data. The purpose of this paper is to analyze the performance of supervised machine learning techniques on software defect prediction by using NASA datasets. This research performs a detailed performance analysis of widely used machine learning classification techniques by using the 70:30 proportion of training and test data. The benchmark datasets are used in experiments so that any researcher can compare these results with the results of his/her proposed technique and claim the high accuracy which would be easy to validate for all research community

Objectives
Methods
Results
Conclusion
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