Ref-021: Epic Template Structure and Authoring Process

Type

Reference Documentation

Purpose

Defines the canonical template structure for bounded context epic files (*-epic.md) in docs/specs/**.

Template Structure

Required Sections

Epic

User Journey

Short narrative describing what the bounded context does and the primary user journey it enables.

Jobs to be Done & EARS Requirements

Each job is a discrete capability with a user story and a structured EARS requirement.

Domain Entities Summary

Summarize core domain concepts that the epic implies.

Integration Points

List external systems or other bounded contexts this epic depends on or integrates with.

Optional Sections

Canonical Template

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# <Context> Epic

## User Journey
The **<Context>** bounded context <one paragraph describing purpose, scope, and primary journey>.

## Jobs to be Done & EARS Requirements

### Job: <Action-oriented job name>
**User Story**: As a <persona>, I want <capability> so that <benefit>.

**EARS Requirement**:
- **While** <system state>, **when** <trigger/command/query/event>, **the** <context> context **shall**:
  1. <step or expected outcome>
  2. <step or expected outcome>
  3. <step or expected outcome>

---

### Job: <Next job name>
**User Story**: As a <persona>, I want <capability> so that <benefit>.

**EARS Requirement**:
- **While** <system state>, **when** <trigger/command/query/event>, **the** <context> context **shall**:
  1. <step or expected outcome>
  2. <step or expected outcome>

---

## Domain Entities Summary

### Root Aggregates
- **<AggregateName>**: <Short description>

### Value Objects
- **<ValueObjectName>**: <Short description>

### Policy Rules
- **<PolicyName>**: <Short description>

## Integration Points
- **<Context or System>**: <Reason for integration>

## Success Metrics
- **<MetricName>**: <Target>

## Non-Functional Requirements
- **NFR-XXX**: <Statement>

## Risks and Open Questions
- <Risk or open question>

Authoring Guidelines