event-storming

star 3

Event Stormingでイベント(動詞の過去形)を中心に、コマンド・集約・リードモデルを抽出/命名/レビューする作業に使う

j5ik2o By j5ik2o schedule Updated 1/5/2026

name: event-storming description: Event Stormingでイベント(動詞の過去形)を中心に、コマンド・集約・リードモデルを抽出/命名/レビューする作業に使う metadata: short-description: Event Storming支援

Event Storming

使う場面

  • 要件や仕様にイベントの説明が不足している
  • イベント名の命名やイベント/リソースの区別に迷う
  • Event Storming成果物(イベント/コマンド/集約/リードモデル)を整理・追記したい

ルール(要点)

  • イベントはドメインの重要な出来事で、動詞の過去形で表現する
  • イベントはビジネスの重要な振る舞いを表すため、イベント中心に整理する
  • 原則として 1コマンドに対して1イベント とし、1コマンドで複数イベントを生成しない
  • コマンド名の動詞とイベント名の動詞は対応させる(例: AddCartItemCartItemAdded
  • 動詞が異なる場合は別イベントとみなし、混同しない(例: AppendCartItemCartItemAdded を割り当てない)
  • 関係の表現は「R(, )」で整理する

詳細は references/event-storming-notes.md を参照する。

手順(簡潔)

  1. 重要な出来事を列挙し、イベント名を過去形で確定する
  2. 各イベントに対応するコマンドを逆算して決める
  3. イベントを受け取る集約を決め、境界を調整する
  4. クエリで必要なリードモデルを定義する
  5. R(Event, Resource) / R(Event, Event) / R(Resource, Resource) を整理する
  6. イベント/リソースの区別が曖昧なら判定ルールを適用する

出力テンプレート

## Event Storming の前提モデル

### イベント
- ...

### コマンド
- ...

### 集約
- ...

### リードモデル
- ...
Install via CLI
npx skills add https://github.com/j5ik2o/cqrs-es-spec-kit-js --skill event-storming
Repository Details
star Stars 3
call_split Forks 1
navigation Branch main
article Path SKILL.md
More from Creator