WORK IN PROGRESS
Многозадачность и деепричастия
Как не скопить очередь задач используя WIP-лимиты
Де Лука, твой выход. Менеджемент в IT
проблема
МНОГОЗАДАЧНОСТЬ
Кажется, это так просто! Берешь задачу. Всего-то 2 часа.
Вторую. Третью. Постоят в очереди. Ты же быстро разберешься.

Или Петя обычно тратит на 1 задачу 2 часа 15 минут. Петя - умный и может больше. Возможно, что именно Петя отлично подойдет для выполнения новой классной и трудной задачи. Но я же хороший менеджер по проектам. И я сразу начинаю задумываться: "Интересно, справится ли Петя с 2 задачами в разработке?"

Все кажется просто до первой серьёзной ошибки в документе или в самом продукте.

Самое интересное начинается тогда, когда мы оцениваем потери от нахождения задачи в режиме "ожидания".

В результате неправильного распределения нагрузок время простоя в одном проекте может достигать 75-80 % всего времени на разработку.

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


Ответ очевиден: установить лимиты на поток неконтролируемых задач извне.

В рамках некоторых фреймворков управления проектами за основу берутся лимиты.
шаг 1
СЧИТАЕМ ЛИМИТЫ
Одним из первых действительно эффективных методов борьбы с ложной многозадачностью (да-да, именно так называется наша неспособность оценивать силы и риски задачи), был «метод критической цепи» Э. Голдратта («Критическая цепь»).


Уже в 1997 году Голдратт, создатель теории ограничений, понял, что для внедрения методики в жизнь, она должна быть максимально простой и понятной. User-friendly подход через 20 лет после создания теории ограничений вылился в её бизнес-версию — CCPM — Critical Chain Project Management. А так как всё новое — это хорошо забытое старое, то CCPM оказался похож и на ТОС того же Голдратта, на метод «барабан-буфер-канат» (DBR) и на метод PERT. Последний был разработан для вычисления ожидаемой продолжительности реализации проекта или времени достижения задач на определенных его этапах, и в модификациях использовался во многих организациях.
Различают три основных концепции построения WIP-лимитов: «барабан-буфер-канат» — определяется ограничение и принимается решение о его эффективном использовании. Вся система подчиняется единому ограничению система CONWIP — сокращённо от Constant Work-in-progress («постоянное незавершенное производство»). Правило простое: новое задание поступает в производство только тогда, когда систему покидает очередное готовое изделие (комплект). В этом случае обьём незавершённого производства будет оставаться постоянным канбан — ограничение происходит на каждом этапе производства (планировании, производстве, тестировании и т.п.).
PERT — одновременно и метод, и инструмент планирования. Метод позволяет оценить длительность задач на основе 3 оценок с дальнейшим их использовании при построении диаграммы.
Говоря о методе критической цепи, невозможно обойти вниманием один из популярных методов сетевого планирования — PERT (Program Evaluation and Review Technique).

Впервые его использовали при создании подводной лодки Поларис в 1958 году для построения графика, включающего работы более 3300 подрядчиков. В этом проявляется специфика PERT как метода сетевого планирования для крупных проектов (в среднем, выше 300-400 операций).

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

Ключевой момент — для оценки времени каждой задачи используется сразу 3 значения:

  1. оптимистическое (наилучшее);
  2. ожидаемое (вероятное);
  3. пессимистическое (наихудшее).

Они используются в формуле оценки средневзвешенного времени завершения операции (проекта):

tE = (tO + 4tM + tP) / 6
  • где tE —время операции (проекта);
  • tO — оптимистическое (наилучшее) время;
  • tM —ожидаемое (вероятное) время;
  • tP — пессимистическое (наихудшее) время.


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

шаг 2
СТАВИМ БЛОК
Проведу простую аналогию: в боевых исскусствах в активной серии ударов бессмысленно бить наотмашь. Сначала нужно блокировать соперника, затем найти 1-3 уязвимых места, и затем нанести 1 точечный удар, ненадолго затормозив его пыл.

Как это работает в проектах:

1. Блокируем косвенные моменты, которые тормозят работу: например, нелогичное стихийное поступление задач;

2. Ищем уязвимое место: например, я сильно проседаю на задачах, в которых нет четкого ТЗ;

3. Наносим один точечный удар по проблеме: я делаю простой скелет верстки без наворотов и согласовываю его с заказчиком на этапе получения задачи: так я меньше трачу времени на додумывание за клиента и быстрее получаю от него обратную связь.

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

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


ДАНО:
12 кеглей в очереди на конвейере.
1 самый эффективный работник завода может раскрасить 1 кеглю за 2 часа.
Срок обработки партии из 12 кеглей установлен в 4 часа (сокращенный день, коротенькая смена)

Вопрос: сколько кеглей максимально может обработать один человек с учетом полной комплектации линии персоналом.

РЕШЕНИЕ:

WIP-лимит = (12/6)+S, где S — амортизационное» количество людей для нивелирования эффекта от блокировки задачи. Таким образом, work-in-progress-лимит составит 2+1 = 3. На 4 часа мы даем ему в подмогу еще 1 человека и даем им на двоих раскрасить 3 кегли с условием, что они будут спокойно работать над своей задачей и сделают все вовремя.

То есть, мы НЕ МОЖЕМ поставить нагрузку на одного человека больше 3 кеглей за смену на этом конвейере.

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

Поэтому, при установке блокировки закидывания исполнителя задачами, мы считаем все возможные лимиты.
ИНСТРУМЕНТЫ
Мы можем использовать любые инструменты установки лимитов, в том числе устанавливать в команде стандарт договоренности о нагрузке по задачам.

Мы же знаем простые и доступные программные инструменты для установки WIP-лимитов.
На данный момент JIRA не позволяет устанавливать WIP-лимиты базовыми инструментами.
(Мы спрашивали)

Trello так же не предусматривает такой функции в "базовой комплектации".

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

Приложение Worksection (лимитирование в том числе с использованием CCPM методов)
ЗКЛ
Подводя итог, хочу сказать, что использование WIP-лимитов жизненно необходимо в командах, которые направлены на долгосрочное развитие.

Их применение сокращают простои на 70-85 %, снимая головную боль тревожного заказчика, и позволяют сохранить целостность нервной системы исполнителей, формируя здоровую среду при правильном расчете.
Автор обзора: Ольга Кузнецова
Made on
Tilda