Алфавит нотации и примеры бизнес-процессов
Алфавит нотации и примеры бизнес-процессов

Введение

В этой статье мы рассмотрим, что представляет собой нотация бизнес-моделирования BPMN и как её использовать для описания бизнес-процессов.

Главное назначение и практическое применение

Нотация BPMN (Business Process Modeling Notation) нужна для подробного описания логики выполнения бизнес-процесса, в том числе для отражения деталей процессов, таких как: события, исполнители каждого из действий, используемые и создаваемые документы и другие объекты, использующиеся в качестве входных данных для тех или иных действий или создающиеся в результате их выполнения.

BPMN позволяет описать бизнес-логику выполнения действий в виде наглядной диаграммы, а также запустить отрисованный бизнес-процесс на исполнение. Для этого используются специализированные системы BPMS (Business Process Modelling System), поддерживающие эту нотацию.

BPMS-системы могут автоматически перевести схему бизнес-процесса в исполняемый код и создать веб-приложение, которое будет обрабатывать данные, введённые пользователями и сторонними сервисами. Это соответствует концепции Low Code/No Code (создание программного обеспечения без разработки кода) и отлично подходит для автоматизации офисных процессов.

Технически такая возможность реализуется за счёт перевода BPMN-диаграмм в документы формата BPEL (Business Process Execution Language). BPEL-документы представляют собой инструкции исполнения бизнес-процессов для веб-сервисов.

Таким образом, BPMN используется в следующих случаях:

  1. Когда нужно детально и наглядно показать последовательность и логику взаимосвязи действий, событий, исполнителей и объектов бизнес-процесса

  2. Когда требуется запустить схему бизнес-процесса на исполнение в BPMS-системах

Краткая история появления нотации

BPMN считается довольно молодой нотацией: её 1-я версия вышла в 2009 году под эгидой профессионального консорциума OMG. Сегодня эта нотация является стандартом де-факто в ИТ-сфере и используется для описания бизнес-процессов. Текущая версия BPMN 2.0 вышла в 2011 году и используется до сих пор. В 2014 году в дополнение к BPMN группа OMG выпустила нотацию описания бизнес-правил и принятия решений (Decision Model and Notation, DMN).

DMN упрощает построение BPMN-диаграмм в случаях сложной бизнес-логики и многоуровневых её ветвлениях.

Несмотря на то, что BPMN носит универсальный характер и может использоваться в любом домене, как и любая другая нотация, BPMN имеет чётко ограниченную область применения.

BPMN не заменяет IDEF0 и других нотаций структурного моделирования бизнес-процессов, организационных структур и информационных систем. Для этих задач есть соответствующие иерархические диаграммы, а также ER, DFD и UML-нотации.

Уровни моделирования

В зависимости от целей построения BPMN-диаграмм, различают 3 уровня моделирования:

  1. Описательное моделирование, когда нужно показать успешный путь выполнения бизнес-процесса, например, чтобы согласовать его с бизнес-пользователем. Здесь применяются самые простые элементы нотации, а сама диаграмма намеренно максимально упрощается.

  2. Аналитическое моделирование используется, когда нужно полностью показать все варианты выполнения бизнес-процесса, включая логические ветвления и альтернативы. Такая диаграмма обычно создаётся для опытных пользователей и бизнес-аналитиков с помощью расширенного алфавита нотации, включая не только её базовые самые простые элементы, но и более сложные.

  3. Исполняемое моделирование предназначено для запуска на исполнение в BPMS-движке, чтобы создать веб-приложение. Здесь может использоваться всё многообразие алфавита этой нотации, включая добавление специальных параметров и скриптов, создаваемых разработчиками.

Алфавит нотации

BPMN-диаграмма отражает детальное описание бизнес-процессов в наглядном графическом виде. Главными объектами на диаграмме являются события и действия (задачи), которые соединяются потоком управления.

Поток управления — это последовательность шагов бизнес-процесса, в которой он исполняется.

Событие — это некий свершившийся факт, что-то, что возникает по ходу процесса или происходит в результате выполнения тех или иных действий. Например, «от клиента поступила заявка», «прошла неделя с момента подачи заявления» и т. д. Процесс в BPMN-диаграмме всегда начинается с события и должен заканчиваться событием.

Кроме того, на диаграмме могут отражаться исполнители бизнес-процесса, документы, используемые или создаваемые в рамках процесса и другие артефакты.

При разработке BPMN-диаграмм «для людей» (описательный и аналитическое моделирование), используются базовые элементы нотации, самые простые для понимания.

События

В нижеприведённой таблице вы можете увидеть базовый набор элементов BPMN, использующийся для отображения событий. Если внутрь круга, изображающего события, вписан какой-то элемент, он называется триггер.

Триггер определяет тип и смысл события. Например, триггер в виде конверта означает, что пришли какие-то данные, причём совсем не обязательно в виде сообщения электронной почты. Триггер в виде часов связан со временем. Если событие имеет триггер, значит, поток управления двинется дальше только тогда, когда сработает триггер этого события. Например, получены данные, наступил определённый временной интервал и так далее.

Таблица базовых элементов BPMN
Таблица базовых элементов BPMN

