Тема 65 из 91· Разработка ПО и цифровая доставка

WSJF и CD3

CD3 (стоимость задержки, делённая на длительность) и WSJF (взвешенное первым — кратчайшее задание) — это правила приоритизации, которые планируют работу по плотности ценности: сколько стоимости задержки устраняется на единицу потреблённой дефицитной мощности. При общей фиксированной мощности порядок от наивысшего CD3 математически оптимален для минимизации общей стоимости задержки.

Почему это важно

Каждое отставание — это проблема рационирования: много достойных пунктов, один конвейер. Экономика здравоохранения решила ту же проблему для бюджетов здравоохранения таблицами лиг экономической эффективности: ранжируйте вмешательства по приобретённому здоровью на фунт, финансируйте вниз по списку, пока бюджет не исчерпан. CD3 — это идентичная логика для мощности поставки: выгода на единицу ограниченного ресурса, финансируемая в порядке ранга. Правильная последовательность — это бесплатные деньги: та же работа, та же мощность, меньше общей стоимости задержки.

Расчёт

CD3  = стоимость задержки (£/неделя) / длительность (недели)      — реальные единицы (Black Swan Farming)

WSJF = (ценность для пользователя/бизнеса + временная критичность + снижение риска/
        раскрытие возможности) / размер задания   — прокси относительной шкалы SAFe,
                                                     модифицированные баллы Фибоначчи

CD3 с подлинной валютой (стоимость задержки) строго сильнее, чем безразмерные баллы WSJF — WSJF относится к CD3 так же, как многокритериальная оценка относится к полному анализу затраты-полезность: применим, когда монетизация непрактична, поддаётся манипуляции, когда баллы не имеют якоря.

Разобранный пример

Три функции, одна команда:

Функция   СЗ (£/нед)   Длительность   CD3
A         30 000       10 нед         3000
B         12 000       2 нед          6000
C         5000         1 нед          5000

Порядок CD3: B, C, A. Сравните общую стоимость задержки с «сначала наибольшая СЗ» (A, B, C):

Порядок CD3   (B,C,A): A ждёт 3 нед, C ждёт 2 → 30тыс×3 + 5тыс×2  = £100тыс стоимости задержки
Порядок СЗ    (A,B,C): B ждёт 10, C ждёт 12   → 12тыс×10 + 5тыс×12 = £180тыс

Те же функции, та же команда — одна лишь последовательность экономит £80 000. Интуиция: маленькие срочные пункты идут первыми, потому что они дёшево высвобождают свою стоимость задержки; большой пункт мало теряет, ожидая недолго.

Связь с программной инженерией

Для портфелей ПО здравоохранения выражайте СЗ в единицах, которым учит этот репозиторий: QALY/неделя × порог + операционные £/неделя, и отставание становится напрямую соизмеримым с тем, как система здравоохранения ранжирует всё остальное, что она покупает. Две практические заметки: (1) длительность означает календарное время, занимающее ограничение, а не усилие — прошедший 2-недельный пункт, которому нужно 2 дня команды узкого места, дешевле, чем кажется (см. оптимизацию последующих ресурсов); (2) больницы неявно применяют то же правило, когда упорядочивают списки операционной по взвешенной по срочности пропускной способности — категории клинической приоритизации — это взвешенный по тяжести CD3 (см. дефицит QALY и модификаторы тяжести).

Подводные камни

  • Театр баллов WSJF: безразмерные споры по Фибоначчи сходятся к тому, кто громче аргументирует; заякорите хотя бы верхние пункты отставания в реальной СЗ.
  • Манипуляция длительностью: разбиение пунктов для раздувания ранга CD3 — нормально, когда разбиения доставляют ценность независимо, мошенничество — когда нет.
  • Игнорирование профилей срочности: СЗ в форме дедлайна (регуляторные даты) ломает предположение о постоянной ставке; планируйте их по осуществимости даты, затем CD3 для остального.
  • Хаос переранжирования: CD3 предназначен для решений о последовательности в момент обязательства, а не для ежедневной перетасовки работы в процессе (см. метрики потока о НРВ).

Источники