Loosely Coupled, Highly Cohesive
Statement
Services encapsulate a single well-defined domain, expose stable contracts, and avoid direct knowledge of other services' internals.
Rationale
Tight coupling makes individual components impossible to change without coordinating across teams. Cohesive, loosely coupled services enable independent deployment and scaling.
Implications
- Services communicate via documented APIs or events
- Shared databases between services are prohibited
- Interface contracts are versioned and backward-compatible