mirror of
https://github.com/azaion/admin.git
synced 2026-04-22 22:36:33 +00:00
137 lines
3.9 KiB
Markdown
137 lines
3.9 KiB
Markdown
# Epic Template
|
|
|
|
Use this template for each epic. Create epics via the configured work item tracker (see `autodev/protocols.md` for tracker detection).
|
|
|
|
---
|
|
|
|
```markdown
|
|
## Epic: [Component Name] — [Outcome]
|
|
|
|
**Example**: Data Ingestion — Near-real-time pipeline
|
|
|
|
**epic_type**: [component | bootstrap | cross-cutting | tests]
|
|
**concern** (cross-cutting only): [logging | error-handling | config | authn | authz | feature-flags | telemetry | i18n | other-named-concern]
|
|
|
|
### Epic Summary
|
|
|
|
[1-2 sentences: what we are building + why it matters]
|
|
|
|
### Problem / Context
|
|
|
|
[Current state, pain points, constraints, business opportunities.
|
|
Link to architecture.md and relevant component spec.]
|
|
|
|
### Scope
|
|
|
|
**In Scope**:
|
|
- [Capability 1 — describe what, not how]
|
|
- [Capability 2]
|
|
- [Capability 3]
|
|
|
|
**Out of Scope**:
|
|
- [Explicit exclusion 1 — prevents scope creep]
|
|
- [Explicit exclusion 2]
|
|
|
|
### Assumptions
|
|
|
|
- [System design assumption]
|
|
- [Data structure assumption]
|
|
- [Infrastructure assumption]
|
|
|
|
### Dependencies
|
|
|
|
**Epic dependencies** (must be completed first):
|
|
- [Epic name / ID]
|
|
|
|
**External dependencies**:
|
|
- [Services, hardware, environments, certificates, data sources]
|
|
|
|
### Effort Estimation
|
|
|
|
**T-shirt size**: S / M / L / XL
|
|
**Story points range**: [min]-[max]
|
|
|
|
### Users / Consumers
|
|
|
|
| Type | Who | Key Use Cases |
|
|
|------|-----|--------------|
|
|
| Internal | [team/role] | [use case] |
|
|
| External | [user type] | [use case] |
|
|
| System | [service name] | [integration point] |
|
|
|
|
### Requirements
|
|
|
|
**Functional**:
|
|
- [API expectations, events, data handling]
|
|
- [Idempotency, retry behavior]
|
|
|
|
**Non-functional**:
|
|
- [Availability, latency, throughput targets]
|
|
- [Scalability, processing limits, data retention]
|
|
|
|
**Security / Compliance**:
|
|
- [Authentication, encryption, secrets management]
|
|
- [Logging, audit trail]
|
|
- [SOC2 / ISO / GDPR if applicable]
|
|
|
|
### Design & Architecture
|
|
|
|
- Architecture doc: `_docs/02_document/architecture.md`
|
|
- Component spec: `_docs/02_document/components/[##]_[name]/description.md`
|
|
- System flows: `_docs/02_document/system-flows.md`
|
|
|
|
### Definition of Done
|
|
|
|
- [ ] All in-scope capabilities implemented
|
|
- [ ] Automated tests pass (unit + blackbox)
|
|
- [ ] Minimum coverage threshold met (75%)
|
|
- [ ] Runbooks written (if applicable)
|
|
- [ ] Documentation updated
|
|
|
|
### Acceptance Criteria
|
|
|
|
| # | Criterion | Measurable Condition |
|
|
|---|-----------|---------------------|
|
|
| 1 | [criterion] | [how to verify] |
|
|
| 2 | [criterion] | [how to verify] |
|
|
|
|
### Risks & Mitigations
|
|
|
|
| # | Risk | Mitigation | Owner |
|
|
|---|------|------------|-------|
|
|
| 1 | [top risk] | [mitigation] | [owner] |
|
|
| 2 | | | |
|
|
| 3 | | | |
|
|
|
|
### Labels
|
|
|
|
- `component:[name]`
|
|
- `env:prod` / `env:stg`
|
|
- `type:platform` / `type:data` / `type:integration`
|
|
|
|
### Child Issues
|
|
|
|
| Type | Title | Points |
|
|
|------|-------|--------|
|
|
| Spike | [research/investigation task] | [1-3] |
|
|
| Task | [implementation task] | [1-5] |
|
|
| Task | [implementation task] | [1-5] |
|
|
| Enabler | [infrastructure/setup task] | [1-3] |
|
|
```
|
|
|
|
---
|
|
|
|
## Guidance Notes
|
|
|
|
- Be concise. Fewer words with the same meaning = better epic.
|
|
- Capabilities in scope are "what", not "how" — avoid describing implementation details.
|
|
- Dependency order matters: epics that must be done first should be listed earlier in the backlog.
|
|
- Every `component` epic maps to exactly one component. If a component is too large for one epic, split the component first.
|
|
- A `cross-cutting` epic maps to exactly one shared concern and parents exactly one shared implementation task. Component epics that consume the concern declare the cross-cutting epic as a dependency.
|
|
- Valid `epic_type` values:
|
|
- `bootstrap` — the initial-structure epic (always exactly one per project)
|
|
- `component` — a normal per-component epic
|
|
- `cross-cutting` — a shared concern that spans ≥2 components
|
|
- `tests` — the blackbox-tests epic (always exactly one)
|
|
- Complexity points for child issues follow the project standard: 1, 2, 3, 5, 8. Do not create issues above 5 points — split them.
|