Software → Software Architecture
Service Boundary
The explicit scope of responsibility, data ownership, behavior, and contracts assigned to a service.
Service Boundary
A Service Boundary defines what a service owns, what it is responsible for, which data and invariants it controls, and how other parts of a system interact with it.
Good boundaries align with cohesive business capabilities or technical platform capabilities. They reduce accidental coupling by keeping internal models private and exposing deliberate APIs, events, or commands.
Boundary tests
- Can the service explain its responsibility in one clear sentence?
- Does it own the data needed to enforce its invariants?
- Can it evolve without coordinating every change with many consumers?
- Are its contracts smaller and more stable than its implementation?
- Does its failure mode remain understandable and containable?
Boundaries that are too small create chatty distributed systems. Boundaries that are too broad create large, tightly coupled services with unclear ownership.