The Learning from Unintended Failures pattern
New ideas to significantly improve a system typically appear, to the observant, during a high-profile failure.
Why This Pattern?
It is a frustrating truth that software systems sometimes fail. These failures impact the system's users, therefore a primary goal of the system's developers is to minimise the failures and their impact. Fortunately, every failure provides learning opportunities to improve the resilience of the system.
The “Learning from Unintended Failures” pattern is a three-step approach where unintended system failures are resolved as quickly as possible to limit impact and then analysed to establish root cause. Improvement ideas are generated based on the analysis and then delivered.
This pattern appears very well-known—even obvious—to many at first glance. The real benefits from this approach are only gained, however, if the analysis is effective and thorough and the ideas are actually implemented. This pattern describes an effective method for gaining real system improvements following system failures.