Skip to main content

Application of EM Algorithm to NHPP-Based Software Reliability Assessment with Ungrouped Failure Time Data

  • Chapter
  • First Online:
Stochastic Reliability and Maintenance Modeling

Part of the book series: Springer Series in Reliability Engineering ((RELIABILITY,volume 9))

Abstract

This chapter presents computation procedures for maximum likelihood estimates (MLEs) of software reliability models (SRMs) based on nonhomogeneous Poisson processes (NHPPs). The idea behind our methods is to regard usual failure time data as incomplete data. This leads to quite simple computation procedures for NHPP-based SRMs based on the EM (expectation–maximization) algorithm, and these algorithms overcome a problem arising in practical use of SRMs. In this chapter, we discuss the algorithms for 10 types of NHPP-based SRMs. Numerical examples show that the proposed EM algorithms help us to reduce computational efforts in the parameter estimation of NHPP-based SRMs.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Achcar JA, Dey DK, Niverthi M (1998) A Bayesian approach using nonhomogeneous poisson processes for software reliability models. In: Basu AP, Basu KS, Mukhopadhyay S (eds) Frontiers in reliability. World Scientific, Singapore, pp 1–18

    Chapter  Google Scholar 

  2. Ando T, Okamura H, Dohi T (2006) Estimating Markov modulated software reliability models via EM algorithm. In: Proceedings of 2nd IEEE international symposium on dependable, autonomic and secure computing (DASC’06), pp 111–118. IEEE Computer Society Press, Los Alamitos

    Google Scholar 

  3. Chen Y, Singpurwalla ND (1997) Unification of software reliability models by self-exciting point processes. Adv Appl Probab 29:337–352

    Article  MathSciNet  Google Scholar 

  4. Cheung RC (1980) A user-oriented software reliability model. IEEE Trans Softw Eng SE–6(2):118–125

    Article  Google Scholar 

  5. Dempster AP, Laird NM, Rubin DB (1977) Maximum likelihood from incomplete data via the EM algorithm. J Roy Stat Soc B B–39:1–38

    MathSciNet  Google Scholar 

  6. Goel AL (1985) Software reliability models: assumptions, limitations and applicability. IEEE Transactions on Software Engineering SE–11:1411–1423

    Article  Google Scholar 

  7. Goel AL, Okumoto K (1978) An imperfect debugging model for reliability and other quantitative measures of software systems. Technical report 78–1, Department of IE & OR, Syracuse University

    Google Scholar 

  8. Goel AL, Okumoto K (1979) Time-dependent error-detection rate model for software reliability and other performance measures. IEEE Trans Reliab R–28:206–211

    Article  Google Scholar 

  9. Gokhale SS, Philip T, Marinos PN, Trivedi KS (1996) Unification of finite failure non-homogeneous Poisson process models through test coverage. In: Proceedings of 7th international symposium on software, reliability engineering, pp 299–307

    Google Scholar 

  10. Gokhale SS, Trivedi KS (1998) Log-logistic software reliability growth model. In: Proceedings of 3rd IEEE international symposium on high-assurance systems engineering (HASE-1998), pp 34–41. IEEE CS Press

    Google Scholar 

  11. Hossain SA, Dahiya RC (1993) Estimating the parameters of a non-homogeneous Poisson-process model for software reliability. IEEE Trans Reliab 42(4):604–612

    Article  Google Scholar 

  12. Jelinski Z, Moranda PB (1972) Software reliability research. In: Freiberger W (ed) Statistical computer performance evaluation. Academic, New York, pp 465–484

    Google Scholar 

  13. Jeske DR, Pham H (2001) On the maximum likelihood estimates for the Goel-Okumoto software reliability model. Am Stat 55(3):219–222

    Article  MathSciNet  MATH  Google Scholar 

  14. Joe H (1989) Statistical inference for general-order-statistics and nonhomogeneous-Poisson-process software reliability models. IEEE Trans Softw Eng 15(11):1485–1490

    Article  Google Scholar 

  15. Kimura M, Yamada S (2003) Software reliability management: techniques and applications. In: Pham H (ed) Handbook of reliability engineering. Springer, London, pp 265–284

    Chapter  Google Scholar 

  16. Knafl G, Morgan J (1996) Solving ML equations for 2-parameter Poisson-process model for ungrouped software failure data. IEEE Trans Reliab 45:42–53

    Article  Google Scholar 

  17. Kuo L, Yang TY (1996) Bayesian computation for nonhomogeneous Poisson processes in software reliability. J Am Stat Assoc 91:763–773

    Article  MathSciNet  MATH  Google Scholar 

  18. Langberg N, Singpurwalla ND (1985) Unification of some software reliability models. SIAM J Sci Comput 6(3):781–790

    Article  MathSciNet  MATH  Google Scholar 

  19. Lyu MR (ed) (1996) Handbook of Software Reliability Engineering. McGraw-Hill, New York

    Google Scholar 

  20. Miller DR (1986) Exponential order statistic models of software reliability growth. IEEE Trans Softw Eng SE–12:12–24

    Article  Google Scholar 

  21. Musa JD (1999) Software reliability engineering. McGraw-Hill, New York

    Google Scholar 

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

    Google Scholar 

  23. Musa JD, Okumoto K (1984) A logarithmic Poisson execution time model for software reliability measurement. In: Proceedings of 7th international conferece on software engineering (ICSE-1084), pp 230–238. IEEE CS Press/ACM (1984)

    Google Scholar 

  24. Nayak TK, Bose S, Kundu S (2008) On inconsistency of estimators of parameters of non-homogeneous Poisson process models for software reliability. Stat Prob Lett 78:2217–2221

    Article  MathSciNet  MATH  Google Scholar 

  25. Ohba M (1984) Inflection S-shaped software reliability growth model. In: Osaki S, Hatoyama Y (eds) Stochastic models in reliability theory. Springer, Berlin, pp 144–165

    Chapter  Google Scholar 

  26. Ohba M (1984) Software reliability analysis. IBM J Res Dev 28:428–443

    Article  Google Scholar 

  27. Ohishi K, Okamura H, Dohi T (2009) Gompertz software reliability model: estimation algorithm and empirical validation. J Sys Softw 82(3):535–543

    Article  Google Scholar 

  28. Okamura H, Dohi T, Osaki S (2004) EM algorithms for logistic software reliability models. In: Proceedings of 22nd IASTED international conference on software engineering, pp 263–268. ACTA Press

    Google Scholar 

  29. Okamura H, Murayama A, Dohi T (2004) EM algorithm for discrete software reliability models: a unified parameter estimation method. In: Proceedings of 8th IEEE international symposium on high assurance systems engineering, pp 219–228

    Google Scholar 

  30. Okamura H, Watanabe Y, Dohi T (2003) An iterative scheme for maximum likelihood estimation in software reliability modeling. In: Proceedings of 14th international symposium on software reliability engineering, pp 246–256

    Google Scholar 

  31. Pham H (2000) Software reliability. Springer, Singapore

    MATH  Google Scholar 

  32. Pham H, Zhang X (1997) An NHPP software reliability models and its comparison. Int J Reliab Qual Safe Eng 4:269–282

    Article  Google Scholar 

  33. Ramani S, Gokhale SS, Trivedi KS (2000) Srept: software reliability estimation and prediction tool. Perf Eval 39:37–60

    Article  MATH  Google Scholar 

  34. Shanthikumar JG (1981) A general software reliability model for performance prediction. Microelect Reliab 21:671–682

    Article  Google Scholar 

  35. Wu CFJ (1983) On the convergence properties of the EM algorithm. Ann Stat 11:95–103

    Article  MATH  Google Scholar 

  36. Xie M (1991) Software reliability modelling. World Scientific, Singapore

    MATH  Google Scholar 

  37. Yamada S (1992) A stochastic software reliability growth model with Gompertz curve. Trans Inf Proces Soc Japan (in Japanese) 33(7):964–969

    Google Scholar 

  38. Yamada S, Ohba M, Osaki S (1983) S-shaped reliability growth modeling for software error detection. IEEE Trans Reliab R–32:475–478

    Article  Google Scholar 

  39. Zhao M, Xie M (1996) On maximum likelihood estimation for a general non-homogeneous Poisson process. Scand J Stat 23:597–607

    MathSciNet  MATH  Google Scholar 

