Maintaining maintainability
Alright, I assume that you believe me that maintainability positively influences developer joy, productivity, and decision-making. How do we know that the changes we make to our code base increase (or at least don’t decrease) maintainability? How do we manage maintainability over time?
The answer to that question is to create and maintain an architecture that makes it easy to create maintainable code. A good architecture makes it easy to navigate the code base. In an easily navigable code base, it’s a breeze to modify existing features or add new features. The dependencies between the components of our application are clear and not tangled. In summary, good architecture increases maintainability:
Figure 1.5 – Software architecture influences maintainability
By extension, a good architecture increases developer joy, developer productivity, developer retention, and decision-making. We could go on and find...