NNNN. (결정을 한 문장으로 — 예: 메시지 브로커로 Kafka를 채택한다)
- 상태: Proposed | Accepted | Superseded by NNNN | Deprecated
- 결정일: YYYY-MM-DD
- 결정자: (참여자 이름 — 나중에 물어볼 사람을 알기 위해)
- 관련 문서: (Design Doc, PRD, 이슈 링크)
맥락 (Context)
어떤 상황에서 이 결정이 필요했는가. 당시의 제약 조건(일정, 인력, 기존 시스템, 비용)을 포함한다. 이 섹션이 부실하면 6개월 뒤 아무도 이 결정을 이해하지 못한다.
고려한 옵션 (Considered Options)
- 옵션 A — 한 줄 설명
- 옵션 B — 한 줄 설명
- 옵션 C — 한 줄 설명
옵션별 비교
| 기준 | 옵션 A | 옵션 B | 옵션 C |
|---|---|---|---|
| (예: 운영 복잡도) | 낮음 | 높음 | 중간 |
| (예: 팀 숙련도) | 있음 | 없음 | 있음 |
| (예: 비용) |
결정 (Decision)
옵션 X를 선택한다. 선택의 결정적 이유를 2~3문장으로. “모든 면에서 우월해서”가 아니라 어떤 트레이드오프를 감수하기로 했는지를 쓴다.
결과 (Consequences)
- 좋아지는 것:
- 감수하는 것 (단점, 새로 생기는 운영 부담):
- 후속 작업: (이 결정 때문에 해야 하는 일)
재검토 조건 (선택)
어떤 상황이 되면 이 결정을 다시 봐야 하는가. (예: 트래픽 10배, 팀 규모 변화)