The moment we introduce strong coupling between our services, we lose the potential advantages of a microservice architecture. This article addresses the challenge by introducing the concept of a Change Coupling analysis. Change Coupling is a behavioral code analysis technique that uncovers logical dependencies across services and team boundaries. Let’s see it in action. By Adam Tornhill.
modules repeatedly change together over time., Source: https://codescene.com/blog/visualize-microservice-dependencies-in-team-context/")
Source: https://codescene.com/blog/visualize-microservice-dependencies-in-team-context/
The main concepts discussed:
- Prioritize dependencies that cross team boundaries
- Introducing change coupling: uncover logical dependencies
- Automated change coupling discovery
- Adding the team dimension
Microservices is a high-discipline architecture where loose dependencies are key. Failing that, we’ll face a situation where it gets hard for a team to operate in an autonomous way. Just like we expect alerts from our production environment, we really should monitor the key architectural properties so that we can act upon dependencies early. Nice one!
[Read More]