Download references

Acknowledgments

This research was supported by the Ministry of Education, Science, Sports and Culture, Grant-in-Aid for Scientific Research (C), Grant No. 23500047 (2011–2013) and Grant No. 23510171 (2011–2013). The authors are grateful to Prof. Shunji Osaki and his teaching. Everything he teaches was valuable for our lives as well as research activities.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hiroyuki Okamura .

Editor information

Editors and Affiliations

Appendix

Appendix

1.1 Derivation of Eq. (40)

For notational simplification, \(\mathrm{{E}}[\cdot | D_T; \omega , \varvec{\lambda }]\) is written by \(\mathrm{{E}}[\cdot |D_T]\). From the left-hand side of Eq. (40), we have

$$\begin{aligned} \mathrm{{E}}\Bigg [\sum _{k=1}^N h(T_k) \Bigg | D_T \Bigg ]&= \mathrm{{E}}\Bigg [\sum _{k=1}^K h(T_k) \Bigg | D_T \Bigg ] + \mathrm{{E}}\Bigg [\sum _{k=K+1}^N h(T_k) \Bigg | D_T \Bigg ] \nonumber \\&= \sum _{k=1}^K \text{ E }[h(T_k) | D_T ] + \mathrm{{E}}\Bigg [\sum _{k=K+1}^N h(T_k) \Bigg | D_T \Bigg ] \nonumber \\&= \sum _{k=1}^K h(t_k) + \mathrm{{E}}\Bigg [\sum _{k=K+1}^N h(T_k) \Bigg | D_T \Bigg ]. \end{aligned}$$
(132)

