PRD/TDD 작성법
실습 시간: 1시간 필요 도구: ChatGPT, Claude, 또는 Gemini (문서 피드백용) 산출물: 실무 적용 가능한 PRD + TDD
📚 학습 전 준비 5장. 자동화에서 Vibe Coding 개념을 먼저 학습하세요. PRD/TDD는 AI 자동화 프로젝트를 명확히 정의하는 핵심 문서입니다.
📚 공식 문서
| 도구 | 공식 문서 | 특징 |
|---|---|---|
| ChatGPT | OpenAI Help | 대화형 피드백, 문서 개선 |
| Claude | Claude.ai | 긴 문서 분석, 구조화 |
| Gemini | Gemini Apps | Google Workspace 연동 |
PRD/TDD가 왜 중요한가?
기존 방식의 문제
flowchart LR
A["💭 막연한 아이디어"] --> B["🤖 AI에게 요청"]
B --> C["❌ 애매한 결과"]
C --> D["🔄 계속 수정 요청"]
D --> E["😫 3시간 낭비"]
style E fill:#ff6b6b
문제점
- AI가 무엇을 만들어야 할지 모름
- 요구사항이 바뀌면 처음부터 다시
- 검증 기준이 없어 완성도 판단 어려움
PRD/TDD 작성 후
flowchart LR
A["📝 명확한 PRD"] --> B["🤖 AI에게 전달"]
B --> C["✅ 정확한 결과"]
C --> D["⚡ 한 번에 완성"]
D --> E["😊 30분 완료"]
style E fill:#51cf66
효과
- 요구사항이 명확해 AI가 정확히 이해
- 한 번에 원하는 결과 도출
- 검증 기준으로 품질 확인
PRD vs TDD
| 문서 | 질문 | 작성자 | 독자 |
|---|---|---|---|
| PRD | 무엇을? 왜? | 기획자 | 개발자/AI |
| TDD | 어떻게? | 개발자/AI | 개발자 |
워크플로우
PRD (당신) → TDD (AI) → 코드 (AI) → 실행 (당신)
Part 1: PRD 기본 개념 (10분)
PRD (Product Requirements Document)
“무엇을 만들 것인가”를 정의하는 문서
핵심 구성 요소
- 배경: 왜 이게 필요한가?
- 목표: 무엇을 달성할 것인가?
- 기능: 어떤 기능이 필요한가?
- 제약: 한계는 무엇인가?
템플릿
아래 템플릿을 복사해서 자신의 프로젝트에 맞게 채워보세요.
# [프로젝트명] PRD
## 1. 개요
| 항목 | 내용 |
| ---------- | ---- |
| 프로젝트명 | |
| 작성자 | |
| 작성일 | |
| 버전 | 1.0 |
## 2. 배경 및 목적
### 현재 문제
- 문제 1:
- 문제 2:
- 문제 3:
### 해결 목표
- 목표 1:
- 목표 2:
### 성공 지표 (KPI)
- 지표 1:
- 지표 2:
## 3. 사용자 정의
### 타겟 사용자
- 누구:
- 기술 수준:
- 사용 빈도:
### 사용자 스토리
[사용자]로서, [목적]을 위해, [기능]을 원한다.
예시:
"해외영업 담당자로서, 시간 절약을 위해,
반복 문의에 자동 응답되기를 원한다."
## 4. 기능 요구사항
### 핵심 기능 (Must Have)
| 기능 | 설명 | 우선순위 |
| ---- | ---- | -------- |
| | | P0 |
| | | P0 |
| | | P0 |
### 부가 기능 (Nice to Have)
| 기능 | 설명 | 우선순위 |
| ---- | ---- | -------- |
| | | P1 |
| | | P2 |
### 제외 사항 (Out of Scope)
- 이번 버전에서 하지 않을 것:
-
## 5. 비기능 요구사항
- 성능: (예: 응답 시간 5초 이내)
- 보안: (예: 개인정보 암호화)
- 가용성: (예: 24시간 운영)
## 6. 제약 조건
- 예산:
- 기술:
- 시간:
- 법적/규정:
## 7. 일정
| 단계 | 기간 | 산출물 |
| ------- | ---- | ------ |
| Phase 1 | | |
| Phase 2 | | |
예시 PRD들
예시 1: 견적서 자동 생성기
# 견적서 자동 생성기 PRD
## 1. 개요
| 항목 | 내용 |
| ---------- | ---------- |
| 프로젝트명 | QuoteMaker |
| 작성자 | 김영업 |
| 작성일 | 2024-01-15 |
| 버전 | 1.0 |
## 2. 배경 및 목적
### 현재 문제
- 견적서 1건 작성에 30분 이상 소요
- Excel 수동 입력으로 계산 실수 발생
- 고객별 할인율 적용 혼란
- 견적서 양식 일관성 부족
### 해결 목표
- 견적서 작성 시간 5분 이내로 단축
- 자동 계산으로 오류 0건 달성
- 표준화된 양식 자동 적용
### 성공 지표 (KPI)
- 작성 시간: 30분 → 5분
- 오류율: 월 5건 → 0건
- 담당자 만족도: 4/5 이상
## 3. 사용자 정의
### 타겟 사용자
- 누구: 해외영업팀 (5명)
- 기술 수준: Excel 중급, 코딩 불가
- 사용 빈도: 일 5-10건
### 사용자 스토리
"영업 담당자로서, 빠른 견적 발송을 위해,
제품 선택만으로 견적서가 생성되기를 원한다."
## 4. 기능 요구사항
### 핵심 기능 (Must Have)
| 기능 | 설명 | 우선순위 |
| -------------- | ---------------------- | -------- |
| 제품 선택 | 드롭다운에서 제품 선택 | P0 |
| 자동 가격 계산 | 수량/할인율 자동 반영 | P0 |
| PDF 생성 | 표준 양식 PDF 출력 | P0 |
| 이메일 발송 | 생성된 PDF 첨부 발송 | P0 |
### 부가 기능 (Nice to Have)
| 기능 | 설명 | 우선순위 |
| --------- | ---------------- | -------- |
| 견적 이력 | 과거 견적 검색 | P1 |
| 다국어 | 영어/일어/중국어 | P2 |
### 제외 사항 (Out of Scope)
- 계약서 자동 생성
- 결제 연동
- 재고 연동
## 5. 비기능 요구사항
- 성능: PDF 생성 10초 이내
- 보안: 가격 정보 접근 제한
- 가용성: 업무 시간 (9-18시) 99%
## 6. 제약 조건
- 예산: 무료 도구 사용
- 기술: Google Workspace 기반
- 시간: 2주 내 MVP
예시 2: 바이어 리서치 봇
# 바이어 리서치 자동화 PRD
## 1. 개요
| 항목 | 내용 |
| ---------- | ---------- |
| 프로젝트명 | BuyerScout |
| 작성자 | 이마케팅 |
| 작성일 | 2024-01-15 |
| 버전 | 1.0 |
## 2. 배경 및 목적
### 현재 문제
- 신규 바이어 발굴에 주 10시간+ 소요
- 수동 검색으로 놓치는 잠재 바이어
- 바이어 정보 분산 (이메일, 메모, 엑셀)
- 팔로업 타이밍 놓침
### 해결 목표
- 바이어 리서치 시간 70% 단축
- 잠재 바이어 정보 중앙화
- 체계적 팔로업 관리
### 성공 지표 (KPI)
- 리서치 시간: 주 10시간 → 3시간
- 월간 신규 컨택: 20건 → 50건
- 응답률: 10% → 15%
## 4. 기능 요구사항
### 핵심 기능 (Must Have)
| 기능 | 설명 | 우선순위 |
| -------------- | --------------------------- | -------- |
| 웹 검색 자동화 | 키워드 기반 바이어 검색 | P0 |
| 정보 추출 | 회사명, 담당자, 이메일 추출 | P0 |
| 데이터베이스 | Google Sheets 자동 기록 | P0 |
| 팔로업 알림 | 연락 주기 리마인더 | P0 |
TDD 작성 실습
TDD (Technical Design Document)
“어떻게 만들 것인가”를 설계하는 문서
TDD 템플릿
# [프로젝트명] TDD
## 1. 시스템 개요
### 아키텍처 다이어그램
[입력] → [처리] → [출력]
### 주요 컴포넌트
1.
2.
3.
## 2. 기술 스택
| 영역 | 기술 | 선택 이유 |
|------|------|----------|
| 언어 | | |
| AI | | |
| 저장소 | | |
| 호스팅 | | |
## 3. 데이터 흐름
1. Step 1:
2. Step 2:
3. Step 3:
## 4. AI 프롬프트 설계
### 메인 프롬프트
[역할 지정] [입력 데이터] [출력 형식] [제약 조건]
## 5. 데이터 모델
```json
{
"field1": "type",
"field2": "type"
}
6. 에러 처리
| 에러 상황 | 처리 방법 |
|---|---|
7. 보안 고려
---
## Part 2: Level 1 - 따라하기 (20분)
> **목표**: 제공된 예시 PRD를 보고 문서 구조를 이해하기
앞에서 제공한 **"견적서 자동 생성기 PRD"** 예시를 자세히 읽어보세요.
---
### 읽기 가이드
각 섹션의 **역할**을 이해하세요:
**1. 개요**
- 프로젝트의 신원 정보
- 버전 관리용
**2. 배경 및 목적**
- ✅ **구체적 문제**: "30분 소요" (측정 가능)
- ✅ **명확한 목표**: "5분 이내로 단축"
- ✅ **KPI**: 숫자로 성공 기준 정의
**3. 사용자 정의**
- 누가 쓸 것인가
- 기술 수준이 어떤가
- 얼마나 자주 쓸 것인가
**4. 기능 요구사항**
- ✅ **Must Have**: 없으면 의미 없는 기능
- ⭕ **Nice to Have**: 있으면 좋은 기능
- ❌ **Out of Scope**: 이번에는 안 할 것
---
### AI 피드백 요청하기
예시 PRD를 ChatGPT/Claude에게 분석 요청:
다음 PRD를 분석해주세요:
[견적서 자동 생성기 PRD 전체 복사]
분석 요청:
- 이 PRD가 잘 작성되었나요?
- 장점 3가지
- 개선할 점 3가지
- 실제 개발 시 막힐 수 있는 부분
---
### ✓ Level 1 체크 포인트
□ 견적서 자동 생성기 PRD를 전체 읽음 □ 각 섹션의 역할을 이해함 □ AI에게 PRD 분석을 요청함 □ “좋은 PRD”의 기준을 이해함
---
## Part 3: Level 2 - 응용하기 (20분)
> **목표**: 제공된 PRD를 자신의 상황에 맞게 수정하기
이제 **"견적서 자동 생성기"**를 **자신의 업종/업무**에 맞게 바꿔보세요.
---
### 변경 포인트 1: 도메인 변경
**예시**: 견적서 → 제안서
수정할 부분:
- 프로젝트명
- 현재 문제 (제안서 작성 시간?)
- 기능 (제안서에 필요한 것?)
- 사용자 (누가 쓸 것?)
---
### 변경 포인트 2: 규모 조정
**예시**: 5명 팀 → 1인 프리랜서
수정할 부분:
- 사용자 정의
- 사용 빈도 (일 10건 → 주 2건?)
- 기능 우선순위 (이메일 발송 필요?)
---
### 변경 포인트 3: 기술 제약
**예시**: Google Workspace → Microsoft 365
수정할 부분:
- 제약 조건
- 기술 스택 (Sheets → Excel?)
- 통합 방식
---
### AI와 함께 수정하기
다음 PRD를 [제안서 생성기]로 변경하고 싶습니다:
[원본 PRD 복사]
변경 사항:
- 견적서 → 제안서
- 해외영업팀 → 컨설팅팀
- 일 10건 → 주 2건
수정된 PRD를 작성해주세요.
---
### ✓ Level 2 체크 포인트
□ 원본 PRD를 자신의 도메인으로 변경함 □ 사용자와 빈도를 실제 상황에 맞춤 □ 기술 제약을 현실적으로 조정함 □ AI에게 수정 버전 검토를 요청함
---
## Part 4: Level 3 - 새로 만들기 (20분)
> **목표**: 완전히 새로운 PRD를 처음부터 작성하기
이제 **자신만의 자동화 프로젝트** PRD를 작성하세요.
---
### 주제 선택
아래 중 하나를 선택하거나 자신만의 주제:
#### 주제 1: 이메일 자동 분류기
**문제**: 바이어 문의 이메일을 수동으로 분류하는데 시간 소요
**기능**: 긴급/일반/스팸 자동 분류, 담당자 자동 배정
#### 주제 2: 시장 조사 자동화
**문제**: 특정 국가/제품 시장 정보 수집에 주 10시간 소요
**기능**: 키워드 기반 자동 검색, 정보 요약, 주간 리포트
#### 주제 3: FAQ 챗봇
**문제**: 같은 질문에 반복 답변 (일 20건)
**기능**: 질문 이해, 답변 검색, 자동 응답
#### 주제 4: 재고 알리미
**문제**: 재고 부족을 뒤늦게 알아차림
**기능**: 재고 모니터링, 임계값 알림, 발주 추천
#### 주제 5: 나만의 주제
**자신의 반복 업무**를 떠올려보세요!
---
### Step-by-Step 작성 가이드
#### Step 1: 문제 정의 (5분)
AI와 함께:
다음 업무를 자동화하고 싶습니다:
[업무 설명]
이 업무의 문제점을 구체적으로 정의해주세요:
- 현재 소요 시간
- 발생 빈도
- 반복성 여부
- 자동화 시 절감 효과
---
#### Step 2: PRD 초안 작성 (10분)
위 문제를 해결하는 자동화 프로젝트 PRD를 작성해주세요.
포함 사항:
- 프로젝트명 (간결하고 설명적)
- 배경 및 목적 (문제, 목표, KPI)
- 사용자 정의 (나, 또는 팀)
- 핵심 기능 3가지 (Must Have)
- 제약 조건 (예산 무료, 기술 수준 등)
템플릿을 참고하되, 실무에 즉시 적용 가능하게 작성해주세요.
---
#### Step 3: PRD 검증 (5분)
작성된 PRD를 다시 AI에게:
다음 PRD를 검토해주세요:
[작성한 PRD]
검증 항목:
- 문제가 구체적이고 측정 가능한가?
- 기능이 문제 해결에 충분한가?
- 제약 조건이 현실적인가?
- 빠진 중요한 요소가 있나?
- 개선 제안
실무자 관점에서 솔직하게 피드백해주세요.
---
#### Step 4: 최종 수정 (Optional)
AI 피드백을 바탕으로 PRD를 개선하세요.
---
### ✓ Level 3 체크 포인트
□ 자신의 업무 문제를 명확히 정의함 □ AI와 함께 PRD 초안을 작성함 □ AI에게 PRD 검증을 요청함 □ 피드백을 반영해 PRD를 개선함 □ 실무에 즉시 적용 가능한 수준으로 완성함
---
## Part 5: PRD로 AI에게 일 시키기 (10분)
PRD를 완성했다면, 이제 AI에게 실제 작업을 시킬 차례입니다.
---
### 1. PRD → TDD 생성
다음 PRD를 기반으로 TDD(Technical Design Document)를 작성해주세요:
[작성한 PRD 전체 복사]
포함 사항:
- 시스템 아키텍처 (플로우차트)
- 기술 스택 추천 및 선택 이유
- 데이터 흐름 (단계별)
- 주요 컴포넌트와 역할
- AI 프롬프트 설계
- 에러 처리 방안
- 보안 고려사항
제약 조건을 준수하면서 최적의 설계를 제안해주세요.
**AI 응답 검증**:
- ✅ PRD의 모든 기능을 커버하는가?
- ✅ 제약 조건(예산, 기술)을 준수하는가?
- ✅ 실제 구현 가능한 기술 스택인가?
---
### 2. TDD → 코드 생성
다음 TDD를 기반으로 실행 가능한 코드를 작성해주세요:
[AI가 생성한 TDD 복사]
요구사항:
- [Google Colab / Apps Script / Python] 사용
- 주석으로 각 부분 설명
- 테스트 코드 포함
- README (사용 방법) 포함
Step-by-step으로 코드를 제공해주세요.
---
### 3. 점진적 개선 요청
초기 코드가 완성되면:
현재 코드에 다음 기능을 추가해주세요:
- [기능 1]
- [기능 2]
기존 코드와 통합되도록 수정해주세요.
---
### 실전 팁
**✅ DO**
- PRD/TDD를 **전체** 복사해서 전달
- 구체적인 요구사항 명시
- 한 번에 하나씩 단계적으로
**❌ DON'T**
- "멋진 앱 만들어줘" (너무 애매)
- PRD 없이 바로 코드 요청
- 한 번에 모든 기능 요구
---
## Part 6: TDD 작성 (Optional)
PRD를 직접 만들었다면, TDD도 직접 작성해볼 수 있습니다.
---
### TDD 핵심 구성
앞의 TDD 템플릿을 참고하되, 다음에 집중:
**1. 기술 스택 선택**
| 요소 | 선택 | 이유 |
|------|------|------|
| 언어/플랫폼 | Python / Apps Script | 학습 곡선, 무료 |
| AI API | Gemini / GPT | 가격, 성능 |
| 저장소 | Google Sheets | 기존 도구 활용 |
**2. 데이터 흐름**
입력 → 처리 → AI 분석 → 출력 ↓ ↓ ↓ ↓ [구체적 단계 명시]
**3. AI 프롬프트 설계**
[역할]: 너는 ~를 도와주는 AI야 [맥락]: 다음 데이터를 봐: ~ [제약]: ~만 사용해서 [출력]: ~형식으로 답변해줘
---
### AI와 함께 TDD 작성
다음 PRD의 TDD를 작성하고 싶습니다:
[PRD 복사]
특히 다음 사항을 고려해주세요:
- 예산: 무료
- 기술 수준: 코딩 초급
- 배포: 팀과 공유 필요
실현 가능한 기술 스택과 아키텍처를 제안해주세요.
---
## 핵심 정리
### 3단계 학습 복습
| 레벨 | PRD | 목표 |
|------|-----|------|
| **Level 1** | 예시 읽기 | 구조 이해 |
| **Level 2** | 예시 수정 | 응용력 |
| **Level 3** | 새로 작성 | 실전 적용 |
---
### PRD 품질 체크리스트
□ 문제가 구체적이고 측정 가능한가? □ 목표에 KPI가 포함되었는가? □ 사용자가 명확히 정의되었는가? □ 기능이 Must Have / Nice to Have로 구분되었는가? □ 제약 조건이 현실적인가? □ Out of Scope가 명시되었는가? □ AI에게 피드백을 받았는가?
---
### 실무 적용 워크플로우
```mermaid
flowchart LR
A["💡 문제 발견"] --> B["📝 PRD 작성"]
B --> C["🤖 AI에게 TDD 요청"]
C --> D["💻 AI에게 코드 요청"]
D --> E["🧪 테스트"]
E --> F["🚀 배포"]
E -.->|"오류"| D
F -.->|"개선"| B
다음 단계
PRD 작성 후 할 일
-
- PRD를 실제 웹 페이지로 구현
- v0, Claude, Colab 활용
-
- PRD를 Apps Script로 구현
- Sheets + Gemini API 연동
실전 프로젝트 아이디어
초급 (1-2시간):
- 이메일 템플릿 생성기
- 간단한 할 일 알리미
- FAQ 자동 응답기
중급 (3-5시간):
- 견적서 자동 생성
- 바이어 리서치 봇
- 판매 데이터 대시보드
고급 (1주):
- 통합 CRM 시스템
- AI 챗봇 with RAG
- 다국어 자동 번역기
다음 단계
축하합니다! 🎉
이제 AI에게 정확히 일을 시키는 기획 능력을 갖추었습니다.
기억하세요
- 완벽한 PRD보다 실행 가능한 PRD가 먼저
- 첫 버전은 MVP로 작게 시작
- AI와 대화하며 반복적으로 개선
이 스킬은 개발자가 아니어도 자동화 프로젝트를 리드할 수 있게 해줍니다.
관련 자료
학습 경로
- 5장. 자동화: AI 자동화 전략 전체 과정
- 4장. 콘텐츠 제작: 체계적인 문서 작성법
- 1장. 마인드셋: CCO 프레임워크
실전 도구
- Google Colab 봇 만들기: PRD를 실제 봇으로 구현
- v0: 웹 프로토타입 구현