Подробнее весь набор событий, их визуализация и смысл приведены в Приложении А.

Поток управления

Поток действий в бизнес-процессах от стартового события до конечного может идти не только последовательно, но и параллельно и даже взаимно исключать друг друга. BPMN позволяет это продемонстрировать.

Эфемерной сущностью BPMN, которая показывает смысл концепции потока, называют токен. Подобно потоку воды токен «бежит» от стартового события диаграммы к финишному, разделяясь на несколько экземпляров с помощью логических операторов. Последовательность и вариативность выполнения действий называется бизнес-логикой и показывается с помощью логических операторов или развилок, шлюзов. Например, на диаграмме ниже представлено 2 логических оператора: исключающее ИЛИ (XOR) и включающее ИЛИ (OR).

Процесс утреннего пробуждения

Пример процесса утреннего пробуждения
Пример процесса утреннего пробуждения

Как можно видеть на диаграмме, после стартового события выполняется первое действие («Проверить время звонка»). Следующий за ним логический оператор исключающего ИЛИ, подобно шлюзу, пропускает дальше поток управления только по одной ветке: «да» или «нет». Причём ветка «нет» здесь помечена как поток по умолчанию, который выполнится, если все остальные условия не будут верны.

После выполнения действия оператор включающего ИЛИ (OR) пропускает поток на действие «Выпить кофе» или на действие «Узнать новости» или по обоим веткам. Исключения здесь нет, ручеёк потока управления распараллеливается на две ветки, чтобы потом объединиться снова в одну и один раз выполнить действие «приготовиться к делам». После выполнения этого действия процесс заканчивается конечным событием.

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

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

Диаграмма BPMN может содержать один или несколько пулов, каждый из которых может содержать одну или несколько дорожек.

Процесс утоления голода

В следующем примере процесс «утоления голода» состоит из двух дорожек («Ребёнок» и «Мама»), общение между которыми выполняется через поток управления.

Пример процесса утоления голода
Пример процесса утоления голода

Стартовым событием является простое событие «Возникло чувство голода» на дорожке Ребёнок, а конечным — простое событие «Чувство голода удовлетворено» на этой же самой дорожке.

Сам процесс представлен линейным потоком, без логических ветвлений. Однако при выполнении задачи «Найти продукты» возникло граничное прерывающее событие «Решено пойти в кафе», которое запускает ветку с задачей «Собраться в кафе» и заканчивается событием-терминатором, который останавливает весь процесс в целом.

Кафе показано отдельным свёрнутым пулом, общение с которым происходит через поток сообщений в рамках свёрнутой задачи «Собраться в кафе». Предполагается, что детали выполнения задачи «Собраться в кафе» отражены на отдельной диаграмме.

Типы событий

Рассмотренные примеры не показывают даже 10% всех существующих в алфавите нотации BPMN элементов. Таким образом, алфавит нотации BPMN очень широк и позволяет подробно описать даже самую сложную бизнес-логику.

В частности, одних только событий насчитывается 13 типов в зависимости от связанного триггера, например, сообщение, таймер и прочее. Некоторые из этих событий могут быть стартовыми, промежуточными и финишными, в зависимости от их расположения в потоке управления.

Также некоторые события могут быть прерывающими и не прерывающими.

Прерывающие события (обработчики) приостанавливают поток управления, ожидая прихода указанного в событии триггера. Непрерывающие события продолжают движение потока управления дальше, без остановки. Все стартовые события и некоторые промежуточные являются событиями-обработчиками. Триггер внутри таких событий не закрашен. Например, конверт в событии с типом «сообщение‎» будет белого цвета.

События-инициаторы генерируют результат выполнения действий в процессе, при этом не приостанавливая выполнение бизнес-процесса. Такие события могут, например, отправлять сообщения, генерировать сигналы, возвращать ошибки. Все конечные события и некоторые промежуточные являются событиями-инициаторами. Триггер внутри них закрашен. Например, конверт в событии с типом «сообщение» будет чёрного цвета.

Прерывающие события с разным типом
Прерывающие события с разным типом

События могут располагаться в потоке управления между действиями процесса или на границе действия — в этом случае они считаются граничными.

Граничные события являются промежуточными, они находятся на границе действия, обозначая те факты, которые случились при его выполнении. Они могут прерывать процесс (граничные прерывающие события) или активировать дополнительный поток управления, который выполняется одновременно с выполнением подпроцесса (граничные не прерывающие события). Граничные прерывающие события обозначается кругом с двойной сплошной окантовкой. У граничных непрерывающих событий окантовка тоже двойная, но в виде штриховой линии.

Граничные прерывающие и непрерывающие события
Граничные прерывающие и непрерывающие события

На следующей диаграмме показаны примеры прерывающих и непрерывающих граничных событий с типом «сообщение». В этом примере действие «Выпить кофе» может выполниться 2 раза, после «Вылезти из кровати» и «Прочитать новости».

Примеры прерывающих и непрерывающих граничных событий с типом «сообщение»
Примеры прерывающих и непрерывающих граничных событий с типом «сообщение»

Типы действий

