Law of Rare Events ◾ 197
Goel–Okumoto (GO-NHPP) Model
Many models have been proposed by the studies about software reliability based on
NHPP. e main reason for selecting the NHPP technique is that it facilitates the
testers an analytical framework that helps in identifying the faults derived from the
software during the testing process, as noted by Vamsidhar et al. [4].
One of the most widely models used is the Goel–Okumoto NHPP model.
On the basis of their study of actual failure data from many systems, Goel–
Okumoto proposed the following exponential mean value function for their
NHPP model [5]:
m(t) = a(1 − e
−bt
) (12.14)
where m(t) is the expected cumulative number of defects function, a is the expected
total number of defects in the system, and b is the defect detection rate per defect.
e model assumes exponential behavior of failure and perfect debugging so
that failure intensity reduces with time. It is exactly a replica of the cumulative
exponential distribution given in Equation 12.4. e familiar λ, the failure rate
constant, is now called b, the detection rate constant, supporting the paradigm
that failure events in software are detection events. b could also stand for test case
efficiency. e constant a is a scaling factor, introduced to represent the number
of defects in the product. e Goel–Okumato model treats a as a parameter to be
estimated from data.
It may be noted that the Goel–Okumuto model fits data to the exponential
distribution. is strengthens the application of the exponential law in software
reliability engineering. What is interesting is even in NHPP, the exponential law
prevails as a fundamental principle. is upholds a universal view: “the exponential
function is used to generate several other functions.”
By substituting the Goel–Okumoto mean value function in the NHPP equa-
tion, we get the following detailed expression of NHPP:
P x m t
e a e
a e bt x
bt
( , ( ))
( ( ))
( )
=
−
− − −
−
1
1
(12.15)
where x takes discrete integer values 0, 1, 2, and so on.
e detailed expression still has only two parameters, a and b. Applying Equation
12.9 for any given time t, we can create the Poisson probabilities of finding x num-
ber of defects. Plotting an NHPP is a complex thing to do. We have plotted the
mean value function in Figure 12.13. Alongside, we have also plotted cumulative
NHPP probabilities for the following discrete x values, for example, x = 0, x = 1,
x = 2, and x = 3. is creates a family of curves for Equation 12.9.
Fitting the mean value function to data is the real job in building an NHPP—a
curve-fitting job, an empirical task.