---
type: template
domain: product
role: PM·PO·BA
status: active
last-reviewed: 2026-07-27
---

# 요구사항·완료 조건

> 요구는 관찰 가능한 행동으로, 완료 조건은 실행하면 PASS/FAIL이 나오는 문장으로 쓴다. 외주에서 완료 조건은 곧 **검수 기준**이다 — 착수 전 발주사와 합의된 것만 유효하고, 이 표가 테스트케이스·테스트결과서·검수확인서의 원본이 된다.

## 요구사항 작성 규칙

- 사용자 스토리: **{현업 역할}로서 {업무 목표}를 원한다. 그래야 {업무 가치}.**
- 수용 기준: **Given {전제} / When {행동} / Then {관찰 가능한 결과}.**
- 요구사항은 `what`, 설계는 `how`다. 구현 수단은 발주사 기술 제약(지정 스택·인프라)이 아닌 한 쓰지 않는다.
- `빠르게`, `직관적으로`, `적절히`는 수치 또는 사람 판정자·기준표로 바꾼다 — 검수일에 해석이 갈리는 문장이 분쟁의 시작이다.
- 모든 요구는 RFP 항목·계약 조항과 연결한다. 근거 없는 요구는 CR 후보다.

## 기능 요구사항

| ID | 사용자 스토리 | 구분 | RFP·계약 근거 | 업무 규칙 | Owner | 검증 방법 | 상태 |
|---|---|---|---|---|---|---|---|
| `FR-001` | `{역할}로서 {목표}를 원한다. 그래야 {가치}.` | `계약 Must / CR 후보` | `{RFP 번호}` | `{BR ID}` | `{역할}` | `E2E / 통합 / 수동 기준표` | `Draft / 발주사 합의` |

### FR-001 수용 기준

| AC ID | Given | When | Then | 검증 수단 | 증거 위치 |
|---|---|---|---|---|---|
| `FR-001-AC1` | `{전제 상태}` | `{사용자 행동}` | `{관찰 결과}` | `{테스트·명령}` | `{QA가 채움}` |
| `FR-001-AC2` | `{오류·권한·빈 상태}` | `{행동}` | `{복구 가능한 결과}` | `{테스트}` | `{QA가 채움}` |

## 비기능 요구사항

| ID | 범주 | 요구 | 임계값 | 조건·표본 | 측정 도구·명령 | 합의 근거 | Owner |
|---|---|---|---|---|---|---|---|
| `NFR-001` | `성능` | `{행동}` | `{예: 응답 p95 < 3s}` | `{동시 사용자·데이터량}` | `{측정 도구}` | `{계약·회의록}` | `{역할}` |
| `NFR-002` | `가용성` | `{행동}` | `{예: 월 99.5%}` | `{기간}` | `{모니터링}` | `{SLA 조항}` | `{역할}` |
| `NFR-003` | `보안·개인정보` | `{통제}` | `{0건·발주사 보안 정책값}` | `{범위}` | `{스캔·테스트}` | `{정책 문서}` | `{역할}` |
| `NFR-004` | `데이터 정합` | `{이관·연동 정확성}` | `{일치율 100% 등}` | `{대상 건수}` | `{검증 스크립트}` | `{합의}` | `{역할}` |
| `NFR-005` | `접근성·표준` | `{기준}` | `{WCAG AA·웹 표준 등}` | `{화면}` | `{axe+키보드}` | `{RFP 요건}` | `{역할}` |

> NFR 임계값은 발주사 환경에서 측정 가능한 값으로 합의한다. 임계값 없는 NFR은 검수일에 "느린데요"로 돌아온다.

## 완료 조건 3종 세트

### 기능 (검수 시나리오)

| DC ID | 연결 요구 | 실행·관찰 절차 | PASS | FAIL | 판정자 |
|---|---|---|---|---|---|
| `DONE-F-01` | `{FR-001}` | `{명령 또는 검수 시나리오}` | `{기대 출력}` | `{그 외}` | `QA·Judge → 발주사 검수자` |

### 품질

| DC ID | 연결 NFR | 실행·측정 절차 | PASS 임계값 | 증거 형식 (테스트결과서 첨부) |
|---|---|---|---|---|
| `DONE-Q-01` | `{NFR-001}` | `{명령}` | `{수치}` | `{리포트·측정 기록}` |

### 회귀

| DC ID | 범위 | 명령·검사 | PASS | 미수행 시 처리 |
|---|---|---|---|---|
| `DONE-R-01` | `{전체/영향 영역}` | `{test command}` | `exit 0, 실패 0건` | `PASS 금지 또는 CONDITIONAL` |

## 사람 판정이 필요한 조건

| ID | 대상 | 판정자 | 기준표·척도 | 표본 | 수정 라운드 상한 | PASS | 기록 위치 |
|---|---|---|---|---|---|---|---|
| `HUMAN-01` | `{디자인 톤·업무 적합성}` | `{발주사 검수자·역할}` | `{착수 전 합의한 체크리스트}` | `{화면·사례}` | `{계약상 N회}` | `{조건}` | `{검수 기록}` |

> 판정자가 발주사면 기준표와 수정 라운드 횟수를 착수 전에 합의한다 — 기준표 없는 발주사 판정은 무한 수정이다.

## Definition of Ready

- [ ] 원본 계약·RFP 항목과 요구 ID가 연결됐다.
- [ ] 범위와 범위 밖(Out of Scope)이 명시됐다.
- [ ] 수용 기준·NFR·의존성과 테스트 방법이 있다.
- [ ] 검수 기준이 발주사와 합의됐거나 합의 일정·Owner가 있다.
- [ ] 구현자가 "완료가 무엇인지" 재질문하지 않아도 된다.

## Definition of Done

- [ ] 실제 변경물이 모든 계약 Must 요구를 충족한다.
- [ ] 기능·품질·회귀 조건의 실행 증거가 테스트결과서 형식으로 있다.
- [ ] 미수행 검사는 `미수행: 이유·위험`으로 표시됐다.
- [ ] Critical/High 결함이 해소되거나 양측 서면의 예외 승인이 있다.
- [ ] 독립 QA·Judge의 판정이 연결됐고 발주사 검수에 제출 가능하다.

## 관련 문서

- [[요구사항과 완료 조건]]
- [[05_요구사항 추적표 RTM]]
- [[99_PM·PO·BA 브리핑 템플릿]]
