The Cost of Assumed Connections
An earlier exploration of how implicit dependencies undermine system reliability.
Every system has connections that nobody drew on the diagram.
These assumed connections — implicit dependencies, undocumented data flows, shared databases accessed by services that “shouldn’t” know about each other — are the most common source of system failures that surprise everyone.
Why assumed connections persist
They persist because they work. For months or years, the implicit dependency delivers the right data at the right time. No contract exists, but none is needed. Until the upstream system changes, and the downstream system breaks in a way that nobody anticipated because nobody knew the connection existed.
Making connections explicit
The fix is not more monitoring or better alerting. The fix is making every connection visible. If system A depends on system B, that dependency should be documented, tested, and owned.
This is tedious work. It is also the only work that prevents the class of failures that post-mortems describe as “unexpected.”