Подобно событиям, действия в BPMN также могут быть разных типов:

  • Выполняемые вручную без использования какого-либо ПО, например, съесть пиццу.

  • Выполняемые пользователем с помощью ПО, к примеру, заказать пиццу.

  • Выполняемые скриптом или сервисом, например, изменить статус заказа пиццы.

Аналогично событиям, тип действия показывается значком в графическом обозначении этого элемента нотации. Если нужно показать, что действие выполняется несколько раз или в цикле, это можно сделать с помощью маркера.

Более подробно про типы действий, их смысл и графические обозначения рассказано в Приложении Б.

Логические операторы

Поскольку BPMN показывает логику выполнения бизнес-процесса, в диаграммах используются логические операторы, которые также называются развилками или шлюзами. Изначально их всего три: OR, XOR и AND.

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

Пример исключающего ИЛИ
Пример исключающего ИЛИ

В отличие от исключающего или, простое ИЛИ (OR) допускает возможность активации как нескольких веток, так и одной из них. В математическом смысле этот оператор реализует дизъюнкцию или логическое сложение переменных, что показано в таблице истинности на слайде.

Наконец, логическое И (AND) означает активацию всех входящих или исходящих в этот оператор потоков управления, реализуя логическое умножение переменных, т. е. операцию конъюнкции.

Пример логического И
Пример логического И

Поскольку алфавит BPMN является избыточным, помимо базовых операторов булевой алгебры (то есть ранее рассмотренных И, ИЛИ и исключающего ИЛИ) в нотации также присутствуют усложнённые вариации этих операторов.

Например, исключающее ИЛИ по событиям, событийное И, а также сложный оператор, который объединяет несколько из упомянутых и моделирует сложную бизнес-логику. Его не рекомендуется использовать на диаграммах, т.к. не очевидно, что именно он показывает.

Следующий рисунок показывает использование эксклюзивного шлюза по событиям, который запускает движение потока только по той ветке, где событие произойдёт раньше. Например, получено согласие от клиента ИЛИ прошло 5 дней (без новостей от клиента).

Пример использования эксклюзивного шлюза по событиям
Пример использования эксклюзивного шлюза по событиям

Все остальные шлюзы, которые есть в BPMN, приведены в Приложении В.

Артефакты

Также на BPMN-диаграммах могут встречаться данные в виде входных и выходных документов к задачам, хранилищ данных и сообщений. Они называются артефактами.

Вы можете найти полный перечень артефактов в Приложении Г.

Правила построения диаграмм

Рассмотрим пример бизнес-процесса обработки заявки:

Пример бизнес-процесса обработки заявки
Пример бизнес-процесса обработки заявки

Стартовым событием в нашем процессе является поступление заявки от клиента. Обратите внимание, что клиент на диаграмме показан в виде свернутого пула: мы не видим никаких действий в пуле клиента, потому что для рассматриваемого процесса он представляет собой чёрный ящик, от которого приходят и уходят потоки сообщений, без подробностей обработки.

Чтобы распределить действия по областям ответственности разных ролей, можно использовать дорожки в рамках одного или нескольких пулов. В рамках одного пула переход между действиями выполняется через поток управления, показываемый сплошной линией, а между собой пулы общаются друг с другом через поток сообщений, обозначаемый пунктирной линией.

Обозначение действий по областям ответственности разных ролей
Обозначение действий по областям ответственности разных ролей

После действия «Направить клиенту коммерческое предложение (КП)» на диаграмме используется логический оператор ИЛИ (событийный XOR), после которого возможен один из двух вариантов:

1. Если прошло 5 дней, что показано событием с триггером таймер, и ответа от клиента нет, заявке присваивается статус «Отказ» в CRM-системе и наступает финишное событие «Заявка закрыта».

2. Если же ответ от клиента получен и 5 дней ещё не прошло, процесс движется дальше в зависимости от данных в этом ответе.

Таким образом либо заявке присваивается статус «Отказ» или выполняется свернутая задача «Сформировать проект договора», детали которой показаны на отдельной диаграмме.

В результате этой задачи создаётся документ «Проект договора» и наступает финишное событие «Заявка успешно обработана».

Поток по умолчанию

Если в диаграмме используются операторы обычного XOR, проверяющего условия по данным, и OR (неисключающего ИЛИ) рекомендуется помечать поток по умолчанию, который активируется, если другие условия не сработали. Поток по умолчанию допустимо не подписывать, если подписаны остальные потоки и диаграмма остаётся понятной. В примере ниже «‎Нецелевой» — поток по умолчанию.

Пример обозначения потока по умолчанию
Пример обозначения потока по умолчанию

Альтернативный способ показать условия

Поскольку алфавит нотации BPMN чрезмерно широкий, даже избыточный, то некоторые элементы по сути эквивалентны друг другу. В частности, вместо шлюза XOR по данным можно зашить условие в сам поток управления. Он обозначается маленьким ромбом в начале стрелки и содержит условие, которое определяет, будет активирован данный поток или нет. Этот поток нельзя использовать со шлюзами. В случае визуально нагруженной диаграммы с большим количеством блоков такой приём может чуть облегчить её и упростить восприятие.

Пример условия зашитого в поток управления
Пример условия зашитого в поток управления

Задачи и события

