Термины, используемые в строгом определении бизнес-процесса
Основные элементы
Переход
- соответствует ребру направленного графа. По этому ребру может перемещаться точка управления. В UML-версии графической нотации обозначается линией со стрелкой, соединяющей элементы графа процесса. В случае, если переход выходит из Ветвления, рядом с переходом в квадратных скобках записывается условие, при выполнении которого будет выбран данный переход.
Англоязычный синоним: transition
Сокращенный вариант: -
Точка Управления
- указатель на активный узел процесса. В выполняющемся Бизнес-процессе одновременно может быть несколько Точек Управления. В соответствии с бизнес логикой процесса Точка Управления может разделиться на несколько Точек Управления в Маршрутном Узле процесса, также Точки Управления могут ждать друг друга в другом Маршрутном Узле и сливаться в одну Точку.
Англоязычный синоним: Control flow
Сокращенный вариант: -
Маршрутный узел
- соответствует разветвлению-слиянию Точек Управления. В этих узлах BPM-система, на основании содержащихся в Маршрутных Узлах правил, выбирает следующий узел (узлы), в который будет передано управление. Соответственно с этими узлами (кроме узлов начала и завершения процесса) связано обязательно более одного входящего или исходящего Перехода.
Англоязычный синоним: RouteNode
Сокращенный вариант: - Вентиль
Узел-Действие
- Узел в графе Бизнес-процесса BPM-системы, ассоциированный с каким-либо Действием. В этих узлах BPM-система дает поручение Пользователю на выполнение Действия и ждет ответа (сообщения, что работа выполнена). После ответа Пользователя Точка Управления движется по Переходу к следующему узлу процесса. К Узлу-Действию может примыкать один или несколько входящих и только один исходящий Переход. Поведение нескольких точек управление в Узле-Действии определяется следующим образом: Если одна точка управления «догоняет» другую в последовательном действии, то точка управления становится в очередь перед действием и переходит в действие только после того, как предыдущая точка управления его покинет. То есть данный узел можно также охарактеризовать как «Последовательное действие». В UML-версии графической нотации обозначается прямоугольником со скругленными краями.
Англоязычный синоним: ActivityNode
Сокращенный вариант: - Activity
Ветвление
- Вид маршрутного узла. Должен иметь один входящий и несколько исходящих переходов. Соответствует WF-паттерну «исключающий выбор». В случае идущих друг за другом точек управления «обрабатывает» их по очереди в порядке поступления и «отправляет» каждую по соответствующему исходящему переходу. Рядом с ним (исходящим переходом) в квадратных скобках записывается условие, при выполнении которого будет выбран данный переход. В UML-версии графической нотации обозначается ромбом.
Замечание. Допускается для экономии места как бы совмещать Ветвление с предыдущим Узлом-Действием. В этом случае графический элемент ветвления не рисуется, выходящие переходы прикрепляются к предыдущему Узлу-Действию, около каждого перехода пишется условие выбора этого перехода.
Англоязычный синоним: DecisionNode
Сокращенный вариант: - Decision
Соединение
Вид маршрутного узла. Обозначается ромбом. Должен иметь несколько входящих и один исходящий переход. Соответствует WF-паттерну «простое соединение». В графической нотации обозначается также как и Ветвление («исключающий выбор»)
Англоязычный синоним: MergeNode
Разделение
- Вид маршрутного узла. Должен иметь один входящий и несколько исходящих переходов. Соответствует WF-паттерну «параллельное расщепление». Для пришедшей в узел точки управления генерирует точку управления для каждого исходящего перехода. Все сгенерированные точки управления далее выполняются параллельно. В случае идущих друг за другом точек управления «обрабатывает» их по очереди в порядке поступления. В UML-версии графической нотации обозначается черным прямоугольником.
Англоязычный синоним: ForkNode
Сокращенный вариант: - Fork
Слияние
- Вид маршрутного узла. Должен иметь несколько входящих и один исходящий переход. Соответствует WF-паттерну «синхронизация». В UML-версии графической нотации обозначается черным прямоугольником.
Для пришедшей в узел точки управления поведение узла следующее:
Организуются «транши управления». Каждый транш является подмножеством подошедших к узлу точек управления, причем для каждого входящего перехода в транш не может входить более одной точки. В первый транш входят точки управления, подошедшие первыми по «своему» переходу, во второй – вторыми и т.д. Ожидается приход всех точек управления в рамках первого транша (т.е. по всем входящим переходам). При этом событии точки управления первого транша уничтожаются, для исходящего перехода генерируется одна точка управления, второй транш становится первым, третий вторым и т.д. Слияние в графической нотации обозначается так же, как и конструкция Разделение.
Англоязычный синоним: JoinNode
Сокращенный вариант: - Join
Дискриминатор
Вид маршрутного узла. Соответствует WF-паттерну «дискриминатор». В UML-нотации обозначается черным прямоугольником, над верхней частью прямоугольника в квадратных скобках располагается надпись «Discriminator». Черный прямоугольник должен иметь несколько входящих и один исходящий переход.
Для пришедшей в узел точки управления поведение узла следующее: Организуются «транши управления». Каждый транш является подмножеством подошедших к узлу точек управления, причем для каждого входящего перехода в транш не может входить более одной точки. В первый транш входят точки управления, подошедшие первыми по «своему» переходу, во второй – вторыми и т.д. В момент прихода первой точки управления каждого транша для исходящего перехода сразу генерируется одна точка управления. Далее ожидается приход всех точек управления в рамках первого транша (т.е. по всем входящим переходам). При этом событии точки управления первого транша уничтожаются, , второй транш становится первым, третий вторым и т.д.
Альтернативное описании поведения пары элементов Разделение-Слияние.
Обозначения элементов. – Такие же.
В бизнес-процессе можно определить пару элементов: Слияние и соответствующее ему Разделение.
Поведение элемента Разделение в паре такое же, как поведение локального элемента Разделение. Поведение элемента Слияние в паре отличается от поведения локального элемента Слияние: Для пришедшей в Слияние точки управления проверяется, если с приходом данной точки управления в Слияние в этот элемент пришли все точки управления, сгенерированные парным ему элементом Разделение, то все эти точки управления уничтожаются, для исходящего перехода генерируется одна точка управления. Если пришли не все точки управления, то пришедшая точка управления остается в узле Слияние.
Альтернативное описании поведения пары элементов Разделение-Дискриминатор.
Обозначения элементов. – Такие же.
В бизнес-процессе можно определить пару элементов: Слияние и соответствующй ему Дискриминатор.
Поведение элемента Разделение в паре такое же, как поведение локального элемента Разделение. Поведение элемента Дискриминатор в паре отличается от поведения локального элемента Дискриминатор:
Для пришедшей в узел точки управления поведение узла следующее: Если в дискриминатор пришла первая точка управления, сгенерированная соответствующим парным элементом «Разделениее», то для исходящего перехода генерируется одна точка управления. Если пришла не первая точка управления, то ничего не происходит. В момент прихода последней точки управления из сгенерированных соответствующим «Разделением», все эти точки управления уничтожается.
Начало
- Вид маршрутного узла. Соответствует точке начала исполнения бизнес-процесса. Узел «Начало» должен не иметь входящих переходов и иметь только один исходящий переход. В бизнес-процессе должен существовать единственный узел «Начало». В UML-версии графической нотации обозначается черным кружком. Узел также известен под названием «точка старта процесса».
Англоязычный синоним: InitialNode
Сокращенный вариант: - Start
Окончание
- Вид маршрутного узла. Соответствует точке окончания исполнения бизнес-процесса. Узел «Окончание» должен иметь один или более входящих переходов и ни одного исходящего перехода. При попадании управления в точку завершения процесса останавливаются все потоки этого процесса, а также все его синхронные подпроцессы. В бизнес-процессе может существовать несколько узлов «Окончание». Однако этот узел не обязателен в бизнес-процессе, если в бизнес-процессе существует хотя бы одна точка завершения потока. В UML-версии графической нотации обозначается черным кружком внутри окружности.
Англоязычный синоним: ActivityFinalNode
Сокращенный вариант: - End
Роль-Дорожка
Специальный тип переменных бизнес-процесса для имплементации Ролей. Определяет Пользователей, которые могут выполнить определенное Действие. Роль-Дорожка ставится в соответствие Действию. До начала исполнения Действия соответствующая Роль-Дорожка должна быть проинициализирована: ей должно быть поставлено в соответствие множество Пользователей. Некоторые типы Действий требуют единственного Пользователя, в этом случае, если Роль-Дорожка проинициализирована более, чем одним Пользователем, до начала исполнения Действия должна быть произведена ее «доинициализация» - из множества Пользователей каким-то образом должен быть выбран только один. Например, всем Пользователям будут посланы задания, однако, только первый, взявший задание на выполнение, останется в множестве Пользователей, остальные Пользователи будут исключены из этого множества, соответствующие задания будут у них отозваны. В UML-версии графической нотации обозначается записью в круглых скобках в верхней части узла-действия или специальной полосой (дорожкой) на графе процесса.
Англоязычный синоним: Swimlane-Role
Сокращенный вариант: - Swimlane
Присоединенный к Действию Таймер
Элемент, при помощи которого Действию может быть поставлено в соответствие время выполнения. К таймеру можно подсоединить дополнительный переход, по которому точка управления перейдет из узла-Действия в случае, если задание в этом узле будет просрочено. Таймеру может быть поставлено в соответствие как абсолютное время, так и относительное (относительно момента прихода точки управления в узел-Действие)
Англоязычный синоним: Timer
Узел - Ожидание
Элемент - самостоятельный узел графа бизнес-процесса, этому элементу ставится в соответствие время задержки точки управления.
Англоязычный синоним: TimerNode
Замечание о различных вариантах определения Действия
Действие соответствует понятию действие глоссария. В предлагаемом описании существует следующая классификация действий (в скобках даны значки, обозначающие текущий вариант):
- Атомарное действие – Подпроцесс () – Композиция (+)
- Действие с синхронизацией - Действие без синхронизации (&)
- Последовательное действие - Параллельное действие (*)
Также в настоящем описании существует такое понятие как Мульти-действие.:
- Единичный экземпляр действия - Мульти-действие
Композиция соответствует сокрытию части бизнес-процесса в одном элементе (Программные средства, реализующие нотацию должны давать возможность как скрывать, так и показывать эту часть бизнес-процесса). Композиция похожа на подпроцесс, однако является более «легкой» конструкцией, т.к. для композиции не порождается нового экземпляра процесса, следовательно у нее нет своих собственных переменных, инициализаторов ролей и т.д.
Мульти-действие обозначается специальной иконкой. Предполагается, что для всех случаев, в которых «Мульти-действие» специально не оговорено или не изображено в виде иконки «мультидействия», действие является «единичным экземпляром действия»
То есть всего возможно 24 варианта Действия. В последующих пунктах будут приведены некоторые типичные варианты Действий.
Настоящее описание предполагает, что имя действия или процесса (подпроцесса) должно начинаться с глагола в неопределенной форме (неявное повелительное наклонение).
Подпроцесс с синхронизацией
Вид действия. Если точка управления попадает в подпроцесс с синхронизацией, то запускается соответствующий подпроцесс, точка управления ждет его окончания и далее покидает действие по исходящему переходу. Если во время выполнения подпроцесса к узлу подходит другая точка управления, то она становится в очередь перед данным действием и переходит в него только после того, как предыдущая точка управления его покинет.
Параллельное действие
Вид Действия. Если одна точка управления «догоняет» другую в параллельном действии, то в рамках данного действия организуется несколько независимых экземпляров действия с соответствующими локальными переменными (см. определение перспективы данных). Изменение глобальных переменных экземплярами действия происходят в соответствии со специальными правилами. В данном случае точки управления независимы. После выполнения обоих экземпляров действия количество точек управления не изменяется, они опять «идут» одна за другой.
Англоязычный синоним: Expansion region with only one action
Подпроцесс без синхронизации
Вид действия. Если точка управления попадает в подпроцесс без синхронизации, то запускается соответствующий подпроцесс, который выполняется независимо от «родительского» процесса. Сразу же после запуска подпроцесса точка управления покидает действие по исходящему переходу. Если во время выполнения действия к узлу подходит другая точка управления, то она становится в очередь перед данным действием и переходит в него только после того, как предыдущая точка управления его покинет
Мульти-действие
Мульти-действие – специальный вид Действия. В момент прихода управления в Мульти-действие создается известное к этому моменту времени количество экземпляров этого действия, для каждого узла организуется своя точка управления и далее для каждой точки управления параллельно и независимо выполняются действия разных экземпляров этого узла. После того, как действия всех точек управления выполнены, управление переходит к следующему узлу по исходящему переходу.
Замечание. Количество экземпляров мульти-узла определяется значением специальной «присоединенной» переменной в момент прихода управления в это действие. В настоящее время еще не решен вопрос о поведении действия в случае изменения значения этой переменной в процессе исполнения экземпляров мульти-узла.
Завершение потока
- Вид маршрутного узла. Соответствует точке завершения исполнения потока управления бизнес-процесса. Точка завершения потока должна иметь один или более входящих переходов и не должна иметь исходящих переходов. В UML-версии графической нотации обозначается черным крестиком внутри окружности.
Если в бизнес-процессе все потоки управления завершены, то весь бизнес-процесс считается завершенным. В бизнес-процессе может существовать несколько узлов Завершения потока. Однако этот узел не обязателен в бизнес-процессе, если в бизнес-процессе существует хотя бы одна точка завершения процесса - Окончание.
Завершение потока не останавливает порожденные им подпроцессы.
Англоязычный синоним: FlowFinalNode
Сокращенный вариант: - FlowEnd
Область с прерыванием
Специальная конструкция языка. Представляет собой область с пунктирной границей. В области могут располагаться узлы бизнес-процесса, в область могут входить и выходить переходы управления (стрелки). В случае, если какая-либо точка управления покидает область с прерыванием, происходит прерывание: все остальные точки управления, находящиеся внутри области, уничтожаются. Соответственно останавливаются все подпроцессы как с синхронизацией, так и без синхронизации.
Англоязычный синоним: InterruptibleActivityRegion
Сигнал
Особый вид маршрутного узла. Содержит один исходящий переход, и один или несколько входящих переходов. Сигналу в данном или каком-то другом бизнес-процессе должен соответствовать элемент «Приемник сигнала». В момент прихода управления в Сигнал отправляется сигнал (специальное сообщение) Приемнику сигнала, после чего точка управления «идет» дальше.
Приемник сигнала
Особый вид маршрутного узла. Содержит один исходящий переход, и один или ни одного входящего перехода. Приемнику сигнала в данном или каком-то другом бизнес-процессе должен соответствовать элемент "Сигнал". Если узел содержит входящий переход, то пришедшая в узел точка управления «идет» дальше, только если в приемник сигнала пришел сигнал (специальное сообщение), в противном случае управление «останавливается» в этом узле и «ждет» сигнала. Если узел не содержит входящий переход, то пришедший сигнал порождает новую точку управления.