中間イベント
中間イベントとは
BPMN 2.0中間イベントは、開始イベントと終了イベントの間でプロセスフロー中に発生するイベントを表します。プロセスを開始または終了するものではなく、プロセスの進行中にプロセスを変更したり影響を与えたりします。中間イベントは、ビジネスプロセスの流れに影響する中断、遅延、トリガーをモデル化するために使用します。
中間イベントの要点
- 視覚表現:二重の境界線を持つ円です。
- 中間イベントのタイプ:
- メッセージ中間イベント:プロセス中にメッセージを待機または送信します。
- タイマー中間イベント:指定した時間、または特定の日付までプロセスを遅延させます。
- 条件付き中間イベント:処理を続行する前に、条件が満たされるのを待ちます。
- シグナル中間イベント:プロセスまたは他のプロセスに影響するシグナルを受信または送信します。
- エラー中間イベント:プロセス内で発生したエラーを処理します。
- エスカレーション中間イベント:続行する前に対応が必要なエスカレーションを表します。
配置
- キャッチイベント:何かが発生するまで待機する中間イベントです(たとえば、メッセージやシグナル)。
- スローイベント:何かを能動的にトリガーする中間イベントです(たとえば、メッセージやシグナルの送信)。
中間イベントは、プロセスの通常フロー内に配置できます。アクティビティの境界にアタッチしたり(境界イベントと呼びます)、ワークフロー中に特定の条件を監視またはトリガーする場所に配置したりすることもできます。
中間イベントは、プロセスの開始点と終了点の間に配置されます。情報をキャッチ(待機)するか、スロー(送信)します。円の内部にある記号を見ると、どちらかを判別できます。
図では、メッセージの受信がプロセスの開始をトリガーします。次のTaskで在庫の有無を確認し、商品が利用可能になるとすぐに確認リンクを送信します。この確認リンクの送信は、リンクを送信する中間イベントによって処理されます。確認リンクが正常に受信された後にのみ、プロセスは注文処理へ進み、注文が完了します(終了イベント)。
プロセス全体を通じて、中間イベント内のさまざまな記号が、プロセスフローを変更する異なるトリガーを表します。これらのトリガーには、メッセージ、タイマー、エラー、補償、条件付きフロー、シグナル、複数イベント、エスカレーション、並列プロセスがあります。それぞれが、プロセス内の特定のインタラクションまたは条件を表します。
対応する記号を持つすべてのイベント
| 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 | | | | | | | ||