An Empirical Study on Multi-source Cross-Project Defect Prediction Using Machine Learning
摘要
Ensuring the quality of the software is an uncompromisable part of software development. With the availability of historical data from various software projects and utilizing machine learning algorithms, several efforts are made to gain insights into steps to improve software quality. One such approach is Cross-Project Defect Prediction (CPDP), where the data from one project (Source) is used to predict the possibility of a defect in another project (Target). In multi-source cross-project defect prediction, the data from multiple source projects are merged together to form multi-source data and are used to predict the possibility of defect in an unseen target project. This study proposes a machine learning pipeline to improve the performance of the CPDP models and also address the class imbalance problem. The proposed pipeline could achieve an improvement in the average recall and AUC. The MLP, LR, SVM, and its ensembled model outperform the other classifiers studied. A comparison of different techniques of oversampling and a combination of oversampling and undersampling were performed on the datasets. The experiment results indicate that the proposed pipeline has improved the performance of classifiers for CPDP.