Skip to main content
Log in

Software defect prediction techniques using metrics based on neural network classifier

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

Software industries strive for software quality improvement by consistent bug prediction, bug removal and prediction of fault-prone module. This area has attracted researchers due to its significant involvement in software industries. Various techniques have been presented for software defect prediction. Recent researches have recommended data-mining using machine learning as an important paradigm for software bug prediction. state-of-art software defect prediction task suffer from various issues such as classification accuracy. However, software defect datasets are imbalanced in nature and known fault prone due to its huge dimension. To address this issue, here we present a combined approach for software defect prediction and prediction of software bugs. Proposed approach delivers a concept of feature reduction and artificial intelligence where feature reduction is carried out by well-known principle component analysis (PCA) scheme which is further improved by incorporating maximum-likelihood estimation for error reduction in PCA data reconstruction. Finally, neural network based classification technique is applied which shows prediction results. A framework is formulated and implemented on NASA software dataset where four datasets i.e., KC1, PC3, PC4 and JM1 are considered for performance analysis using MATLAB simulation tool. An extensive experimental study is performed where confusion, precision, recall, classification accuracy etc. parameters are computed and compared with existing software defect prediction techniques. Experimental study shows that proposed approach can provide better performance for software defect prediction.

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.

Institutional subscriptions

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

Similar content being viewed by others

