BPMNゲートウェイ

はじめに

BPMN 2.0では、ゲートウェイはプロセスの流れを制御し、シーケンスフローがどのように分岐、合流、または特定の条件に基づいて指示されるかを決定します。彼らはプロセス内の意思決定ポイントであり、パスが分岐または合流することができ、複数の可能な結果を持つ複雑なワークフローをモデル化することができます。ゲートウェイはBPMNダイアグラム内でダイヤモンド形として表され、その特定の挙動を示すさまざまなアイコンが内包されています。

ゲートウェイの種類:

排他的ゲートウェイ排他的ゲートウェイ
包括的ゲートウェイ包括的ゲートウェイ
並列ゲートウェイ並列ゲートウェイ
イベントベースゲートウェイイベントベースゲートウェイ

排他的ゲートウェイ (XOR Gateway)

排他的ゲートウェイ
  • 目的: これは最も一般的なゲートウェイの種類で、条件に基づいて唯一の出力パスが選択されます。
  • 視覚的表現: 「X」が内包されたダイヤモンド形です。
  • : 承認プロセスにおいて、リクエストが承認された場合は一つのパスをたどり、拒否された場合は別のパスをたどります。
  • 使用ケース: 「はい/いいえ」や「真/偽」など、決定に基づいてプロセスが一つのパスしか取れない場合。

包括的ゲートウェイ (OR Gateway)

包括的ゲートウェイ
  • 目的: このゲートウェイは、条件に基づいて一つ以上のパスを選択できます。条件が真と評価されるすべてのパスが選ばれます。
  • 視覚的表現: 円が内包されたダイヤモンド形です。
  • : 複数の承認が必要なプロセス(すべてではない)において、システムは設定された条件に基づき適用可能な全承認パスをたどれます。
  • 使用ケース: 条件に応じて複数のパスをたどることができる場合、例として異なるアクションを引き起こす複数の基準。

並列ゲートウェイ (AND Gateway)

並列ゲートウェイ
  • 目的: このゲートウェイは、フローを複数の並列パスに分割し、同時にすべての分岐をたどる必要があります。また、複数の入力パスを同期させるためにも利用できます。
  • 視覚的表現: 「+」が内包されたダイヤモンド形です。
  • : 複数の部門が同時に文書をレビューするタスク。
  • 使用ケース: タスクやアクションが並行して発生する必要がある場合、または続行する前に複数のパスが同期される必要がある場合。

イベントベースゲートウェイ

イベントベースゲートウェイ
  • 目的: このゲートウェイは発生するイベントに基づいてフローを制御します。特定のイベント(例:メッセージ、タイマー、シグナル)を待ち、どのパスを取るかを決定します。
  • 視覚的表現: 五角形が内包されたダイヤモンド形です。
  • : 顧客の返答やタイムアウトを待ってフローを続行するプロセス。
  • 使用ケース: プロセスの次のステップが外部イベントに依存する場合、例えばメッセージやタイマーのトリガーを待つ場合。

ゲートウェイの要点

  • フローの分割: ゲートウェイは単一のシーケンスフローを複数の分岐に分割し、条件やイベントに基づいてどのパスをたどるかを決定します。
  • フローの統合: ゲートウェイは複数のシーケンスフローを1つに統合することもでき、特定の条件に基づいて並行パスを同期または収束させます。
  • 意思決定: ゲートウェイは意思決定ポイントのモデリングに不可欠であり、プロセスの流れが評価、イベント、またはユーザー入力の結果に依存します。

使用事例

  • 排他的ゲートウェイ: 1つの条件のみが真であり、プロセスが単一のパスをたどる必要がある場合。
  • 並列ゲートウェイ: 複数のタスクが同時に発生し、すべてが完了する必要がある場合。
  • 包括的ゲートウェイ: 1つ以上の条件が真であり、複数のパスをたどる必要がある場合。
  • イベントベースゲートウェイ: メッセージやタイマーを待つなど、フローが外部イベントに依存する場合。
  • 複雑ゲートウェイ: 複雑なルールや条件がプロセスの進行を規定する場合。

シンプルな承認ワークフローの中で:

  1. 排他的ゲートウェイ: リクエストが承認された場合、プロセスは進行し、拒否された場合は終了します。
  2. 並列ゲートウェイ: 承認後、2つのタスク(文書作成と通知)が並行して完了できます。
  3. イベントベースゲートウェイ: 顧客の返事またはタイムアウトを待ち、次のステップを決定します。

ゲートウェイはビジネスプロセスをより柔軟にし、意思決定、並列処理、ワークフロー内の異なるパスの同期を可能にします。