Планирование спринта часто напоминает стрельбу из лука с закрытыми глазами: мы надеемся попасть в цель, но попадаем себе в колено (конец приключениям). Срыв сроков крайне редко происходит из‑за лени или некомпетентности — чаще всего виноваты неучтённые риски.
Какие бывают риски? Этот список — не исчерпывающий, но дает определенное понимание:
- Внешние: Задержки смежных команд, нестабильные API, изменения требований. 
- Внутренние: Технический долг, неожиданные баги, переоценка сил. 
- Организационные: Больничные, внезапные митинги, проблемы с инфраструктурой. 
Риск‑ориентированный подход — это не только про тестирование, но и про предсказуемое планирование. Разберём, как:
- Оценивать риски (не только баги). 
- Встраивать их в оценку задач. 
- Минимизировать влияние на спринт. 
1. Какие риски учитывать (и как их считать).
Формула расчета очень проста:
Где критичность — это влияние риска на сроки, бюджет, качество продукта или репутацию компании.
1.1. Типы рисков
| Категория | Примеры | Как оценить P и C | 
|---|---|---|
| Внешние | Задержка API партнёра, срыв сроков смежной командой | P: Частота инцидентов за последние 5 спринтов. C: Влияние на сроки релиза. | 
| Технические | Падение CI/CD, проблемы с развёртыванием | P: История сбоев. C: Время на починку + простой команды. | 
| Командные | Внезапный уход разработчика, болезнь | P: Текущая нагрузка. C: Время на замену + адаптацию. | 
1.2. Формулы для расчёта
Для внешних рисков (например, зависимость от другой команды):
где:
- Sd — количество случаев задержки за наблюдаемый период (например, 5 спринтов) 
- Tq — общее количество задач с зависимостями за тот же период 
где:
- Dt — среднее время задержки (включая все сопутствующие затраты: анализ, коммуникацию, ожидание реакции, решение со стороны коллег из support соответствующего сервиса / команды) 
- Bt — количество блокируемых текущей задачей других задач 
Таблица градации рисков (пример - не ленитесь, составьте новую под свой проект):
| Уровень риска | Диапазон (R = P × C) | Характеристика | Рекомендуемые действия | 
|---|---|---|---|
| Низкий | 0 — 5.0 | Минимальное влияние на проект. Незначительные задержки или последствия. | Стандартное планирование. Можно не учитывать в буфере. | 
| Средний | 0.6 — 2.0 | Среднее влияние. Может вызвать локальные задержки, но не сорвёт весь спринт. | Добавить буфер 15–20%. Подготовить простой «план Б» (например, заглушки для API — если есть возможность). | 
| Высокий | 2.1 — 6.0 | Серьёзное влияние. Блокирует несколько задач или критичные функции. | Добавить буфер 30–50%. Разработать альтернативные сценарии. Усилить мониторинг. | 
| Критичный | 6.1+ | Угрожает срывом сроков релиза или репутационными потерями. | Выделить отдельные ресурсы. Запланировать митинг‑пойнты. Рассмотреть отказ от функции. | 
Пример расчёта:
Данные:
- За последние 5 спринтов было 15 задач с внешними зависимостями (Tq = 15) 
- Из них в 8 случаях были задержки (Sd = 8) 
- Среднее время задержки (Dt) = 2 дня 
- Текущая задача блокирует 2 другие задачи (Bt = 2) 
Расчёт:
- P = Sd / Tq = 8 / 15 = 0.53 (53% вероятность) 
- C = Dt × Bt = 2 × 2 = 4 «дня‑задачи» 
- R = P × C = 0.53 × 4 = 2.12 (Высокий) 
2. Как учитывать риски при планировании
2.1. Добавляем "буферы" к оценкам задач
Правило:
- Для критичного уровня (R = 6.1+): Выделить доп. ресурсы, рассмотреть альтернативы. 
- Для высокорисковых (R = 2.1 — 6.0): +30–50% времени. 
- Для средних (0.6 ≤ R < 2.0): +15–20%. 
- Для низких (R < 0.5): оставляем как есть. 
Пример:
| Задача | Оценка (дни) | Риск ® | Итоговая оценка | 
|---|---|---|---|
| Интеграция с API X | 3 | 4.2 | 3 + 50% = 4.5 | 
| Рефакторинг модуля Y | 2 | 1.8 | 2 + 20% = 2.4 | 
2.2. Альтернативные сценарии
Для каждого риска прописываем «план Б»:
- Если API партнёра недоступен: Используем заглушки и тестируем логику. 
- Если смежная команда задерживает задачу: Переключаемся на технический долг. 
3. Тестирование через призму рисков.
3.1. Приоритезация тестов
Что тестируем в первую очередь (этот список также приведен в качестве примера — может оказаться так, что вы тестируете не весь продукт, а какой‑то его отдельный модуль):
- Функции с внешними зависимостями (например: платежи, подписи документов). 
- Модули, которые блокируют других (например, авторизация). 
- Код, который меняли «в спешке» (например, хотфиксы). 
3.2. Автоматизация "зоны риска"
Чтобы минимизировать влияние высокорисковых факторов на проект, критически важные участки кода и интеграции нужно автоматизировать. Вот как это можно реализовать:
1. Мониторинг API партнёров
- 
Регулярные health‑чеки (как правило, в средних и крупных компаниях уже реализован мониторинг доступности критически‑важных сервисов): - Проверка HTTP‑статусов ( - 200 OK,- 503 Service Unavailable).
- Замер времени ответа (если API отвечает дольше N мс → алерт). 
 
- 
Валидация контрактов (если API меняет формат ответа без предупреждения): - Автоматические тесты на соответствие Swagger/OpenAPI‑спецификации. 
 
- 
Исторический анализ (чтобы выявлять периодические сбои): - Логирование всех ошибок и построение графиков доступности (например, в Kibana, Grafana и везде, где только можете). 
 
4. Как преподнести подход руководству.
Аргументы:
- 
«Мы не просто угадываем сроки — мы их обосновываем» - Покажите матрицу рисков: «Вот почему интеграция с API X оценена в 2 спринта, а не в 1». 
 
- 
«Мы снижаем простои команды» - Пример: «Если API упадёт, мы можем переключиться на технический долг / можем использовать заглушки / (далее все, что выберете в рамках своего проекта) — разработка не остановится». 
 
- 
«Мы избегаем эффекта домино» - «Раньше задержка одной задачи срывала весь спринт. Теперь у нас есть буферы». 
 
Как донести ценность данного подхода:
- В деньгах: Посчитайте, сколько стоит день простоя команды (да, математика умноженная на бухгалтерию = боль). 
- В репутации: «Клиент X ушёл к конкурентам из‑за того, что не мог сделать перевод в течении 2-х дней», «Клиент Y перестал использовать наше приложение из‑за того, что не мог войти в личный кабинет в течении 5-ти часов». 
Вывод
Риск‑ориентированное планирование — это приведение вероятностей возникновения рисковых ситуаций в математическую (а следовательно — предсказуемую) плоскость и грамотное планирование.
Что оно даёт:
- Предсказуемость: Спринты перестают добавлять седых волос. 
- Гибкость: Команда готова к неожиданностям. 
- Доверие: Между бизнесом и командами разработки — все прозрачно: сроки, переносы и т. д. 
Спасибо за внимание, надеюсь эта статья будет полезной для всех ищущих.
 
           
 
NOnameSERVER
Главный риск что на учёт рисков не хватит времени
DmitriyKuzmi4ev Автор
Самое сложное - собрать статистику этих рисков для базы расчётов. Остальное - по ходу пьесы)