Skip to content
functional-design logo

Functional Design Skill

functional-design

プロダクト要求定義書(docs/product-requirements.md)から機能設計書(docs/functional-design.md)を作成する。 「機能設計して」「設計書を作って」「PRDを設計に落として」「コンポーネント設計」「データモデル設計」 「シーケンス図を書いて」「ER図を作って」などの依頼時に発火。 システム構成図・データモデル・コンポーネント責務・ユースケースフロー・エラー設計を出力。

SKILL.md

Full skill instructions

Functional Design Skill

PRD(何を作るか)を設計(どう実現するか)に落とし込む。

入出力

種別パス
入力docs/​product-requirements.md(必須)
入力docs/​functional-design.md(既存あれば優先)
出力docs/​functional-design.md

参照ファイル

ファイル読むタイミング
./​template.md新規作成時のベース
./​reference.md必須項目・レビュー観点の確認時

手順

1. PRD読解

docs/​product-requirements.md を読み、以下を抽出:
- P0(MVP)機能の要件・受け入れ条件
- ターゲットユーザーのワークフロー
- 成功指標(KPI)
- 非機能要件(あれば)

2. 既存設計の確認

  • docs/​functional-design.md が存在する?
    • Yes → 構造を維持して差分更新
    • No → ./​template.md をコピーして新規作成

3. 設計項目の作成

P0機能ごとに以下を埋める(詳細は ./​reference.md 参照):

項目形式必須
システム構成図Mermaid graph TB✅
データモデルTypeScript interface✅
ER図Mermaid erDiagram複数エンティティ時
コンポーネント設計責務・インターフェース✅
ユースケースフローMermaid sequenceDiagram✅
エラーハンドリング表形式✅
アルゴリズム設計計算式・実装例複雑ロジック時
API設計エンドポイント定義Web API時
画面遷移Mermaid stateDiagramUI有時

4. PRDとのトレーサビリティ確保

  • 各設計セクションに「対応するPRD機能」を明記
  • 例: ## 診断機能の設計(PRD: 1. 診断)

5. セルフレビュー

./​reference.md のレビュー観点でチェック:

  • PRD P0要件をすべてカバーしているか
  • データモデルに型・制約・nullable が明記されているか
  • Mermaidに実コンポーネント名が入っているか
  • エラーハンドリングが網羅されているか

6. 出力

docs/​functional-design.md を作成/更新し、変更点をサマリ提示

発火例

  • 「機能設計書を作って」
  • 「PRDを設計に落として」
  • 「データモデルを定義して」
  • 「コンポーネント設計をお願い」
  • 「診断機能のシーケンス図を書いて」

境界(やらないこと)

  • 要件定義 → prd-writing スキル
  • 技術選定の深い根拠 → architecture-design スキル
  • 実装 → 開発タスクとして別途実施