mcpField
R
Requirements Modeling

Requirements Modeling

github.com/danhvb開発88 回インストール
リポジトリ

Requirements Modeling について

Requirements Modelingは、ビジュアルモデルを使って要件を整理・分析するスキルです。UMLなどの図や判断表を扱い、対象者に応じたモデルの選択と簡略化についても説明します。

主な機能

  1. 01状態遷移のモデル化
  2. 02シーケンス図による相互作用の表現
  3. 03アクティビティ図によるワークフローの表現
  4. 04クラス図によるデータのモデル化
  5. 05判断表によるビジネスルールの表現
  6. 06対象者に応じたモデルの選択と簡略化

活用シーン

  1. 01複雑なオブジェクトのライフサイクル整理
  2. 02システム間の相互作用の記述
  3. 03判断や並行経路を含むワークフローの図式化
  4. 04多数のビジネスルールを含む要件の整理

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/danhvb/my-ba-skills --skill requirements-modeling

インストール後、Claude Code で/requirements-modelingを入力して読み込まれたか確認します。

詳細

要件モデリングスキル

目的

視覚的なモデルを使って要件を明確化し、分析します。「百聞は一見にしかず」――特に複雑なロジックや関係性において有効です。

使用する場面

  • 複雑なロジック(状態図)。
  • システム間の相互作用(シーケンス図)。
  • データの関係性(クラス図/ERD)。
  • ユーザーの意思決定(アクティビティ図)。

主なモデリング手法(UML など)

1. ステートマシン図(状態遷移)

用途:オブジェクトに複雑なライフサイクルがある場合(例:注文ステータス)。 要素:状態(角丸長方形)、遷移(矢印)、イベント/トリガー。

例:

stateDiagram-v2
    [*] --> Draft
    Draft --> PendingApproval: Submit
    PendingApproval --> Approved: Manager Approves
    PendingApproval --> Rejected: Manager Rejects
    Rejected --> Draft: Edit
    Approved --> [*]
2. シーケンス図

用途:システムまたはオブジェクト間の時間経過に伴う相互作用。 要素:参加者(ライフライン)、メッセージ(矢印)。

例:

sequenceDiagram
    User->>Frontend: Click Login
    Frontend->>Backend: POST /login
    Backend->>Database: Validate User
    Database-->>Backend: User OK
    Backend-->>Frontend: Token
    Frontend-->>User: Dashboard
3. アクティビティ図

用途:ワークフローのロジック(フローチャートに似ていますが、並列処理に対応します)。 要素:アクティビティ、判断、フォーク/ジョイン。

4. クラス図

用途:概念的なデータモデリング(オブジェクト指向)。 要素:クラスボックス(名前、属性、操作)。

5. デシジョンテーブル

用途:条件が多い複雑なビジネスルール。 形式:条件とアクションの対応表。

| 条件:年齢 < 18 | Y | Y | N | N | | 条件:会員 | Y | N | Y | N | | アクション:割引| 50% | 20% | 10% | 0% |

ベストプラクティス

  • 対象者に合わせてモデリングする:マーケティング担当VPにシーケンス図を見せないでください。ビジネスにはフローチャート、開発者にはUMLを使います。
  • シンプルに保つ:複雑な図は小さなビューに分割します。
  • コードで検証する:モデルが現実(または実現可能な現実)に合致していることを確認します。
  • 注釈を付ける:「なぜ」を説明するメモを追加します。

ツール

  • Mermaid:テキストから図を作成します(ドキュメントに最適)。
  • PlantUML:標準的なテキストベースのUMLです。
  • Lucidchart / Visio:視覚的なドラッグ&ドロップに対応します。
  • Figma:概要レベルのフローに適しています。

コメント