ビジネスプロセスモデルと表記法(BPMN)は、ビジネスプロセスをモデル化するための標準化されたグラフィカルな表記法です。BPMNイベントはこの表記法の重要な構成要素であり、プロセスの進行中に発生する出来事を表します。本ガイドでは、BPMNイベント表記の詳細な概要と多くの例を紹介しています。

BPMNイベント:構造的な概要
BPMN(ビジネスプロセスモデルと表記法)におけるイベントは、円で表され、プロセスに影響を与える出来事を意味します。これらのイベントは、プロセスが内部または外部のトリガーに対してどのように反応するかを定義し、トリガーの種類は円内のアイコンで示されます。以下に、BPMNイベントの詳細な分類、種類、および使用方法を示します:
BPMNイベントの主な特徴
- イベントによるトリガー動作
- イベントは特定のトリガー(例:メッセージ、タイマー、エラーなど)に基づいてアクションを開始します。
- イベントの階層
- レベル1:基本イベント(なし、メッセージ、タイマー開始イベント;なし、メッセージ、終了イベント)。
- レベル2:拡張イベント(中間イベント、エラー、エスカレーション、条件付き、シグナル、リンク)。
- 視覚的インジケーター
- 中間イベント:二重輪の円。
- 境界イベント:アクティビティに接続され、例外処理や並行処理を担当します。
イベントの種類とその機能
1. 開始イベント
プロセスの開始位置を示します。
- なし開始イベント
- トリガー:なし(未指定または手動開始)。
- 使用例:サブプロセス(必須)またはトリガーが未定義のトップレベルプロセス。
- メッセージ開始イベント (✉️)
- トリガー:外部メッセージ。
- 使用例: メッセージが受信されたときにプロセスが開始されます(例:顧客の依頼)。
- タイマー開始イベント (⏰)
- トリガー: スケジュールされた日時/日付。
- ユースケース: 定期的なプロセス(例:月次レポートの作成)。
- 複数の開始イベント
- トリガー: 複数のトリガーのいずれか。
- ユースケース: 開始ポイントが柔軟なプロセス。
2. 終了イベント
プロセスが終了する場所を示す。
- なし終了イベント
- 結果: シグナルが送信されない。
- ユースケース: デフォルトのプロセス完了。
- メッセージ終了イベント (✉️)
- 結果: 完了時にメッセージを送信する。
- ユースケース: 外部システム/ユーザーに通知する(例:注文確認)。
- 終了終了イベント (⛔)
- 結果: すべての並行フローを中止する。
- ユースケース: 臨界的な例外(例:システム障害)を処理する。
3. 中間イベント
: スタートイベントとエンドイベントの間に発生する。
- タイマーイベント(キャッチ) (⏰)
- アクション: 指定された時間/期間になるまでプロセスを遅らせる。
- ユースケース: デッドライン(例:支払い期間)を待つ。
- メッセージイベント(スロー) (✉️)
- アクション: メッセージを送信し、処理を続行する。
- ユースケース: 「送信タスク」と同等(例:サプライヤーに通知する)。
4. バウンダリーイベント
: アクティビティに接続され、例外処理や並行処理を実行する。
- 中断型バウンダリーイベント
- 動作: アクティビティを停止し、例外フローをトリガーする。
- ユースケース: エラー処理(例:支払い失敗)。
- 非中断型バウンダリーイベント
- 動作: アクティビティと並行して実行される。
- ユースケース: 監視(例:タスク中の進捗リマインダー)。
- バウンダリー・タイマーイベント (⏰)
- アクション: 活動が時間制限を超えると発火します。
- 使用例: SLAの遵守(例:期限切れのタスクを昇格)。
専用イベントタイプ
- エラーイベント (❌)
- 使用例: 中断型の例外(例:システムクラッシュ)。
- 昇格イベント (📈)
- 使用例: 中断しない例外(例:マネージャーの承認が必要)。
- シグナルイベント (⚡)
- 動作: すべてのリスニングプロセスにシグナルをブロードキャストします。
- 使用例: プロセス間の調整(例:システム全体のアラート)。
- リンクイベント (🔗)
- 動作: プロセスの2つのセクションを接続します。
- 使用例: 複雑な図を簡素化する(例:ページ分割されたワークフロー)。
重要な考慮事項
- メッセージ vs. シグナル
- メッセージ: 特定のプロセス/インスタンスに送信されます。
- シグナル: すべてのプロセスにブロードキャストされます(特定のターゲットなし)。
- イベントサブプロセス
- BPMN 2.0で導入され、例外や繰り返し実行される処理(例:エラーのログ記録)を処理するために使用される。
- エラー vs. エスカレーション
- 使用する:エラー中断型の例外に使用;エスカレーション非中断型のものに使用。
ベストプラクティス
- 使用する:タイマー開始イベントスケジュールされたプロセスに使用して、インスタンスの意味を明確にする。
- 過度に使用しない:終了終了イベント;重大な例外にのみ使用する。
- 次を優先する:非中断型境界イベント監視に使用して、ワークフローの中断を回避する。
これらのイベントタイプおよびそのトリガーを習得することで、モデル作成者は現実世界のプロセス行動を反映した正確で効率的なBPMN図を作成できる。