Product Reliability and NPD Implementation

Part I

Ke Zhang

2025-11-24

What is Reliability?

Definition: Reliability is the probability that an item will perform its intended function without failure under specified conditions for a defined period of time or number of cycles.

  • Intended Function: The required function must be clearly defined for each component, sub-assembly, and final product.
  • Specified Conditions: These include environmental factors (e.g., temperature, humidity) and usage conditions (e.g., load, speed).
  • Defined Period: The time frame can be expressed in hours, days, or cycles (e.g., revolutions for bearings or motors).

Examples

  • The manifold reliability shall be higher than 95%. --Good?
  • The probe reliability shall be higher than 95% at the end of 1 year. --Good?
  • A motor is designed to remain 80% rpm with 99% reliability over 3,000 hours. ---Good?
  • A pump is designed to deliver 8 CFM with 99% reliability over 3,000 hours under rated conditions, with a 95% confidence level. (e.g. R(3000)>99% with 95% CI,at rated conditions)

The Difference of Quality and Reliability

Traditional Quality Function

  • Meet specifications?

  • Process stable?

  • Process capable?

Reliability Function

  • What will happen next and when?

  • Was burn-in time sufficient?

  • Are components failing too earlier?

  • Return failure rate acceptable?

Manufactured and tested → Shipping, Storage, Sale and User Application...

Reliability in Product Lifespan

Early Failure Phase (Infant Mortality):

  • Screen out manufacturing defects using HASS (e.g., burn-in) to prevent shipping defective products.
  • Decide if HASS is needed and set stress levels to detect failures without damaging good units.
  • Use Weibull distribution (shape < 1) to analyze early failures and confirm HASS effectiveness.
  • Work with manufacturing to fix defect causes and improve processes.

Constant Failure Phase (Useful Life):

  • Define useful life with Accelerated Life Testing (ALT) during NPD.
  • Predict constant failure rate using Exponential distribution (MTTF = 1/λ) or Weibull (shape = 1).
  • Verify reliability targets and share metrics with design teams for product improvements.
  • Ensure the useful life exceeds the warranty period, minimizing claims.

Wear-Out Phase (End of Life):

  • Calculate MTTR and MTBF to plan maintenance and spare parts for repairable units.
  • Advise on end-of-life strategies with supply chain and service teams.
  • Cost savings for mfg and customer beyond the warranty. Bathtub Curve

Reliability Metrics

B10 (or L10):

  • What: Time when 10% of products are expected to fail.
  • Use: Key in NPD to check product durability and meet customer or design standards.
  • Example: B10 of 4 years means 10% of batteries fail by year 4.

R(t) (Reliability at Time t):

  • What: Chance a product works without failing at a specific time.
  • Use: Used in NPD to confirm reliability at important times (e.g., warranty period).
  • Example: R(3 years) = 90% means 90% of units last 3 years.

MTTF (Mean Time To Failure):

  • What: Average time before a non-repairable product fails.
  • Use: Helps in NPD and production to estimate lifespan and set warranty for non-repairable items.
  • Example: MTTF of 15,000 hours means an LED bulb lasts 15,000 hours on average.

MTTR (Mean Time To Repair):

  • What: Average time to fix a repairable product after it fails.
  • Use: Guides maintenance and service teams to plan repairs and improve uptime.
  • Example: MTTR of 2 hours means a printer takes 2 hours to repair on average.

MTBF (Mean Time Between Failures):

  • What: Average time between failures for a repairable product.
  • Use: Helps maintenance teams plan repairs and spare parts for repairable systems.
  • Example: MTBF of 1,000 hours means a pump runs 1,000 hours between failures.

Where are we?

In real life (especially outside aerospace/military/medical), almost nobody hits a 95% lower confidence bound ≥ target by final testing alone unless they did the hard work upfront.

Where the Reliability is Actually Built? DfR→Component & material selection→Supplier & process control →Early Proto HALT/HASS/ALT.

Reliability is designed and selected in — not tested in.

Company / Product line MTTF Target without heroic testing Because they invested in …
Dyson, Miele vacuum motors 3000–5000 h (target 1000 h) Over-designed brushless PM motors + early HALT
Apple MacBook power adapters 1–2 million hours demonstrated (95% LCB) 105 °C caps, huge voltage derating, Production burn-in
Tesla residential Powerwall >50 000 cycles at 90% LCB Cell-level screening + liquid cooling margins
Philips Hue / Signify LED drivers B10 L70 > 50 000 h at 90% confidence Capacitor derating rules + ripple-current limits

Reliability Criteria (Point estimate vs. interval estimate)

Confidence Acceptable in consumer/commercial? Typical decision
95% Overkill (only if marketing wants “5-nines” claim) Nice to have
90% Still conservative, common in premium brands Safe
80–85% Industry sweet spot for most residential & commercial products Yes – ship
<75% Very common in low-cost or high-volume segments Ship with margin
Industry / Standard Typical Success Criterion for MTTF / MTBF
Commercial avionics (DO-254) Lower 95% (or 90%) confidence bound ≥ required MTTF
Space / satellite systems Lower 95% or 97.5% bound ≥ requirement (often with success-run testing)
MIL-HDBK-217 / defense contracts Demonstrated MTBF ≥ required value at 90% confidence (common)
FAA / EASA for critical parts Statistical demonstration + lower bound ≥ target