Since \(T_1, \ldots , T_N\) are IID samples, the first term of right-hand side of the above equation can be easily obtained. Then we focus on the derivation of the second term of right-hand side of Eq. (40). From the posterior distribution of \(N\), we obtain

$$\begin{aligned}&\mathrm{{E}}\Bigg [\sum _{k=K+1}^N h(T_k) \Bigg | D_T \Bigg ] \nonumber \\&= \Bigg ( \sum _{r = 0}^\infty e^{-\omega } \omega ^{K+r} \prod _{k=1}^K f(t_k) \int _{T}^\infty \int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \sum _{j=1}^r h(u_j) \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 \Bigg ) \nonumber \\&\quad \; \Bigg / \Bigg ( \sum _{r = 0}^\infty e^{-\omega } \omega ^{K+r} \prod _{k=1}^K f(t_k) \int _{T}^\infty \int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 \Bigg ), \end{aligned}$$
(133)

where \(r\) corresponds to the number of failures experienced after time \(T\). The integrals in Eq. (133) can be changed to

$$\begin{aligned}&\int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \sum _{j=1}^r h(u_j) \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 \nonumber \\&\quad = \frac{r}{r!} \int _T^\infty h(u) f(u) {d}u \left( \int _T^\infty f(u) {d}u\right) ^{r-1}, \end{aligned}$$
(134)

and

$$\begin{aligned} \int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 = \frac{1}{r!} \left( \int _T^\infty f(u) {d}u\right) ^r. \end{aligned}$$
(135)

By canceling the constants of numerator and denominator, Eq. (133) is reduced to

$$\begin{aligned}&\mathrm{{E}}\Bigg [\sum _{k=K+1}^N h(T_k) \Bigg | D_T \Bigg ] \nonumber \\&= \Bigg ( \sum _{r = 1}^\infty \omega ^r \frac{1}{(r-1)!} \int _{T}^\infty h(u) f(u) {d}u \overline{F}(T)^{r-1} \Bigg ) \Bigg / \Bigg ( \sum _{r = 0}^\infty \omega ^r \frac{1}{r!} \overline{F}(T)^{r} \Bigg ) \nonumber \\&= \omega \int _T^\infty h(u) f(u) {d}u. \end{aligned}$$
(136)

1.2 Derivation of Eq. (56)

From the left-hand side of Eq. (56), we have

$$\begin{aligned}&\mathrm{{E}}\Bigg [\sum _{k=-\tilde{N}}^N h(T_k) \Bigg | D_T \Bigg ] = \mathrm{{E}}\Bigg [\sum _{k=1}^K h(T_k) \Bigg | D_T \Bigg ] \nonumber \\&\qquad \; + \mathrm{{E}}\Bigg [\sum _{k=1}^{\tilde{N}} h(T_{-k}) \Bigg | D_T \Bigg ] + \mathrm{{E}}\Bigg [\sum _{k=K+1}^N h(T_k) \Bigg | D_T \Bigg ] \nonumber \\&\quad = \sum _{k=1}^K h(t_k) + \mathrm{{E}}\Bigg [\sum _{k=1}^{\tilde{N}} h(T_{-k}) \Bigg | D_T \Bigg ] + \mathrm{{E}}\Bigg [\sum _{k=K+1}^N h(T_k) \Bigg | D_T \Bigg ]. \end{aligned}$$
(137)

