As in life, so in software: Boundaries are critical.
Without setting the correct boundaries we can get stuck maintaining a logically broken system potentially for years. You may be designing a greenfield application using a microservices architecture, with the goals of achieving speed, scale, and flexibility. Or perhaps you’re attempting drastic new feature changes to an existing system with a more monolithic design. However, without doing the work upfront to define the true business boundaries of each service, you end up with a brittle, tightly-coupled system that negates all these longed-for benefits or doubles down on a coupled monstrosity. So how do you know you’re setting the right boundaries?
In this session, we explore some tactical tools for identifying those boundaries and show you how to evaluate them via a change scenario to an existing system. The exercise focuses attention on considerations for data, reliability, and the human factor of ownership and customer experience. We also discuss some pitfalls to avoid coupling in your system. Watch and learn how to set boundaries that enable true autonomy and help you get the most value out of your distributed architecture.