スペックドリブン開発
Specification-Driven Development
実装前に作成した仕様書をもとに、AIエージェントと協力して開発を進める手法。
簡単に説明すると
スペックドリブン開発っていうのは、プログラムを作る前に仕様書を用意して、それをAIと一緒に段階的に形にしていくやり方のことだよ。 思いついたことをそのままAIに渡して作らせるんじゃなくて、仕様書を計画やタスクへと分解し、人間が各ステップで確認しながらAIエージェントに実装を進めてもらうのが特徴なんだ。 開発中は仕様書を共通の基準として扱うから、途中の勘違いやコードとのずれを防ぎやすくなるんだよ。
名前のヒミツ
スペックドリブン開発は、英語のSpecificationという単語とDriven、Developmentを合わせた言葉だよ。 それぞれの単語は「仕様」「〜に基づいた」「開発」を意味していて、日本語では仕様駆動開発とも呼ばれているんだ。
くわしく見てみよう!
スペックドリブン開発(SDD)は、実装に入る前に仕様をしっかり固め、それを開発の判断基準として扱う考え方のことだよ。
上流の設計図や仕様から実装を導くアプローチはモデル駆動開発などAI登場以前から存在していたけれど、AIエージェントの登場以降に広まったスペックドリブン開発はAIエージェントを中心として活用する点が特徴なんだ。
この手法では、自然言語や構造化された仕様書をAIエージェントが読み取り、計画・タスク・実装へと人間が確認しながら段階的に変換していくよ。
仕様書は開発中、人間とAIの両方が見返す共有の正本として扱われるんだ。
人間は仕様を練り上げて承認したり、AIが作ったコードを検証したりする役割を担い、仕様書を渡すだけで自動的に意図通りのコードができるわけではないよ。
また、実装が進んだあとに仕様書をどう扱うかはプロジェクトやツールの運用モデルによって異なるんだ。仕様書を常に正本(source of truth)として維持しコード側を追従・再生成していく運用もあれば、実装後はコードを正本とし仕様書は立ち返る基準として残す運用など、目的に応じた選択肢があるよ。
最初に仕様を整える準備は必要になるけれど、その分やりとりが整理されて開発中の勘違いや手戻りを防ぐことができるんだ。