Similar to the previous section, we consider the second and third terms of right-hand side of Eq. (137). Then we have

$$\begin{aligned}&\mathrm{{E}}\Bigg [\sum _{k=1}^{\tilde{N}} h(T_{-k}) \Bigg | D_T \Bigg ] \nonumber \\&= \Bigg ( \sum _{l = 0}^\infty \sum _{r = 0}^\infty e^{-\omega } \omega ^{K+l+r} \int _{-\infty }^0 \int _{-\infty }^{u_1} \cdots \int _{-\infty }^{u_{l-1}} \sum _{j=1}^l h(u_l) \prod _{j=1}^l f(u_j) \nonumber \\&\quad \times \prod _{k=1}^K f(t_k) \int _{T}^\infty \int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 \Bigg ) \nonumber \\&\quad \Bigg / \Bigg ( \sum _{l=0}^\infty \sum _{r=0}^\infty e^{-\omega } \omega ^{K+l+r} \int _{-\infty }^0 \int _{-\infty }^{u_1} \cdots \int _{-\infty }^{u_{l-1}} \prod _{j=1}^l f(u_j) \nonumber \\&\quad \times \prod _{k=1}^K f(t_k) \int _{T}^\infty \int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 \Bigg ) \nonumber \\&= \Bigg ( \sum _{l = 1}^\infty \omega ^l \frac{1}{(l-1)!} \int _{-\infty }^0 h(u) f(u) du F(0)^{l-1} \Bigg ) \Bigg / \Bigg ( \sum _{l = 0}^\infty \omega ^l \frac{1}{l!} F(0)^{l} \Bigg ) \nonumber \\&= \omega \int _{-\infty }^0 h(u) f(u) {d}u \end{aligned}$$
(138)

and

$$\begin{aligned}&\mathrm{{E}}\Bigg [\sum _{k=K+1}^{N} h(T_k) \Bigg | D_T \Bigg ] \nonumber \\&= \Bigg ( \sum _{l = 0}^\infty \sum _{r = 0}^\infty e^{-\omega } \omega ^{K+l+r} \int _{-\infty }^0 \int _{-\infty }^{u_1} \cdots \int _{-\infty }^{u_{l-1}} \prod _{j=1}^l f(u_j) \nonumber \\&\quad \times \prod _{k=1}^K f(t_k) \int _{T}^\infty \int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \sum _{j=1}^l h(u_r) \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 \Bigg ) \nonumber \\&\quad \Bigg / \Bigg ( \sum _{l=0}^\infty \sum _{r=0}^\infty e^{-\omega } \omega ^{K+l+r} \int _{-\infty }^0 \int _{-\infty }^{u_1} \cdots \int _{-\infty }^{u_{l-1}} \prod _{j=1}^l f(u_j) \nonumber \\&\quad \times \prod _{k=1}^K f(t_k) \int _{T}^\infty \int _{u_1}^\infty \cdots \int _{u_{r-1}}^\infty \prod _{j=1}^r f(u_j) {d}u_r \cdots {d}u_1 \Bigg ) \nonumber \\&= \Bigg ( \sum _{r = 1}^\infty \omega ^r \frac{1}{(r-1)!} \int _T^{\infty } h(u) f(u) {d}u \overline{F}(T)^{r-1} \Bigg ) \Bigg / \Bigg ( \sum _{r = 0}^\infty \omega ^r \frac{1}{r!} \overline{F}(T)^{r} \Bigg ) \nonumber \\&= \omega \int _T^{\infty } h(u) f(u) {d}u. \end{aligned}$$
(139)

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag London

About this chapter

Cite this chapter

Okamura, H., Dohi, T. (2013). Application of EM Algorithm to NHPP-Based Software Reliability Assessment with Ungrouped Failure Time Data. In: Dohi, T., Nakagawa, T. (eds) Stochastic Reliability and Maintenance Modeling. Springer Series in Reliability Engineering, vol 9. Springer, London. https://doi.org/10.1007/978-1-4471-4971-2_13

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-4971-2_13

  • Published:

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-4471-4970-5

  • Online ISBN: 978-1-4471-4971-2

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics