Goal
Define clear ownership boundaries for backend or multi-runtime systems.
When to Use
- Logic is growing across several modules or services.
- A monolith needs clearer internal boundaries.
- A team is considering splitting work across APIs, workers, or serverless functions.
Instructions
- Identify domains, actors, and ownership boundaries.
- Separate synchronous request work from background or integration work.
- Decide what should stay together and what should be isolated.
- Explain the operational tradeoffs of the chosen split.
Constraints
- Do not split systems for status.
- Keep boundaries tied to ownership and runtime needs.
- Prefer simpler structures when the team is small.
Output Format
- domain map
- proposed boundaries
- responsibilities per boundary
- tradeoffs and risks
Examples
- "Should this stay a modular monolith or split into services?"
- "Where should job processing live relative to the API?"