A Conceptual Framework for Software Fault Prediction Using Neural Networks

  • Camelia SerbanEmail author
  • Florentin BotaEmail author
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 1126)


Software testing is a very expensive and critical activity in the software systems’ life-cycle. Finding software faults or bugs is also time-consuming, requiring good planning and a lot of resources. Therefore, predicting software faults is an important step in the testing process to significantly increase efficiency of time, effort and cost usage.

In this study we investigate the problem of Software Faults Prediction (SFP) based on Neural Network. The main contribution is to empirically establish the combination of Chidamber and Kemer software metrics that offer the best accuracy for faults prediction with numeric estimations by using feature selection. We also proposed a conceptual framework that integrates the model for fault prediction.


Software faults Software metrics Machine learning 


  1. 1.
    e Abreu, F.B., Melo, W.L.: Evaluating the impact of object-oriented design on software quality. In: 3rd IEEE International Software Metrics Symposium (METRICS 1996), From Measurement to Empirical Results, March 25–26, 1996, Berlin, Germany, pp. 90–99 (1996)Google Scholar
  2. 2.
    Alpaydin, E.: Introduction to Machine Learning. MIT Press, Cambridge (2014)zbMATHGoogle Scholar
  3. 3.
    Basili, V., Briand, L., Melo, W.: A validation of object-oriented design metrics as quality indicators. IEEE Trans. Software Eng. 20(10), 751–761 (1996)CrossRefGoogle Scholar
  4. 4.
    Chidamber, S., Kemerer, C.: A metric suite for object-oriented design. IEEE Trans. Software Eng. 20(6), 476–493 (1994)CrossRefGoogle Scholar
  5. 5.
    D’Ambros, M., Lanza, M., Robbes, R.: An extensive comparison of bug prediction approaches. In: Proceedings of MSR 2010 (7th IEEE Working Conference on Mining Software Repositories), pp. 31–41. IEEE CS Press (2010)Google Scholar
  6. 6.
    Elmishali, A., Stern, R., Kalech, M.: An artificial intelligence paradigm for troubleshooting software bugs. Eng. Appl. AI 69, 147–156 (2018)CrossRefGoogle Scholar
  7. 7.
    Gao, J.: Machine learning applications for data center optimization. Technical report, Google (2014)Google Scholar
  8. 8.
    Hall, T., Beecham, S., Bowes, D., Gray, D., Counsell, S.: A systematic literature review on fault prediction performance in software engineering. IEEE Trans. Software Eng. 38(6), 1276–1304 (2012) CrossRefGoogle Scholar
  9. 9.
    Isong, B., Ekabua, O.O.: A systematic review of the empirical validation of object-oriented metrics towards fault-proneness prediction. Int. J. Software Eng. Knowl. Eng. 23(10), 1513 (2013)CrossRefGoogle Scholar
  10. 10.
    Isong, B., Ekabua, O.O.: State-of-the-art in empirical validation of software metrics for fault proneness prediction: Systematic review. CoRR abs/1601.01447 (2016)Google Scholar
  11. 11.
    Kingma, D.P., Ba, J.: Adam: A method for stochastic optimization. arXiv preprint arXiv:1412.6980 (2014)
  12. 12.
    Kitchenham, B.A., Pfleeger, S.L., Fenton, N.E.: Towards a framework for software measurement validation. IEEE Trans. Software Eng. 21(12), 929–943 (1995)CrossRefGoogle Scholar
  13. 13.
    Kumar, L., Sripada, S., Sureka, A., Rath, S.K.: Effective fault prediction model developed using least square support vector machine (LSSVM). J. Syst. Softw. 137, 686–712 (2017)CrossRefGoogle Scholar
  14. 14.
    Li, W.: Another metric suite for object-oriented programming. J. Syst. Softw. 44(2), 155–162 (1998)CrossRefGoogle Scholar
  15. 15.
    Li, W., Henry, S.M.: Object-oriented metrics that predict maintainability. J. Syst. Softw. 23(2), 111–122 (1993)CrossRefGoogle Scholar
  16. 16.
    Malhotra, R.: A systematic review of machine learning techniques for software fault prediction. Appl. Soft Comput. 27, 504–518 (2015)CrossRefGoogle Scholar
  17. 17.
    Marinescu, R.: Measurement and Quality in Object Oriented Design. Ph.D. thesis, Faculty of Automatics and Computer Science, University of Timisoara (2002)Google Scholar
  18. 18.
    Nair, V., Hinton, G.E.: Rectified linear units improve restricted boltzmann machines. In: Proceedings of the 27th International Conference on Machine Learning (ICML 2010), pp. 807–814 (2010)Google Scholar
  19. 19.
    Russell, S.J., Norvig, P.: Artificial Intelligence: A Modern Approach. Prentice Hall, Upper Saddle River (1995)zbMATHGoogle Scholar
  20. 20.
    Sayyad Shirabad, J., Menzies, T.: The PROMISE Repository of Software Engineering Databases. School of Information Technology and Engineering, University of Ottawa, Canada (2005).
  21. 21.
    Serban, C.: Metrics in Software Assessment. Ph.D. thesis, Faculty of Mathematics and Computer Science, Babes-Bolyai University (2012)Google Scholar
  22. 22.
    Tanh, M., Kao, M., Chen, M.: An empirical study on object-oriented metrics. In: 6th IEEE International Software Metrics Symposium (METRICS 1999), 4–6 November 1999, Boca Raton, FL, USA. pp. 242–249 (1999)Google Scholar
  23. 23.
    Wang, Z., Bovik, A.C.: Mean squared error: love it or leave it? A new look at signal fidelity measures. IEEE Signal Process. Mag. 26(1), 98–117 (2009)CrossRefGoogle Scholar
  24. 24.
    Zimmermann, T., Nagappan, N., Gall, H.C., Giger, E., Murphy, B.: Cross-project defect prediction: a large scale experiment on data vs. domain vs. process. In: Proceedings of the 7th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2009, Amsterdam, The Netherlands, August 24–28, 2009, pp. 91–100 (2009)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.Babes-Bolyai UniversityCluj-NapocaRomania

Personalised recommendations