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

Метрики DORA

Метрики DORA (DevOps Research and Assessment) — это четыре меры производительности поставки ПО — частота развёртывания, время ожидания изменений, частота отказов изменений и время восстановления после неудачного развёртывания — плюс надёжность как пятая. Это наиболее валидированные ориентиры поставки в области, и каждая из них имеет прямую интерпретацию в терминах экономики здравоохранения.

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

Десятилетие исследований DORA связывает эти метрики с организационной производительностью. Группы отчёта 2024 года: элитные команды развёртывают по требованию (несколько раз в день), тратят менее дня от коммита до продакшена, терпят неудачу примерно в 5% изменений и восстанавливаются менее чем за час; команды с низкой производительностью развёртывают ежемесячно или реже, тратят месяцы, терпят неудачу примерно в 40% изменений и восстанавливаются неделями. Для системы здравоохранения это не тщеславные ИТ-цифры: они определяют, насколько быстро клиническая ценность достигает пациентов и какой риск несёт каждое изменение.

Расчёт

Частота развёртывания    = развёртывания в продакшене / время
Время ожидания изменений   = t(развёртывание) − t(коммит), медиана
Частота отказов изменений     = неудачные изменения / все изменения × 100
Время восстановления (СВВ)    = t(восстановлено) − t(отказ), медиана
Надёжность             = соответствие СУС (доступность, латентность, корректность)

Переводы в экономику здравоохранения:

Время ожидания → cost-of-delay.md: недели в конвейере × СЗ (£ или QALY/неделю)
Частота отказов  → частота неблагоприятных событий изменения ПО: ЧОИ × стоимость на инцидент
Время восстановления → вред от простоя: СВВ × (потерянная клиническая деятельность + риск безопасности)/ч
Надёжность   → дисконт выгоды: сервис с 99% доступности выдаёт ≈ 0,99
                от своей смоделированной выгоды — программный аналог приверженности

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

Команда ПО для потока пациентов в трасте, до/после инвестиции в инженерию поставки:

                    До          После
Развёртывания       ежемесячно  еженедельно
Время ожидания      6 недель    4 дня
ЧОИ                 25%         8%
СВВ                 2 дня       2 часа

Команда поставляет ~30 улучшений/год со средней ценностью на улучшение £4000/неделю (СЗ). Сокращение времени ожидания на ~5,4 недели продвигает поток выгод каждого улучшения вперёд: 30 × 5,4 × 4000 ≈ £648 000/год ценности, доставленной раньше. Улучшение ЧОИ: 30 × (0,25 − 0,08) = ~5 меньше неудачных изменений/год × £15 000 средней стоимости инцидента (простой клинической системы, устранение) = £76 500/год. Инвестиция в поставку оценивается в той же валюте, что и любое клиническое вмешательство.

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

Это и есть программная сторона — связь, которую стоит отметить, — это обратное отображение: метрики DORA — это операционные метрики больницы в другой одежде. Время ожидания ↔ направление на лечение; частота отказов изменений ↔ коэффициент реадмиссии (работа, которая отскочила назад); СВВ ↔ ответ на неотложную ситуацию; частота развёртывания ↔ пропускная способность клиники. Методы улучшения переносятся в обоих направлениях, потому что оба являются системами очередей в условиях ограничений безопасности. Также отметьте вывод об ИИ от DORA 2025: внедрение ИИ теперь коррелирует с более высокой пропускной способностью, но худшей стабильностью — вмешательство с эффективностью и побочными эффектами, требующее именно того анализа чистой выгоды, которому учит этот репозиторий (см. продуктивность разработчиков с ИИ).

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

  • Манипулирование метриками: количество развёртываний завышено релизами без операций; ЧОИ занижена из-за неучёта срочных исправлений как отказов. Определяйте события точно, как ОМТ определяет конечные точки.
  • Межкомандные таблицы лидеров: группы DORA сравнивают практики, а не команды с разными профилями риска; команда клинических систем на уровне «высокий» может быть оптимальной там, где «элитный» уровень был бы безрассудным.
  • Оптимизация одной метрики: скорость без ЧОИ/надёжности — это компромисс пропускной способности и нестабильности — всегда отчитывайтесь по всем четырём вместе (это таблица затрат и последствий, а не балл).

Источники