Skip to contents

Introduction

Reliability Growth Analysis (RGA) is a vital methodology for evaluating how the reliability of systems or products improves over time, particularly during development and testing phases. By monitoring failures and implementing corrective actions, engineers can track the rate of reliability improvement and forecast future performance.

RGA is especially useful in scenarios where iterative enhancements are made—such as design updates or process optimizations—with the ultimate goal of achieving a mature, dependable product.

The Crow-AMSAA Model

The Crow-AMSAA introduced by Larry Crow in 1975, is a widely adopted model in reliability engineering. The model takes failure behavior as a Non-Homogeneous Poisson Process (NHPP) governed by a power law, making it particularly effective for systems undergoing reliability growth due to continuous improvements.

Non-Homogeneous Poisson Process:

In an NHPP, the rate of failures is not constant over time—it changes as improvements are made. While the individual failure events still follow a Poisson distribution, the intensity (or rate) of failures is time-dependent. This characteristic allows the Crow-AMSAA model to capture both reliability growth (decreasing failure rate) and degradation (increasing failure rate).

The Power Law Model:

The failure intensity (rate of failures per time unit) is modeled as a power function of time:

λ(t)=βtβ1 \lambda(t) = \beta \cdot t^{\beta - 1}

where:

  • λ(t)\lambda(t) is the failure intensity at time tt,
  • β\beta is the shape parameter,
  • tt is the time.

The cumulative number of failures up to time tt is given by:

N(t)=λ0tβ N(t) = \lambda_0 \cdot t^{\beta}

Where:

  • N(t)N(t) is the cumulative number of failures,
  • λ0\lambda_0 is the scale parameter.

Parameters:

The Shape Parameter (β\beta) indicates whether the system is improving or deteriorating:

  • If β\beta > 1, failures are increasing over time, indicating that reliability is worsening.

  • If β\beta < 1, failures are decreasing, indicating that reliability is improving over time.

  • β\beta = 1 implies a constant failure rate (no growth or degradation).

  • The Scale Parameter (λ0\lambda_0) is related to the initial failure rate.

Example

First, load the package:

Next, set up some cumulative time and failure data:

times <- c(100, 200, 300, 400, 500)
failures <- c(1, 2, 1, 3, 2)

Then run the rga and plot the results:

result <- rga(times, failures)
plot_rga(result)

The Piecewise Weibull NHPP Model

The Piecewise Weibull NHPP model, developed by Guo et al. (2010), extends the traditional NHPP by allowing different time segments to follow their own Weibull failure distributions. This method is especially useful when failure behavior shifts across phases of development — such as early, middle, and late stages — where the underlying reliability dynamics may differ.

The Weibull Distribution

The Weibull intensity function for each time segment ii is modeled as:

λi(t)=βiηi(tti1ηi)βi1 \lambda_i(t) = \frac{\beta_i}{\eta_i} \left( \frac{t - t_{i-1}}{\eta_i} \right)^{\beta_i - 1}

Where:

  • λi(t)\lambda_i(t) is the failure intensity in time interval ii,
  • βi\beta_i is the shape parameter for interval ii,
  • ηi\eta_i is the scale parameter (characteristic life) for interval ii,
  • ti1t_{i-1} is the start time of the interval.

Example

First, set up some cumulative time/failure data and specify the breakpoint:

times <- c(25, 55, 97, 146, 201, 268, 341, 423, 513, 609, 710, 820, 940, 1072, 1217)
failures <- c(1, 1, 2, 4, 4, 1, 1, 2, 1, 4, 1, 1, 3, 3, 4)
breakpoints <- 300

Then run the rga and plot the results:

result <- rga(times, failures, model_type = "Piecewise Weibull NHPP", breakpoints = breakpoints)
plot_rga(result)

The Piecewise Weibull NHPP with Change Point Detection

This enhanced version of the Piecewise Weibull NHPP model incorporates change point detection, which identifies time points where the underlying failure process shifts. Rather than manually specifying breakpoints, this model automatically segments the data based on significant changes in reliability behavior using statistical techniques.

Example

First, set up some cumulative time and failure data:

times <- c(25, 55, 97, 146, 201, 268, 341, 423, 513, 609, 710, 820, 940, 1072, 1217)
failures <- c(1, 1, 2, 4, 4, 1, 1, 2, 1, 4, 1, 1, 3, 3, 4)

Then run the rga and plot the results:

result <- rga(times, failures, model_type = "Piecewise Weibull NHPP")
plot_rga(result)

The Duane Model

The Duane Model, introduced by J.T. Duane in 1964, is a graphical technique for evaluating reliability growth. The model is based on the assumption that reliability improves over time and visualizes this via a log-log plot of cumulative failure rate (or mean time between failures, MTBF) versus time.

Example

First, set up some cumulative time and failure data:

times <- c(100, 200, 300, 400, 500)
failures <- c(1, 2, 1, 3, 2)

Then plot the results:

fit <- duane_plot(times, failures)

Summary

Reliability Growth Analysis (RGA) provides a powerful statistical framework for tracking and predicting how a system’s reliability evolves throughout development. Models like Crow-AMSAA, Piecewise Weibull NHPP, and the Duane Model allow engineers and analysts to quantify improvements (or regressions) in reliability, understand system behavior across development phases, detect significant shifts in failure patterns, and guide design changes and process improvements.