Говоря про вариативность BPMN, следует отметить небольшое различие между событиями-сообщениями и задачами-сообщениями. По сути это одно и тоже, но к задачам-сообщениям можно прикреплять обработчики событий (например, таймер) и модификаторы (например, цикл по объектам), а к самим событиям — нет.

Ниже показан пример диаграммы с задачами по отправке и получению сообщения:

Пример этой же диаграммы с событиями получения и отправки сообщений:

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

Рекомендации по использованию BPMN

Такая вариативность, когда схема одного и тоже же процесса может выглядеть по-разному у нескольких аналитиков, является скорее недостатком нотации, чем достоинством. Поэтому при использовании BPMN в качестве корпоративного стандарта описания бизнес-процессов следует ограничить алфавит этой нотации, определив во внутреннем соглашении, какие элементы допустимо использовать, и что именно они будут означать в практическом применении.

Принимая во внимание три уровня моделирования BPMN и избыточный алфавит этой нотации, можно сделать вывод, что при проектировании диаграмм «‎для людей» (без запуска на выполнение в BPMS-системах) следует намеренно ограничить количество используемых элементов:

  • Использовать только пользовательские и ручные задачи — без сценариев, сервисов и бизнес-правил, отправки и получения сообщений.

  • Использовать только свернутые подпроцессы, раскрывая их детали на отдельной диаграмме.

  • Использовать только XOR и AND, без событийных шлюзов и OR, так как разница между исключающим и не исключающим ИЛИ понятна не всем пользователям.

  • Использовать события с типом простое, таймер, сообщение и останов.

Для упрощения восприятия диаграммы стоит придерживаться правил наименования:

  • Внешних контрагентов показывать как закрытые, они же — свёрнутые пулы (пулы, в которых нет действий).

  • Называть закрытые пулы ролями или бизнес-единицами, а открытые — процессами.

  • Называть дорожки также, как роль, должность или структурное подразделение.

  • Называть действия (задачи) в стиле Глагол-Существительное, например, «‎Проверить счёт», «Подтвердить заявку», «Оформить договор».

  • Называть события как свершившийся факт в прошедшем времени, к примеру, «Поступила заявка», «Прошло 3 дня».

  • Подписывать исходящие из XOR стрелки, например, «Да» и «Нет», а также отмечать поток по умолчанию.

Также рекомендуется:

  • Показывать успешное и неуспешное завершение процесса разными финишными событиями.

  • Не выводить поток управления за пределы подпроцесса.

  • Взаимодействие между разными пулами показывать через поток сообщений (пунктирной стрелкой), который не может присоединяться к шлюзам, в отличие от потока управления.

Наконец, при разработке любой диаграммы нужно помнить о главном правиле аналитика: независимо от нотации, ваша схема должна быть МАКСИМАЛЬНО простой и понятной читателю БЕЗ знания тонкостей процессного моделирования!

В целом алгоритм разработки BPMN-диаграммы можно представить как набор следующих 7 шагов:

  1. Определить границы процесса, т. е. стартовое и конечное события, участников и полезный результат.

  2. Описать «счастливый» путь (happy path), который ведёт к созданию полезного результата (продукта).

  3. Добавить условия и альтернативные потоки.

  4. Добавить неуспешные завершения.

  5. Добавить артефакты (объекты и хранилища данных).

  6. Раскрыть на новых связанных диаграммах свёрнутые подпроцессы.

  7. Добавить промежуточные событийные потоки к внешним пулам.

Пример построения диаграммы по текстовому описанию

Рассмотрим пример процессов работы с клиентской заявкой, представленной двумя пулами: «Обработка заявки» и «Заключение договора».

Клиент является внешним участником этих бизнес-процессов, то есть чёрным ящиком, поэтому он показан свёрнутым пулом. Общение между пулами реализовано через потоки сообщений.

Процесс начинается с момента, когда клиент оставил заявку на сайте (то есть поступление заявки является триггером процесса, его стартовым событием). На основании заявки, в которой указаны подробности заказа, менеджер формирует коммерческое предложение (КП). Далее менеджер озвучивает КП по телефону или направляет на email, или же делает и то, и другое — в зависимости от пожеланий клиента и указанных в заявке контактных данных.

Узнав подробности коммерческого предложения, клиент принимает решение о продолжении сотрудничества или отказе от него. Если клиент не согласился на условия КП, на этом процесс работы с ним заканчивается, а заявке присваивается статус «Отказ».

Если же клиента устраивают все условия, он сообщает менеджеру о намерении заключить договор и передаёт нужные для этого данные. Менеджер формирует новую версию проекта договора и отправляет его на согласование клиенту. При отсутствии возражений клиент подписывает договор. После этого договор считается заключённым, и на этом бизнес-процесс заканчивается, и запускается процесс оплаты, описанный на отдельной диаграмме.

При наличии возражений к проекту договора клиент вносит в него изменения и снова направляет менеджеру. Менеджер формирует новый проект договора и снова отправляет клиенту на согласование, то есть идёт возврат к ранее выполняемой задаче.

Пример построения диаграммы по текстовому описанию
Пример построения диаграммы по текстовому описанию

Инструменты для разработки бизнес-процессов в нотации BPMN

