Перейти к содержимому

Что такое workflow?

Workflow — это описание последовательности шагов конкретной модели состояний задач, которые характеризуется: сменой статусов, логикой последовательности переходов, выполняемыми условиями перехода и пост-функциями после смены статуса.

Задача workflow стандартизировать процесс, чтобы все задачи одного типа проходили одинаковый и предсказуемый путь. Это решает две задачи: автоматизацию — рутинные действия при смене статуса выполняются автоматически; и контроль качества — переход между статусами возможен только при выполнении заданных условий.

Пример минимального workflow

Рисунок 1 - Пример минимального workflow

На примере самого простого workflow мы видим какой путь проходит задача и какие статусы меняются в процессе работы:

  • To Do — задача создана, работа не начата,
  • In Progress — исполнитель взял задачу в работу,
  • In Review — код/результат отправлен на проверку (code review, QA),
  • Если ревью не пройдено → возврат в In Progress (доработка),
  • Если всё ок → Done — задача завершена.

Workflow состоит из следующих элементов:

  1. Статусы задач,
  2. Переходы,
  3. Условия переходов,
  4. Действия (пост-функции).

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

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

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