Types of coupling
In the context of micro-services architecture, learned from Building microservices.
Domain coupling
One service needs to interact with a different service. This is mostly unavoidable.
Passthrough coupling
One service passes data to a different service, because the data is needed by the other service further downstream. It can be problematic because if they need it in a different format or need different items, than we may need to make changes as well.
Common coupling
In common coupling two of more services use a common data source. Not desirable.
Content coupling
Very similar to common coupling, the difference is that the external system can directly make changes to the internal state. Should be avoided.