本文へスキップ
hdknr blog
戻る

Claude Code時代の仕様書の役割 — ゼロトピック #337 から考える仕様駆動開発

ゼロトピック(Zero Topic)の #337「Claude Code時代の仕様書の役割」 が話題になっている。10X の矢本氏が、生成 AI が開発プロセスに与える影響と、仕様書の役割がどう変わるかを整理した回だ。

バイブコーディングの限界と仕様駆動開発

Claude Code のようなAIコーディングエージェントの登場で、コード生成速度は飛躍的に向上した。しかし「バイブコーディング」— AI に任せて探索的にコードを生成するアプローチ — には問題がある。

こうした課題に対する解が 仕様駆動開発(Spec-Driven Development: SDD) だ。Thoughtworks Technology Radar Vol.32(2025年4月)で Trial に採用されたこの手法は、「仕様を先に定義し、その仕様に基づいて AI にコードを生成させる」という原則に立つ。

仕様書の役割の変化

従来の設計書は人間同士のコミュニケーションツールだった。AI との協働では「AI への指示書」としての側面が加わる。

SDD における仕様書の構成は、Kiro が提唱する3層モデルが分かりやすい:

ファイル役割
requirements.mdユーザーストーリーと受け入れ基準
design.mdアーキテクチャ、シーケンス、設計上の注意
tasks.md実装計画とタスク分解

重要なポイントは、仕様は 「唯一の情報源(Single Source of Truth)」 として機能し、プロセス駆動はルールブック(プロセスルール)が別途担当するという区別だ。

Claude Code での実践

基礎レベル: CLAUDE.md + ステアリングファイル

  1. CLAUDE.md に制約・規約・コンテキストを定義
  2. .steering/ 配下に作業バッチフォルダを作成
  3. 要件定義書・設計書・タスクリストを生成・保存
  4. タスクに沿ってコード生成・テスト実施

応用レベル: カスタムコマンドの活用

2026年1月に plansDirectory 設定が追加され、/plan モードで作成した計画書を Git 管理できるようになった。さらにカスタムコマンドを使えば、ドメイン知識を埋め込んだ独自のワークフローを構築できる。

例えば /feature-plan のようなコマンドで、以下を自動生成する:

意図と実装の齟齬を事前に検知でき、セッション中断時の進捗追跡も容易になる。

高度なレベル: AI-DLC ワークフロー

AI-DLC(AI Development Life Cycle)は、仕様駆動開発をエンタープライズ規模で運用するためのフレームワークだ。バイブコーディングが生む「検証負債」— 技術的負債とは異なり、そもそも何が問題なのかわからないまま積み上がった構造 — を防ぐことを目的としている。

フェーズと承認ゲート

ワークフローは INCEPTION(計画)CONSTRUCTION(実装) の2大フェーズに分かれ、全14ステージのうち13ステージに人間の承認ゲートが設けられている。各ステージは DO NOT PROCEED until user confirms の制約で、AI が勝手に先に進むことを防ぐ。

中核ファイル構成

ファイル役割
core-workflow.mdワークフロー定義。Requirements → Design → Tasks → Code の順序制約をフレームワークレベルで固定
aidlc-state.md現在フェーズ・完了ステージ・保留タスクなどの進捗状態を記録
audit.mdユーザー入力と AI 応答をタイムスタンプ付きで原文記録。監査証跡として機能

二層構造ルールブック

aws-aidlc-rule-details/    ← ベースレイヤー(標準、変更不可)
ga-aidlc-rule-details/     ← 拡張レイヤー(組織カスタマイズ)

ベースレイヤーはフレームワークの標準プロセスを定義し、拡張レイヤーで業界固有の規制要件や社内の品質基準を追加する。標準プロセスを壊さずにカスタマイズできる設計だ。

Adaptive Depth(深度調整)

タスクの複雑度に応じて、プロセスの重さを3段階で自動調整する:

「仕様駆動開発は重い」という批判に対し、タスクに合わせてプロセスが伸縮する仕組みで応える。

実践のポイント

仕様駆動開発を始めるのに、新しいツールの導入は必須ではない。Claude Code の標準機能と CLAUDE.md だけで小さく始められる。

  1. まず CLAUDE.md を書く — プロジェクトの制約と規約を明示する
  2. 仕様を先に定義する — コードを書く前に要件・設計・タスクを文書化する
  3. 計画書を Git 管理するplansDirectory で計画書を永続化する
  4. 段階的に高度化する — チームの成熟度に応じてワークフローを進化させる

AI が高速にコードを生成する時代だからこそ、「何を作るか」を仕様として明確にすることが品質保証の基本になる。ゼロトピック #337 は、この考え方を16分で整理して伝えてくれる好エピソードだ。

参考リンク



前の記事
freee MCP × Claude Code で確定申告の仕訳1,428件を20分で終わらせた話
次の記事
Claude Code Skills 構築完全ガイド — Anthropic 公式 33 ページの要点まとめ