Independently deployed interfaces.
WHAT THEY ARE
An application composed of separately built and deployed parts.
WHAT PROBLEM THEY ADDRESS
Several teams deploying independently, without coordinating releases.
WHAT THEY REQUIRE
A way to compose parts at runtime or build time Shared conventions Shared design system Careful handling of shared dependencies
WHAT THEY COST
Substantial complexity Duplicate dependencies shipped Harder debugging Inconsistency between parts
WHEN THEY ARE WARRANTED
Genuinely independent teams A large application where coordinated release is impractical Gradual migration from an older application
THAT LAST ONE
The most defensible reason for most organisations.
WHEN THEY ARE NOT
One team Moderate application size Organisational problems being solved with architecture
WHAT TO ESTABLISH FIRST
Whether the coordination problem is real.
WHAT TO PREFER IF UNCERTAIN
One well-structured application.
WHY
The complexity is real, and it is difficult to reverse.