Schedule a Software Walkthrough
Software Reliability Growth Models
SRGM Reference — Model 6 of 14

The Goel-Okumoto Model

The Goel-Okumoto model is the classic, textbook exponential NHPP model — the model most people picture when they think "software reliability growth curve." It reformulated the same basic assumptions as Jelinski-Moranda into a continuous-time Poisson process, becoming the reference point for nearly every NHPP model that followed.

Concave NHPP
The canonical exponential decay model for software reliability growth
1979
Introduced by Amrit Goel and Kishor Okumoto
Widely used
A starting point for clean, well-behaved failure data. However, it should be supported by other models that don't assume well-behaved data. Requs Trend supports this model and other models with other assumptions.
Overview

The reference-point exponential NHPP model

Goel and Okumoto reframed the finite-fault, constant-hazard assumptions of earlier models as a nonhomogeneous Poisson process, giving the field a clean, continuous-time mean value function. Its exponential shape has become the default comparison point for nearly every other NHPP-based software reliability growth model.

Model Family

Concave, Finite-Failure NHPP

Mathematically the same exponential shape as the Musa Basic Execution Time model, formalized as a nonhomogeneous Poisson process.

Introduced

1979 — Goel & Okumoto

One of the most cited and widely implemented software reliability growth models in the literature. However, it should not be the only model in your toolkit.

Requs Trend

Covered — Exponential / NHPP

This model's exponential decay shape is one of the model families included in Requs Trend's ensemble averaging.

01 — The Math

How the Goel-Okumoto Model works

The model expresses cumulative expected failures and instantaneous failure intensity as functions of calendar or execution time, using the same exponential shape as the Basic Execution Time model.

§1Mean Value

Mean Value Function

Formula
m(t) = a (1 − e^(−bt))
Expected cumulative failures by time t

The curve rises quickly at first and flattens as it approaches a, the total expected number of faults.

What the Terms Mean
  • m(t) — expected cumulative number of failures by time t
  • a — total expected number of faults (the asymptote of the curve)
  • b — the per-fault detection rate, controlling how quickly the curve approaches a
§2Intensity

Failure Intensity Function

Formula
λ(t) = ab e^(−bt)
Instantaneous failure intensity at time t

Intensity is highest at the start of testing (λ(0) = ab) and decays exponentially toward zero.

What the Terms Mean
  • λ(t) — instantaneous failure intensity at time t
  • a, b — same parameters as the mean value function
  • λ(0) = ab is the initial failure intensity at the start of testing
§3Assumptions

Key Assumptions

Model Assumptions

Goel-Okumoto shares the same core assumptions as the Basic Execution Time model, expressed as a formal Poisson process.

Assumption List
  • The number of failures by time t follows a Poisson process with mean m(t)
  • A fixed, finite total fault count a exists at the start of testing
  • All faults are equally likely to be triggered by a test case. This will not be the case early in testing when there are blocking defects.
  • Fault repair is instantaneous and perfect — no new faults introduced. Faults are almost never removed instantaneously. However, they might be avoidable by the users.
  • The failure rate at any time is proportional to the number of faults remaining
§4Estimation

Parameter Estimation

Method

a and b are estimated using maximum likelihood estimation or nonlinear least-squares regression against observed cumulative failure counts. With only two parameters, the model is straightforward to fit even on moderately small data sets.

What's Being Estimated
  • a — the eventual total fault count, from where the curve flattens
  • b — the detection rate, from how sharply the curve rises early on
  • Goodness-of-fit is typically compared against alternatives with AIC or PSSE
02 — Strengths & Limitations

Strengths, limitations, and best fit for the Goel-Okumoto Model

STRENGTHS

Simple, standard, and universally taught

As the reference-point NHPP model, it's implemented in virtually every reliability tool and textbook, making results easy to communicate and cross-check.

LIMITATIONS

Assumes strictly decreasing intensity

Like the Basic Execution Time model, it can't represent the early ramp-up in failure intensity that Weibull-family models handle.

BEST USED FOR

Clean, well-behaved failure data

A strong default starting point before trying more complex S-shaped or shape-flexible alternatives.

REQUS TREND

Included in the ensemble

This exponential/NHPP shape is one of the model families Requs Trend fits and averages across automatically.

See this model fit against real project data.

Start with Requs Trend online demo or a discussion of your current reliability growth modeling approach.