When an outcome isn't what we wanted, there are two questions to ask:
Did the system that produced this outcome work as intended?
If it did, is the system really designed correctly if this is its result?
This is a critical distinction to make, because if we're unable to implement a system to function as it's supposed to, tinkering with its design is useless.
On the other hand, if the implementation is solid, but its design doesn't produce the correct result, we need to go back to the drawing board.
No process is perfect. Sometimes we've done the best we can to optimize a system, and because the world is messy, anomalies are bound to happen.
But instead of just pointing fingers or bemoaning what happened, we are better off when we take a step back and assess the process holistically. When we do that, we see that we have three choices:
- Correct our implementation
- Redesign the system
- Let it go