An automated approach to predict software maintainability using homogeneous ensemble learning algorithms
摘要
Precise estimation of software maintainability is important for software managers to outline resource allocation, restrict budget overruns, and meet strict deadlines. Researchers have continuously assessed several machine learning algorithms that could be accurate for the task of software maintainability prediction. However, the evaluation of Homogeneous Ensemble Learning Algorithms (HoELA) in this domain needs to be effectively scrutinized. The study motive is to evaluate the predictive capability of eight HoELA for the task of Software Maintainability Prediction (SMP) in two different contexts, i.e., within-project and cross-project. SMP models are developed by using the investigated HoELA and empirically validated on ten object-oriented open-source software datasets. The results of these developed models are statistically compared with SMP models developed using nine popular non-ensemble machine learning algorithms, i.e., Support Vector Machine, Logistic Regression, Decision Table, Multilayer Perceptron, Decision Stump, REP Tree, Ridge regressor, Lesso regressor, and Elastic Net regressor. The SMP models developed using HoELA exhibited a significant improvement in terms of all three performance metrics (Mean Magnitude Relative Error (MMRE), Median Magnitude of Relative Error (MdMRE), and Pred(0.25)) in both the validation scenarios, within-project and cross-project, as compared to the non-ensemble models. SMP models developed using HoELA, especially Extreme Gradient Boosting and Categorical Boosting, can be efficiently used for detecting maintenance effort in both within-project and cross-project scenarios.