Описание бизнес-процессов с использованием обозначений BPMN
Основным инструментом BPMN служит диаграмма бизнес-процессов Business Process Diagram, BPD). Полученная в результате модель представляет собой сеть графических объектов, которые изображают действия, связанные потоками управления.
В рамках общей нотации BPMN существует три типа процессов:
Частные бизнес-процессы обычно называют WorkFlow или процессами BPM (управление деловыми процессами). На диаграммах BPMN каждый частный бизнес-процесс помещается в отдельную область, и таким образом последовательный поток процесса содержится внутри области и не может пересекать её границы. При этом поток сообщений может пересекать границы области с целью указания на взаимодействия, существующие между отдельными частными бизнес-процессами.
Абстрактными считаются процессы, действия которых имеют связи за пределами частного бизнес-процесса. Кроме того, к абстрактным процессам относятся соответствующие механизмы контроля потока. Абстрактные процессы содержатся внутри области и могут моделироваться отдельно или внутри общей схемы BPMN для демонстрации потока сообщений между блоками абстрактного процесса и др. объектами.
Совместный процесс отображает взаимодействие между двумя и более бизнес-объектами.
В BPMN определены следующие типы объектов:
l деятельность (Activity) — действия, выполняемые участниками процесса;
l соединитель потоков (Flow Connector) — связь между объектами процесса;
l событие (Event) — спецификация существенных явлений в поведении системы (т.е. явления, влияющие на поток процесса);
l шлюз или объединение (Gateway) — точка принятия решений в диаграмме процесса, после которой поток процесса может быть продолжен по одному или более путям;
l дорожка (Swimlane) — область диаграммы, содержащая элементы модели отдельного участника процесса;
l артефакт (Artifact) — документы и комментарии.
Деятельность состоит из атомарных или составных действий, характеризующих работу, которую выполняет система. Деятельность подразделяется на задачи и подпроцессы.
Задача (Task) представляет собой элементарное действие в пределах процесса. Задачи могут быть простыми и повторяющимися. Графически задачи изображаются в виде прямоугольника со скруглёнными углами, могут содержать метку (Label), документацию (Documentation), связанную с задачей, тип повторения задачи (Loop Type).
Задачи могут объединяться в подпроцессы (Sub-process) — сложные действия в пределах процесса. Подпроцессы: обычные и повторяющиеся, сжатые и расширенные:
Соединители потоков (коннекторы) используются для соединения элементов потока процесса:
Последовательный (простой) поток (Sequence Flow) используется для отображения порядка следования действий процесса. Графически последовательный поток изображается сплошной линией с закрашенной стрелкой.
Условный поток — последовательный поток с условным выражением, измеряемым по времени выполнения, с целью определить, будет ли использоваться поток. Графически условный поток изображается сплошной линией с закрашенной стрелкой и ромбиком на противоположном конце.
Поток по-умолчанию — условный поток, который будет использоваться в случае, если все другие условные потоки не верны при выполнении. Графически поток по-умолчанию изображается сплошной линией с закрашенной стрелкой и косой чертой на противоположном конце.
Поток сообщений (Message Flow) используется для отображения потока сообщений между двумя отдельными участниками процесса. Графически поток сообщений изображается пунктирной линией с незакрашенной стрелкой и незакрашенным кружочком на противоположном конце.
Ассоциация (Association) используется для того, чтобы связать данные, текст и другие артефакты с потоком объектов процесса. Графически ассоциация изображается пунктирной линией с V-образной стрелкой.
Событие представляет собой нечто, происходящее в ходе бизнес-процесса и влияющее на его течение. Так, указание типа триггера (условия или ограничения) на событие устанавливает определённые ограничения на процесс потока. Также события могут приводить бизнес-процесс к некоторому результату.
Существует три типа событий, классифицированных по времени воздействия на ход процесса: начальные (Start Events), промежуточные (Intermeidate Events) и конечные (End Events). Начальные и конечные события представляют собой точки начала и окончания процесса и должны обязательно присутствовать на диаграмме.
В нотации BPMN определены следующие типы триггеров:
–– сообщение (Message) — исходит от некоторого участника или триггера процесса и предшествует началу, продолжению или окончанию некоторого действия процесса;
–– таймер (Timer) — устанавливает цикл времени течения процесса;
–– правило (Rule) — тестовая строка, описывающая некоторое правило, применяемое к событию;
–– исключительное событие (Exception) — при завершении некоторого действия информирует процесс о возникновении ошибки;
–– компенсация (Compensation) — показывает, как подпроцесс может быть скомпенсирован последовательностью отката;
–– отмена (Cancel) — указывает на отмену события;
–– ссылка (Link) — представляет собой механизм, обеспечивающий подключение окончания события одного потока процесса к началу события другого потока процесса;
–– составное событие (Multiple) — указывает на то, что событие может задействовать несколько путей развития процесса или продолжить процесс в случае наличия промежуточного события.
Шлюз (или объединение) используется для контроля расхождения и схождения последовательного потока и обозначает ветвление или соединение маршрутов. Внутренние маркеры указывают на тип контроля развития процесса. Шлюзы могут определять направление потока на основе данных процесса (Data-Based) или на основе результатов наступления событий (Event-Based).
В нотации BPMN определены следующие виды шлюзов:
–– шлюз на основе данных процесса с операцией «исключающее ИЛИ» (Exclusive (XOR) Data-Based) — может выполняться только одна из ветвей процесса;
–– шлюз на основе результатов наступления событий с операцией «исключающее ИЛИ» (Exclusive (XOR) Event-Based) — может выполняться только одна из ветвей процесса;
–– шлюз на основе результатов наступления событий с операцией «ИЛИ» (Inclusive (OR) Event-Based) — могут выполняться одна или более ветвей процесса;
–– шлюз с операцией «И» (Parallel (AND)) — все ветви процесса выполняются параллельно;
–– шлюз со сложным условием (Complex).
Дорожки представляют собой участников процесса и группируют процесс по ответственности и категориям исполнителей:
В BPMN определены следующие типы артефактов:
–– данные об объекте (Data Objects) — представляют собой дополнительные данные об объекте, графически изображаются в виде прямоугольника с «загнутым» верхним правым уголком;
–– группа (Groupe) — используется для документации или анализа целей, но не влияет на последовательность потоков;
–– аннотация (Annotation) — предоставляет дополнительную информацию для читателя диаграмм BPMN.
Ниже приведён пример BPMN-процесса «Доставка товара в магазин». Магазин отправляет заявку на товар дистрибьютору. Дистрибьютор подтверждает получение заявки, запрашивает товар со склада. Перед отправкой товара со склада проверяется наличие товара, при необходимости товар заказывается у поставщика, после чего товар доставляется грузоперевозчиком в магазин.
Работа в Draw.io
Draw.io - бесплатное приложение на диске Google для создания диаграмм, которое позволяет рисовать:
- Блок-схемы
- UML
- Диаграммы сущность-связь
- Сетевые диаграммы
- Модели бизнес-процессов
- Организационные схемы
- Электрические схемы
- Каркасные схемы и модели
Возможности:
- Собственный HTML 5 Client с полной поддержкой IE 6-8
- Большая встроенная библиотека элементов
- Интуитивный интерфейс по принципу перетаскивания
- Функция поиска и добавления изображений
- Экспорт в форматы PNG/JPG/XML/SVG/PDF
- Поддержка сенсорными устройствами
- Полный исходный код доступен на веб-сервисе github - https://github.com/jgraph/draw.io.
- Совместная работа в реальном времени
- Вставка диаграмм в блоги и вики-сайты