Skip to main content
Log in

Bootstrap aggregation ensemble learning-based reliable approach for software defect prediction by using characterized code feature

  • Original Article
  • Published:
Innovations in Systems and Software Engineering Aims and scope Submit manuscript

Abstract

To ensure software quality, software defect prediction plays a prominent role for the software developers and practitioners. Software defect prediction can assist us with distinguishing software defect modules and enhance the software quality. In present days, many supervised machine learning algorithms have proved their efficacy to identify defective modules. However, those are limited to prove their major significance due to the limitations such as the adaptation of parameters with the environment and complexity. So, it is important to develop a key methodology to improve the efficiency of the prediction module. In this paper, an ensemble learning technique called Bootstrap aggregating has been proposed for software defect prediction object-oriented modules. The proposed method's accuracy, recall, precision, F-measure, and AUC-ROC efficiency were compared to those of many qualified machine learning algorithms. Simulation results and performance comparison are evident that the proposed method outperformed well compared to other approaches.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

References

  1. Li J, He P, Zhu J, Lyu MR (2017) Software defect prediction via convolutional neural network. In: 2017 International Conference on Software Quality, Reliability and Security (QRS), pp 318–328. https://doi.org/10.1109/QRS.2017.42

  2. Suresh Kumar P, Behera HS, Kumari A, Nayak J, Naik B (2020) Advancement from neural networks to deep learning in software effort estimation: perspective of two decades. Comput Sci Rev 38:100288. https://doi.org/10.1016/j.cosrev.2020.100288

    Article  MathSciNet  Google Scholar 

  3. Catal C (2011) Software fault prediction: a literature review and current trends. Expert Syst Appl 38(4):4626–4636. https://doi.org/10.1016/j.eswa.2010.10.024

    Article  Google Scholar 

  4. Erturk E, Sezer EA (2015) A comparison of some soft computing methods for software fault prediction. Expert Syst Appl 42(4):1872–1879. https://doi.org/10.1016/j.eswa.2014.10.025

    Article  Google Scholar 

  5. Malhotra R (2015) A systematic review of machine learning techniques for software fault prediction. Appl Soft Comput 27:504–518. https://doi.org/10.1016/j.asoc.2014.11.023

    Article  Google Scholar 

  6. Arar ÖF, Ayan K (2015) Software defect prediction using cost-sensitive neural network. Appl Soft Comput 33:263–277. https://doi.org/10.1016/j.asoc.2015.04.045

    Article  Google Scholar 

  7. Okutan A, Yıldız OT (2014) Software defect prediction using Bayesian networks. Empir Softw Eng 19(1):154–181. https://doi.org/10.1007/s10664-012-9218-8

    Article  Google Scholar 

  8. Arasteh B (2018) Software fault-prediction using combination of neural network and Naive Bayes algorithm. J Netw Technol 9(3):94. https://doi.org/10.6025/jnt/2018/9/3/94-101

    Article  Google Scholar 

  9. Alsaeedi A, Khan MZ (2019) Software defect prediction using supervised machine learning and ensemble techniques: a comparative study. J Softw Eng Appl 12(05):85–100. https://doi.org/10.4236/jsea.2019.125007

    Article  Google Scholar 

  10. Skurichina M, Duin RPW (1998) Bagging for linear classifiers. Pattern Recognit 31(7):909–930. https://doi.org/10.1016/S0031-3203(97)00110-6

    Article  Google Scholar 

  11. Wei H, Hu C, Chen S, Xue Y, Zhang Q (2019) Establishing a software defect prediction model via effective dimension reduction. Inf Sci (Ny) 477:399–409. https://doi.org/10.1016/j.ins.2018.10.056

    Article  MathSciNet  Google Scholar 

  12. Turabieh H, Mafarja M, Li X (2019) Iterated feature selection algorithms with layered recurrent neural network for software fault prediction. Expert Syst Appl 122:27–42. https://doi.org/10.1016/j.eswa.2018.12.033

    Article  Google Scholar 

  13. Miholca D-L, Czibula G, Czibula IG (2018) A novel approach for software defect prediction through hybridizing gradual relational association rules with artificial neural networks. Inf Sci (Ny) 441:152–170. https://doi.org/10.1016/j.ins.2018.02.027

    Article  MathSciNet  Google Scholar 

  14. Manjula C, Florence L (2019) Deep neural network based hybrid approach for software defect prediction using software metrics. Cluster Comput 22(S4):9847–9863. https://doi.org/10.1007/s10586-018-1696-z

    Article  Google Scholar 

  15. Jayanthi R, Florence L (2019) Software defect prediction techniques using metrics based on neural network classifier. Cluster Comput 22(S1):77–88. https://doi.org/10.1007/s10586-018-1730-1

    Article  Google Scholar 

  16. Geng W (2018) Cognitive deep neural networks prediction method for software fault tendency module based on bound particle swarm optimization. Cogn Syst Res 52:12–20. https://doi.org/10.1016/j.cogsys.2018.06.001

    Article  Google Scholar 

  17. Arora I, Saha A (2018) Software defect prediction: a comparison between artificial neural network and support vector machine. Adv Intell Syst Comput 562:51–61. https://doi.org/10.1007/978-981-10-4603-2_6

    Article  Google Scholar 

  18. Feng S et al (2021) COSTE: complexity-based oversampling technique to alleviate the class imbalance problem in software defect prediction. Inf Softw Technol 129:106432. https://doi.org/10.1016/j.infsof.2020.106432

    Article  Google Scholar 

  19. Prabha CL, Shivakumar N (2020) Software defect prediction using machine learning techniques. In: Proc. 4th Int. Conf. Trends Electron. Informatics, ICOEI 2020, no. Icoei, pp 728–733. https://doi.org/10.1109/ICOEI48184.2020.9142909.

  20. Breiman L (1996) Bagging predictors. Mach Learn 24(2):123–140. https://doi.org/10.1007/BF00058655

    Article  MathSciNet  MATH  Google Scholar 

  21. Lemmens A, Croux C (2006) Bagging and boosting classification trees to predict churn. J Mark Res 43(2):276–286. https://doi.org/10.1509/jmkr.43.2.276

    Article  Google Scholar 

  22. Kaur A, Kaur K (2014) Performance analysis of ensemble learning for predicting defects in open source software. In: 2014 International Conference on Advances in Computing, Communications and Informatics (ICACCI), pp 219–225. https://doi.org/10.1109/ICACCI.2014.6968438.

  23. Wahono RS, Suryana N (2013) Combining particle swarm optimization based feature selection and bagging technique for software defect prediction. Int J Softw Eng Its Appl 7(5):153–166. https://doi.org/10.14257/ijseia.2013.7.5.16

    Article  Google Scholar 

  24. Felix EA, Lee SP (2020) Predicting the number of defects in a new software version. PLoS One 15(3):1–30. https://doi.org/10.1371/journal.pone.0229131

    Article  Google Scholar 

  25. Tantithamthavorn C, McIntosh S, Hassan AE, Matsumoto K (2019) The impact of automated parameter optimization on defect prediction models. IEEE Trans Softw Eng 45(7):683–711. https://doi.org/10.1109/TSE.2018.2794977

    Article  Google Scholar 

  26. Boetticher G, Menzies T, Ostrand T (2007) PROMISE Repository of empirical software engineering data. http://promisedata.org/repository

  27. Afzal W, Torkar R (2016) Towards benchmarking feature subset selection methods for software fault prediction. In: Pedrycz W, Succi G, Sillitti A (eds) Studies in computational intelligence, vol 617. Springer International Publishing, Cham, pp 33–58

    Google Scholar 

  28. Panichella A, Oliveto R, De Lucia A (2014) Cross-project defect prediction models: L’Union fait la force. In: 2014 Software Evolution Week—IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE), Feb 2014, pp 164–173. https://doi.org/10.1109/CSMR-WCRE.2014.6747166.

  29. Zhang F, Zheng Q, Zou Y, Hassan AE (2016) Cross-project defect prediction using a connectivity-based unsupervised classifier. In: Proceedings of the 38th International Conference on Software Engineering—ICSE ’16, vol 14–22 May, pp 309–320. https://doi.org/10.1145/2884781.2884839.

  30. Kaur A, Kaur K (2015) An empirical study of robustness and stability of machine learning classifiers in software defect prediction, vol. 320. In: El-Alfy E-SM, Thampi SM, Takagi H, Piramuthu S, Hanne T (eds) Advances in intelligent informatics. Springer, Cham, pp 383–397

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to P. Suresh Kumar.

Ethics declarations

Conflict of interest

The authors declare that this manuscript has no conflict of interest with any other published source and has not been published previously (partly or in full). No data have been fabricated or manipulated to support our conclusions.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Suresh Kumar, P., Behera, H.S., Nayak, J. et al. Bootstrap aggregation ensemble learning-based reliable approach for software defect prediction by using characterized code feature. Innovations Syst Softw Eng 17, 355–379 (2021). https://doi.org/10.1007/s11334-021-00399-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11334-021-00399-2

Keywords

Navigation