イベントストーミング

show-event コマンドを使って、workflow.ymlからイベントストーミング図(Mermaid形式)を生成できます。

イベントストーミングとは

イベントストーミングは、ビジネスプロセスを時系列のイベントとして可視化する手法です。ドメインの全体像を把握し、関係者間の共通理解を形成するのに役立ちます。

図の生成

/teamkit:show-event YourFeature

.teamkit/YourFeature/eventstorming.md にMermaid形式の図が生成されます。

図の要素

要素 説明
ピボタルイベント 青(太枠) 重要なマイルストーンとなるイベント
イベント オレンジ ドメインイベント(○○が発生した)
アクター 黄色 ユーザーや役割
集約 薄黄色 エンティティの状態管理単位
ポリシー イベントに対する自動的な反応ルール
外部システム ピンク 外部システムとの連携

図の形式

生成される図は左から右への時系列タイムラインで、ビジネスプロセスの流れを表現します。要素はタイプ別ではなく、時系列に沿って配置されます。

graph LR
    A[アクター: 施設管理者] --> B[施設が登録された]
    B --> C[部屋タイプが設定された]
    C --> D[ポリシー: 自動通知]

workflow.yml との関係

show-event は workflow.yml の以下のセクションから情報を抽出します。

workflow.yml のセクション イベントストーミングの要素
actor アクター
external_system 外部システム
aggregate 集約
workflow[].steps[].event イベント、ピボタルイベント
workflow[].steps[].policy ポリシー

出力ファイル

生成される eventstorming.md には以下が含まれます。

  • Mermaid形式の図(graph LR
  • 凡例(各要素の色と意味)
  • アノテーション(補足説明)

Mermaid図の表示方法

GitHub

GitHubではMermaidコードブロックがそのままレンダリングされます。eventstorming.md をリポジトリにプッシュすれば、GitHub上で図を確認できます。

VS Code

Markdown Preview Mermaid Support 拡張機能をインストールすると、VS Codeのプレビューで図を表示できます。

Mermaid Live Editor

Mermaid Live Editor にコードを貼り付けて、ブラウザ上で図を確認・編集できます。

活用例

要件定義の初期段階

workflow.yml を作成した直後に show-event を実行し、ビジネスプロセスの全体像を確認します。イベントの流れに不自然な点があれば、workflow.yml を修正します。

ステークホルダーとの共有

生成されたMermaid図をドキュメントやプレゼンテーションに組み込み、ビジネスプロセスの共通理解を形成します。

設計レビュー

イベントストーミング図をもとに、イベントの粒度やポリシーの妥当性をレビューします。