Journal of Software, Vol 7, No 6 (2012), 1296-1306, Jun 2012
doi:10.4304/jsw.7.6.1296-1306

A Detailed Study of NHPP Software Reliability Models (Invited Paper)

Richard Lai, Mohit Garg

Abstract


Software reliability deals with the probability that software will not cause the failure of a system for a specified time under a specified condition. The probability is a function of the inputs to and use of the system as well as a function of the existing faults in the software. The inputs to the system determine whether existing faults, if any, are encountered. Software Reliability Models (SRMs) provide a yardstick to predict future failure behavior from known or assumed characteristics of the software, such as past failure data. Different types of SRMs are used for different phases of the software development life-cycle. With the increasing demand to deliver quality software, software development organizations need to manage quality achievement and assessment. While testing a piece of software, it is often assumed that the correction of errors does not introduce any new errors and the reliability of the software increases as bugs are uncovered and then fixed. The models used during the testing phase are called Software Reliability Growth Models (SRGM). Unfortunately, in industrial practice, it is difficult to decide the time for software release. An important step towards remediation of this problem lies in the ability to manage the testing resources efficiently and affordably. This paper presents a detailed study of existing SRMs based on Non-Homogeneous Poisson Process (NHPP), which claim to improve software quality through effective detection of software faults.



Keywords


Software Reliability Growth Models, Non-Homogeneous Poisson Process, Flexible Models

References


 

[1] Ch. A. Asad, M. I. Ullah, and M. J. Rehman. An Approach for Software Reliability Model Selection. International Computer Software and Applications Conference, (COMPSAC), pages 534–539, 2004.

[2] P. G. Bishop and R. E. Bloomfield. Using a log-normal failure rate distribution for worst case bound reliability prediction.

[3] S. Bittanti, P. Blozern, E. Pedrotti, M. Pozzi, and A. Scattolini. Forecasting Software Reliability. In G. Goss and J. Hartmanis, editors, A Flexible Modeling Approach in Software Reliability Growth, pages 101–140. Springer-Verlag, 1988.

[4] S. R. Dalal and C. L. Mallows. Some graphical aids for deciding when to stop testing software. IEEE Trans. on Software Engineering, 8(2):169–175, 1990.

[5] W. Farr. Software Reliability Modeling Survey. In M. R. Lyu, editor, Handbook of Software Reliability Engineering, pages 71–118. McGraw-Hill, Inc., 1996.

[6] A. L. Goel. Software Reliability Models: Assumptions, Limitations and Applicability. IEEE Transactions on Software Engineering, pages 1411–1423, 1985.
http://dx.doi.org/10.1109/TSE.1985.232177

[7] A. L. Goel and K. Okumoto. Time-Dependent Error Detection Rate Model for Software Reliability and other Performance Measures. IEEE Transactions on Reliability, R-28(3):206–211, 1979.
http://dx.doi.org/10.1109/TR.1979.5220566

[8] S. Gokhale, M. R. Lyu, and K. S. Trivedi. Analysis of software fault removal policies using a non homogeneous continuous time markov chain. Software Quality Journal, pages 211–230, 2004.
http://dx.doi.org/10.1023/B:SQJO.0000034709.63615.8b

[9] S. Gokhale, P. N. Marinos, K. S. Trivedi, and M. R. Lyu. Effect of repair policies on software reliability. Proc. of Computer Assurance (COMPASS), pages 105–116, 1997.

[10] S. S. Gokhale, M. R. Lyu, and K. S. Trivedi. Incorporating fault debugging activities into software reliability models: a simulation approach. IEEE Transactions on Reliability, 55(2):281–292, 2006.
http://dx.doi.org/10.1109/TR.2006.874911

[11] S. S. Gokhale and K. S. Trivedi. A Time/Structure Based Software Reliability Model. Annals of Software Engineering, 8:85–121, 1999.
http://dx.doi.org/10.1023/A:1018923329647

