Является ли шлюз BPMN XOR-Join избыточным? - PullRequest
2 голосов
/ 18 февраля 2020

Я был удивлен, увидев диаграмму BPMN, в которой решение Exclusive-Or ("XOR-Split") было "закрыто" с тем же символом шлюза.

Мне действительно интересно, каковы причины, по которым обосновать такой подход. На мой взгляд, это избыточно.

То, что кажется фактом, заключается в том, что использование шлюза XOR-Join является необязательным. Я не смог найти четкого ответа на этот вопрос в официальных спецификациях: https://www.omg.org/spec/BPMN/2.0.2/PDF 10.6 Page286ff

Чтобы проиллюстрировать это: Illustration of XOR JOIN

Последующее разъяснение по этому Вопросу:

Возможно, мне придется прояснить предполагаемый провокационный вопрос: по крайней мере, в немецко-говорящей области, по-видимому, существует два разных понимания обработки соединения XOR шлюз. Кажется, большинство утверждает, что использование этого в целом было бы наилучшей практикой, тогда как я думаю, что логический аспект должен быть первостепенным. (Форма следует функции). Вот почему я начал искать официальное объяснение. Поскольку единственные логические причины, по которым я смог найти, где: «могут быть ситуации, когда это необходимо» - и определенные инструменты направляют своих пользователей на использование этого, казалось бы, избыточного элемента, я надеялся найти здесь кого-нибудь, кто сможет прояснить это. с примером.

1 Ответ

2 голосов
/ 24 февраля 2020

Шлюзы используются не только для разделения потоков (XOR-Split, AND-Split, OR-Split), но и для их объединения через некоторое время (XOR-Join, AND-Join, OR-Join).

Хотя, как вы указали на приведенной выше диаграмме, XOR-соединения в действительности не нужны, им может иметь смысл визуально express тот факт, что поток может принимать одну из нескольких возможных ветвей (в зависимости от состояния состояния ), а затем все эти возможные ветви снова сливаются. Кроме того, поскольку необходимы AND-объединения (для выражения слияния набора параллельных потоков), хорошо также использовать XOR-объединения для обеспечения единообразия в выражении шаблонов Split-Join.

Однако есть Также бывают случаи, когда использование XOR-Join просто усложняет диаграмму и не вносит никакой ясности. Поэтому не следует руководствоваться моделями, чтобы всегда использовать XOR-Joins.

...