BPMN-диаграммы для людей, то есть без запуска на исполнение, можно разработать, например, в следующих онлайн-редакторах:

  • ШТОРМ — веб-редактор от команды Дениса Котова, пожалуй, главного евангелиста BPMN в России, с автопроверкой диаграмм и возможностями командной работы в одном пространстве;

  • Online BPMN — простой и удобный веб-редактор, поддерживает интеграцию с BPMS-системой;

  • Cavemo — веб-редактор, аналогичный предыдущему, имеет офлайн-версию

  • простые веб-«рисовалки‎» LucidchartDraw.ioVisual Paradigm

Также алфавит нотации BPMN поддерживается и в MS Visio, ARIS Express и других редакторах диаграмм общего назначения.

Заключение

BPMN-диаграмма имеет массу достоинств. Она позволяет графически показать детальную логику выполнения процесса с помощью логических операторов, событий, документов и прочих объектов. BPMN-диаграмма может быть очень простой, наглядной и понятной для бизнес-пользователей, а также может быть запущена на исполнение в BPMS-движках. Сегодня именно эта нотация считается стандартом де-факто в ИТ-отрасли для описания бизнес-процессов.

Однако, избыточный алфавит нотации, особенно слишком большой набор событий и шлюзов, затрудняют разработку и чтение диаграмм. Это приводит к тому, что у разных аналитиков могут получиться разные диаграммы описания одного и того же процесса. Такая вариативность не всегда хороша, поскольку повышает семантическую нагрузку на читателя. Поэтому при использовании BPMN в качестве корпоративного стандарта визуального описания бизнес-процессов (без запуска на исполнение в BPMS) следует определить, какие элементы вы с коллегами будете использовать, и что именно каждый из них означает, чтобы исключить риски возможных семантических расхождений и снизить смысловую нагрузку на читателей диаграммы.


Анна Вичугова

Бизнес-аналитик, CBAP, к.т.н., тренер Systems.Education,
основатель и тренер Школы прикладного бизнес-анализа

  • Кандидат технических наук (Системный анализ, управление и обработка информации, 2013)

  • Сертифицированный бизнес-аналитик (IIBA CBAP, 2020)

  • Сертифицированный специалист Business Studio и СЭД Directum

Профессиональные интересы: системный анализ, бизнес-анализ, разработка и поддержка СМК, ССП (KPI), анализ и формализация бизнес-процессов (UML, IDEF, BPMN), Data Science, технологии Big Data, разработка технической документации (ТЗ по ГОСТам серии 19, 34, руководства пользователя и администратора, описание программных продуктов), управление продуктами и проектами.

