Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ПИС / BPMN / bpmn_2_0(перевод).pdf
Скачиваний:
251
Добавлен:
14.05.2016
Размер:
10.27 Mб
Скачать

Графический язык моделирования бизнес-процессов BPMN. Версия 2.0

Примечание: Первый из вышеприведенных фрагментов отображает предпочтительное изображение Эксклюзивного Шлюза. Это означает, что в данном документе Эксклюзивные Шлюзы отображаются без маркера.

Маршрут по умолчанию может быть указан или не указан. В случае, если маршрут по умолчанию указан, значит, ни одно из значений условного выражения не равно «true». Если же маршрут по умолчанию не указан, а Процесс выполняется так, что ни одно из значений условного выражения не равно «true», возникает исключение.

Объединяющий Эксклюзивный Шлюз используется для объединения нескольких альтернативных маршрутов в один. Токен каждого из Входящих Потоков Операций назначается на Исходящий Поток Операций без синхронизации.

Фигура 10.107 – Диаграмма классов элемента ExclusiveGateway

Элемент ExclusiveGateway наследует атрибуты и ассоциации элемента Gateway (см. таблицу 8.46). Таблица 10.123 содержит информацию о дополнительных атрибутах и ассоциациях элемента ExclusiveGateway.

Таблица 10.123 Атрибуты и ассоциации элемента ExclusiveGateway

Название атрибута

Описание/использование

 

 

default: SequenceFlow [0..1]

Данный атрибут указывает Поток операций,

 

который наследует токен в случае, если ни

 

одно из значений условного выражения

 

другого Исходящего потока операций не равно

 

«true». Поток операций по умолчанию не

 

должен содержать условного выражения.

 

Любые такие выражения ДОЛЖНЫ БЫТЬ

 

проигнорированы.

 

 

10.5.3. Неэксклюзивный Шлюз

Разделяющие Неэксклюзивные Шлюзы (Условия) используются для разделения Потока операций на несколько альтернативных и параллельных маршрутов. Для данного экземпляра Процесса может быть выбран

278

http://www.elma-bpm.ru

Графический язык моделирования бизнес-процессов BPMN. Версия 2.0

лишь один из предложенных маршрутов. В отличие от Эксклюзивных Шлюзов, значения всех используемых для данного типа Шлюзов условных выражений определены. В данном случае значение одного из условных выражений, равное «true», не исключает определения значения любого другого условного выражения. Токен проходит через все Потоки операций, определенные как «true». Поскольку каждый маршрут является независимым, МОГУТ БЫТЬ использованы любые комбинации этих маршрутов (от нуля и более); однако в действительности, должен быть выбран по-меньшей мере один маршрут.

Графический элемент Неэксклюзивный Шлюз ДОЛЖЕН содержать внутренний маркер, выполненный в виде круга (см. фигуру 10.108), что позволяет отличить данный тип Шлюза от других.

Фигура 10.108 – Пример Неэксклюзивного Шлюза

Маршрут по умолчанию может быть указан или не указан. В случае, если маршрут по умолчанию указан, значит, ни одно из значений условного выражения не равно «true». Если же маршрут по умолчанию не указан, а Процесс выполняется так, что ни одно из значений условного выражения не равно «true», возникает исключение.

Объединяющие Неэксклюзивные Шлюзы используются для объединения нескольких альтернативных и параллельных маршрутов в один. Токен потока управления, поступающий в Неэксклюзивный Шлюз, МОЖЕТ БЫТЬ синхронизирован с другими токенами, поступающими в данный Шлюз позже. Предпочтительный способ синхронизации маршрутов посредством Неэксклюзивного Шлюза описан в данном подразделе.

Фигура 10.109 – Диаграмма классов элемента InclusiveGateway

Элемент InclusiveGateway наследует атрибуты и ассоциации элемента Gateway (см. таблицу 8.46). Таблица 10.124 содержит информацию о дополнительных атрибутах и ассоциациях элемента InclusiveGateway.

279

http://www.elma-bpm.ru

Графический язык моделирования бизнес-процессов BPMN. Версия 2.0

Таблица 10.124 Атрибуты и ассоциации элемента InclusiveGateway

Название атрибута

Описание/использование

 

 

default: SequenceFlow [0..1]

Данный атрибут указывает Поток операций,

 

который наследует токен в случае, если ни

 

одно из значений условного выражения других

 

Потоков операций не равно «true». Поток

 

операций по умолчанию не должен содержать

 

условного выражения. Любые такие выражения

 

ДОЛЖНЫ БЫТЬ проигнорированы.

 

 

10.5.4. Параллельный Шлюз

Параллельные Шлюзы используются для синхронизации (объединения) и создания параллельных маршрутов.

Графический элемент Параллельный Шлюз ДОЛЖЕН содержать внутренний маркер, выполненный в виде знака «+» (см. фигуру 10.110), что позволяет отличить данный тип Шлюза от других.

Фигура 10.110 – Пример Параллельного Шлюза

Параллельный Шлюз используется для синхронизации параллельных маршрутов.

Фигура 10.111 – Пример Параллельного Шлюза, используемого для синхронизации

С помощью Параллельного Шлюза параллельные маршруты создаются без необходимости проверки какихлибо условий. Благодаря работе Шлюза данного типа, любой Исходящий Поток Операций получает токен. Параллельный Шлюз ожидает поступления всех Входящих Потоков Операций до того, как от него отойдет

Исходящий Поток Операций.

280

http://www.elma-bpm.ru

Графический язык моделирования бизнес-процессов BPMN. Версия 2.0

Фигура 10.112 – Диаграмма классов элемента ParallelGateway

Элемент ParallelGateway наследует атрибуты и ассоциации элемента Gateway (см. таблицу 8.46), однако, не может иметь каких-либо других атрибутов и ассоциаций.

10.5.5. Комплексные Шлюзы

Комплексные Шлюзы используются для моделирования поведения Потоков Операций в случае комплексной синхронизации. Для точного описания такого поведения используется выражение ExpressionactivationCondition. Данное выражение может использоваться, к примеру, для указания того, что для активации Шлюза необходимо наличие трех токенов Входящих Потоков Операций из пяти. Как и при разделяющем поведении Неэксклюзивного Шлюза, условиями Исходящих Потоков Операций

определяется то, какие токены сформирует Шлюз. Токены, прибывающие позже по двум оставшимся маршрутам, вызывают сброс Шлюза, а для Исходящих Потоков Операций формируются новые токены. Для определения того, будет ли Шлюз ожидать оставшиеся токены для того, чтобы осуществился его сброс, используется семантика синхронизации Неэксклюзивного Шлюза.

Графический элемент Комплексный Шлюз ДОЛЖЕН содержать внутренний маркер, выполненный в виде символа «*» (см. фигуру 10.113), что позволяет отличить данный тип Шлюза от других.

Фигура 10.113 – Пример Комплексного Шлюза

В отличие от других типов Шлюзов, Комплексный Шлюз имеет различные внутренние состояния, определяемые с помощью булевского атрибута waitingForStart. Исходное значение данного атрибута равно «true», но после активации оно меняется на «false». Этот атрибут может использоваться для определения того, где при активации Шлюза для Исходящих Потоков Операций формируются токены, а также того, где они

281

http://www.elma-bpm.ru

Соседние файлы в папке BPMN