Day 4 실습: PRD/TDD 작성법
실습 시간: 1시간
산출물: 나만의 자동화 프로젝트 PRD
PRD 작성 실습
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. 보안 고려
---
## 실습: 나만의 PRD 작성
### 주제 선택
아래 중 하나를 선택하거나 자신만의 주제:
1. **이메일 자동 분류기**
- 바이어 문의를 카테고리별로 분류
2. **견적서 생성기**
- 제품/수량 입력 → PDF 견적서
3. **시장 조사 자동화**
- 특정 국가/제품 시장 정보 수집
4. **FAQ 챗봇**
- 자주 묻는 질문 자동 응답
5. **일정 알리미**
- 배송/납기 일정 자동 알림
---
### 작성 가이드
**Step 1: 문제 정의 (10분)**
현재 겪는 문제:
얼마나 자주:
해결되면 절약되는 시간:
**Step 2: 기능 정의 (15분)**
반드시 필요한 기능 3가지:
있으면 좋은 기능:
**Step 3: 제약 조건 (5분)**
예산: 사용 도구: 소요 시간:
---
## PRD로 AI에게 일 시키기
### PRD → 코드 요청
작성한 PRD를 ChatGPT/Gemini에게 전달:
다음 PRD를 기반으로 코드를 작성해주세요:
[PRD 전체 내용 붙여넣기]
요구사항:
- Google Colab에서 실행 가능
- Python 사용
- 주석 포함
- 테스트 코드 포함
---
### PRD → TDD 요청
다음 PRD를 기반으로 TDD(기술 설계 문서)를 작성해주세요:
[PRD 전체 내용]
포함할 내용:
- 시스템 아키텍처
- 기술 스택 추천
- 데이터 흐름
- AI 프롬프트 설계
- 에러 처리 방안
---
## 체크리스트
### PRD 품질 점검
□ 문제가 명확하게 정의되었는가? □ 목표가 측정 가능한가? (KPI) □ 사용자가 명확한가? □ 기능이 우선순위로 정리되었는가? □ 제약 조건이 현실적인가? □ 제외 사항이 명시되었는가?
### TDD 품질 점검
□ 기술 스택이 제약 조건에 맞는가? □ 데이터 흐름이 명확한가? □ AI 프롬프트가 구체적인가? □ 에러 처리가 고려되었는가? □ 보안이 고려되었는가?
---
## 팁
1. **작게 시작**: MVP부터 정의
2. **구체적으로**: 애매한 표현 피하기
3. **측정 가능하게**: 숫자로 목표 설정
4. **반복 수정**: 첫 버전은 완벽하지 않아도 OK
5. **AI 활용**: 템플릿 채우기도 AI에게 요청 가능