Поможем разобраться в BPMN -> Бесплатный онлайн-курс
Справочник элементов BPMN с примерами
Найдено 78Потоки: Ассоциативная связь
Association FlowОписание
Используется для соединения элементов и объектов данных
Плохой пример
Заменяет собой поток управления
Хороший пример
Показывает связь действия и объекта данных
Подпроцесс: Вызов повторно-используемого действия
Call ActivityОписание
Используется для вызова другого процесса, нарисованного не на этой диаграмме
Плохой пример
Использование как обычного действия
Хороший пример
Разделение большого процесса на логически очерченные блоки подпроцессов
Действия: Вызов сервиса (Задача-вызов сервиса)
Service TaskОписание
Используется для вызова информационной системы
Плохой пример
Символ не соответствует тексту
Хороший пример
Отправка и обработка запроса от сторонней информационной системы
Действия: Выполнение бизнес-правила (Задача-выполнение бизнес-правила)
Business Rule TaskОписание
Используется для принятия решения в процессе по бизнес-правилам
Плохой пример
Активное действие, не связанное с бизнес-правилами
Хороший пример
Расчёт стоимости тарифа по правилам
Действия: Выполнение сценария (Задача-выполнение сценария)
Script TaskОписание
Используется для для вызова "скрипта"
Плохой пример
Символ не соответствует тексту
Хороший пример
Выполнение небольшой автоматизационной задачи на скриптовом языке
Группа: Группа
GroupОписание
Используется для визуального объединения элементов
Плохой пример
Используется вместо специализированных символов
Хороший пример
Показывает ответственных за группу активностей
Дорожка: Дорожка
LaneОписание
Используется для отображения участника процесса
Плохой пример
Любое использование дорожек
Хороший пример
Нет хорошего повода использовать дорожки. Используйте вместо них разноцветные элементы
Действия: Задача, выполняемая вручную
Manual TaskОписание
Используется для задачи, выполняемой в дали от "компьютера"
Плохой пример
Интеграционная задача, а сделана как ручная
Хороший пример
Задача вне компьютера
Действия: Задача, выполняемая пользователем
User TaskОписание
Используется для задачи, выполняемой за компьютером
Плохой пример
Символ не соответствует тексту
Хороший пример
Звонок через CRM с внесением результата
Прочее: Комментарий
AnnotationОписание
Используется для текстового комментария к элементах схемы
Плохой пример
Комментарий описывает то, что следовало бы отобразить как часть схемы
Хороший пример
Комментарий описывает то, что не может быть выражено другими символами BPMN
Действия: Компенсирующее действие
Compensation ActivityОписание
Используется для действия компенсации
Плохой пример
Использование как обычного действия
Хороший пример
Специальное действие, которое "откатывает" другое дейсвтие, если случилось что-то плохое
Развилки: Комплексная развилка
Complex GatewayОписание
Используется для сложных сценариев разветвления
Плохой пример
Развилка проверяет обычный выбор, можно заменить на развилку ИЛИ\ИЛИ
Хороший пример
Развилка проверяет, что 3 из 5 судей проголосовали
Компенсация: Конечное событие-инициатор компенсации
End compensation throw eventОписание
Используется для заверешния процесса (или уничтожения токена) и отправки компенсации
Плохой пример
null
Хороший пример
null
Отмена: Конечное событие-инициатор отмены
End cancel throw eventОписание
Используется для завершения текущего процесса (или уничтожения токена) и отправки отмены
Плохой пример
Использование где-либо, кроме транзакционных подпроцессов
Хороший пример
Используем в транзакционным процессом для старта обработки
Ошибка: Конечное событие-инициатор ошибки
End error throw eventОписание
Используется для отправки ошибки и завершения процесса (или уничтожения токена)
Плохой пример
Использование без прикрепленного события обработкикка
Хороший пример
Выкидывает наружу ошибку
Сигнал: Конечное событие-инициатор сигнала
End signal throw eventОписание
Используется для отправка сигнала и завершение текущего процесса (или уничтожение токена)
Плохой пример
Замена обычного завершающего события
Хороший пример
В результате процесса нужно отправлять сигнал в другие процессы
Сообщения: Конечное событие-инициатор сообщения
End message throw eventОписание
Используется для завершения текущего процесса (или уничтожения токена) и отправки сообщения другому участнику взаимодействия
Плохой пример
null
Хороший пример
null
Эскалация: Конечное событие-инициатор эскалации
End escalation throw eventОписание
Используется для завершения текущего процесса (или уничтожения токена) и отправки эскалации
Плохой пример
null
Хороший пример
null
Останов: Конечное событие-останов
End terminate throw eventОписание
Используется для уничтожения всех токенов в процессе и завершение процесса
Плохой пример
Замена обычного завершающего события
Хороший пример
Вы допускаете существование нескольких токенов, но при определённом действии надо прекратить процесс
Сигнал: Начальное непрерывающее событие-сигнал
Start non-interrupting signal eventОписание
Используется для старта подпроцесса обработчика по сигналу
Плохой пример
Получение сигнала из соседнего процесса и запуск своего процесса
Хороший пример
Хорошим примером является отказ от использования сигналов
Сообщения: Начальное непрерывающее событие-сообщение
Start non-interrupting message eventОписание
Используется для старта встроенного подпроцесса обработчика по сообщению и уничтожения родительского процесса
Плохой пример
null
Хороший пример
null
Таймер: Начальное непрерывающее событие-таймер
Start non-interrupting timer eventОписание
Используется для старта встроенного подпроцесса обработчика по таймеру
Плохой пример
null
Хороший пример
null
Условия: Начальное непрерывающее событие-условие
Start non-interrupting conditional eventОписание
Используется для старта встроенного подпроцесса
Плохой пример
null
Хороший пример
null
Эскалация: Начальное непрерывающее событие-эскалация
Start non-interrupting escalation eventОписание
Используется для старта встроенного подпроцесса по получению эскалации
Плохой пример
null
Хороший пример
null
Компенсация: Начальное прерывающее событие-компенсация
Start interrupting compensation eventОписание
Используется для старта подпроцесс обработчика эскалации и прерывании родительского процесса
Плохой пример
null
Хороший пример
В вашей схеме используется компенсация и вы
Ошибка: Начальное прерывающее событие-ошибка
Start interrupting error eventОписание
Используется для старта процесса из-за ошибки
Плохой пример
Используем вместо других символов, например таймера
Хороший пример
Запускаем подпроцесс обработки неисправляемой ошибки
Сигнал: Начальное прерывающее событие-сигнал
Start interrupting signal eventОписание
Используется для старта подпроцесса обработчика по сигналу и прерывания родительского процесса
Плохой пример
Получение сигнала из соседнего процесса и запуск своего процесса
Хороший пример
Хорошим примером является отказ от использования сигналов
Сообщения: Начальное прерывающее событие-сообщение
Start interrupting message eventОписание
Используется для старта встроенного подпроцесса обработчика по сообщению и уничтожения родительского процесса
Плохой пример
Использование с противоречивым описанием
Хороший пример
Обработка отмены заказа и немедленное прерывание основного процесса
Таймер: Начальное прерывающее событие-сообщение
Start interrupting timer eventОписание
Используется для старта встроенного подпроцесса обработчика по таймеру и уничтожению родительского процесса
Плохой пример
null
Хороший пример
null
Условия: Начальное прерывающее событие-условие
Start interrupting conditional eventОписание
Используется для старта встроенного подпроцесса и прерывания родительского процесаа
Плохой пример
null
Хороший пример
null
Эскалация: Начальное прерывающее событие-эскалация
Start interrupting escalation eventОписание
Используется для старта встроенного подпроцесса по получению эскалации и приерыванию родительского процесса
Плохой пример
null
Хороший пример
null
Сигнал: Начальное событие-сигнал
Start signal eventОписание
Используется для старта процесса по сигналу
Плохой пример
Получение сигнала из соседнего процесса и запуск своего процесса
Хороший пример
Хорошим примером является отказ от использования сигналов
Сообщения: Начальное событие-сообщение
Start message eventОписание
Используется для старта процесса при получении события от других участников взаимодейсвтия
Плохой пример
Использование как обычного старта или с противоречивым описанием
Хороший пример
Запуск независимого процесса, результаты которого не нужны в текущем
Таймер: Начальное событие-таймер
Start timer eventОписание
Используется для старта процесса по времени
Плохой пример
null
Хороший пример
null
Условия: Начальное событие-условие
Start conditional eventОписание
Используется для старта процесса по условию
Плохой пример
null
Хороший пример
null
Хранилище: Объект данных
Data ObjectОписание
Используется для создания сущности(например документа) только в рамках процесса
Плохой пример
Создали заявку, но обращаемся к ней из разных процессов
Хороший пример
Создаем и работаем с заявкой в рамках процесса
Действия: Отправка сообщения (Задача-отправка сообщения)
Send TaskОписание
Используется для отправки сообщения в другой процесс
Плохой пример
Отправка уведомления клиенту
Хороший пример
Отправки сообщения соседнему участнику бизнес-процесса
Подпроцесс: Подпроцесс «по требованию»
Ad Hoc SubprocessОписание
Используется для действия, которое выполняется по инициативе исполнителя одной из задач процесса
Плохой пример
Любое использование ad hoc процессов
Хороший пример
Нет хороших поводов использовать ad-hoc процессы
Подпроцесс: Подпроцесс по событию
Event SubprocessОписание
Используется для логики процесса, которая может произойти в любой момент, пока жив основной процесс
Плохой пример
Попытка организовать переиспользование через встроенные подпроцессы обработчики
Хороший пример
Уведомления менеджеру о том, что процесс долго выполняется
Действия: Получение сообщения (Задача-получение сообщения)
Receive TaskОписание
Используется для получения сообщения от другого процесса
Плохой пример
Ожидание е-мейл или смс сообщения
Хороший пример
Получение сообщения из другого бизнес-процесса
Потоки: Поток сообщений
Message FlowОписание
Используется для соединения сообщений и\или пулов, отображает отправку сообщений
Плохой пример
Участники одного процесса разнесены в разные пулы и между ними отправляются сообщения
Хороший пример
Используется для отправки сообщения между двумя участниками
Потоки: Поток управления
Sequence FlowОписание
Используется для передачи работы между элементами процесса
Плохой пример
Отображение вариативности конкретного действия
Хороший пример
Передает ответственность за работу и информацию по процессу
Сигнал: Промежуточное прикрепленное непрерывающее событие-обработчик сигнала
Intermidiate attached non-interrputing signal catch eventОписание
Используется для ожидания получения сигнала, пока активно родительское действие
Плохой пример
Получение сигнала из соседнего процесса, предназначенного конкретному экземпляру
Хороший пример
Хорошим примером является отказ от использования сигналов
Сообщения: Промежуточное прикрепленное непрерывающее событие-обработчик сообщения
Intermidiate attached non-interrputing message catch eventОписание
Используется для точки ожидания сообщения, пока активно действие
Плохой пример
null
Хороший пример
null
Таймер: Промежуточное прикрепленное непрерывающее событие-обработчик таймера
Intermidiate non-interrupting attached timer catch eventОписание
Используется для старта ожидания таймера, пока родительское действие и активно
Плохой пример
null
Хороший пример
null
Условия: Промежуточное прикрепленное непрерывающее событие-обработчик условия
Intermidiate attached non-interrputing conditional catch eventОписание
Используется для ожидания выполнения условия, пока активно родительское действие, и его прерывания по наступлению события
Плохой пример
null
Хороший пример
null
Эскалация: Промежуточное прикрепленное непрерывающее событие-обработчик эскалации
Intermidiate attached non-interrupting escalation catch eventОписание
Используется для обработки эскалации
Плохой пример
null
Хороший пример
null
Компенсация: Промежуточное прикрепленное прерывающее событие-обработчик компенсации
Intermidiate attached interrupting compensation catch eventОписание
Используется для старта обработки компенсации и прерывании родительского элемента
Плохой пример
null
Хороший пример
null
Отмена: Промежуточное прикрепленное прерывающее событие-обработчик отмены
Intermidiate attached interrupting cancel catch eventОписание
Используется для обработки отмены от родительского действия
Плохой пример
Использование где-либо, кроме транзакционных подпроцессов
Хороший пример
Используем на транзакционном процессе для старта обработки
Таймер: Промежуточное прикрепленное прерывающее событие-обработчик таймера
Intermidiate interrupting attached timer catch eventОписание
Используется для старта ожидания таймера, пока родительское действие и активно и его уничтожения по достижению времени
Плохой пример
null
Хороший пример
null
Эскалация: Промежуточное прикрепленное прирывающее событие-обработчик эскалации
Intermidiate attached interrupting escalation catch eventОписание
Используется для обработки эскалации и завершения родительского действия
Плохой пример
null
Хороший пример
null
Ошибка: Промежуточное прикрепленное событие-обработчик ошибки
Intermidiate attached interrupting error catch eventОписание
Используется для обработки ошибки, полученной в рамках действия
Плохой пример
Использование без инициатора ошибки
Хороший пример
Обрабатываем полученную ошибку
Сигнал: Промежуточное прикрепленное событие-обработчик сигнала
Intermidiate attached signal catch eventОписание
Используется для ожидания получения сигнала, пока активно родительское действие, и его прерывания при получении сигнала
Плохой пример
Получение сигнала из соседнего процесса, предназначенного конкретному экземпляру
Хороший пример
Хорошим примером является отказ от использования сигналов
Сообщения: Промежуточное прикрепленное событие-обработчик сообщения
Intermidiate attached message catch eventОписание
Используется для точки ожидания сообщения, пока активно действие и его уничтожения по получению сообщения
Плохой пример
null
Хороший пример
null
Условия: Промежуточное прикрепленное событие-обработчик условия
Intermidiate attached conditional catch eventОписание
Используется для ожидания выполнения условия, пока активно родительское действие, и его прерывания по наступлению события
Плохой пример
null
Хороший пример
null
Компенсация: Промежуточное событие-инициатор компенсации
Intermidiate compensation throw eventОписание
Используется для отправки компенсации
Плохой пример
null
Хороший пример
null
Сигнал: Промежуточное событие-инициатор сигнала
Intermidiate signal throw eventОписание
Используется для отправка сигнала
Плохой пример
Действие, не связанное с сигналами
Хороший пример
Во время процесса нужно отправлять сигнал в другие процессы
Сообщения: Промежуточное событие-инициатор сообщения
Intermidiate message throw eventОписание
Используется для точки отправки сообщения другому участнику взаимодействия
Плохой пример
null
Хороший пример
null
Ссылка: Промежуточное событие-инициатор ссылки
Intermidiate link throw eventОписание
Используется для замены потока управления и отображения завершения замены
Плохой пример
Ставим ссылки
Хороший пример
Хорошим примером является отказ от использования ссылок
Эскалация: Промежуточное событие-инициатор эскалации
Intermidiate escalation throw eventОписание
Используется для запуска эскалации
Плохой пример
null
Хороший пример
null
Сигнал: Промежуточное событие-обработчик сигнала
Intermidiate signal catch eventОписание
Используется для ожидания получения сигнала
Плохой пример
Получения смс-ки от клиента
Хороший пример
Хорошим примером является отказ от использования сигналов
Сообщения: Промежуточное событие-обработчик сообщения
Intermidiate message catch eventОписание
Используется для отображения точки ожидания сообщения от другого участника взаимодействия
Плохой пример
null
Хороший пример
null
Ссылка: Промежуточное событие-обработчик ссылки
Intermidiate link catch eventОписание
Используется для замены потока управления и отображения начала замены
Плохой пример
Ставим ссылки
Хороший пример
Хорошим примером является отказ от использования ссылок
Таймер: Промежуточное событие-обработчик таймера
Intermidiate timer catch eventОписание
Используется для старта ожидания таймера в процессе
Плохой пример
null
Хороший пример
null
Условия: Промежуточное событие-обработчик условия
Intermidiate conditional catch eventОписание
Используется для ожидания выполнения условия
Плохой пример
null
Хороший пример
null
События: Простое конечное событие
None end eventОписание
Используется для завершения процесса (или уничтожения токена)
Плохой пример
Снабжение элемента смыслом, который может быть выражен другими символами
Хороший пример
Просто завершение процесса \ уничтожение токена
События: Простое начальное событие
None start eventОписание
Используется для старта процесса
Плохой пример
Используется простой старт, но текстом указано пояснение, которое можно выразить другим символом
Хороший пример
Не требуется указание специфики старта процесса
События: Простое промежуточное событие-обработчик
None catch eventОписание
Используется для отображения важного события в рамках процесса
Плохой пример
Ожидание события
Хороший пример
Переход сущности в определенный статус
Развилки: Развилка «и» (Параллельная развилка)
Parallel GatewayОписание
Используется для разделения потока управления
Плохой пример
Зацикливание процесса
Хороший пример
Нужно И позвонить, И отправить смску
Развилки: Развилка «и/или»
Inclusive GatewayОписание
Используется для выбора конкретных потоков управления
Плохой пример
Использования для более простой логики
Хороший пример
В конверт сложат и Заказ, и промоматериалы
Развилки: Развилка «или/или»
Exclusive GatewayОписание
Используется для нужна для развилки по одному потоку управления
Плохой пример
Сложная неявная логика на ветках
Хороший пример
Показывает выбор из равнозначных вариантов
Развилки: Развилка по событиям
Event GatewayОписание
Используется для развилки по потенциальным событиям
Плохой пример
Использование развилки для каких-то других целей
Хороший пример
Одновременно может произойти 3 равнозначных события, Ждём любого из них
Пул: Раскрытый пул
PoolОписание
Используется для показа бизнес-процесса и\или участников взаимодействия
Плохой пример
Зачем-то пытаемся ставить задачи клиенту
Хороший пример
Раскрываем подробности того, как устроен один из наших бизнес-процессов
Пул: Скрытый пул (Пул-«черный ящик»)
Black Box PoolОписание
Используется для клиентов, систем и других участников взаимодействия, чье поведение мы не знаем
Плохой пример
Зачем-то пытаемся ставить задачи клиенту
Хороший пример
Работаем с пулом, как с черным ящиком. Не знаем, как он себя поведёт
Петля: Стандартный цикл
Standard LoopОписание
Используется для демонстрации выполнения действия до определённых условий
Плохой пример
Итерирование по набору сущностей
Хороший пример
Указание в тексте до каких пор выполняется действие
Подпроцесс: Транзакционный подпроцесс
Transactional SubprocessОписание
Используется для части процесса, которая либо выполнится вместе, либо не будет выполнена вообще
Плохой пример
Неуместное использование транзакционного подпроцесса
Хороший пример
Если снять деньги не получилось, то и отель надо отменить
Прочее: Хранилище данных
Data StoreОписание
Используется для ит-систем и\или хранилищ данных в любой форме (папка, архив)
Плохой пример
Пытаемся заставить что-то сделать хранилище
Хороший пример
Получаем данные из хранилища
Петля: Цикл по объектам
Multi-Instance LoopОписание
Используется для выполнения действия по набору объектов
Плохой пример
Без явного указания на множественность операций в названии
Хороший пример
Явное отображение множественности операции в названии