Spec-Driven Development — 명세가 일등 시민이 된 시대
1. 요약
Spec-Driven Development (SDD) 는 명세를 일등 시민으로 기록하는 개발 패러다임이다. 코드는 명세에서 생성되는 산출물 로 위치가 바뀐다. GitHub의 Spec Kit (2024)·Anthropic의 Claude Code SDD 가 산업 표준 도구로 기록되었다. 강의의 핵심 명제 "설계 없이는 코딩이 안된다" 가 산업 도구로 구현된 사례다.
2. 배경 — Vibe Coding 의 좌절과 옛 원리의 회귀
LLM 시대 초기(2022~2023) Vibe Coding (즉흥 프롬프트로 코드 생성)이 폭발적으로 기록되었다. 그러나 곧 한계가 드러났다.
- 프롬프트 → 코드 가 일관되지 않음
- 같은 의도라도 매번 다른 결과
- 거대 시스템에 박을 때 전체 정합성 이 무너짐
- 유지보수 시 원래 의도가 무엇이었는지 알 수 없음
해결책은 옛 원리의 회귀 였다. Waterfall 시대의 요구사항 명세 → 설계 → 구현 이라는 70년 원리가 AI 도구 로 다시 기록되었다. "즉흥 프롬프트가 아니라 명세 기반 설계" — 이것이 SDD다.
3. 핵심 특징
Spec Kit (GitHub, 2024)
- Constitution — 프로젝트의 "헌법". 핵심 원칙·금지 사항.
- Specification — 무엇을 만들 것인가. FR·NFR·AC.
- Plan — 어떻게 만들 것인가. 기술 스택·아키텍처·작업 분해.
- Tasks — 세부 작업 단위. 2~5분 분해·DAG.
- Implementation — 명세에서 생성되는 결과물.
Claude Code SDD 워크플로
- Requirements → Design → Tasks → Implementation (4단계)
- Plan-First 방법론 과 정합 (60% 이상 시간을 Plan에 기록)
- TDD 강제·검증 게이트 4종
핵심 도구
- GitHub Spec Kit (2024)
- Claude Code Plan-First
- Cursor Spec Workflow
- Pimzino claude-code-spec-workflow — 자동 워크플로
4. 주 용도
- 신규 기능 개발 — Requirements → Design → Tasks → Implementation
- 버그 수정 — Report → Analyze → Fix → Verify
- 리팩토링 — 기존 코드의 "실제 명세" 를 추출 후 재구현
- 레거시 마이그레이션 — 옛 코드 → 명세 추출 → 새 언어로 재생성
5. 시대 설계 도구 매핑
SDD는 옛 학문의 새 기록 이다. 1968년 NATO Software Engineering Conference 에서 기록된 명세→설계→구현 원리가 50년 후 LLM 시대에 다시 기록되었다.
- 1968 Waterfall — 명세 → 설계 → 구현 (수작업)
- 1986 UML·CASE Tools — 다이어그램으로 명세 기록
- 2001 Agile Manifesto — "명세보다 동작하는 코드" (반대 방향)
- 2010 ATDD/BDD — 시나리오로 명세 기록
- 2024 SDD with LLM — 명세를 LLM이 코드로 변환
흥미롭게도 Agile은 명세를 가볍게 박았는데, SDD는 명세를 다시 무겁게 기록한다. 이유는 단순하다 — AI가 코드를 박으려면 명세가 명확해야 한다. 인간은 모호한 명세도 해석 으로 풀 수 있지만, AI는 모호함을 환각 으로 채운다.
6. 강의 활용
SDD는 강의의 "설계 없이는 코딩이 안된다" 라는 명제의 산업적 박음이다. 명제가 도구로 기록되었다.
핵심 메시지 세 가지를 기록한다.
1. Vibe Coding의 본질은 SDD다
강의 제목 "Vibe-coding, 설계 없이는 코딩이 안된다" 의 진정한 의미는 "AI 시대의 Vibe Coding은 SDD로 박혀야 동작한다" 이다. 즉흥 프롬프트는 작은 작업에서만 통한다. 거대 시스템은 명세 없이는 박히지 않는다.
2. 옛 학문이 새 시대에 다시 박힌다
1968년 NATO Conference의 명세 원리, 1986년 UML, 2001년 Agile의 사용자 스토리, 2010년 BDD의 Given-When-Then — 모두 AI 시대 SDD의 토대 다. 학생들이 옛 학문을 무시하지 말 것 을 강조한다. 70년 누적 자산이 새 시대에 결정적이 된다.
3. 명세 → 코드 = 컴파일러 → 기계어
70년 전 고급 언어 → 기계어 변환 을 컴파일러가 박았다. 지금은 명세 → 고급 언어 변환 을 LLM이 기록한다. 추상의 한 칸이 또 올라간 것이다.
이는 강의의 절정이다. 학생들에게 "여러분이 평생 박을 자산은 명세 작성 능력" 임을 기록한다. 코드는 LLM이 생성하지만, 어떤 명세를 박을 것인가 는 인간이 한다. 이는 Computer Science → Specification Science 로 학문의 무게중심이 이동하는 신호다.
출처
- Spec Kit - speckit.org
- Spec-Driven Development: Designing Before You Code (Again) - Medium
- Claude Code for Spec-Driven Development - Augment Code
- GitHub Pimzino claude-code-spec-workflow
- 6 Best Spec-Driven Development Tools for AI Coding in 2026
그룹 시리즈
→ synthesis/group-g7 (시대 그룹 종합 카드)