That is kind of true, but the telemetry is transformed first, so there is an interdependency between the data across the modules and processes.
For example, you fire from process A some telemetry that contains a boolean value. You receive the telemetry in process B, and for some reason you need to transform it into a 0 or 1 and save it into your database. You test these things separately. Now if someone changes some code so that A no longer produces a boolean, but instead produces a string (or a 0 or 1, doesn’t matter). They also change A’s tests. All looks to be fine. But after deployment, B tries to consume the telemetry and now it breaks, because its format has changed.
You can imagine a similar case where data isn’t transformed in this way in B, but instead filtered, merged etc.






















