Skip to main content
Log in

A neural network approach for optimal software testing and maintenance

  • Original Article
  • Published:
Neural Computing and Applications Aims and scope Submit manuscript

Abstract

In this paper, we propose a neural network-based model for optimal software testing and maintenance policy, where the software testing environment and the operational environment are characterized by an environmental factor. We also present a systematic study for defect detection and correction processes. In our proposed approach, we consider the logistic growth curve model and the constant correction time for defect prediction. Then, we estimate the jointly optimal software testing period and maintenance limit via minimization of a software cost function that takes into account the environmental factor and the imperfect fault removal. More precisely, the total expected cost is formulated via a discrete-type software reliability model based on the difference between operational environments, imperfect defect removal, and defect correction process. Experimental results on a real software data set are presented to demonstrate the effectiveness of the proposed approach in defect prediction as well as in determining the jointly optimal testing period and planned maintenance limit.

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

Similar content being viewed by others

References

  1. Boehm BW, Abts C, Brown AW, Chulani S, Clark BK, Horowitz E, Madachy R, Reifer D, Steece B (2000) Software cost estimation with cocomo II. Prentice Hall PTR, Upper Saddle River

    Google Scholar 

  2. Rinsaka K, Tadashi D (2005) Discrete optimal testing/maintenance policy in a software developement project. Asia Pacific Manag Rev 10(4):225–232

    Google Scholar 

  3. Hiroyuki O, Tadashi D, Shunji O (2000) A reliability assessment method for software products in operational phase-proposal of an accelerated life testing model. Trans Inst Electron Inf Commun Eng 83-A(3):294–301

    Google Scholar 

  4. Kitaoka T, Yamada S, Osaki S (1986) A discrete non-homogeneous error detection rate model for software reliability. IECE Trans E69(8):859–865

    Google Scholar 

  5. Schneidewind NF (1975) Analysis of error processes in computer software. Proceedings of international conference on reliable software. IEEE Computer Society Press, Los Alamitos, pp 337–346

  6. Xie M, Hu QP, Wu YP, Ng SH (2007) A study of the modeling and analysis of software fault-detection and fault-correction processes. Qual Reliab Eng Int 23:459–470

    Article  Google Scholar 

  7. Musa JD, Iannino A, Okumoto K (1987) Software reliability: measurement, prediction, application. McGraw-Hill, New York

    Google Scholar 

  8. Myung IJ (2003) Tutorial on maximum likelihood estimation. J Math Psychol 47:90–100

    Article  MATH  MathSciNet  Google Scholar 

  9. Okamura H, Watanabe Y, Dohi T (2003) An iterative scheme for maximum likelihood estimation in software reliability modeling. Proceeding of international symposium on software reliability engineering, pp 246–256

  10. Bergander T, Luo Y, Ben Hamza A (2007) Software defects prediction using operating characteristic curves. Proceedings of IEEE international conference on information reuse and integration, Las Vegas

  11. Kimura M, Toyota T, Yamada S (1999) Economic analysis of software release problems with warranty cost and reliability requirement. ReliabEng Syst Saf 66:49–55

    Article  Google Scholar 

  12. Levitin G, Xie M (2006) Performance distribution of a fault-tolerant system in the presence of failure correlation. IIE Trans 38(6):499–509

    Article  Google Scholar 

  13. Yamada S, Ichimori T, Nishiwaki M (1995) Optimal allocation policies for testing-resource based on a software reliability growth model. Math Comput Model 22:295–301

    Article  MATH  Google Scholar 

  14. Yang MCK, Chao A (1995) Reliability-estimation and stopping-rules for software testing, based on repeated appearances of bugs. IEEE Trans Reliab 44:315–321

    Article  Google Scholar 

  15. Huang CY, Lyu MR (2005) Optimal release time for software systems considering cost, testing-effort, and test efficiency. IEEE Trans Reliab 54:583–591

    Article  Google Scholar 

  16. Kapur PK, Jha PC, Bardhan AK (2004) Optimal allocation of testing resource for a modular software. Asia Pacific J Oper Res 21:333–354

    Article  MATH  MathSciNet  Google Scholar 

  17. Khoshgoftaar TM, Szabo RM, Guasti PJ (1995) Exploring the behavior of neural network software quality models. Softw Eng J 10(3):89–96

    Article  Google Scholar 

  18. Xie M (1991) Software reliability modeling. World Scientific Publishing, Singapore

    Google Scholar 

Download references

Acknowledgments

The authors would like to thank the anonymous reviewers for helpful and very insightful comments. This work was supported in part by Natural Sciences and Engineering Research Council of Canada under Discovery Grant no. N00929.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to A. Ben Hamza.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Zaryabi, A., Ben Hamza, A. A neural network approach for optimal software testing and maintenance. Neural Comput & Applic 24, 453–461 (2014). https://doi.org/10.1007/s00521-012-1251-4

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00521-012-1251-4

Keywords

Navigation