Жизненный цикл — это набор состояний сущности и правил переходов между ними. Состояние характеризует текущий этап работы с сущностью и определяет её поведение. Состояние носит информативный характер, это характеристика сущности.
Простой пример жизненного цикла счета:
В системе можно определять права на выполнение переходов между состояниями. Например, перевести счет из состояния «Оплачен» в «Отменен» может только финансовый контроллер.
Состояние дополняет ролевую модель и может запрещать редактирование сущности. Например, счет можно редактировать только в состоянии «Черновик».
Воркфлоу — это пошаговый список функций, который дополняет жизненный цикл и предназначен для организации рабочего процесса. Прежде всего — для постановки задач на выполнение каких-либо работ.
Жизненный цикл счета из примера выше может быть дополнен простым рабочим процессом:
Функции воркфлоу:
Настройка жизненного цикла достаточна в том случае, если не требуется взаимодействие или нет конкретных исполнителей задач.
Пример:
Все операции со счетами проводят несколько сотрудников, самостоятельно переводят каждый обработанный Счет в состояние «Выпущен», а затем в состояние «Оплачен».
Настройка воркфлоу организует взаимодействие между сотрудниками в рамках процесса.
Пример:
В согласовании таймшитов принимают участие несколько исполнителей (Сотрудник, Менеджер проекта, Линейный руководитель и т. д.). Само согласование регламентировано сроками и маршрутами. Поэтому в данном случае необходима настройка воркфлоу.
Одновременное применение наборов прав и настроек воркфлоу — это рекомендуемая практика. Так бизнес-администраторы должны иметь права принудительного изменения состояний.
Пример:
После согласования таймшита может потребоваться его повторное открытие для внесения корректировок — это работа Бизнес-администратора, и ему необходимы права для перевода таймшита из состояния «Согласовано» в «Черновик».
Перейти на русскую версию?