このページ内
中間イベントとは―BPMN Intermediate Event解説
はじめに
BPMN 2.0 Intermediate Event は、プロセスフローの開始イベントと終了イベントの間で発生するイベントを表します。Intermediate Event はプロセスの開始や終了はしませんが、進行中のプロセスに変化や影響を与えます。主に業務プロセスの中断、遅延、トリガー(きっかけ)など、プロセスフローへ影響する要素を設計する際に使われます。
Intermediate Event のポイント
- 視覚表現: 二重線の円で表されます。
- Intermediate Event の主な種類:
- Message Intermediate Event: プロセス中にメッセージの送受信を行ないます。
- Timer Intermediate Event: 指定時間や日付までプロセスを遅延させます。
- Conditional Intermediate Event: 条件が満たされた時に進みます。
- Signal Intermediate Event: プロセスや他のプロセスに影響する Signal をキャッチまたはスローします。
- Error Intermediate Event: プロセス内のエラーを処理します。
- Escalation Intermediate Event: 続行前に対応が必要なエスカレーションを表します。
配置について
- Catch Event: 何かが発生するのを待つ Intermediate Event(例:メッセージやシグナルなど)です。
- Throw Event: 何らかのアクションを積極的に発生させる Intermediate Event(例:メッセージやシグナルの送信など)です。
Intermediate Event は、プロセスの通常フロー内やアクティビティの外枠(boundary event)として、または複雑なワークフローの中で特定条件やイベントを監視・管理する目的で利用されます。
Intermediate Event はプロセスの開始点と終了点の間で、情報を「キャッチ」または「スロー」する役割を持ちます。どちらのタイプかは図内の接続線を確認すると分かります。
この図ではメッセージの受信がプロセス開始のトリガーとなり、次のタスクで在庫確認をして、在庫があればすぐに確認リンクを送信します。確認リンクの送信は Intermediate Event によって行われ、リンクの受信後のみ注文処理に進み(終了イベント)、注文が完了します。
プロセス中、Intermediate Event 内のさまざまなシンボルが、フローを左右する複数のトリガー(メッセージ・タイマー・エラー・補償・条件分岐・シグナル・複数イベント・エスカレーション・並列処理)を表します。これらはそれぞれ、プロセス内の特定のインタラクションや条件です。
各イベントと対応するシンボル一覧
| Start | Intermediate | End | ||||||
|---|---|---|---|---|---|---|---|---|
| Type | Normal | Event Sub process | Event Sub process non-interrupt | Catch | Boundary | Boundary non-interrupt | Throw | |
| None | ||||||||
| Message | ||||||||
| Timer | ||||||||
| Conditional | ||||||||
| Link | ||||||||
| Signal | ||||||||
| Error | ||||||||
| Escalation | ||||||||
| Termination | ||||||||
| Compensation | ||||||||
| Cancel | ||||||||
| Multiple | ||||||||
| Multiple Parallel | ||||||||