[12] D. Hamlet. Are We Testing for True Reliability? IEEE Software, 9(4):21–27, 1992.
http://dx.doi.org/10.1109/52.143097

[13] American Institute of Aeronautics and Astronautics. Recommended Practice for Software Reliability. In ANSI/AIAA Report 0131992. AIAA, 1992.

[14] Z. Jelinski and P. B. Moranda. Software Reliability Research. In Statistical Computer Performance Evaluation (Ed.) W. Freiberger, pages 465–484, 1972.

[15] P. K. Kapur and R. B. Garg. Optimal Software Release Policies for Software Growth Model Under Imperfect Debugging. Researche Operationelle/Operations Research (RAIRO), 24:295–305, 1990.

[16] P. K. Kapur and R. B. Garg. A Software Reliability Growth Model for Error Removal Phenomenon. Software Engineering Journal, 7:291–294, 1992.
http://dx.doi.org/10.1049/sej.1992.0030

[17] P. K. Kapur, R. B. Garg, and S. Kumar. Contributions to Hardware and Software Reliability. World Scientific, Singapore, 1999.

[18] P. K. Kapur, M. Xie, R. B. Garg, and A. K. Jha. A Discrete Software Reliability Growth Model with Testing Effort. 1st International Conference on Software Testing, Reliability and Quality Assurance, 1994.

[19] P. K. Kapur, S. Younes, and S. Agarwala. A General Discrete Software Reliability Growth Model. International Journal of Modelling and Simulation, 18(1):60–65, 1998.

[20] N. Kareer, P. K. Kapur, and P.S. Grover. An S-shaped Software Reliability Growth Model With TwoTypes of Errors. Microelectronics Reliability, 30:1085–1090, 1990.
http://dx.doi.org/10.1016/0026-2714(90)90285-U

[21] G. Q. Kenney. Estimating Defects in Commercial Software During Operational Use. IEEE Transactions on Reliability, 42(1):107–115, 1993.
http://dx.doi.org/10.1109/24.210280

[22] T. M. Khoshgoftaar. Non-Homogeneous Poisson Process for Software Reliability. COMPSTAT, pages 13–14, 1988.

[23] M. Kimura, S. Yamada, and S. Osaki. Software Reliability Assessment for an Exponential S-shaped Reliability Growth Phenomenon. Computers and Mathematics with Applications, 24:71–78, 1992.
http://dx.doi.org/10.1016/0898-1221(92)90230-F

[24] L. M. Leemis. Reliability-Probabilistic Models and Statistical Methods. Prentice-Hall, 1995.

[25] B. Littlewood. Forecasting Software Reliability. In G. Goss and J. Hartmanis, editors, Software Reliability Modeling and Identification, chapter 5, pages 141–209. Springer-Verlag, 1987.

[26] H. Hecht M. Hecht, D. Tang and R. W. Brill. Quantitative Reliability and Availability Assessment for Critical Systems Including Software. 12th Annual Conference on Computer Assurance, pages 147–158, 1997.

[27] R. Mullen. The Lognormal Distribution of Software Failure Rates: Origin and Evidence. The Ninth International Symposium on Software Reliability Engineering (ISSRE), pages 124–133, 1998.

[28] J. D. Musa. A Theory of Software Reliability and its Applications. IEEE Transactions on Software Engineering, 1(3):312–327, 1975.

[29] J. D. Musa, A. Iannino, and K. Okumoto. Software Reliability: Measurement, Prediction, Application. McGraw-Hill, Inc., USA, 1987.

[30] J. D. Musa and K. Okumoto. A Logarithmic Poisson Execution Time Model for Software Reliability Measurement. International Conference on Software Engineering, (ICSE), pages 230–238, 1984.

[31] M. Ohba. Software Reliability Analysis Models. Nontropical Issue, pages vol. 28, Number 4, pp 428, 1984.

[32] M. Ohba. Inflection S-shaped Software Reliability Growth Model. In S. Osaki and Y. Hotoyama, editors, Lecture Notes in Economics and Mathematical System, pages 101–140. Springer-Verlag, 1988.

