Skip to content

Contributing Factor Chains

Why It Matters

Failures don't just happen—they have developmental histories. A contributing factor chain makes visible the temporal unfolding that hindsight collapses into simultaneity. It reveals intervention points earlier in the causal chain, often when consequences are less severe and correction is cheaper. It distinguishes enabling conditions (factors that created vulnerability) from triggering events (factors that activated the vulnerability).

The Key Move

Start from the failure event and work backward chronologically. At each step, ask: "What had to exist or occur immediately prior for this to happen?" Document not just what happened, but when the condition was created. Distinguish immediate causes (seconds to minutes prior), preconditions (hours to days prior), and latent conditions (weeks to years prior). Create a timeline showing how each factor made later factors more likely. Stop when you reach organizational or design decisions that created structural vulnerability.

Classic Application

The Deepwater Horizon oil rig explosion (2010). Backward chain revealed: immediate cause was methane ignition from a spark; precondition was methane leak from failed cement seal; earlier precondition was decision to use faster but less reliable cement design; still earlier was pressure testing misinterpretation; latent condition was organizational culture prioritizing schedule over verification; deeper latent condition was regulatory system allowing industry self-certification. Each link in the chain represents an intervention point.

Surprising Application

Software deployment failures. A production outage traces back through: immediate trigger of configuration error, precondition of insufficient staging environment testing, earlier precondition of time pressure preventing full test cycle, latent condition of understaffing the DevOps team, deeper latent condition of organizational incentive structure rewarding feature speed over reliability. The chain makes visible that "developer error" is late in a long causal sequence.

Failure Modes

Infinite regress—you can always trace back further. Requires judgment about where to stop (typically at policy/design decisions). Can create false precision—not every earlier condition is equally important, but the chain treats them symmetrically. Temptation to stop at the first human error rather than tracing through to systemic factors. Can miss parallel chains that converge (treats causation as linear when it's networked).

Go Deeper

Reason, The Human Contribution, Chapter 7; Leveson, Engineering a Safer World, pp. 178-203; Heinrich, Industrial Accident Prevention (1931), pp. 13-20 (historical origin of chain thinking).