Cascade framework for software fault prediction using ABC-based feature selection and SMOTE
摘要
Software fault prediction (SFP) improves software reliability and reduces maintenance costs, but real-world datasets often suffer from class imbalance and redundant features, which limit model performance. We present a cascade framework for SFP that integrates (i) SMOTE for class rebalancing, (ii) feature selection via SHAP values and Artificial Bee Colony (ABC) optimization, and (iii) ensemble and non-ensemble classifiers arranged in cascades. Using the PROMISE repository’s KC1 class-level dataset, we binarize the NUMDEFECTS target (faulty = 1 if NUMDEFECTS ≥ 1; otherwise 0), apply SMOTE on the training split, and evaluate eight baseline classifiers and multiple cascades. With SHAP-selected features, SVM achieves 0.7941 accuracy along with strong F1 (0.7742) and MCC (0.6205); with ABC-selected features, Random Forest, AdaBoost, and Gradient Boosting each reach 0.7647 accuracy with F1 ≈ 0.77 and MCC ≈ 0.55. The best cascade (AdaBoost → Random Forest) achieves 0.7941 accuracy while delivering balanced precision–recall performance (F1 ≈ 0.7879, MCC ≈ 0.5893). By consolidating imbalance handling, interpretable feature attribution, and metaheuristic optimization into a reproducible pipeline, this study provides a practical template for class-level fault prediction that can be adapted to other projects and datasets.