SDD(仕様駆動開発)
Spec-Driven Development。バイブコーディングの「意図が伝わらない」問題を解決するために、実装前にAIと壁打ちして仕様書を作成し、その仕様に従って実装させる手法。
なぜSDDが必要か
バイブコーディングだけでは、AIが意図を汲み取れず思い通りの実装をしてくれない問題が頻発する。
根本原因は「要件が曖昧 → 仕様が曖昧 → 実装が曖昧」の連鎖にある。
SDDのフロー
1. 要件定義(AIと壁打ち)
└─ どんな機能か?ユースケースは?
└─ AIに観点を出させてレビューさせる
2. 仕様書作成(cc-sddツールなど)
└─ SDDに渡せる粒度で仕様を固める
3. SDD実装
└─ 仕様に従ってAIが実装
└─ 手戻りが圧倒的に減る
要件定義もAIと共に作成する理由
- 要件定義の質向上: AIが足りない観点を補い、機能の完成度を上げる
- SDD実装の質向上: 曖昧な要件から作った仕様はSDDでも失敗するため、上流から精度を担保する
バイブコーディングとの比較
| バイブコーディング | SDD | |
|---|---|---|
| 特徴 | 自然言語でざっくり指示 | 仕様書をもとに実装 |
| スピード | 速いが意図ズレが多い | 仕様作成コストがあるが手戻りが少ない |
| 向く場面 | プロトタイプ・試作 | 機能追加・チーム開発 |
ツール
- cc-sdd: Claude Code用のSDD実行ツール
- Skills に仕様テンプレートを定義しておくと再利用しやすい
キーインサイト
バイブコーディングの成否は仕様の精度に直結する。「どんな機能か?なぜ作るか?どうすれば価値を届けられるか?」を徹底的に考えることが成功の鍵。