Моделирование бизнес-процессов в нотации BPMN используется для донесения широкого спектра информации до различных категорий пользователей. BPD-диаграммы бизнес-процессов позволяют создавать три типа моделей для описания бизнес-процессов:
— Частные (внутренние) бизнес-процессы.
— Абстрактные (открытые) бизнес-процессы.
— Процессы взаимодействия (глобальные).
Частные бизнес-процессы описывают внутреннюю деятельность организации. Они представляют бизнес-процессы в общепринятом понимании (business processes или workflows). При использовании ролей частный бизнес-процесс помещается в отдельный пул. Поэтому поток управления находится внутри одного пула и не может пересекать его границ. Поток сообщений, напротив, пересекает границы пулов для отображения взаимодействия между разными частными бизнес-процессами.
Абстрактные (открытые) бизнес-процессы служат для отображения взаимодействия между двумя частным бизнес-процессами (то есть между двумя участниками взаимодействия) В открытом бизнес-процессе показываются только те действия, которые участвуют в коммуникации с другими процессами. Все другие, «внутренние», действия частного бизнес-процесса не показываются в абстрактном процессе. Таким образом, абстрактный процесс показывает окружающим последовательность событий, с помощью которой можно взаимодействовать с данным бизнес-процессом. Абстрактные процессы помещаются в пулы и могут моделироваться как отдельно, так и внутри большей диаграммы для отображения потока сообщений между действиями абстрактного процесса с другими элементами. Если абстрактный процесс и соответствующий частный процесс находятся в одной диаграмме, то действия, отображённые в обоих процессах, могут быть связаны ассоциациями.
Процессы взаимодействия (глобальные) отображает взаимодействия между двумя и более сущностями. Эти взаимодействия определяются последовательностью действий, обрабатывающих сообщения между участниками. Процессы взаимодействия могут помещаться в пул. Эти процессы могут моделироваться как отдельно, так и внутри большей диаграммы для отображения ассоциаций между действиями и другими сущностями. Если процесс взаимодействия и соответствующий частный процесс находятся в одной диаграмме, то действия, отображённые в обоих процессах, могут быть связаны ассоциациями.
Рассматрим далее пример бизнес-процесса «Регистрация на рейс».
Сначала приводится словесное описание процесса, а потом один из вариантов его представления в BPMN. Данный пример не гарантирует максимального приближёния к реальному процессу, а ставит целью показать использование конструкций нотации BPMN.
Когда пассажир прибывает в аэропорт, его приоритетной задачей является регистрация на рейс. Сотрудник на стойке регистрации приветствует клиента и берёт у него документы: билет на рейс и паспорт. Если документы клиента не в порядке (например, истёк срок действия паспорта), он не может быть зарегистрирован на рейс и процесс завершается. При этом клиент получает документы обратно.
Если паспорт и билет в порядке, то сотрудник авиакомпании регистрирует клиента на рейс и распечатывает посадочный талон. При этом он взаимодействует с информационной системой авиакомпании. Сотрудник отдаёт пассажиру посадочный талон и паспорт, после чего уточняет, нет ли в багаже пассажира запрещённых грузов (например, воспламеняющихся веществ).
Если таковые есть, то они изымаются из багажа. Сотрудник авиакомпании забирает багаж и ручную кладь пассажира и регистрирует её. При этом сотрудник снова взаимодействует с информационной системой авиакомпании. Если выясняется, что есть перевес, то сотрудник уведомляет об этом пассажира и сообщает сколько необходимо заплатить. После получения денег от пассажира, сотрудник регистрирует оплату в системе.
В итоге, пассажир получает багажную квитанцию. Сотрудник желает пассажиру приятного полёта, и процесс завершается.
На рисунке 6.4 приведен пример представления упомянутого выше словесного описания бизнес-процесса в виде BPD-диаграммы.
Далее на рисунках 6.5 – 6.7 приведены примеры BPD-диаграмм других бизнес-процессов.
Рис.6.4. – Пример диаграммы в нотации BPMN. Регистрация на рейс. |
Источник: studopedia.su
Нотация BPMN
Нотация BPMN (Business Process Model and Notation — модель бизнес-процессов и нотация) используется для описания процессов нижнего уровня. Диаграмма процесса в нотации BPMN представляет собой алгоритм выполнения процесса. На диаграмме могут быть определены события, исполнители, материальные и документальные потоки, сопровождающие выполнение процесса.
Каждый процесс может быть декомпозирован на более низкие уровни. Декомпозиция может производиться в нотациях BPMN или EPC. При декомпозиции процесса BPMN, расположенного на диаграмме SADT, стрелки с диаграммы SADT на диаграмму BPMN не переносятся.
В нотации BPMN выделяют пять основных категорий элементов:
элементы потока (события, процессы и шлюзы);
данные (объекты данных и базы данных);
соединяющие элементы (потоки управления, потоки сообщений и ассоциации);
зоны ответственности (пулы и дорожки);
артефакты (сноски).
Процесс (Задача, Подпроцесс) | ![]() | ![]() ![]() | Блок представляет собой процесс — действие или набор действий, выполняемых над исходным объектом (документом, ТМЦ и прочим) с целью получения заданного результата. Внутри блока помещается наименование процесса. Временная последовательность выполнения процессов задается расположением процессов на диаграмме слева направо (сверху вниз на вертикальной диаграмме процесса BPMN). Процессы BPMN подразделяются на задачи и подпроцессы. |
Задача — это простое действие (или операция), которое не имеет дальнейшей декомпозиции в рамках рассматриваемого процесса. Задачи подразделяются на типы, каждый из которых (за исключением абстрактной задачи) обозначается своим маркером в левом верхнем углу блока задачи:
— Абстрактная задача (задача с неопределенным типом);
— Пользовательская задача (задача, которую выполняет человек при содействии других людей или программного обеспечения);
— Сервисная задача (задача, предназначенная для оказания услуги, которая может являться как web-сервисом, так и автоматизированным приложением);
— Отправка сообщений (задача, суть которой заключается в отправлении сообщения внешнему участнику за пределы рассматриваемого процесса);
— Получение сообщений (задача, суть которой заключается в получении сообщения от внешнего участника, находящегося за пределами рассматриваемого процесса);
— Ручное выполнение (задача, выполнение которой подразумевает действия человека и исключает использование каких-либо автоматизированных механизмов исполнения или приложений);
— Бизнес-правило (задача, суть которой заключается в выполнении бизнес-правила);
— Задача-сценарий (задача, суть которой заключается в выполнении некоторого сценария (или скрипта) — некоторой автоматической операции).
По умолчанию создается Задача с типом «Абстрактная задача».
На Рис.1 изображена задача с типом «Отправка сообщений».
Рисунок 1. Задача
Подпроцесс — это декомпозированный процесс, включенный в состав рассматриваемого процесса, который описан более подробно на своей диаграмме. На диаграмме подпроцесс обозначается блоком со знаком «плюс» в центре нижней части фигуры. Подпроцессы подразделяются на типы:
— Подпроцесс (подпроцесс с неопределенным типом);
— Событийный подпроцесс (подпроцесс, не имеющий входящих и исходящих потоков управления. Событийный подпроцесс запускается всякий раз, когда его стартовое событие запускается во время выполнения родительского процесса);
— Транзакция (подпроцесс, состоящий из набора процессов, которые в совокупности представляют некий неделимый процесс: либо весь процесс выполняется полностью, либо не выполняется вообще. Транзакции используются тогда, когда необходимо выполнить несколько процессов, но при каких-то исключительных ситуациях необходимо «откатить» выполняемые процессы);
— Ad-Hoc процесс (подпроцесс, представляющий собой группу процессов, взаимодействие между которыми не поддаются строго регламентированным правилам. Определяется только набор процессов, однако, их последовательность и количество выполнений определяются исполнителями этих процессов).
По умолчанию создается подпроцесс с типом «Подпроцесс».
На Рис.2 изображен событийный подпроцесс.
Рисунок 2. Подпроцесс
Для процессов BPMN (и для задач, и для подпроцессов) предусмотрено обозначение циклического выполнения. Для процесса BPMN можно задать следующие типы циклов:
— Стандартный цикл (используется, когда количество циклов заранее неизвестно. Процесс будет выполняться в цикле, пока верно некоторое условие);
— Многоэкземплярный параллельный цикл (используется, когда количество циклов известно заранее. При этом экземпляры процесса будет выполняться параллельно);
— Многоэкземплярный последовательный цикл (используется, когда количество циклов известно заранее. При этом экземпляры процесса будет выполняться последовательно).
Для процесса BPMN можно задать специальный тип процесса — Компенсация. Некоторые процессы могут приводить к нежелательным результатам, которые следует отменить. Процессы-компенсации как раз предусмотрены для отмены результатов выполнения некоторого процесса. Процессы-компенсации не должны иметь входящих и исходящих потоков управления и могут соединяться входящей ассоциацией с граничным событием с типом «Компенсация». Пример соединения события и процесса с типом «Компенсация» специальным типом соединения «Ассоциация» см. в описании к элементу «Ассоциация», приведенному в данной таблице ниже.
Изменение типа задачи или подпроцесса, типа цикла или выбор для процесса типа «Компенсация» осуществляется при помощи подменю в контекстном меню, вызываемом от процесса на диаграмме. Подробнее об особенностях работы с процессами на диаграмме процесса в нотации BPMN см. в Руководство пользователя в статье Процессы.
Промежуточные события (обработчики) могут присоединяться к границе процесса. Такие события называются граничными. Граничное событие изображает событие, возникающее при выполнении процесса, к границе которого это событие присоединено. Причем граничное событие может прервать выполнение процесса — граничное прерывающее, и не прерывать — граничное непрерывающее. Граничное непрерывающее событие изображается пунктирными линиями.
На Рис.4 изображено использование граничного прерывающего события. Если при выполнении Процесса 1 возникнет Событие 2, то выполнение Процесса 1 прервется и на текущей диаграмме дальнейшее выполнение процесса будет происходить по потоку, исходящему от граничного события, т.е. начнется выполнение Процесса 3.
Рисунок 4. Граничное прерывающее событие
На Рис.5 изображено использование граничного непрерывающего события. Если при выполнении Процесса 1 возникнет Событие 2, то выполнение Процесса 1 продолжится. На текущей диаграмме дальнейшее выполнение процесса будет происходить по потоку, исходящему от граничного события, т.е. начнется выполнение Процесса 3. А также после выполнения Процесса 1 начнет выполняться Процесс 2
Рисунок 5. Граничное непрерывающее событие
Подробнее об особенностях работы с событиями на диаграмме процесса в нотации BPMN см. в Руководство пользователя в статье События.
На Рис.7 параллельный шлюз используется для слияния потоков управления или синхронизации параллельных веток выполнения процесса. Выполнение Процесса 3 запустится только тогда, когда выполнится и Процесс 1, и Процесс 2.
Подробнее об особенностях работы со шлюзами на диаграмме процесса в нотации BPMN см. в Руководство пользователя в статье Шлюзы.
Эксклюзивный шлюз может использоваться и для слияния потоков управления. В данном случае шлюз просто пропускает через себя все потоки управления без синхронизации. На Рис.9 Процесс 3 будет выполнен дважды: после выполнения Процесса 1 и после выполнения Процесса 2.
Подробнее об особенностях работы со шлюзами на диаграмме процесса в нотации BPMN см. в Руководство пользователя в статье Шлюзы.
Рисунок 10
Показать ветвление потоков управления подобно неэксклюзивному шлюзу можно при помощи условных потоков управления (Рис.19).
Неэксклюзивный шлюз может использоваться для слияния потоков управления. В данном случае шлюз может использоваться для синхронизации. На Рис.11 Процесс 3 будет выполнен только тогда, когда выполнится и Процесс 1, и Процесс 2.
Рисунок 11
Об особенностях работы со шлюзами на диаграмме процесса в нотации BPMN см. в Руководство пользователя в статье Шлюзы.
Рисунок 12
Об особенностях работы со шлюзами на диаграмме процесса в нотации BPMN см. в Руководство пользователя в статье Шлюзы.
Рисунок 13
Существует 2 типа шлюзов по событиям, которые могут быть использованы в начале процесса:
— эксклюзивный шлюз по событиям (для запуска процесса) (Рис.14);
— параллельный шлюз по событиям (для запуска процесса) (Рис.15).
В случае, когда шлюз по событиям используется для запуска процесса, у него не должно быть входящих связей.
Эксклюзивный шлюз по событиям (для запуска процесса) аналогичен обычному эксклюзивному шлюзу по событиям: событие, идущее после шлюза и возникшее первым, определяет дальнейший ход выполнения процесса.
На Рис.14 выполнение процесса начнется с возникновения одного из событий, идущих после шлюза:
— если первым возникнет Событие 1, то дальнейшее выполнение процесса будет осуществляться только по потоку управления, исходящему из этого события, т.е. выполнится Процесс 1;
— если первым возникнет Событие 2, то дальнейшее выполнение процесса будет осуществляться только по потоку управления, исходящему из этого события, т.е. выполнится Процесс 2.
Рисунок 14
При использовании параллельного шлюза по событиям (для запуска процесса) выполнение процесса запускается по всем возникшим событиям, идущим после шлюза.
На Рис.15 Процесс 1 и Процесс 2 будут выполнены, если возникнут события, идущие перед этими процессами.
Рисунок 15
Подробнее об особенностях работы со шлюзами на диаграмме процесса в нотации BPMN см. в Руководство пользователя в статье Шлюзы.
Источник: www.businessstudio.ru