NPD Workflow for Reliability Qualification

HALT: Finds design flaws.

HASS: Removes early defects. Must completed HALT at first.

ALT: Measures reliability metrics.

Example: Product: Repairable pump (motor).

HALT: Finds bearing fails at 90°C; safe at 80°C.

HASS: Screens at 70°C, catches 1% defective bearings.

ALT: Tests 50 motors, gives:

  • B10 = 7 years (target: 6 years).

  • R(5 years) = 95% (target: 90%).

  • MTTF = 50,000 hours (target: 40,000 hours).

  • MTBF = 45,000 hours (target: 35,000 hours).

  • MTTR = 1.5 hours (target: 2 hours).

  • Result: Pump(Motor) qualifies, supports 5-year warranty.

Tools: Use Weibull or Exponential models to analyze ALT data. Repairable Units: MTTF for first failure, MTBF for later failures, MTTR for repair time. ECN & Retest if Needed: Fix and repeat if targets are missed.

Reliability Data Collection

  • What is censored data? (Left, Interval, Right/suspended/survived/no-report)

  • What is UN-censored data? (failed /dead/ reported/ repaired/ replaced)

Type 1

Type 1 Censored Data Plot

Type 2

Type 2 Censored Data Plot

Interactive Weibull Analysis

#| '!! shinylive warning !!': |
#|   shinylive does not work in self-contained HTML documents.
#|   Please set `embed-resources: false` in your metadata.
#| standalone: true
#| viewerHeight: 800

library(shiny)

# ===================================================================
# UI
# ===================================================================
ui <- fluidPage(
  titlePanel("Weibull Theory"),
 
  sidebarLayout(
    sidebarPanel(
      h4("Weibull Parameters"),
      numericInput("beta", "Shape (β):", value = 1.5, min = 0.1, step = 0.1),
      numericInput("eta", "Scale (η):", value = 1.0, min = 0.1, step = 0.1),
      sliderInput("t", "Time t:", min = 1, max = 50, value = 1.0, step = 1)
    ),
   
    mainPanel(
      br(),
      plotOutput("weibullPlot", height = "400px"),
      fluidRow(
        column(4, strong("Time t ="), textOutput("t_val", inline = TRUE)),
        column(4, strong("S(t) ="), textOutput("S_val", inline = TRUE)),
        column(4, strong("h(t) ="), textOutput("h_val", inline = TRUE))
      ),
      fluidRow(
        column(6, strong("MTTF ="), textOutput("mttf_val", inline = TRUE)),
        column(6, strong("B10 ="), textOutput("b10_val", inline = TRUE))
      )
    )
  )
)
# ===================================================================
# SERVER
# ===================================================================
server <- function(input, output) {
 
  # -----------------------------------------------------------------
  # Theory Calculations
  # -----------------------------------------------------------------
  weibull_vals <- reactive({
    t <- input$t
    beta <- input$beta
    eta <- input$eta
    S <- pweibull(t, shape = beta, scale = eta, lower.tail = FALSE)
    h <- dweibull(t, shape = beta, scale = eta) / S
    mttf <- eta * gamma(1 + 1/beta)
    b10 <- qweibull(0.1, shape = beta, scale = eta)
    list(t = t, S = S, h = h, mttf = mttf, b10 = b10)
  })
 
  output$weibullPlot <- renderPlot({
    t <- input$t
    beta <- input$beta
    eta <- input$eta
    par(mar = c(5, 4, 4, 4) + 0.3)
   
    curve(pweibull(x, beta, eta, lower.tail = FALSE), from = 0.001, to = 50,
          col = "darkgreen", lwd = 3, ylim = c(0, 1), ylab = "Survival S(t)", xlab = "Time")
    par(new = TRUE)
    curve((beta/eta) * (x/eta)^(beta - 1), from = 0.001, to = 50,
          col = "purple", lwd = 3, axes = FALSE, xlab = "", ylab = "")
    axis(4, col = "purple", col.axis = "purple")
    mtext("Hazard h(t)", side = 4, line = 3, col = "purple")
    abline(v = t, col = "green", lwd = 2)
    grid()
    legend("topright", legend = c("S(t)", "h(t)"), col = c("darkgreen", "purple"), lwd = 3, bg="white")
  })
 
  output$t_val <- renderText(sprintf("%.4f", weibull_vals()$t))
  output$S_val <- renderText(sprintf("%.6f", weibull_vals()$S))
  output$h_val <- renderText(sprintf("%.6f", weibull_vals()$h))
  output$mttf_val <- renderText(sprintf("%.6f", weibull_vals()$mttf))
  output$b10_val <- renderText(sprintf("%.6f", weibull_vals()$b10))
}
shinyApp(ui, server)

Resources

  • SOP-ENG-04 Product Reliability SOP

  • SOP-ENG-04-03 Statistical tool for reliability (Sample size, Type1 calculation)

  • MIL-HDBK-217F (Reliaility Prediction of Electronic Equipment)

  • DO-254 (Design Assurance Guidance for Airborne Electronic Hardware)

  • Commercial software (e.g. SAS Jmp, Minitab)

  • Free data analysis language (e.g. Rstudio, Python)