Root cause vs system cause
Root cause asks what broke. System cause asks what keeps breaking it.
By Denys Kostin · Updated
Root cause analysis asks what broke. System cause analysis asks what keeps producing the break. For a one-off failure the first question is enough. For a problem that repeats, it is not.
Where root cause analysis works
A pump fails because a seal wore out. Replace the seal and the pump runs. A deployment fails because a config value was wrong once. Fix the value. Root cause analysis is a good tool when the cause sits at one point in time and the problem does not return.
Where it stops working
When a problem returns after a correct fix, the cause you removed was not the whole cause. Remove one and the system produces another. The five whys often end at a person or a missed step, and that ending feels like an answer. It is usually where the real question begins.
The difference in one view
An example
A deploy fails because someone skipped a step. The root cause is the skipped step, and the fix is a reminder to the team. Three weeks later it fails again. The system view asks: why is the step easy to skip, and what happens to the person who slows a release to do it? If the release date is rewarded and the step is invisible, skipping is the sensible choice. The lever is to make the step automatic, or to make the release owner responsible for the check.
Three questions to add after the five whys
- What keeps this running: is there a loop that feeds it?
- Who or what benefits when it stays?
- How long before anyone sees the result of their action?
Use both
Use root cause analysis for the single failure and system cause analysis for the repeat. Run the first, then ask whether the problem has happened before. If it has, start with the 5-minute method, and see why problems keep coming back for the common patterns.
Common questions
What is the difference between root cause and system cause?
A root cause is a single point that explains one failure. A system cause is a pattern, such as a loop, a reward, a rule or a delay, that keeps producing the same failure.
Does system cause analysis replace root cause analysis?
No. Root cause analysis suits one-off failures. System cause analysis is for problems that return after a correct fix.
How do I know which one to use?
Ask whether the problem has happened before. If yes, look for the system cause.
Further reading
- Systems thinking on Wikipedia. A broad overview of the field and its methods.
- Leverage Points: Places to Intervene in a System, Donella Meadows. The classic essay on where small changes can move a whole system.