Call for Paper - July 2020 Edition
IJCA solicits original research papers for the July 2020 Edition. Last date of manuscript submission is June 22, 2020. Read More

Evolution of Software Reliability Growth Models: A Comparison of Auto-Regression and Genetic Programming Models

International Journal of Computer Applications
Foundation of Computer Science (FCS), NY, USA
Year of Publication: 2015
Mohammed Alweshah, Walid Ahmed, Hamza Aldabbas

Mohammed Alweshah, Walid Ahmed and Hamza Aldabbas. Article: Evolution of Software Reliability Growth Models: A Comparison of Auto-Regression and Genetic Programming Models. International Journal of Computer Applications 125(3):20-25, September 2015. Published by Foundation of Computer Science (FCS), NY, USA. BibTeX

	author = {Mohammed Alweshah and Walid Ahmed and Hamza Aldabbas},
	title = {Article: Evolution of Software Reliability Growth Models: A Comparison of Auto-Regression and Genetic Programming Models},
	journal = {International Journal of Computer Applications},
	year = {2015},
	volume = {125},
	number = {3},
	pages = {20-25},
	month = {September},
	note = {Published by Foundation of Computer Science (FCS), NY, USA}


Building reliability growth models to predict software reliability and identify and remove errors is both a necessity and a challenge for software testing engineers and project managers. Being able to predict the number of faults in software helps significantly in determining the software release date and in effectively managing project resources. Most of the growth models consider two or three parameters to estimate the accumulated faults in the testing process. Interest in using evolutionary computation to solve prediction and modeling problems has grown in recent years. In this paper, we explore the use of genetic programming (GP) as a tool to help in building growth models that can accurately predict the number of faults in software early on in the testing process. The proposed GP model is based on a recursive relation derived from the history of measured faults. The developed model is tested on real-time control, military, and operating system applications. The dataset was developed by John Musa of Bell Telephone Laboratories. The results of a comparison of the GP model with the traditional and simpler auto-regression model are presented.


  1. F. H. Allen, et al., "The Cambridge Crystallographic Data Centre: computer-based search, retrieval, analysis and display of information," Acta Crystallographica Section B: Structural Crystallography and Crystal Chemistry, vol. 35, pp. 2331-2339, 1979.
  2. K. Okumoto and A. L. Goel, "Optimum release time for software systems based on reliability and cost criteria," Journal of Systems and Software, vol. 1, pp. 315-318, 1980.
  3. S. Yamada and S. Osaki, "Optimal software release policies with simultaneous cost and reliability requirements," European Journal of Operational Research, vol. 31, pp. 46-51, 1987.
  4. S.-Y. Kuo, et al., "Framework for modeling software reliability, using various testing-efforts and fault-detection rates," Reliability, IEEE Transactions on, vol. 50, pp. 310-320, 2001.
  5. S. Yamada, Software reliability modeling: fundamentals and applications: Springer, 2014.
  6. S. Aljahdali and A. F. Sheta, "Predicting the Reliability of Software Systems Using Fuzzy Logic," in Information Technology: New Generations (ITNG), 2011 Eighth International Conference on, 2011, pp. 36-40.
  7. M. Alweshah, "Firefly Algorithm with Artificial Neural Network for Time Series Problems," Research Journal of Applied Sciences, Engineering and Technology, vol. 7, pp. 3978-3982, 2014.
  8. A. L. Goel, "Software reliability models: Assumptions, limitations, and applicability," Software Engineering, IEEE Transactions on, pp. 1411-1423, 1985.
  9. S. Brocklehurst, et al., "Recalibrating software reliability models," Software Engineering, IEEE Transactions on, vol. 16, pp. 458-470, 1990.
  10. M. R. Lyu, Handbook of software reliability engineering vol. 222: IEEE computer society press CA, 1996.
  11. A. Sheta, "Reliability growth modeling for software fault detection using particle swarm optimization," in Evolutionary Computation, 2006. CEC 2006. IEEE Congress on, 2006, pp. 3071-3078.
  12. E. A. El-Sebakhy, "Software reliability identification using functional networks: A comparative study," Expert systems with applications, vol. 36, pp. 4013-4020, 2009.
  13. N. F. Schneidewind and T. W. Keller, "Applying reliability models to the space shuttle," Software, IEEE, vol. 9, pp. 28-33, 1992.
  14. P. Carnes, "Software reliability in weapon systems," in Software Reliability Engineering-Case Studies, 1997. Proceedings., The Eighth International Symposium on, 1997, pp. 95-100.
  15. T. Keller and N. F. Schneidewind, "Successful application of software reliability engineering for the NASA space shuttle," Computer Standards & Interfaces, vol. 21, pp. 169-170, 1999.
  16. S. H. Aljahdali, et al., "Prediction of software reliability: A comparison between regression and neural network non-parametric models," in Computer Systems and Applications, ACS/IEEE International Conference on. 2001, 2001, pp. 470-473.
  17. L. Tian and A. Noore, "Evolutionary neural network modeling for software cumulative failure time prediction," Reliability Engineering & system safety, vol. 87, pp. 45-51, 2005.
  18. A. Sheta and J. Al-Salt, "Parameter estimation of software reliability growth models by particle swarm optimization," management, vol. 7, p. 14, 2007.
  19. Z. ALRahamneh, et al., "A New Software Reliability Growth Model: Genetic-Programming-Based Approach," Journal of Software Engineering and Applications, vol. 4, p. 476, 2011.
  20. B. Littlewood and J. L. Verrall, "A Bayesian reliability model with a stochastically monotone failure rate," Reliability, IEEE Transactions on, vol. 23, pp. 108-114, 1974.
  21. J. D. Musa, "A theory of software reliability and its application," Software Engineering, IEEE Transactions on, pp. 312-327, 1975.
  22. J. D. Musa and K. Okumoto, "A logarithmic Poisson execution time model for software reliability measurement," in Proceedings of the 7th international conference on Software engineering, 1984, pp. 230-238.
  23. S. Yamada, et al., "S-shaped software reliability growth models and their applications," Reliability, IEEE Transactions on, vol. 33, pp. 289-292, 1984.
  24. N. F. Schneidewind, "Measuring and evaluating maintenance process using reliability, risk, and test metrics," Software Engineering, IEEE Transactions on, vol. 25, pp. 769-781, 1999.
  25. Y. Tohma, et al., "Structural approach to the estimation of the number of residual software faults based on the hyper-geometric distribution," Software Engineering, IEEE Transactions on, vol. 15, pp. 345-355, 1989.
  26. J. Holland, "Adaptation in Natural and Artificial Systems, Ann Arbor: University of Michigan Press, 1975," 1992.
  27. L. J. Fogel, et al., "Artificial intelligence through simulated evolution," 1966.
  28. I. Rechenberg, "Evolutionsstrategie-optimierung technischer systems nach prinzipien der biologischen evolution, stuttgart: Frommannholzboog, 1973," ed: New York: John Wiley, 1981.
  29. J. R. Koza, "Evolving a Computer Program to Generate Random Numbers Using the Genetic Programming Paradigm," in ICGA, 1991, pp. 37-44.
  30. T. Minohara and Y. Tohma, "Parameter estimation of hyper-geometric distribution software reliability growth model by genetic algorithms," in Software Reliability Engineering, 1995. Proceedings., Sixth International Symposium on, 1995, pp. 324-329.
  31. V. Podgorelec, et al., "Testing reliability of medical software," in Computer-Based Medical Systems, 2002.(CBMS 2002). Proceedings of the 15th IEEE Symposium on, 2002, pp. 185-190.
  32. Y. Liu and T. M. Khoshgoftaar, "Genetic programming model for software quality classification," in High Assurance Systems Engineering, 2001. Sixth IEEE International Symposium on, 2001, pp. 127-136.
  33. G. J. Gray, et al., "Structural system identification using genetic programming and a block diagram oriented simulation tool," Electronics Letters, vol. 32, pp. 1422-1424, 1996.
  34. A. Sheta, et al., "Development of software effort and schedule estimation models using soft computing techniques," in Evolutionary Computation, 2008. CEC 2008.(IEEE World Congress on Computational Intelligence). IEEE Congress on, 2008, pp. 1283-1289.
  35. K. D. Bettenhausen, et al., "Self-organizing structured modelling of a biotechnological fed-batch fermentation by means of genetic programming," in Genetic Algorithms in Engineering Systems: Innovations and Applications, 1995. GALESIA. First International Conference on (Conf. Publ. No. 414), 1995, pp. 481-486.
  36. K. C. Sharman, et al., "Evolving signal processing algorithms by genetic programming," in Genetic Algorithms in Engineering Systems: Innovations and Applications, 1995. GALESIA. First International Conference on (Conf. Publ. No. 414), 1995, pp. 473-480.
  37. E. O. Costa, et al., "A genetic programming approach for software reliability modeling," Reliability, IEEE Transactions on, vol. 59, pp. 222-230, 2010.
  38. H. Faris, et al., "Modelling hot rolling manufacturing process using soft computing techniques," International Journal of Computer Integrated Manufacturing, vol. 26, pp. 762-771, 2013.
  39. J. R. Koza, Genetic programming: on the programming of computers by means of natural selection vol. 1: MIT press, 1992.
  40. J. Musa, "Data analysis center for software: An information analysis center," Western Michigan University Library, Kalamazoo, Michigan, 1980.
  41. T. McGibbon, "A business case for software process improvement revised," DoD Data Analysis Center for Software (DACS), 1999.


Software reliability, genetic programming, evolutionary Computation