Building a maintainable architecture for software landscapes
Dennis Bijlsma and Haiyun Xu explain how to measure the maintainability of software landscapes that consist of many systems communicating with each otherand what that means for the teams working on them. Along the way, they explore a number of trade-offs to consider when designing the landscape and share best practices for modern software landscape architectures.
Talk Title | Building a maintainable architecture for software landscapes |
Speakers | Dennis Bijlsma (Software Improvement Group), Haiyun Xu (Software Improvement Group) |
Conference | O’Reilly Software Architecture Conference |
Conf Tag | Engineering the Future of Software |
Location | London, United Kingdom |
Date | October 29-31, 2018 |
URL | Talk Page |
Slides | Talk Slides |
Video | |
In recent years, software has become a lot more interconnected. Functionality is no longer delivered by monolithic systems but by smaller systems and components that exchange data and communicate with each other. Developments like microservice architectures mean the notion of what can be considered a system is becoming both less clear and less relevant. However, most teams applying software quality techniques still primarily focus on individual systems. While this is great to ensure the system remains maintainable and flexible, it is also useful to focus on the maintainability of the landscape as a whole. The way the communication between systems is implemented influences the flexibility at which those systems can be changed. Moreover, it also determines the way the teams working on those systems will communicate with each other. Dennis Bijlsma and Haiyun Xu explain how to measure the maintainability of software landscapes that consist of many systems communicating with each other—and what that means for the teams working on them. Along the way, they explore a number of trade-offs to consider when designing the landscape and share best practices for modern software landscape architectures.