스펙 주도 개발 (Spec-Driven Development, SDD)
별칭: SDD · Spec-Driven · 스펙 주도 · 명세 우선 개발
요약
코드를 짜기 전 명시적 명세(Spec)와 아키텍처 제약 을 먼저 작성하는 워크플로우. 실증: MIT/마이크로소프트 공동 연구·DeputyDev 벤치마크에서 프로그래밍 시간 56% 단축, PR 리뷰 주기 31.8% 단축. 명세 작성 20분 = 디버깅 2시간 절약 의 ROI.
상세
핵심 원리: AI에게 무엇을 만들지 를 자연어가 아닌 구조화된 spec 으로 전달. AI가 따를 수 있는 명확한 경계 정의와 패턴 거버넌스 가 선행.
실증 데이터 (책자 Part 2 Ch.2):
| 지표 | 변화 |
|---|---|
| 프로그래밍 소요 시간 | −56% |
| PR 리뷰 주기 | −31.8% |
| 코드 통합 실패율 | 감소 |
출처: MIT/마이크로소프트 공동 연구, DeputyDev 대규모 실증 벤치마크.
마이크로소프트의 SDD 4단계 워크플로우 (책자 Part 3 Ch.3):
- Spec 정의 (목표·제약·완료 기준)
- Plan 수립 (구현 계획·의존성·리스크)
- Implement (AI에게 위임)
- Verify (테스트·검토·승인)
5대 검증 체크리스트 (오케스트레이터의 필수 안전장치):
- Goal — 목표
- Constraints — 금지 사항
- Acceptance criteria — 완료 기준
- Verification — 검증 방법
- Rules — 규칙
관련 개념 차이:
| 개념 | 위치 |
|---|---|
| concept/vibe-coding | 자연어 진입로 — Spec 없이 시작하면 실패 |
| concept/spec-driven-development | 자연어 + Spec — 안전한 본궤도 |
| concept/agentic-engineering | Spec + 멀티 에이전트 + 검증 루프 — 종착지 |
방법론
강의에서 SDD를 가르칠 때:
- 01 INT lesson/int-design-first-evidence: 카파시 자기 부정 인용으로 도입 — "창시자도 Spec-driven으로 옮겼다."
- 04 DSL: Spec 작성의 언어 를 가르친다 — CLAUDE.md, AGENTS.md, .cursorrules 작성 템플릿.
- 05 DEM: 약국 마케팅 에이전트 시연에서 Spec 먼저 → 자동 코드화 흐름을 라이브로 보여준다.
- 06 CLN: 5대 체크리스트(Goal/Constraints/Acceptance/Verification/Rules)를 "책상에 붙여놓을 카드"로 마무리.
주의사항
- "Spec 작성"이 무겁게 들리면 청중이 거부한다 → 작은 Spec도 Spec 임을 강조. 20분짜리도 충분하다는 ROI 데이터로 안심시킨다.
- 56% / 31.8% 수치는 MIT/MS·DeputyDev 출처를 반드시 명시. 강의 슬라이드에 출처 미표기 시 권위 약화.
- SDD 와 concept/agentic-engineering 를 혼용하지 않는다 — SDD = 방법론, AE = 실행 모델.