Выбор ответа Senior BPMN для системного аналитика обновлено
Компенсация в BPMN
Вопрос
Процесс бронирования тура: забронировать отель, забронировать билет. Если билет не забронирован, бронь отеля нужно отменить. Как это выражается средствами BPMN?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Граничное событие компенсации на «Забронировать отель» и задача «Отменить бронь». В BPMN есть встроенный механизм компенсации: компенсирующая задача прикрепляется через граничное событие компенсации к уже выполненной задаче, а промежуточное или конечное событие компенсации её запускает.
Варианты ответа
- Исключающий шлюз после «Забронировать билет» с веткой обратно к началу процесса
- Аннотация «при ошибке отменить бронь отеля» рядом с задачей бронирования
- Параллельный шлюз на обе задачи, чтобы брони шли одновременно
- Граничное событие компенсации на «Забронировать отель» и задача «Отменить бронь»правильный ответ
Разбор
В BPMN есть встроенный механизм компенсации: компенсирующая задача прикрепляется через граничное событие компенсации к уже выполненной задаче, а промежуточное или конечное событие компенсации её запускает. Это прямой аналог компенсаций в саге. Возврат к началу процесса не отменяет уже сделанную бронь. Параллельный шлюз про одновременность. Аннотация не задаёт поведение.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «BPMN для системного аналитика»
- Параллельный шлюз
- Эскалация по таймеру
- Кейс: процесс обработки жалобы
- Кейс: выход нового сотрудника
- Свёрнутый пул
- Событийный шлюз
- DMN
- Группы элементов BPMN