4 ms·
Or if you can't minimize complexity - because the problems are irreducibly complex - try and contain and partition the complexity, so that there's a limit on th
by barrkel 6y ago
Or if you can't minimize complexity - because the problems are irreducibly complex - try and contain and partition the complexity, so that there's a limit on the complexity that developers need to be aware of when working on any given area.
Complexity partitioning is fractal, from functions to objects to modules to services to deployments. The architectural focus is higher up the stack.
Avoiding complexity spillage, where distributed areas of a large application share global invariants, is a challenge, particularly when trying to scale up the development team, which will force one's hand on splitting out modules and services or service-like things (e.g. FaaS jobs).