Balancing Coupling in Software Design • Vlad Khononov • CodeCrafts 2023
SQUER Solutions SQUER Solutions
499 subscribers
287 views
0

 Published On Jun 21, 2023

This presentation was recorded at Code Crafts 2023
https://code-crafts.com/

We are used to treating coupling as the necessary evil. Hence, we aim to break systems apart into the smallest services possible, in the ever-lasting quest of decoupling everything.

But what results are we getting by following this reasoning? — Instead of the promised land of evolvable systems, many such “decouple everything” endeavors lead straight into the chains of distributed monoliths.

Can we do better? What if there is a better way to handle coupling in distributed systems? Or even, what if instead of fighting coupling, we can use it as a heuristic for designing systems that are actually evolvable and maintainable? That’s exactly what you will learn in this session: what coupling is, and how you can use it as a design tool.

We will start by taking a journey through time, and explore the different models of evaluating coupling. Next, we will combine the existing knowledge into a coherent model — a simple function for evaluating a system’s decomposition into components. This function will allow you to assess the expected effort for evolving a system and use it as a heuristic for optimizing architectural design decisions.

  / codecraftsvie  
  / squerdev  
  / 26261698  

show more

Share/Embed