
排他ゲートウェイ (XOR)
通常、ビジネスプロセスでは、必ずしもすべてのタスクが実行されるわけではありません。ほとんどのビジネスシナリオでは、決定は特定のケースでの処理方法を制御するプロセスの一部です。これらのシナリオは、明らかにプロセスモデルの設計および構造に影響します。つまり、まず、プロセスモデル内でシーケンスフローを異なるパスに分割する必要があります。

前のレッスンでは、イベントおよびタスクを使用して最初の独自のプロセスモデルを登録する方法を学習しました。必要性、飢えを表すスタートイベントと、食事を購入、準備、食事するいくつかの活動を結び付け、もはや空腹ではない満足感に達しました。
ただ、われわれが選んだ食事を用意して食べる方が、さらに満足できるものではないだろうか。
排他ゲートウェイ (XOR)

分割のための排他ゲートウェイ (XOR 分割) の使用
これまでの食事例をもとに、家庭で食料品が違って、おいしいものを作っていると仮定してみましょう。飢えに駆られ、何を食べたいか決定しなければならない。
専用ゲートウェイは、意思決定の結果(食事を選択)を読み取り、次のタスクへと導きます。プロセスフローは複数のプロセスフローに分割されていますが、一度に選択できるパスは 1 つのみです。
つまり、これはどちらか一方の決定です。
プロセス目標への到達

不足タスク追加
前の例で重要な要素が不足していることに気付いたかもしれません。食事の準備後にプロセスが終了したため、食べることはありませんでした。我々の当初の目標(空腹ではなくなった)は達成されなかった。より正確には、プロセスが完全にはモデル化されていません。
そのため、タスクを追加して、プロセスの終了時に空腹にならないようにします。
プロセスブランチのマージ

マージのための排他ゲートウェイの使用 (XOR 結合)
以前のソリューションでは少なくとも目標を達成できますが、プロセスの複雑さが増します。
- "食事" タスクは食事に依存しませんが、同じことがすべての異なる食事に適用されます。
- 分岐ごとに同じプロセス目標 (終了イベント) を複数回作成しました。
上記の問題を回避するには、すべての分割ブランチを元のプロセスフローとマージする方法を見つける必要があります。上記の図に示すように、排他ゲートウェイを再度使用することができます。マージに排他ゲートウェイ (XOR 結合) を使用します。
結論
分割する場合は、マージします。
排他ゲートウェイ:
- には、特定の条件に基づいて、次の必要なタスクにルーティングするための分割動作があります。
- プロセス内のさまざまなブランチをメインフローと結合するために、マージ動作があります。
- はペアワイズで使用する必要があります。つまり、プロセスフローが XOR ゲートウェイで複数の分岐に分割されている場合、結合ゲートウェイも XOR ゲートウェイである必要があります。
- これには例外があります。シーケンスフローが別の終了イベントに移動する場合、分割ゲートウェイをマージする必要はありません。つまり、単一のパスは異なるパスに移動されるため、マージする必要はありません。
注記
スタンドアロン決定としての排他的ゲートウェイの使用
排他ゲートウェイは意思決定ではありません。なぜですか? これは、タスクではなく、以前に行われた決定の結果に基づいて次のタスクをルーティングするためのコントロールエレメントであるためです。
排他ゲートウェイ自体は決定ではありません。
食事選択は、XOR ゲートウェイでいずれかの送信パスを選択する前に完了する必要があるタスクです。

決定がありません。

(決定的な) タスクを置換しないゲートウェイ
このプロセス例には決定があるように見えますが、実際には決定はありません。ゲートウェイは、情報に基づいて次のステップを制御するための手段にすぎないため、ステートレスです。タスクとは異なり、個人はゲートウェイを "所有" (責任者) することはできません。
上記のプロセス例を参照すると、これは以下を意味します。
- 実際の決定 (食事の選択) が欠落しているため、行われていません。
- 選択した食事の情報は、最初から "単に利用可能" ですが、プロセスの一部として決定されません。
- XORのゲートウェイはティムの車線にあるものの、ゲートウェイは単なるステートレスな楽器であるため、「ルーティング」の責任を負わない。さらに、ゲートウェイが配置されているレーンは関係ありません。次のタスクが割り当てられているユーザのみが重要です。
トークンコンセプトに戻る
排他ゲートウェイの分割とマージを使用する場合に、プロセスがどのように適用されるかを見てみましょう。
XOR ゲートウェイの命名規則
タスクやイベントで見てきたように、BPMN の要素は、迅速かつ直感的に理解するために、特定の命名規則に従います。
XOR ゲートウェイ、およびプロセス内で結果/条件を処理する特定のゲートウェイには、命名規則もあります。これらは以下のとおりです。
- 排他ゲートウェイには質問のラベルを付ける必要があります。
- 出力条件 (シーケンスフロー) には、質問への回答のラベルを付ける必要があります。
- すべての送信条件は、相互に除外する必要があります。たとえば、はい/いいえです。
- ゲートウェイのマージにはラベルが付けられません。















