Skip to main content

Evaluation of LMT and DNN Algorithms in Software Defect Prediction for Open-Source Software

  • Conference paper
  • First Online:
Research in Intelligent and Computing in Engineering

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 1254))

  • 1188 Accesses

Abstract

Software defect prediction has achieved considerable salability in the last years. Defect prediction is the first important step in dependability assessment of complex software systems, because it can immediately be impacted on the dependability of those systems, improves performance, and decreases the software cost. Among the most important approaches used primarily in software defect prediction are the algorithms of machine learning classification. In this research, LMT machine learning and deep learning algorithms are presented for the software bug prediction model process on a general dataset obtained by a combination of several datasets for four open-source software and applications. These are Linux kernel, MySQL DBMS, Apache HTTPD web server, and Apache AXIS WS. A new dataset has represented four defect classes: Bohrbug, Mandelbug, Aging-Related Bug, and Unknown bugs. The new classification approach depends on defect location in OSSs. The system behavior is categorized to assess system dependability in the future. Performance measurement is implemented in JAVA using NETBEANS version 8.0.2 for LMT classifier and in Python for Deep Learning classifier. In the results of experiments, fault predictors using the DNN classifier perform better than LMT, where accuracy weighted average for each class using the LMT classifier is 0.849, while accuracy weighted average for each class using DNN is 0.87.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Naidu MS, Geethanjali N (2013) Classification of defects in software using decision tree algorithm. Int J Eng Sci Technol 5(6):1332

    Google Scholar 

  2. Okutan A (2012) Software defect prediction using bayesian networks and kernel methods. ISIK University

    Google Scholar 

  3. Carrozza G, Cotroneo D, Natella R, Pietrantuono R, Russo S (2013) Analysis and prediction of mandelbugs in an industrial software system. In: 2013 IEEE sixth international conference on software testing verification and validation IEEE, pp 262–271

    Google Scholar 

  4. Du X, Zheng Z, Xiao G, Yin B (2017) The automatic classification of fault trigger based bug report. In: 2017 IEEE international symposium on software reliability engineering workshops (ISSREW), IEEE, pp 259–265

    Google Scholar 

  5. Singh P, Verma S (2014) An efficient software fault prediction model using cluster based classification. Int J Appl Inf Syst 7(3):35–41

    Google Scholar 

  6. Breier J, Hou X, Jap D, Ma L, Bhasin S, Liu Y (2018) Experimental evaluation of deep neural network resistance against fault injection attacks. In: Presented at the ACM SIGSAC conference on computer and communications security (CCS), Singapore

    Google Scholar 

  7. Irrera I (2016) Fault injection for online failure prediction assessment and improvement

    Google Scholar 

  8. Hammouri A, Hammad M, Alnabhan M, Alsarayrah F (2018) Software bug prediction using machine learning approach. IJACSA) Int J Adv Comput Sci Appl 9(2)

    Google Scholar 

  9. Avizienis A, Laprie J-C, Randell B (2001) Fundamental concepts of dependability. University of Newcastle upon Tyne, Computing Science

    Google Scholar 

  10. Natella R, Cotroneo D, Madeira HS (2016) Assessing dependability with software fault injection: a survey. ACM Comput Surv (CSUR) 48(3):44

    Article  Google Scholar 

  11. Tamura Y, Yamada S (2017) Reliability and maintainability analysis and its tool based on deep learning for fault big data. In 2017 6th international conference on reliability, infocom technologies and optimization (Trends and Future Directions) (ICRITO), IEEE, pp 106–111

    Google Scholar 

  12. Ketkar N (2017) In: Deep Learning with Python. Springer

    Google Scholar 

  13. Aggarwal CC (2018) An Introduction to neural networks. IBM T J Watson Research Center, Yorktown Heights, NY

    Google Scholar 

  14. Frank E, Hall MA, Witten IH (2016) The WEKA Workbench. Online Appendix for “Data Mining: Practical Machine Learning Tools and Techniques”, (2016)

    Google Scholar 

  15. Alexei B (2018) Performance metrics (error measures) in machine learning regression, forecasting and prognostics: properties and typology. arXiv preprint arXiv:1809.03006

    Google Scholar 

  16. Ma L, Zhang F, Sun J, Li B, Juefei-Xu F, Li L (2018) DeepMutation: mutation testing of deep learning systems. 14(8)

    Google Scholar 

  17. Khosrowjerdi H, Meinke K, Rasmusson A (2018) Virtualized-fault injection testing: A machine learning approach. In: 2018 IEEE 11th international conference on software testing, verification and validation (ICST), IEEE, pp 297–308

    Google Scholar 

  18. Landwehr N, Hall M, Frank E (2005) Logistic model trees. Mach Learn 59(1–2):161–205

    Article  Google Scholar 

  19. Nwankpa C, Ijomah W, Gachagan A, Marshall S (2018) Activation functions: comparison of trends in practice and research for deep learning, vol 8

    Google Scholar 

  20. Chillarege R et al (1992) Orthogonal defect classification-a concept for in-process measurements. IEEE Trans Softw Eng 11:943–956

    Article  Google Scholar 

  21. Grottke M, Nikora AP, Trivedi KS (2010) An empirical investigation of fault types in space mission system software. In: 2010 IEEE/IFIP international conference on dependable systems and networks (DSN), IEEE, pp 447–456

    Google Scholar 

  22. Shooman ML (2015) Software reliability growth model based on Bohrbugs and Mandelbugs. In: 2015 IEEE 26th international symposium on software reliability engineering (ISSRE), IEEE, pp 381–386

    Google Scholar 

  23. Ding J, Tarokh V, Yang Y (2018) Model selection techniques: an overview. IEEE Signal Process Mag 35(6):16–34

    Article  Google Scholar 

Download references

Acknowledgements

The authors are thankful to the Department of Computer Science, Collage of Science, Mustansiriyah University, and Informatics Institute for Postgraduate Studies, for supporting this work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sundos Abdulameer Alazawi .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Alazawi, S.A., Salam, M.N.A. (2021). Evaluation of LMT and DNN Algorithms in Software Defect Prediction for Open-Source Software. In: Kumar, R., Quang, N.H., Kumar Solanki, V., Cardona, M., Pattnaik, P.K. (eds) Research in Intelligent and Computing in Engineering. Advances in Intelligent Systems and Computing, vol 1254. Springer, Singapore. https://doi.org/10.1007/978-981-15-7527-3_19

Download citation

Publish with us

Policies and ethics