How software systems fail - Part 2a - Processes
Dr Richard Cook's 18 characteristics of complex systems failure applied to software. Part 2a of 3 focuses on three of the six characteristics, demonstrating how quality is lost at the process level.
Key insight
Software system failures are often more complex than they may seem. We are influenced by hindsight bias and our inclination to attribute them to a single root cause, leading us to overestimate their preventability. Developing our understanding of how these biases affect our judgement helps us create processes that limit their effect on our decision-making.
Top three takeaways
1. Attempting to achieve failure-free operations of complex software systems is futile. A failure can occur at any time and by anyone and is a characteristic of complex software systems.
2. Attributing complex systems failure to a single root cause is mistaken because failure results from many smaller issues.
3. Hindsight bias causes people to believe that failures were easier to prevent than they were. It also blocks investigators from fully understanding what events led to, during, and after the failure, limiting their ability to learn from failure.
Keep reading with a 7-day free trial
Subscribe to Quality Engineering Newsletter to keep reading this post and get 7 days of free access to the full post archives.