PRD とドキュメント駆動
ドキュメント駆動開発の核心的な考え方を習得し、AI を活用して PRD を書く方法を学び、構造化された思考法を身につけ、ドキュメントを開発の羅針盤にしましょう。
核心となる洞察:文書こそがコンテキスト
AI プログラミングの時代において、ドキュメントは負担ではなく、AI が要件を理解するための文脈です。 優れた PRD によって、AI は要件を正確に理解し、期待どおりのコードを生成できます。前章の VibeCoding ワークフローを見終えたところで、次に AI が読みやすいドキュメントの書き方を学びましょう。
PRDが必要な理由
従来の開発では、PRDはチーム内のコミュニケーションツールでした。AIコーディングの時代では、PRDはAI が要件のコンテキストを理解する。
従来の開発
- • PRD はチーム内のコミュニケーションに使う
- • 要件理解は人による議論に依存する
- • ドキュメントとコードが乖離しやすい
- • 変更は手動で同期する必要がある
AIプログラミングの時代
- • PRD は AI のコンテキスト
- • AI が PRD を直接読み取ってコードを生成
- • ドキュメント即コード、バージョン同期
- • 変更が自動的にコード更新をトリガーする
ドキュメント駆動の価値
構造化思考法:Sequential Thinking
PRD を書くことは一朝一夕ではなく、必要なのは構造的思考。 Sequential Thinking(順次思考)メソッドを使用して、複雑な問題を管理可能なステップに分解します。
Sequential Thinking ワークフロー
問題の分解
複雑な要件を複数のサブ問題に分解し、各サブ問題を独立して解決可能にする
段階的思考
各サブ問題ごとに段階的に深く考え、思考過程を記録する
仮説を検証する
各仮説を検証し、論理が正しいことを確認する
統合ソリューション
各サブ問題の解決策を統合して完全なソリューションにする
反復的な最適化
フィードバックに基づいて継続的に最適化し、ソリューションを改善する
実践例:ユーザーログイン機能
AI を活用して構造化思考を支援する
Sequential Thinking MCP ツールや同様の思考法を使って、AI に次のことを手伝ってもらう:
- •複雑な問題を分解する:AI が重要なサブ問題の特定を支援します
- •思考過程を記録する:各ステップの思考がすべて記録され、追跡可能
- •検証ロジック:AI がロジックの穴をチェックします
- •反復的な最適化:フィードバックに基づいて継続的に改善する
PRD 作成ガイド
PRD(Product Requirements Document)は、製品要件の完全な説明です。AI コーディングの時代において、PRD には構造化され、実行可能で、AI が読みやすい。
PRD のコア構造
1. 製品概要
必須製品の位置づけ、対象ユーザー、コアバリュー、一文での目標
2. 機能要件
必須機能一覧、ユーザーストーリー、優先順位、受け入れ基準
3. 非機能要件
必須パフォーマンス、セキュリティ、可用性、スケーラビリティの要件
4. インターフェース定義
必須入出力、データ構造、エラー処理、API 仕様
5. 制約と仮定
必須技術的制約、リソース制限、前提条件、非目標
6. 検収基準
必須機能受け入れ、性能受け入れ、セキュリティ受け入れ、DoD チェックリスト
AI が読み取れる PRD の原則
PRD作成のベストプラクティス
- 明確な目標:各機能は「なぜ必要か」と「一文の目標」に答える必要があります
- 非目標を定義する:何をしないかを明確に示し、スコープの拡大を避ける
- 構造化された記述:Markdown形式を使用し、明確な階層構造にする
- テスト可能性:要件は検証・テスト可能である必要があり、受け入れ基準を含む
- バージョン管理:PRD はコードのようにバージョン管理(Git)すべき
- 継続的に更新:要件変更時に文書を своевに更新し、文書とコードを同期させる
Spec 駆動開発
Spec-Driven Development は強調するまず仕様を書き、それからコードを書く。規範はすなわちコンテキストであり、AI が要件をよりよく理解し、期待どおりのコードを生成するのに役立ちます。
従来の開発プロセス
Spec 駆動フロー
Spec の核心要素
AIを使用してSpecを生成
AI に要件から Spec を生成させ、その後あなたがレビューして最適化します:
WBS 作業分解
WBS(Work Breakdown Structure)は複雑なプロジェクトを管理しやすい小さなタスクに分解します。AI プログラミング時代には、タスク分解により、AI は段階的に実行できる、成功率を高めます。
分解の原則
例:ユーザーログイン機能
AI を使ってタスク分解を支援する
AIにPRDを実行可能なタスクリストに分解させる:
DoD 完了の定義
DoD(Definition of Done)は、タスク完了の受け入れ基準を定義します。 AIプログラミング時代では、DoD は自動でチェックできます、品質の一貫性を確保します。
標準 DoD チェックリスト
AI 自動化 DoD チェック
AI ツールを使って DoD チェックリストを自動確認し、効率を向上させる:
DoD の価値
- • 品質保証:すべてのタスクが統一された品質基準を満たすことを保証する
- • 手戻りを減らす:問題を早期に発見し、後の修正を避ける
- • チームの合意形成:全員が「完了」の意味を統一して理解している
- • トレーサビリティ:各タスクの完了状況を明確に記録する
- • AI に優しい:明確な受け入れ基準により、AI はいつタスクを完了すべきかを知ることができる
ドキュメント・アズ・コード
AI プログラミングの時代において、ドキュメントはコードのように管理すべきです: バージョン管理、コードレビュー、自動チェック、継続的インテグレーション。
ドキュメントのバージョン管理
- • ドキュメントの変更は PR で提出し、コードレビュー
- • ドキュメントのバージョンとコードのバージョンを同期する
- • 変更履歴が明確で追跡可能
ドキュメントの自動化チェック
- • PRD の形式が規範に合っているか確認する
- • ドキュメントとコードの整合性を確認する
- • API ドキュメントを自動生成
- • 文書の完全性を確認する(必須フィールド)
ドキュメントがコンテキストになる
ドキュメントは記録であるだけでなく、AI が要件のコンテキストを理解する。 優れたドキュメントは、AI が要件を正確に理解し、期待どおりのコードを生成するのに役立ちます。ドキュメントとコードは同期して更新し、一貫性を保つ必要があります。
学習成果
この章を終えると、あなたは:
- 1ドキュメント駆動開発の核心となる考え方を理解し、ドキュメントがコンテキストであるという理念を習得する
- 2構造化思考法(Sequential Thinking)を習得し、複雑な問題を分解できる
- 3完全な製品要件を含む、AI が読み取れる PRD ドキュメントを作成できる
- 4Spec駆動開発プロセスを習得し、仕様がコンテキストであるという理念を理解する
- 5効果的なタスク分解(WBS)を行い、プロジェクトの進捗を管理できる
- 6DoD の重要性を理解し、明確な受け入れ基準を定義できる
- 7ドキュメント・アズ・コードの管理方法を習得し、ドキュメントのバージョン管理プロセスを構築する