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

The Jelinski-Moranda Model

Published in 1972, the Jelinski-Moranda model is widely considered the first formal software reliability model. Rather than a continuous NHPP curve, it models the times between individual failures directly, with the hazard rate dropping by a fixed step each time a fault is fixed.

Times-Between-Failures
Models the interval between each failure, not a continuous mean value curve
1972
Widely regarded as the first formal software reliability model
Foundational
Best for small data sets, and as a baseline for comparison
Overview

The model that started the field

Jelinski and Moranda modeled software failures as a Markov process: a fixed number of faults exist, each fault contributes equally to a constant hazard rate, and every time a fault is found and fixed, the hazard rate drops by an equal step. It's simple, historically foundational, and still used as a baseline against which newer models are compared.

Model Family

Times-Between-Failures (Markov)

Rather than a mean value function over continuous time, this model works directly with the interval between consecutive failures.

Introduced

1972 — Jelinski & Moranda

Often cited as the origin point of formal, quantitative software reliability modeling.

IEEE 1633 Context

Foundational, Rarely Used Alone

Valuable for teaching and comparison, but its rigid assumptions mean it's rarely the sole model relied on for production decisions today.

01 — The Math

How the Jelinski-Moranda Model works

The model expresses the hazard rate between the (i−1)th and ith failures as directly proportional to the number of faults still remaining in the software.

§1Hazard Rate

Hazard Function Between Failures

Formula
Z(t) = φ [N − (i − 1)]
Constant hazard rate between the (i−1)th and ith failures

Each time a fault is fixed, the count of remaining faults drops by one, so the hazard rate steps down by exactly φ after every fix.

What the Terms Mean
  • Z(tᵢ) — the (constant) hazard rate during the interval before the ith failure
  • N — the total number of faults present at the start of testing
  • φ — the per-fault hazard rate contribution (a proportionality constant)
  • i — the index of the current failure interval
§2Distribution

Time-Between-Failures Distribution

Formula
T ~ Exponential(φ[N − (i − 1)])
Each inter-failure time is exponentially distributed with the current hazard rate

Because the hazard rate is constant within each interval, the time until the next failure follows a simple exponential distribution.

What the Terms Mean
  • Tᵢ — the random time between the (i−1)th and ith failures
  • The mean of Tᵢ is 1 / Z(tᵢ), so intervals get longer as faults are removed
  • N and φ are the same parameters as the hazard function
§3Assumptions

Key Assumptions

Model Assumptions

These assumptions are stricter than most later models, which is part of why later work (Moranda Geometric, Littlewood-Verrall) exists to relax them.

Assumption List
  • A fixed, known total number of faults N exists at the start of testing
  • Every fault is equally likely to cause a failure (equal severity)
  • Failure times are independent and exponentially distributed
  • Fault repair is instantaneous, perfect, and never introduces new faults
  • The hazard rate decreases by exactly the same fixed step φ after every single fix
§4Estimation

Parameter Estimation

Method

N and φ are estimated using maximum likelihood estimation over the sequence of observed inter-failure times. Because the model only has two parameters, it can technically be fit with very few data points — though estimates become unstable with fewer than roughly 10-15 observed failures.

What's Being Estimated
  • N — the total fault count, inferred from how the intervals between failures lengthen over time
  • φ — the size of the step-down in hazard rate after each fix
02 — Strengths & Limitations

Strengths, limitations, and best fit for the Jelinski-Moranda Model

STRENGTHS

Simple, transparent, and historically foundational

Its assumptions are easy to state and explain, and it remains a standard baseline against which every later times-between-failures model is compared.

LIMITATIONS

Equal-severity assumption rarely holds

Real faults vary widely in how often they're triggered; the assumption that every fault contributes an identical, fixed amount to the hazard rate is often too rigid.

BEST USED FOR

Small clean data sets

Most valuable as a baseline or teaching tool rather than a sole production model on modern, complex codebases.

DATA REQUIREMENTS

Needs individual failure timestamps

Unlike interval-count models, Jelinski-Moranda needs the actual time of each individual failure, not just grouped counts per testing period.

Learn about other models.

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