References

  1. Tian, J.: Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement. Wiley, Hoboken (2005)

    Book  Google Scholar 

  2. Salfner, F., Lenk, M., Malek, M.: A survey of online failure prediction methods. ACM Comput. Surv. 42(3), 10 (2010). https://doi.org/10.1145/1670679.1670680

    Article  Google Scholar 

  3. http://www.softwaretestingtimes.com/2010/04/softwaretestingeffort-estimation.htm

  4. Chauhan, N.S., Saxena, A.: A green software development life cycle for cloud computing. IT Prof. 15(1), 28–34 (2013)

    Article  Google Scholar 

  5. Sandhu, P.S., Brar, A.S., Goel, R., Kaur, J., Anand, S.: A model for early prediction of faults in software systems. In: 2nd International Conference on Computer and Automation Engineering, Singapore, pp. 281–285 (2010)

  6. Emam, K.E., Melo, W., Machado, J.C.: The prediction of faulty classes using object-oriented design metrics. J. Syst. Softw. 56, 63–75 (2001)

    Article  Google Scholar 

  7. Kuncheva, L.I., Skurichina, M., Duin, R.P.W.: An experimental study on diversity for bagging and boosting with linear classifiers. Inf. Fus. 3(4), 245–258 (2002)

    Article  Google Scholar 

  8. Aljamaan, H.I., Elish, M.O.: An empirical study of bagging and boosting ensembles for identifying faulty classes in object-oriented software. In: Proceedings of the IEEE Symposium on Computational Intelligence and Data Mining (CIDM ’09), pp. 187–194, IEEE, Nashville (2009)

  9. Okutan, A., Yıldız, O.T.: Software defect prediction using Bayesian networks. Empir. Softw. Eng. 19(1), 154–181 (2014)

    Article  Google Scholar 

  10. Shan, C., Chen, B., Hu, C., Xue, J., Li, N.: Software defect prediction model based on LLE and SVM. In: Proceedings of the Communications Security Conference (CSC ’14), pp. 1–5 (2014)

  11. Koru, A.G., Liu, H.: Building effective defect-prediction models in practice. IEEE Softw. 22(6), 23–29 (2005)

    Article  Google Scholar 

  12. Sheela, K.G., Deepa, S.N.: Neural network based hybrid computing model for wind speed prediction. Neurocomputing 122, 425–429 (2013)

    Article  Google Scholar 

  13. Wang, T., Zhang, Z., Jing, X., Zhang, L.: Multiple kernel ensemble learning for software defect prediction. Autom. Softw. Eng. 23, 569–590 (2015)

    Article  Google Scholar 

  14. Xu, Z., Xuan, J., Liu, J., Cui, X.: MICHAC: defect prediction via feature selection based on maximal information coefficient with hierarchical agglomerative clustering. In: 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), Suita, pp. 370–381 (2016)

  15. Ryu, D., Baik, J.: Effective multi-objective naïve Bayes learning for cross-project defect prediction. Appl. Soft Comput. 49, 1062 (2016). https://doi.org/10.1016/j.asoc.2016.04.009

    Article  Google Scholar 

  16. Abdi, Y., Parsa, S., Seyfari, Y.: A hybrid one-class rule learning approach based on swarm intelligence for software fault prediction. Innov. Syst. Softw. Eng. 11(4), 289–301 (2015). https://doi.org/10.1007/s11334-015-0258-2

    Article  Google Scholar 

  17. Valles-Barajas, F.: A comparative analysis between two techniques for the prediction of software defects: fuzzy and statistical linear regression. Innov. Syst. Softw. Eng. 11(4), 277–287 (2015). https://doi.org/10.1007/s11334-015-0256-4

    Article  Google Scholar 

  18. Shan C., Chen B., Hu C., Xue J., Li N.: Software defect prediction model based on LLE and SVM. In: Proceedings of the Communications Security Conference (CSC ’14), pp. 1–5 (2014)

  19. Yang, Z.R.: A novel radial basis function neural network for discriminant analysis. IEEE Trans. Neural Netw. 17(3), 604–612 (2006). https://doi.org/10.1109/TNN.2006.873282

    Article  Google Scholar 

  20. Arar, Ö.F., Ayan, K.: Software defect prediction using cost-sensitive neural network. Appl. Soft Comput. J. 33, 263–277 (2015)

    Article  Google Scholar 

  21. Bautista, A.M., Feliu, T.S.: Defect prediction in software repositories with artificial neural networks. In: Mejia, J., Munoz, M., Rocha, Á., Calvo-Manzano, J. (eds.) Trends and Applications in Software Engineering. Advances in Intelligent Systems and Computing, vol. 405. Springer, Cham (2016)

    Google Scholar 

  22. Khoshgoftaar, T.M., Gao, K.: Feature selection with imbalanced data for software defect prediction. In: 2009 International Conference on Machine Learning and Applications, Miami Beach, pp. 235–240 (2009)

  23. Khoshgoftaar, T.M., Seliya, N., Sundaresh, N.: An empirical study of predicting software faults with case-based reasoning. Softw. Qual. J. 14(2), 85–111 (2006)

    Article  Google Scholar 

  24. Malhi, A.: PCA-based feature selection scheme for machine defect classification. IEEE Trans. Instrum. Meas. 53(6), 1517–1525 (2004)

    Article  Google Scholar 

  25. Clark, C.C.T., et al.: A review of emerging analytical techniques for objective physical activity measurement in humans. Sports Med. 47, 439–447 (2016)

    Article  Google Scholar 

  26. Software Defect Dataset: Promise repository, http://promise.site.uottawa.ca/SERepository/datasets-page.html

  27. Andersson, C.: A replicated empirical study of a selection method for software reliability growth models. Empir. Softw. Eng. 12(2), 161–182 (2007)

    Article  Google Scholar 

  28. Andersson, C., Runeson, P.: A replicated quantitative analysis of fault distributions in complex software systems. IEEE Trans. Softw. Eng. 33(5), 273–286 (2007)

    Article  Google Scholar 

  29. Mangasarian, O.L., Musicant, D.R.: Lagrangian support vector machines. J. Mach. Learn. Res. 1, 161–177 (2001)

    MathSciNet  MATH  Google Scholar 

  30. Suykens, J.A.K., Vandewalle, J.: Least squares support vector machine classifiers. Neural Process. Lett. 9(3), 293–300 (1999)

    Article  Google Scholar 

  31. Lessmann, S., Baesens, B., Mues, C., Pietsch, S.: Benchmarking classification models for software defect prediction: a proposed framework and novel findings. IEEE Trans. Softw. Eng. 34(4), 485–496 (2008)

    Article  Google Scholar 

Download references

Acknowledgements

I would like to express my gratitude to Dr. Lilly Florence Prof. & HOD, MCA programme, Adhiyamaan College of Engineering, Hosur for providing me the guidance and support to make this work possible.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to R. Jayanthi.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

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

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10586-018-1730-1

Keywords

Navigation