Курс: "Процессное управление на свободном программном обеспечении" нужно обновитьв части практических заданий, т.к. сейчас актуальна новая версия RunaWFE 4.1.2.
|
Стандарты и концепции, связанные с СУБПиАР
Сравнение графических нотаций
В BPMN нотации - более универсальные элементы. Элементы BPMN нотации определяются парой графических объектов - формой элемента и изображенной внутри нее иконкой. Например, форма для всех маршрутных узлов BPMN одинакова, а поведение определяется иконкой: "крестик" соответствует выбору одного из нескольких направлений, а "плюсик" - разделению точки управления на несколько одновременно перемещающихся точек. Это позволяет использовать различные комбинации форм и иконок вместо того, чтобы вводить новые графические элементы и таким образом можно уменьшить общее число используемых в нотации объектов.
Однако UML AD нотация проще для изучения неподготовленным пользователем, она интуитивно понятна. UML AD нотация использует хотя и не универсальные, но широко известные графические элементы. Например, в ней для выбора одного из нескольких направлений используется "ромбик". А параллельно выполняющиеся узлы-действия в UML AD нотации как правило соединены с элементами - разделениями-слияниями параллельными линиями, что интуитивно соответствует одновременно выполняющимся действиям.
В UML AD нотации изображение процессов очень похоже на блок-схемы, которые изучаются в российских технических ВУЗах и техникумах. В начальной школе при изучении математики в некоторых учебниках также активно используются те же блок-схемы3Петерсон Л. Г. Математика. Учебники для 1-4 класса. Ювента. 2009. То есть многим российским пользователям изображения в UML AD нотации сразу будут интуитивно понятны, а для понимания изображений в BPMN нотации придется потратить время и усилия на ее изучение.
У BPMN-нотации есть свои сильные стороны, например, очень велика маркетинговая мощь международных софтверных компаний, продвигающих эту нотацию. Есть элементы, пользоваться которыми в BPMN нотации удобнее, чем в UML нотации.
Пример процесса "заявка на платеж" в UML-нотации
Пример процесса "заявка на платеж" в BPMN-нотации
Для того чтобы объяснять схемы несложных бизнес-процессов, нарисованные в UML AD нотации не требуется много усилий. В случае же BPMN нотации требуются учебные курсы и различные консультации.
Кратко преимущества нотаций можно сформулировать так:
Преимущества UML нотации относительно BPMN для российских пользователей.
- UML нотация проще. Ее легче изучать.
- Значительному числу пользователей графы процессов, нарисованные в UML нотации (с движением точек управления бизнес-процесса преимущественно сверху-вниз) более понятны, чем процессы, нарисованные в BPMN нотации.
Преимущества BPMN нотации.
- Более понятные изображения некоторых элементов (например - таймеров)
- Более удобно работать с бизнес-исключениями
Использование бинарных отношений для упрощения инициализации ролей
Роли и их инициализация
Исполнителями заданий бизнес-процесса могут быть как сотрудники предприятия, так и информационные системы. Связывание узлов бизнес-процесса с исполнителями заданий производится при помощи ролей. При разработке бизнес-процесса создается роль и ставится в соответствие определенным узлам схемы. Инициализация роли - это назначение на роль конкретного исполнителя. Для построения простого механизма инициализации ролей удобно использовать концепцию бинарных отношений4А. Н. Колмогоров, С. В. Фомин, Элементы теории функций и функционального анализа. 4 изд. М. Наука, 1976.
Понятие "бинарное отношение"
Бинарное отношение можно рассматривать как расширение понятия функция.
Определение. Бинарным отношением между множествами и называется любое подмножество декартова произведения множества на множество . Часто, чтобы обозначить принадлежность упорядоченной пары к бинарному отношению вместо записи используют обозначения или . При этом говорят, что находится в отношении к .
Замечание1. Для множеств и , состоящих из конечного числа элементов, любое отношение можно задать, определив набор упорядоченных пар для этого отношения.
Замечание2. Некоторые (но не все) бинарные отношения соответствуют функциям. То есть некоторые бинарные отношения являются функциями. Можно определить функцию как такое бинарное отношение , в котором каждому значению отношения соответствует лишь одно единственное значение (но не наоборот). В этом случае , где - функция, соответствующая бинарному отношению .
Применение понятия "бинарное отношение" к инициализации ролей
Кроме традиционных способов инициализации ролей удобно иметь возможность инициализации ролей при помощи бинарных отношений.
Во-первых, это дает возможность инициализировать роль сразу множеством возможных исполнителей заданий. Часто в бизнес-процессе задание направляется не одному исполнителю, а множеству возможных исполнителей задания. Выполняет это задание тот пользователь, который первым возьмет его на исполнение.
Во-вторых, при использовании отношений процедура задания возможных исполнителей задания становится очень простой и ее легко реализовать прямо в графическом интерфейсе.
Отношение над исполнителями заданий можно построить при помощи задания набора пар (Исполнитель1, Исполнитель2). При этом не требуется проверять каких-либо ограничений (как, например, для функции - что она возвращает только одно значение для одного исполнителя).
Использование групп пользователей при задании отношений
Задавать отношения перечислением всех определяющих его пар пользователей неудобно, так как таких пар может быть очень много. Для уменьшения количества вводимых данных имеет смысл воспользоваться группами пользователей.
Группы пользователей служат для объединения пользователей по какому-либо признаку. Обычно группа "наследует" свойства всех групп, в которые она входит.
Зададим отношение как множество пар (Исполнитель1, Исполнитель2), в которых Исполнитель является пользователем или группой пользователей.
Инициализация роли при помощи отношения производится следующим образом:
- Из указанной в инициализаторе роли переменной бизнес-процесса берется ее значение-Исполнитель - имя пользователя или группы пользователей. Это значение будет соответствовать правой части отношения.
- Строится множество значений всех левых частей отношения, соответствующих данному элементу правой части. Делается это так: для Исполнителя - значения правой части отношения находятся все группы, в которые он входит (хотя бы в одну из их подгрупп). Далее находятся все пары определенные для данного отношения, у которых в правой части стоит Исполнитель или одна из найденных групп. Далее рассматривается множество всех левых частей этих пар.
Если пар нет, то роль не инициализируется. Если множество состоит только из одного пользователя, то роль инициализируется им. В остальных случаях роль инициализируется множеством всех пользователей, попавших в левые части пар или принадлежащих какой-либо из групп, попавших в левую часть пар, или какой-либо из их подгрупп.