[33] M. Ohba and S. Yamada. S-shaped Software Reliability Growth Model. 4th International Conference on Reliability and Maintainability, pages 430–436, 1984.

[34] H. Pham. Handbook of Reliability Engineering. Springer-Verlag London limited, USA, 2003.

[35] G. J. Schick and R. W. Wolverton. An Analysis of Competing Software Reliability Models. IEEE Trans-actions on Software Engineering, 4(2):104–120, 1978.
http://dx.doi.org/10.1109/TSE.1978.231481

[36] N. F. Schneidewind. Analysis of Error Processes in Computer Software. Sigplan Notices, 10:337–346, 1975.
http://dx.doi.org/10.1145/390016.808456

[37] N. F. Schneidewind. Software reliability model with optimal selection of failure data. IEEE Trans. On Software Engineering, 19(11):1095–1014, 1993.
http://dx.doi.org/10.1109/32.256856

[38] N. F. Schneidewind. Modeling the fault correction process. Proc. of Intl. Symposium on Software Reliability Engineering (ISSRE), pages 185–191, 2001.
http://dx.doi.org/10.1109/ISSRE.2001.989472

[39] N. F. Schneidewind. An integrated failure detection and fault correction model. Proc. of Intl. Conference on Software Maintenance, pages 238–241, 2002.

[40] N. F. Schneidewind. Assessing reliability risk using fault correction profiles. Proc. of Eighth Intl. Symposium on High Assurance Systems Engineering (HASE), pages 139–148, 2004.
http://dx.doi.org/10.1109/HASE.2004.1281738

[41] J. G. Shanthikumar. Software Reliability Models: A Review. Microelectronics Reliability, 23:903–949, 1983.
http://dx.doi.org/10.1016/0026-2714(83)91018-1

[42] J. A. Whittaker. What Is Software Testing? And Why Is It So Hard? IEEE Software, pages 70–79, 2000.
http://dx.doi.org/10.1109/52.819971

[43] A. Wood. Software Reliability Growth Models: Assumptions Vs. Reality. International Symposium on Software Reliability Engineering (ISSRE), pages 136–143, 1997.

[44] M. Xie. Software Reliability Modeling. World Scientific, Singapore, 1991.
http://dx.doi.org/10.1142/9789814343091

[45] M. Xie and M. Zhao. On Some Reliability Growth Models With Simple Graphical Interpretations. Microelectronics Reliability, 33(2):149–167, 1993.
http://dx.doi.org/10.1016/0026-2714(93)90477-G

[46] S. Yamada, M. Ohba, and S. Osaki. S-shaped Reliability Growth Modeling for Software Error Detection. IEEE Transactions on Reliability, R-32:475–478, 1983.
http://dx.doi.org/10.1109/TR.1983.5221735

[47] S. Yamada and S. Osaki. Discrete Software Reliability Growth Models. Applied Stochastic Models and Data Analysis, 1:65–77, 1985.
http://dx.doi.org/10.1002/asm.3150010108

[48] S. Yamada, S. Osaki, and H. Narihisa. Software Reliability Growth Models With Two Types of Errors. Researche Operationelle/Operations Research (RAIRO), 19:87–104, 1985.

[49] P. Zeephongsekul, C. Xia, and S. Kumar. A Software Reliability Growth Model Primary Errors Generating Secondary Errors under Imperfect Debugging. IEEE Transactions on Reliability, R-43(3):408–413, 1994.
http://dx.doi.org/10.1109/24.326435

[50] D. R. Jeske and X. Zhang. Some Successful Approaches to Software Reliability Modeling in Industry. The Journal of Systems and Software, 74:85–99, 2005.
http://dx.doi.org/10.1016/j.jss.2003.10.024


Full Text: PDF


Journal of Software (JSW, ISSN 1796-217X)

Copyright @ 2006-2013 by ACADEMY PUBLISHER – All rights reserved.