Skip to content

Microservice Candidate Template

Use this when proposing that a catalog item be built as a standalone microservice rather than a module. It forces an explicit justification against the microservice justification rule. Standalone runtimes are the exception, not the default (ADR-0011).

Template

# Microservice Proposal: <Name> (CS-SVC-XXXX)

## Justification (must satisfy most)
- [ ] Independent lifecycle / release cadence
- [ ] Clear bounded context ownership
- [ ] Distinct scalability profile
- [ ] Distinct data ownership
- [ ] Distinct security/compliance boundary
- [ ] External API / product boundary
- [ ] Independent team ownership

If fewer than ~4 are checked, deliver as a **module-in-service** instead.

## Service Specification
- Bounded context, owned aggregates, data store.
- APIs (contract-first) and events (in/out).
- Scaling and SLO targets.
- Security and compliance posture.

## Decommission / Merge Criteria
- Conditions under which this would fold back into a module.