Automated Software Defect Prediction Model: AdaBoost-Based Support Vector Machine Approach
摘要
In the software development process, one critical phase is software testing. The issues or glitches developers introduce are often addressed later in the software development cycle. This delay may result in a more significant impact being made on the product that is ultimately produced. To prevent such issues, detecting problems early in the software development process is essential, enabling more efficient allocation of testing resources. The strategy of predicting software defects involves categorizing individual software modules as either prone to defects or not. It is anticipated that various methods will emerge to automate and enhance the prediction of defective software modules, a key focus of this study. In our research, we have devised a combined model to determine the presence of errors within a software module. This work is founded on data preprocessing, reducing feature dimensionality, and classification. To validate the model, we utilize a publicly available NASA dataset. Principal component analysis (PCA) is employed to decrease the dimensionality of the feature vector, achieved by minimizing the overall dimension count. In the prediction procedure, we employ the AdaBoost (AB), a boosting technique on the support vector machine (SVM), referred to as ABSVM, to assess the prediction rate. We measure various performance metrics to validate the model’s effectiveness, including accuracy, sensitivity, specificity, F1 score, and MCC. The results by applying the PCA + ABSVM approach show that, on average, the suggested model achieves an accuracy level of 0.9866 for the KC2 dataset. Experiments reveal that our proposed model outperforms existing models in predicting defects.