4.6. プロセスデザイナーでの BPMN2 ゲートウェイ

ゲートウェイは、ゲートメカニズムと呼ばれる条件セットを使用して、ワークフロー内にブランチを作成するか、ワークフロー内のブランチを同期するのに使用します。BPMN2 は、2 種類のゲートウェイをサポートします。

  • 収束ゲートウェイ。複数のフローを 1 つにマージします。
  • 分岐ゲートウェイ。1 つのフローを複数のフローに分割します。

1 つのゲートウェイに、複数の内向きと外向きフローを割り当てることはできません。

以下のビジネスプロセスダイアグラムでは、XOR ゲートウェイは、条件が true と評価された内向きフローのみを評価します。 gateway

この例では、顧客の詳細がユーザーにより検証され、ユーザーが承認できるようにプロセスが割り当てられます。承認されると、承認通知がユーザーに送信されます。要求イベントが却下された場合は、却下通知がユーザーに送信されます。

表4.12 ゲートウェイ要素

要素タイプアイコン

排他的論理和 (XOR)

bpmn gateway exclusive

含む

bpmn gateway inclusive

並行

bpmn gateway parallel

イベント

bpmn gateway event

排他的

排他的な分岐ゲートウェイでは、最初の内向きフローで条件が True と評価されたもののみが選択されます。収束ゲートウェイでは、トリガーされた内向きのフローごとに、次のノードがトリガーされます。

このゲートウェイは、1 つだけ外向きフローをトリガーします。フローの条件が True と評価され、優先順位が 最も低い 数字が選択されます。

重要

実行時に、最低でも 1 つの外向きフローが True と評価されるようにしてください。そうでないと、プロセスインスタンスは、ランタイムの例外で中断されます。

収束ゲートウェイでは、ワークフローブランチが、ゲートウェイに到達すると同時に外向きフローに進むことができます。内向きフローの 1 つがゲートウェイをトリガーすると、ワークフローはゲートウェイの外向きフローに進みます。複数の内向きフローからトリガーされた場合は、トリガーごとに次のノードをトリガーします。

含む

包含的な分岐ゲートウェイでは、内向きフローが選択され、さらに True と評価された外向きフローすべてが選択されます。優先順位の数値が低い接続は、高い接続よりも先にトリガーされます。優先順位は評価されますが、BPMN2 仕様では優先順位の順番は保証されません。ワークフローで priority 属性に依存しないようにしてください。

重要

実行時に、最低でも 1 つの外向きフローが True と評価されるようにしてください。そうでないと、プロセスインスタンスは、ランタイムの例外で中断されます。

包含的な収束ゲートウェイでは、包含的な分岐ゲートウェイでこれまでに作成された内向きフローすべてがマージされます。これは、包含ゲートウェイブランチの同期エントリーポイントとして機能します。

並行

並列ゲートウェイを使用して、並列フローを同期し、作成します。並列の分岐ゲートウェイでは、内向きフローが選択されると同時に、外向きフローもすべて選択されます。収束並列ゲートウェイでは、ゲートウェイは、内向きのフローがすべて到達するまで待機してからでないと、外向きフローをトリガーしません。

イベント

イベントベースのゲートウェイは分岐のみで、データをもとにした排他的ゲートウェイ (プロセスデータに反応) とは対照的に、発生する可能性のあるイベントに反応できます。発生したイベントをもとに、外向きフローに移動します。一度に実行できる外向きフローは 1 つとなっています。ゲートウェイは、イベントベースのゲートウェイに接続されている中間イベントが発生した場合にのみ、プロセスがインスタンス化される、開始イベントとして機能する可能性があります。