Комментарии (28)


  1. Myclass
    04.11.2022 01:20
    +3

    Так всё таки 'как начать моделировать бизнес-процессы в BPMN'? Краткое описание bpmn уже здесь на хабре 1000 и один раз всевозможные авторы описывали. Все статьи точь-в-точь совпадают между собой. И в вашей ну ни грамма нет ничего нового или другого. Даже по выводам сходство полное.

    На последок. А Вы хоть раз какой-нибудь сложный процесс таким способом моделировали, и так, чтобы это не для галочки было, а именно работающий процесс? Что при этом вы поняли для себя, для продвижения этой темы в массы? Что надо ещё раз азбуку описать?

    Потому что читаю Ваши слова

    Однако, избыточный алфавит нотации, особенно слишком большой набор событий и шлюзов, затрудняют разработку и чтение дидиаграмм.

    И думаю, а это правда для экспертного использования или так - поиграться? Хотя о чём я? Ведь ваши слова говорят за себя.

    Наконец, при разработке любой диаграммы нужно помнить о главном правиле аналитика: независимо от нотации, ваша схема должна быть МАКСИМАЛЬНО простой и понятной читателю БЕЗ знания тонкостей процессного моделирования!

    мне кажется, что Вы ошибаетесь. Музыкальные ноты не должны быть понятны любому человеку, никогда не изучающих музыку. Также и электрические схемы останутся для многих непонятными, которые не знают, что такое транзистор, резистор, конденсатор итд. Так-же и языки программирования и диаграммы bpmn. Если они кому непонятны, но есть правильные - это не недостаток диаграмм, а незнания этой нотации.

    Короче не очень хорошее впечатление от Вашей статьи. Жаль. Тк. тема очень интересная.


    1. Systems_Education Автор
      04.11.2022 10:19

      Так всё таки 'как начать моделировать бизнес-процессы в BPMN?

      Наш рецепт:

      1. Познакомиться с алфавитом нотации

      2. Познакомиться с примерами диаграмм

      3. Изучить рекомендации и алгоритм

      4. Выбрать инструмент

      5. Применить рекомендации и алгоритм

      Все части в статье есть.


    1. Systems_Education Автор
      04.11.2022 10:23
      +1

      Краткое описание bpmn уже здесь на хабре 1000 и один раз всевозможные авторы описывали. Все статьи точь-в-точь совпадают между собой. И в вашей ну ни грамма нет ничего нового или другого.

      Мы посмотрели другие статьи. Мы не нашли ни одной статьи, где было собрано всё необходимое — и развернутое описание алфавита и примеры и правила-алгоритм и рекомендации инструментов. Всё это разбросано по отдельным статьям. Нам хотелось сделать единую точку входа в тему.


    1. Systems_Education Автор
      04.11.2022 10:27

      > А Вы хоть раз какой-нибудь сложный процесс таким способом моделировали, и так, чтобы это не для галочки было, а именно работающий процесс?

      Да, автор давно занимается работой в области бизнес-анализа и моделирования бизнес-процессов с применением разных нотаций. Вот тут можно почитать другие 15 статей автора на тему BPMN.

      И да, мы решили, что для новичков надо начать с того, с чего начали мы.


      1. Myclass
        04.11.2022 23:14
        -1

        Вы даёте не правильный подход. Из одной из ваших статей из вашего линка

        Поэтому, перед тем, как представлять конечному потребителю описание проанализированного вами бизнес-процесса, задайте сами себе простой вопрос и дайте на него честный ответ: собеседник поймет вашу схему? Если потребитель информации, представленной аналитиком, не понимает ее, это – проблема аналитика. 

        Это вредные советы. Которые приводят к примитивному подходу описания процессов, которые с реальными процессами не будут иметь ничего общего. Поэтому я Вас и спрсил - Вы писали эти диаграммы для фирм и для проектов? Вы поддерживали реальные процессы с описаниями какое-то количество лет? Обучением теории не в счёт. Тем более оторванное от практики.


        1. Systems_Education Автор
          06.11.2022 09:43

          Олег (давайте я вас буду так называть, раз вы себя никак не называете), мы выше написали об опыте автора.

          Если вы не слышите ответа, не доверяете источнику, зачем вы вообще с ним разговариваете?


    1. Systems_Education Автор
      04.11.2022 10:32

      Музыкальные ноты не должны быть понятны любому человеку, никогда не изучающих музыку. Также и электрические схемы останутся для многих непонятными, которые не знают, что такое транзистор, резистор, конденсатор итд. Так-же и языки программирования и диаграммы bpmn. Если они кому непонятны, но есть правильные - это не недостаток диаграмм, а незнания этой нотации.

      Мы это много лет подряд проходили c UML, SysML, OCL и т.д. Если язык имеет замороченную нотацию, его не понимают и не применяют.

      Так что мы стоим на позиции, что те диаграммы, которые предназначены для людей, должны быть понятны людям.

      Диаграммы деятельности компании — это не rocket science, не электрические схемы, и даже не музыка.

      Идея, что каждый сотрудник компании, задействованный в автоматизации пойдёт и освоит курс по IDEF0, ARIS eEPС, UML, Archimate – не опрадавалась.

      Посмотрите например на Event Storming — он ещё дальше идёт в смысле простоты освоения, показывает, что для бизнеса критически важно, чтобы люди могли здесь и сейчас описывать бизнес-деятельность, а не изучать языки.


      1. Myclass
        04.11.2022 22:39

        Так что мы стоим на позиции, что те диаграммы, которые предназначены для людей, должны быть понятны людям.

        Извините, но высказывание в корне не верно. Да, иногда неосведомленным людям о bpmn надо на доске набросать общие черты какого-нибудь сложного процесса. Но bpmn диаграммы создаются не просто людям и не для любых людей, а именно для тех, кто это может прочитать и с этим может работать. Для этого надо быть в курсе. Я постоянно сталкиваюсь с такими описаниями процессов, которые созданы простыми людьми. С добрыми пожеланиями. Но эти процессы не будут работать. Потому что многое в описание невалидно. Да, используя разный уровень абстракции, можно создать и упрощенную карту процессов, для менеджмента, который только пару квадратиков и пары стрелочек между ними увидит и вроде даже поймёт, как работает процесс. Но с перспективы птиц. Не зная многих деталей. Поэтому и говорю вам - вы неправильно определяете группу людей, которая с этим должна работать. А отсюда и желание, использовать как можно меньше компонентов из списка возможных.


        Диаграммы деятельности компании — это не rocket science, не электрические схемы, и даже не музыка.

        этоо вообще какой-то нонсенс. Bpmn - это не диаграммы деятельности компании, а способ описания процессов. И они бывают разные. Технические, специализированные, только внутренние, как например 'запрос для прав на какие-либо данные', так и внешние, где клиенты участвуют. И каждый из этих процессов может быть простым, а может быть и очень сложным. И без domain знаний и без знания bpmn невозможно будет разобраться. И это будет проблема не диаграмм, а тех, кто это не может читать без необходимых знаний.


        1. Systems_Education Автор
          06.11.2022 09:45

          "Я постоянно сталкиваюсь с такими описаниями процессов, которые созданы простыми людьми"

          Мы нигде не писали, что диаграммы должны быть созданы «простыми людьми», речь шла про читателей, а не авторов.

          Работа аналитика сделать запутанное и сложное понятным и простым, и эта работа отнюдь не простая и не для всех.


          1. Myclass
            06.11.2022 15:04


            Работа аналитика сделать запутанное и сложное понятным и простым.

            Сделать что-то простым - желание неплохое. Но мой вопрос и касался того, что процессы в фирмах как-вы не хотели - сложные. И обрисовать их в общих чертах - дело не сложное. Но очень часто - пустая трата времени. Потому что на это тратится время, но с этим никто работать не будет. Потому что настоящий процесс будет отличаться от картинки для 'всех'. И этот опыт приходит, когда с этим сталкиваешся на практике при работе на фирмах, в проектах итд. В теории-же это так классно - нарисовать в общих чертах что-то, что поймёт любой дурак. Поэтому желаю вам выйти из-за стола и поинтересоваться, а что из теории на самом деле работает или не работает? Это помогает, и потом опыт, которым захочется поделиться будет не оторваным от реальности. Потому что она - хотим мы или нет - комплексная. Но это просто совет. Вам решать - следовать ему или нет.


        1. Systems_Education Автор
          06.11.2022 09:46

          "А отсюда и желание, использовать как можно меньше компонентов из списка возможных."

          Так расскажите о своём опыте. Почему от вас нет ни одной не то что статьи, а даже заметки?


    1. Systems_Education Автор
      04.11.2022 10:43

      Короче не очень хорошее впечатление от Вашей статьи. 

      Судя по вашим комментариям к другим статьям вида «Обожаю эту ноитациюя», вы давно знакомы c нотацией.

      В таком случае полезно читать про неё книги, смотреть выступления международных авторов.

      Наша статья для тех, кто не знаком с нотацией и раньше никогда в ней не моделировал.

      Если у вас есть конкретные предложения, чего добавить — пишите.

      А то сейчас похоже на old man yells at a cloud.


      1. Myclass
        04.11.2022 22:43

        Наша статья для тех, кто не знаком с нотацией и раньше никогда в ней не момоделировал.н

        Но эта статья точь в точь с сотнями других, которые уже только тут на хабре есть. Почему я должен вам говорить, что вам делать? У вас что вашей головы на плечах нет. Вы не хотите что-то другое написать, не то, что уже n-ое количество раз существует?

        Обожаю эту ноитациюя

        Вам больше нечего сказать, как указать на грамматическую ошибку, которая при скором вводе на мобильнике выскочила?


        1. Systems_Education Автор
          06.11.2022 09:48

          «Почему я должен вам говорить, что вам делать?»

          Ну вы же говорите, какие нам статьи писать, а какие не писать.

          Это не про голову на плечах, а про конструктивную критику. Если вам есть что добавить — добавляйте. Но сейчас нет конструктивной критики, есть огульное беспредметное хаяние.


          1. Myclass
            06.11.2022 15:22
            +1

            Пл совместительству с работой в бизнесе, преподаю в частном университете. Если у меня студент со своей дипломной работой не проходит тест на плагиат, или жаже на 90 -ти страницах не раскрывает тему работы, то получает ту оценку, которую заслужил. Ок, в вашем случае - это полностью личная инициатива и вы имеете полное право писать статью, которая мало чем отличается от сотни других, которые тоже доступны. Похожее делают и агильные евангелисты.. Желаю Вам большего требования к себе.

            Вы оцениваете мои слова как огульное беспредметное хаяние. Что-же, тоже Ваше право. Я так не считаю, потому что уже во многих строках, написанных уже только здесь - даю понять, на что стоит обратить внимание. Но отторжение любой критики Вас не делает лучше, а Ваш тон мне неприятен.

            Почему я не пишу статьи здесь - на то есть причины. Но делиться кои-каким опытом , даже посредством комментариев - тоже считаю конструктивным.

            По-возможности не буду Вам ничего больше говорить.


        1. Systems_Education Автор
          06.11.2022 09:50

          «Вам больше нечего сказать, как указать на грамматическую ошибку, которая при скором вводе на мобильнике выскочила?»

          Это не про грамматическую ошибку, а про ваш опыт.

          Про грамматическую ошибку, если уж на то пошло — у вас в профиле написано «электронника», не «электронщик» и не «электроника» — это тоже мобильник на ходу? Если у вас постоянный тремор конечностей, может заняться здоровьем и своей жизнью, а не анонимные комменты в интернетах строчить?


          1. Myclass
            06.11.2022 15:24

            Я живу в Германии уже 30 лет. Имею право чуточку подзабыть русский язык. Хотя убеждаюсь, что владею им иногда лучше, чем многие, из России ни куда не уезжавшие.

            Но это уже другая тема.

            А Вам скажу что Вы хам. О своём психическом здоровье беспокойтесь.


  1. olku
    04.11.2022 10:16
    +4

    Спасибо за статью. Грамотный русский (в отличие от), термины, много примеров, особенно с событиями. Некоторые рисовалки не знал.


  1. TsarS
    04.11.2022 10:50
    +2

    Да хорошая статья. И то, что она с примерами, ее выгодно отличает от других.


  1. funca
    04.11.2022 15:35

    Я привык, что ИЛИ это бинарный оператор: два значения на входе, одно на выходе. Это легко обобщается до любого другого количества значений на входе больше двух, но на выходе все равно - одно.

    В примере "Процесс утреннего пробуждения" ромбик справа вполне соответствует привычному определению.

    Но у ромбика слева один вход и два выхода, а обозначение точно такое же. Тут нет ошибки, может здесь нужно использовать другой стмвол? Буду признателен за пруф, желательно ссылкой на описание в спецификации BPMN.


    1. mayorovp
      04.11.2022 15:59
      +1

      Несколько я понимаю, сам по себе оператор BPMN не является логической функцией. Вместо этого, логическая функция "связывает" его входы либо выходы, управляя возможностью токенов проходить по ним.


      Так, в случае оператора "ИЛИ" с двумя выходами это самое "ИЛИ" означает, что токен может выйти через первый выход ИЛИ через второй выход.


      1. funca
        04.11.2022 18:24

        В статье писали, что BPMN может применяться для генерации кода, где такая семантическая неоднозначность может быть проблемой. Интересно отчем думали дизайнеры нотации, предлагая такой вариант.


        1. mayorovp
          04.11.2022 18:35

          А где тут неоднозначность-то? Всё довольно однозначно...


          Вот где неоднозначность — так это в комбинации ветвления и циклов.


  1. vorobyev
    06.11.2022 09:01
    +1

    Интересно было ознакомиться со статьей. Хорошо что есть общее описание элементов и верхнеуровневая схема сбора пр.
    Чего не хватило:

    1. Отличие от других языков описания процессов UML, IDEF0. В каких случаях лучше использовать BPMN? А в каких лучше воздержаться?
      Фраза
      Когда нужно детально и наглядно показать последовательность и логику взаимосвязи действий, событий, исполнителей и объектов бизнес-процесса
      описывает сценарий но не сравнение

    1. Статья говорит о начале моделирования. При этом на выходе хорошо бы получить модель, которую можно применять. А для этого надо на старте понять сколько это может занять времени. Было бы здорово описать верхнеуровнево/ссылочно оценки трудоемкости описания процесса в этой локации. Насколько долго его описывать (возможно от каких то параметров)?

    2. Ну и про завершение. Как понять, что описан именно нужный процесс с учетом того, что реальные бизнес-пользователи с которых снималась модель могут не знать нотификацию?
      В примере для приготовления пищи ребенку мама почему-то не моет руки при приготовлении. Есть разные уровни абстракции? На каком лучше останавливаться?


    1. Systems_Education Автор
      06.11.2022 10:01

      Отличие от других языков описания процессов UML, IDEF0. В каких случаях лучше использовать BPMN? А в каких лучше воздержаться?

      BPMN уже доминирует в вакансиях для аналитиков, поэтому у них зачастую не стоит выбора, надо нотацию знать и применять. Вы можете сравнить варианты описаний в статье и сделать для себя выводы о применимости.

      Общее правило такое — применяем ту нотацию, с которой умеют работать читатели диаграмм.

      В целом IDEF0 удобно применять, если использовать среду моделирования, которая поддерживает контроль ссылочной согласованности, например, ту же Business Studio.

      Многим заказчикам наиболее нагляден и понятен красочный формат описаний ARIS eEPC.

      UML Activity можно считать частным случаем Flow Chart и по наглядности он уступает ARIS eEPC, его можно применять для описания не столько процессов, сколько процедур, если её читатели — ИТ-команда и ей подходит UML Activity.

      BPMN фактически является более строгой разновидностью Swimlane и Flowchart и победил благодаря своей опоре на такие традиционные для бизнеса форматы, а также хорошей связке с автоматизацией через BPMS и BPEL.


    1. Systems_Education Автор
      06.11.2022 10:12

      Было бы здорово описать верхнеуровнево/ссылочно оценки трудоемкости описания процесса в этой локации.

      Давайте так:

      1. Если описать процесс текстом (регламентом, процедурой, юскейсом) у вас займёт X времени, то

      2. Описать этот же процесс диаграммой у вас в общем случае займёт 2 X времени, пока вы не наработаете библиотеку типовых фрагментов и не набьёте руку.


    1. Systems_Education Автор
      06.11.2022 10:16

      Как понять, что описан именно нужный процесс с учетом того, что реальные бизнес-пользователи с которых снималась модель могут не знать нотификацию?

      Тут же дело не в нотации, а в полноте отображения действий и событий.

      Контроль соответствия модели реальности обычно делается с помощью ревью диаграммы и типовых вопросов к рецензентам, для модели AS IS:

      1. Все ли виды известные вам для этого процесса действия показаны? Каких на ваш взгляд не хватает? Что лишнее? Что непонятно и запутано?

      2. Все ли виды известные вам для этого процесса события показаны? Каких на ваш взгляд не хватает? Что лишнее? Что непонятно и запутано?

      3. И т.д.


    1. Systems_Education Автор
      06.11.2022 10:21

      В примере для приготовления пищи ребенку мама почему-то не моет руки при приготовлении. Есть разные уровни абстракции? На каком лучше останавливаться?

      Не факт, что мама не моет руки) Мама, как автор диаграммы, некоторые действия выполняет автоматически, они проходят вне сознания, поэтому из него вытесняются :)

      В бизнесе помогает то, что мы имеем N рецензентов.

      Ну и да, некоторые детали могут отображаться на отдельных диаграммах, как в примере с «пойти в кафе».

      Разделение одной диаграммы на несколько сейчас представляет собой в большей степени ремесло и искусство, чем технологичную практику. В основном авторы руководствуются 2-мя принципами:

      1. Какие именно события и действия в большей степени влияют на суть и результат процесса?

      2. Правило кошелька Миллера.