Software Engineering | Schick-Wolverton software reliability model

Prerequisite – Jelinski Moranda software reliability model
The Schick-Wolverton (S-W) model is a modification to the J-M model. It is similar to the J-M model except that it further assumes that the failure rate at the ith time interval increases with time ti since the last debugging. In the model, the program failure rate function between the (i-1)th and the ith failure can be expressed as

    $$\lambda (t_i)=\phi [N-(i-1)]t_i$$

where \phi and N are the same as that defined in the J-M model and ti is the test time since the (i-1)th failure.

The pdf(probability distribution function) of t_i can be obtained as follows:

    $$f(t_i)=\phi [N-(i-1)]t_ie^{\frac{[N-(i-1)]t_i^2}{2}} \; \; for \;i=1, 2, ..., N$$

Hence, the software reliability function is

    $$R(t_i)=e^{- \int_0^{t_i} \lambda (t_i)dt_i }$$ $$=e^{-\frac{\phi [N-(i-1)]t_i^2}{2}}$$

We now wish to estimate N assuming that \phi is given. Using the MLE method, the log likelihood function is given by,

     $ln L(N) &=ln\left \{ \prod_{i=1}^nf(t_i)\right \}\\$ $$&=ln\left \{ \prod_{i=1}^n\left [ \phi [N-(i-1)]t_ie^{\frac{[N-(i-1)]t_i^2}{2}\right ]\right \}\\$$ $$&=nln\phi + \sum_{i=1}^nln[N-(i-1)]+\sum_{i=1}^nlnt_i-\sum_{i=1}^n\phi [N-(i-1)]\frac{t_i^2}{2}\\$$ $$

Taking the first derivative with respect to N, we have,

    $$ \frac{\partial}{\partial N}[ln L(N)]=\sum_{i=1}^n \frac{1}{N-(i-1)}-\phi \sum_{i=1}^n \frac{t_i^2}{2}=0 $$

Therefore, the MLE of N can be obtained by solving the following equation:

    $$\sum_{i=1}^n \frac{1}{N-(i-1)}= \phi \sum_{i=1}^n \frac{t_i^2}{2}$$

Next, we assume that both N and ? are unknown. Hence we obtain,

    $$\frac{\partial}{\partial \phi}[ln L(N, \phi )]=\sum_{i=1}^n \frac{1}{N-(i-1)}-\phi \sum_{i=1}^n \frac{t_i^2}{2}=0$$


    $$\frac{\partial}{\partial \phi}[ln L(N, \phi )]=\frac{n}{\phi }-\sum_{i=1}^n [N-(i-1)]\frac{t_i^2}{2}=0$$

Therefore, the MLEs of N and \phi can be found by solving the two equations simultaneously as follows:

    $$\phi = 2\sum_{i=1}^n \frac{1}{[N-(i-1)]T}$$ $$N=\frac{2n}{\phi T}+\frac{\sum_{i=1}^n (i-1)t_i^2}{T}$$


    $$T=\sum_{i=1}^n t_i^2$$

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :


Please write to us at to report any issue with the above content.