5 сигналов срыва спринта, которые AI-агент видит до статуса

44 мин чтения
Stanislav Belyaev
Stanislav Belyaev Engineering Leader в Microsoft
5 сигналов срыва спринта, которые AI-агент видит до статуса

Статус-митинг по пятницам. PM открывает слайд: «Мы на две недели отстаём от плана». Руководитель спрашивает: «Когда стало понятно?» PM честно отвечает: «Неделю назад, когда собрал данные для отчёта».

Проблема системная. Статус-отчёты описывают прошлое. К моменту, когда отклонение попадает в слайд, команда уже живёт с ним несколько дней, заинтересованные стороны уже слышат тревожные сигналы в коридорах, а окно для дешёвого реагирования закрылось.

Данные, которые могли бы предупредить о проблеме, всё это время лежали в Jira и GitHub. Просто никто не смотрел на них под нужным углом.

Эта статья – для PM, работающих с Jira, Asana и GitHub. Если вы управляете строительными проектами и ваши данные в 1С:ERP, ЦУС или Spider Project – версия для строительства выйдет отдельно: субподрядчики, поставки, КС-формы и календарный план вместо спринтов и коммитов.

Пять сигналов, которые видны до статуса

Адаптированный для agile Earned Value Management обнаруживает проскальзывание за 2–3 спринта до того, как команды сообщают о нём сами – это устойчивый вывод из практики применения EVM в итеративной разработке. Troy Magennis из Focused Objective продемонстрировал, что Monte Carlo-симуляции на основе пропускной способности команды на 40–60% точнее, чем оценки «на глаз».

Но для этих методов нужен аналитик, время и дисциплина. Агентный ИИ делает ту же работу за 5 минут – если знать, что спросить.

Ниже – пять конкретных сигналов. Каждый – с промптом, который работает на реальной выгрузке из Jira или Asana.

Пять сигналов риска спринта на одном дашборде: падение скорости команды, разрастание содержания, стареющая работа в процессе, спад коммитов, поздние закрытия задач

1. Падение темпа команды – скорость снижается от спринта к спринту

Самый очевидный сигнал и при этом самый игнорируемый. Падение velocity на 15%+ за два спринта подряд коррелирует с последующим срывом сроков – это консенсус agile-практиков, подтверждённый данными Digital.ai State of Agile.

Голая velocity – тривиальный случай: тренд видно глазом, никакой агент не нужен, чтобы заметить 42 -> 28. Ценность появляется, когда нужно нормализовать velocity по составу команды (отпуска, онбординг, болезни), учесть будущие праздники и состав следующего спринта, и сформулировать гипотезы – откуда падение, когда нет очевидной причины. Вот промпт, который делает эту работу.

Попробуйте сами
Нормализованный анализ velocity и риск-прогноз
Вы
Ты – аналитик проектных данных. Команда мобильного приложения, 5 разработчиков, двухнедельные спринты. Вот velocity с контекстом по составу команды: - Sprint 18: 42 SP – 5 разработчиков, без отпусков - Sprint 19: 38 SP – 1 разработчик в отпуске неделю - Sprint 20: 44 SP – 5 разработчиков, полная загрузка - Sprint 21: 36 SP – новая разработчица Елена вышла с 3 дня спринта, осваивается - Sprint 22: 31 SP – Елена продолжает осваиваться, Сергей болел 1 неделю - Sprint 23: 28 SP – Елена работает полноценно, никто не болеет Бэклог до релиза: 80 SP. Дедлайн: 3 спринта. Sprint 24 планируется: 5 человек, праздничная неделя (3 рабочих дня), 1 разработчик на конференции 2 дня. Задача: 1. Очищенная velocity без шума отпусков/болезней/онбординга – какая реальная пропускная способность команды по «чистым» спринтам? 2. Sprint 23 упал до 28 SP без видимых внешних причин. Какие 3–4 гипотезы стоит проверить PM? (технический долг, скрытые блокеры, выгорание, scope-сдвиги – конкретно.) 3. Реалистичный прогноз Sprint 24 с учётом известных факторов (праздники, конференция). 4. Можем ли мы закрыть 80 SP за 3 спринта? Если нет – на сколько спринтов реально, при двух сценариях: ничего не меняем / убираем 20% scope. 5. Три конкретных варианта действий для PM на ближайшую неделю. Формат: таблица очищенной velocity + ответы по пунктам + одна рекомендация для статус-отчёта руководству.
Сравниваем:
deepseek/deepseek-v3.2 · qwen/qwen3.5-397b-a17b · gemini/gemini-3-flash-preview

2. Разрастание содержания – сколько задач добавляется на лету

Когда задачи добавляются в спринт быстрее, чем закрываются – команда теряет контроль над содержанием проекта. По данным моделирования Magennis, если добавленные в середине спринта задачи превышают 20% от изначального обязательства спринта – вероятность выполнения падает ниже 50%.

Попробуйте сами
Анализ scope creep
Вы
Ты – аналитик проектных данных. Вот данные по трём последним спринтам: Sprint 21 (2 нед): - Запланировано: 14 задач (36 SP) - Добавлено в середине спринта: 3 задачи (8 SP) - Закрыто: 13 задач (36 SP) - Перенесено: 4 задачи (8 SP) Sprint 22 (2 нед): - Запланировано: 12 задач (31 SP) - Добавлено в середине спринта: 5 задач (11 SP) - Закрыто: 11 задач (31 SP) - Перенесено: 6 задач (11 SP) Sprint 23 (2 нед): - Запланировано: 11 задач (28 SP) - Добавлено в середине спринта: 7 задач (14 SP) - Закрыто: 10 задач (28 SP) - Перенесено: 8 задач (14 SP) Задача: 1. Рассчитай scope creep rate для каждого спринта (добавленные / запланированные, в %). 2. Покажи тренд: ситуация ухудшается? 3. Рассчитай чистую пропускную способность (закрыто минус добавлено) – команда «откапывается» или «закапывается»? 4. Если тренд сохранится – в каком спринте чистая пропускная способность станет отрицательной (команда начнёт устойчиво закрывать меньше, чем ей добавляют)? Это момент, когда бэклог начинает расти неконтролируемо. 5. Главный вопрос: откуда приходят незапланированные задачи? Предложи 3 вопроса, которые PM должен задать команде и заинтересованным сторонам. Формат: таблица + анализ + вопросы.
Сравниваем:
deepseek/deepseek-v3.2 · qwen/qwen3.5-397b-a17b · gemini/gemini-3-flash-preview

3. Накопление застрявших задач – работа, которая копится без движения

Стареющая незавершённая работа – самый сильный сигнал из всех. Задача, висящая в статусе «В работе» дольше, чем удвоенное среднее время цикла команды, почти наверняка заблокирована. Три таких задачи одновременно – и спринт в опасности. Пять – спринт уже сорван, просто об этом ещё не знают.

Dan Vacanti в «Actionable Agile Metrics for Predictability» показал: объём незавершённой работы (WIP), превышающий пропускную способность команды, создаёт нелинейный рост времени цикла для всех задач.

Попробуйте сами
Анализ заблокированных задач
Вы
Ты – аналитик проектных данных. Вот текущий статус задач спринта 23 (середина спринта, день 6 из 10): | ID | Задача | Статус | В текущем статусе (дней) | Assignee | Блокер | |---|---|---|---|---|---| | PRJ-301 | API авторизации v2 | В работе | 5 | Алексей | Ожидание ответа от команды безопасности | | PRJ-302 | Миграция БД | На ревью | 2 | Мария | – | | PRJ-303 | Редизайн дашборда | В работе | 6 | Дмитрий | Нет утверждённого макета от дизайнера | | PRJ-304 | Нотификации email | Открыт | 0 | – | Зависимость от PRJ-301 | | PRJ-305 | Оптимизация запросов | Закрыт | – | Сергей | – | | PRJ-306 | Тесты интеграции | В работе | 4 | Елена | Тестовая среда недоступна с понедельника | | PRJ-307 | Документация API | Открыт | 0 | – | Зависимость от PRJ-301 | | PRJ-308 | Фикс бага #1247 | В работе | 1 | Алексей | – | | PRJ-309 | Кэширование ответов | Открыт | 0 | Мария | – | | PRJ-310 | Мониторинг endpoints | Открыт | 0 | – | – | Средний время цикла команды: 3 дня. Задача: 1. Какие задачи уже превысили 2x время цикла? Это красные флаги. 2. Посчитай цепочки зависимостей: если PRJ-301 не разблокируется сегодня, сколько задач будет затронуто? 3. Текущий WIP = 4 задачи в работе. Пропускная способность команды = 2–3 задачи параллельно. Это проблема? 4. Прогноз: при текущем темпе, сколько из 10 задач реально закроется к концу спринта? 5. Сформулируй 3 конкретных действия для PM на сегодня (не общие советы, а конкретные шаги по конкретным задачам). Формат: risk map + прогноз + action items.
Сравниваем:
deepseek/deepseek-v3.2 · qwen/qwen3.5-397b-a17b · gemini/gemini-3-flash-preview

4. Спад коммитов – тишина в репозитории

Cataldo и Herbsleb (IEEE Transactions on Software Engineering, 2009) обнаружили, что изменения в частоте коммитов и паттернах интеграции кода предшествуют провалам интеграции на 1–3 недели. Паттерн: частота коммитов падает, а объём изменений в одном коммите растёт. Разработчики перестают делать маленькие инкрементальные изменения и начинают «копить» большие патчи.

Для PM это сигнал, который виден без технической экспертизы – достаточно выгрузки из GitHub.

Попробуйте сами
Анализ сырой выгрузки из GitHub
Вы
Ты – аналитик проектных данных. Ниже – сырая выгрузка из GitHub за 4 недели по команде из 5 разработчиков. Твоя задача – самостоятельно разнести данные по неделям, посчитать метрики и найти сигналы. Не предполагай, что агрегация сделана за тебя. <data> ## Список pull request'ов (`gh pr list --state all --limit 40`) Формат: #PR | автор | открыт | закрыт (merged/closed/open) | +строк | -строк | файлов | состояние 1245 | Алексей | 2026-04-01 10:14 | 2026-04-02 16:30 | 142 | 23 | 8 | merged 1246 | Сергей | 2026-04-01 11:02 | 2026-04-02 14:15 | 178 | 45 | 6 | merged 1247 | Дмитрий | 2026-04-02 09:45 | 2026-04-03 13:20 | 87 | 12 | 4 | merged 1248 | Мария | 2026-04-02 14:30 | 2026-04-03 17:00 | 134 | 28 | 7 | merged 1249 | Елена | 2026-04-03 10:20 | 2026-04-04 11:45 | 64 | 8 | 3 | merged 1250 | Алексей | 2026-04-04 09:30 | 2026-04-04 18:10 | 93 | 15 | 5 | merged 1251 | Сергей | 2026-04-04 13:00 | 2026-04-05 10:25 | 156 | 22 | 7 | merged 1252 | Дмитрий | 2026-04-05 11:15 | 2026-04-08 14:00 | 72 | 10 | 4 | merged 1253 | Мария | 2026-04-05 15:40 | 2026-04-08 11:30 | 98 | 18 | 5 | merged 1254 | Елена | 2026-04-08 10:00 | 2026-04-09 13:15 | 45 | 6 | 2 | merged 1255 | Алексей | 2026-04-08 14:20 | 2026-04-09 17:40 | 112 | 20 | 6 | merged 1256 | Сергей | 2026-04-09 09:30 | 2026-04-10 14:55 | 167 | 35 | 8 | merged 1257 | Дмитрий | 2026-04-09 13:45 | 2026-04-10 16:20 | 83 | 9 | 4 | merged 1258 | Мария | 2026-04-10 10:30 | 2026-04-11 11:00 | 124 | 24 | 6 | merged 1259 | Елена | 2026-04-10 15:00 | 2026-04-11 17:30 | 58 | 7 | 3 | merged 1260 | Алексей | 2026-04-11 09:15 | 2026-04-12 14:40 | 105 | 16 | 5 | merged 1261 | Сергей | 2026-04-15 10:30 | 2026-04-17 14:20 | 287 | 64 | 12 | merged 1262 | Дмитрий | 2026-04-15 14:00 | – | 0 | 0 | 0 | draft 1263 | Алексей | 2026-04-16 09:45 | 2026-04-19 16:15 | 312 | 78 | 14 | merged 1264 | Мария | 2026-04-16 13:20 | 2026-04-18 17:00 | 198 | 41 | 9 | merged 1265 | Сергей | 2026-04-18 10:00 | – | 0 | 0 | 0 | draft 1266 | Алексей | 2026-04-22 11:30 | – | 0 | 0 | 0 | draft 1267 | Мария | 2026-04-22 14:15 | 2026-04-23 10:30 | 245 | 52 | 11 | merged ## Сводка по авторам коммитов (`git shortlog -s -n --since="4 weeks ago"`) Формат: автор | всего коммитов за период | последний коммит | примечание Алексей | 47 | 2026-04-22 | размер коммитов вырос к концу периода Сергей | 52 | 2026-04-22 | размер коммитов вырос к концу периода Дмитрий | 21 | 2026-04-15 | без коммитов с 2026-04-15 Мария | 38 | 2026-04-22 | активна Елена | 23 | 2026-04-11 | без коммитов с 2026-04-11 </data> ## Порядок работы **Шаг 1. Явное перечисление PR по неделям (обязательный шаг, без него ответ не принимается).** Для каждой недели выпиши номера всех PR, попавших в неё по дате открытия. Формат строки: - W1 (01–05.04): #1245, #1246, ..., итого N штук - W2 (08–12.04): #... - W3 (15–19.04): #... - W4 (22–26.04): #... Контрольная сумма: всего в выгрузке 23 PR (от #1245 до #1267). Сумма по четырём неделям должна равняться 23. Если не сходится – пересчитай и найди пропущенный PR. **Шаг 2. Метрики по неделям.** Только после явного перечисления посчитай для каждой недели: - число открытых PR (по дате открытия) - число merged (по дате мерджа – может попасть в другую неделю, чем открытие) - средний размер (+строк) среди merged PR - число активных авторов (тех, кто открыл хотя бы один PR на этой неделе) - среднее время от открытия до мерджа (в часах), только по merged **Шаг 3.** Сведи метрики в трендовую таблицу W1 -> W4. **Шаг 4.** Двое разработчиков перестали коммитить (Елена с 11.04, Дмитрий с 15.04). Это отпуск или проблема? Какие признаки в данных помогли бы отличить, и каких данных не хватает? **Шаг 5.** Средний размер PR резко вырос на W3–W4. Это рефакторинг (нормально) или «накопление» патчей (опасно)? Аргументируй по данным – ссылайся на конкретные PR. **Шаг 6.** На W3–W4 три PR висят в состоянии draft и не двигаются. Это узкое место на код-ревью или что-то другое? **Шаг 7.** Общий вердикт: нормальная вариация или ранний сигнал срыва интеграции? **Шаг 8.** Три конкретных вопроса для PM команде – с именами, датами или номерами PR. ## Формат ответа 1. Блок «Перечисление PR по неделям» с контрольной суммой (Шаг 1) 2. Таблица недельных метрик (Шаги 2–3) 3. Разбор гипотез (Шаги 4–6) – 2–3 предложения на каждую 4. Вердикт (Шаг 7) – один абзац 5. Три вопроса (Шаг 8) – списком Напоминание перед началом: Шаг 1 с контрольной суммой = 23 обязателен. Без него последующие расчёты будут на неполных данных.
Сравниваем:
deepseek/deepseek-v3.2 · qwen/qwen3.5-397b-a17b · gemini/gemini-3-flash-preview

Почему промпт устроен именно так

Этот промпт – не первый черновик. Первая версия теряла половину данных: DeepSeek и Qwen молча выбрасывали PR на границе недель и считали метрики на 5 PR в W1 вместо 9. Структура, которую вы видите выше, появилась после прогона на трёх моделях и фиксации каждого сбоя. Каждый элемент решает конкретную проблему:

  • Блок <data> вокруг исходных данных изолирует их от инструкций. Без изоляции модель путает «что считать» с «откуда брать», особенно когда данные похожи на текст инструкции.
  • Обязательный Шаг 1 с явным перечислением PR по неделям и контрольной суммой Σ = 23 заставляет модель проверить себя до начала расчётов. Именно эта техника подняла DeepSeek с 5 PR в W1 до правильных 9.
  • Восемь пронумерованных шагов вместо общего списка задач удерживают модель от перепрыгивания: каждое действие следует предыдущему, агрегация невозможна без перечисления.
  • Напоминание в конце («Шаг 1 обязателен») – техника сэндвича. В длинном промпте внимание модели к началу размывается; повтор критичного требования в конце восстанавливает приоритет.

Структура – не магия и не «секреты промптинга». Это четыре конкретных приёма, которые превращают промпт из черновика в инструмент: изоляция данных, обязательные шаги, самопроверка, сэндвич. Без них агент будет считать на неполных данных – и не скажет об этом.

Четыре приёма выглядят очевидно после прочтения. Сложнее заметить, когда промпт уже ошибся – не в расчётах, а в исходных допущениях. Именно это отделяет аналитика от человека, который верит красиво оформленным таблицам.

Основы AI для менеджеров

Промпт как инструмент, а не лотерея

Статья показала четыре техники – изоляцию данных, обязательные шаги, контрольные суммы и сэндвич. В курсе вы применяете их на 10 задачах со своими данными и учитесь отличать надёжный результат от правдоподобной галлюцинации – навык, который не даёт ни одна статья.

10 практических задач на ваших данных – не демо
Распознавание галлюцинаций и арифметических ошибок
Работа с сырыми выгрузками вместо предобработанных
Промпт-инженерия: XML-теги
шаги
контрольные суммы

5. Поздние закрытия – всё уходит в последний день спринта

Когда больше 60% задач спринта закрывается в последние два дня – следующий спринт почти гарантированно просядет по velocity на 20–25%. Причина: «героическое» закрытие в конце означает, что задачи либо были недооценены, либо блокировались большую часть спринта, а потом закрывались через overhours. Команда приходит в следующий спринт уставшей.

Попробуйте сами
Анализ паттерна поздних закрытий
Вы
Ты – аналитик проектных данных. Вот даты закрытия задач за последние 3 спринта (10 рабочих дней каждый): Sprint 21 (4–15 марта): - Дни 1–3: закрыто 2 задачи - Дни 4–6: закрыто 3 задачи - Дни 7–8: закрыто 3 задачи - Дни 9–10: закрыто 5 задач Итого: 13 из 14 закрыто Sprint 22 (18–29 марта): - Дни 1–3: закрыто 1 задача - Дни 4–6: закрыто 2 задачи - Дни 7–8: закрыто 2 задачи - Дни 9–10: закрыто 6 задач Итого: 11 из 12 закрыто Sprint 23 (1–12 апреля): - Дни 1–3: закрыто 0 задач - Дни 4–6: закрыто 1 задача - Дни 7–8: закрыто 2 задачи - Дни 9–10: закрыто 7 задач Итого: 10 из 11 закрыто Задача: 1. Рассчитай процент задач, закрытых в последние 2 дня, для каждого спринта. 2. Покажи тренд: паттерн усиливается? 3. Сопоставь с velocity: sprint 21 = 36 SP, sprint 22 = 31 SP, sprint 23 = 28 SP. Есть корреляция между паттерном поздних закрытий и падением velocity? 4. Прогноз для Sprint 24: если паттерн продолжится, какой velocity ожидать? 5. Три конкретных вопроса для ретроспективы, чтобы найти причину. Формат: визуализация распределения (текстовая гистограмма) + анализ + вопросы.
Сравниваем:
deepseek/deepseek-v3.2 · qwen/qwen3.5-397b-a17b · gemini/gemini-3-flash-preview

Как подготовить данные – что экспортировать и в каком формате

Агент работает с текстом. Ему не нужен API-доступ к трекеру – достаточно выгрузки в CSV или скопированной таблицы.

Если вы на Yandex Tracker: Очереди -> Выгрузка задач (CSV / Excel). Нужные поля: ключ задачи, название, статус, дата создания, дата начала работ, дата завершения, story points (если ведёте), исполнитель, спринт, теги. Отдельно: отчёт по спринту из раздела «Гибкие методологии» – там velocity в виде графика, данные копируются вручную за 2 минуты.

Если вы на Kaiten: Экспорт карточек доски в CSV. Kaiten по умолчанию не оперирует story points и спринтами, поэтому метрики читаются иначе: вместо velocity – пропускная способность (закрытых карточек за неделю), вместо разрастания содержания – рост числа карточек в бэклоге или на доске за период, вместо завершения спринта – распределение времени цикла. Все промпты выше работают, если в данных есть даты входа и выхода из лейнов.

Если вы на Jira / Asana / Bitrix / YouTrack: Board export -> CSV. Нужные поля: ID задачи, название, статус, дата создания, дата начала работы, дата закрытия, story points, assignee, sprint, labels. Отдельно: sprint report (velocity chart data) за 4–6 спринтов. Changelog, если доступен: когда задача меняла статус, когда добавлялась в спринт.

Из GitHub / GitLab / Bitbucket:

  • Contributor activity за 4 недели (commits per week, lines changed).
  • PR list с датами: opened, first review, merged/closed.
  • Не нужны diff’ы или содержание коммитов – только метаданные.

Минимальный набор, который уже работает

Темп команды (velocity) за 4–6 спринтов + текущий статус задач спринта. Для Yandex Tracker это два отчёта, оба встроенные. Для Kaiten – пропускная способность и список карточек с датами. Этого достаточно для сигналов #1, #2 и #5. Для сигналов #3 и #4 нужны данные по блокерам и коммитам соответственно.

Формат

Агенту всё равно – CSV, Markdown-таблица, даже скриншот (мультимодальные модели прочитают). Но лучше всего работает текстовая таблица: меньше ошибок распознавания, проще проверить.

Реальный пример: данные одного спринта команды из 5 человек

Вот пример выгрузки, которую PM может получить из трекера (или собрать вручную за 15 минут) и загрузить в агента целиком вместе с промптом. Команда мобильного приложения для финтех-стартапа, 5 разработчиков, двухнедельные спринты. Sprint 23 – шестой день из десяти.

Полный пример выгрузки лежит отдельным файлом: скачать sprint-23-export.txt – вставьте его в чат сразу после промпта (или прикрепите файлом). Шаблон легко адаптируется под ваш проект: замените имена, ID задач и статусы. Ниже – тот же набор данных, встроенный в промпт целиком, чтобы пример был воспроизводим прямо из статьи.

Попробуйте сами
Полный анализ спринта – реальный пример
Вы
Ты – AI-аналитик проектных данных. Проанализируй данные спринта и выдай отчёт о рисках для PM. ## Контекст проекта Проект: мобильное приложение для самозанятых (финтех) Команда: 5 разработчиков (2 backend, 2 frontend, 1 mobile), 1 QA Sprint 23: 1–12 апреля (10 рабочих дней) Sprint goal: «Интеграция с банковским API и redesign экрана транзакций» Сегодня: 8 апреля (день 6 из 10) ## Velocity история Sprint 18: 42 SP Sprint 19: 38 SP Sprint 20: 44 SP Sprint 21: 36 SP Sprint 22: 31 SP Sprint 23 planned: 34 SP ## Задачи Sprint 23 | ID | Название | Тип | SP | Статус | Assignee | В статусе (дн) | Блокер | Добавлена | |---|---|---|---|---|---|---|---|---| | FIN-401 | Интеграция с API банка: авторизация | Story | 5 | В работе | Алексей (BE) | 5 | Ожидание sandbox-доступа от банка | Планирование | | FIN-402 | Интеграция с API банка: получение баланса | Story | 3 | Открыт | Алексей (BE) | – | Зависимость от FIN-401 | Планирование | | FIN-403 | Интеграция с API банка: история транзакций | Story | 5 | Открыт | Сергей (BE) | – | Зависимость от FIN-401 | Планирование | | FIN-404 | Redesign экрана транзакций: UI-компоненты | Story | 3 | В работе | Дмитрий (FE) | 4 | Нет финальных макетов от дизайнера | Планирование | | FIN-405 | Redesign экрана транзакций: фильтры | Story | 3 | Открыт | Дмитрий (FE) | – | Зависимость от FIN-404 | Планирование | | FIN-406 | Push-нотификации: backend | Story | 3 | Закрыт | Сергей (BE) | – | – | Планирование | | FIN-407 | Push-нотификации: mobile | Story | 3 | На ревью | Елена (Mobile) | 2 | – | Планирование | | FIN-408 | Фикс бага: дублирование транзакций при retry | Bug | 2 | В работе | Мария (FE) | 1 | – | Планирование | | FIN-409 | Рефакторинг модуля аутентификации | Tech Debt | 3 | Открыт | – | – | – | Планирование | | FIN-410 | Обновление SDK платёжной системы | Tech Debt | 2 | Закрыт | Алексей (BE) | – | – | Планирование | | FIN-411 | Срочно: фикс crash на Android 14 | Bug | 2 | В работе | Елена (Mobile) | 1 | – | День 3 (в середине спринта) | | FIN-412 | Запрос от CEO: отчёт по unit economics | Task | – | В работе | Мария (FE) | 2 | – | День 4 (в середине спринта) | | FIN-413 | A/B тест: новый онбординг | Story | 3 | Открыт | – | – | – | День 5 (в середине спринта) | | FIN-414 | Hotfix: неправильный расчёт комиссии | Bug | 1 | Закрыт | Сергей (BE) | – | – | День 2 (в середине спринта) | ## Git-статистика (GitHub, за Sprint 23, дни 1–6) | Разработчик | Коммитов | Ср. строк/коммит | PR opened | PR merged | |---|---|---|---|---| | Алексей (BE) | 8 | 23 | 2 | 1 | | Сергей (BE) | 18 | 41 | 5 | 4 | | Дмитрий (FE) | 6 | 67 | 1 | 0 | | Мария (FE) | 11 | 34 | 3 | 2 | | Елена (Mobile) | 14 | 29 | 4 | 3 | Среднее по команде за Sprint 22 (полный): 15 коммитов/чел, 38 строк/коммит, 3,4 PR/чел ## Задача Проанализируй данные и подготовь отчёт для PM по следующей структуре: ### 1. Velocity forecast - Тренд velocity за 6 спринтов. Сколько SP реально закроется к концу Sprint 23? - Sprint goal под угрозой? ### 2. Scope creep - Сколько задач добавлено в середине спринта? Какой % от планового объёма? - FIN-412 не имеет оценки в story points – это скрытая нагрузка. Оцени её влияние. ### 3. Блокеры и зависимости - Нарисуй граф зависимостей: какие задачи стоят из-за FIN-401? - Если sandbox-доступ от банка не появится сегодня – какие последствия? - FIN-404 без макетов: 4 дня в In Progress без прогресса. Это приемлемо? ### 4. Git-паттерны - У кого аномально мало коммитов? Совпадает ли это с блокерами? - Дмитрий: 6 коммитов, 67 строк/коммит – большие коммиты при малом количестве. Почему? ### 5. Прогноз и рекомендации - Реалистичный сценарий: сколько SP из 34 закроется? - Три конкретных действия PM должен предпринять сегодня. - Какие задачи вырезать из спринта, чтобы спасти sprint goal? Формат: структурированный отчёт с таблицами, без воды. Пометь каждый сигнал цветом: 🟢 норма, 🟡 внимание, 🔴 действовать сейчас.
Сравниваем:
deepseek/deepseek-v3.2 · qwen/qwen3.5-397b-a17b · gemini/gemini-3-flash-preview

Структура, которую я видел в десятках реальных проектов. Sandbox-доступ от банка, который «будет завтра» уже пятый день. Макеты от дизайнера, которые «почти готовы». CEO, который «просто попросил одну табличку». Каждый из этих элементов по отдельности – мелочь. Вместе – срыв спринта.

Агент видит это за 30 секунд. PM видит это на ретроспективе, когда спринт уже закончился. Это, кстати, меняет и распределение ответственности в команде: когда PM приходит с конкретными данными, а не ощущениями, разговор о приоритетах становится принципиально другим.

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

Вы только что видели, как sandbox-доступ «будет завтра» пятый день подряд, а CEO впервые за месяц зашёл в проектный чат. В открытом модуле – 9 задач на таких же реальных данных, где нужно отличить настоящий сигнал от шума. Бесплатно, без регистрации.

Доступ сразу после регистрации

Начать обучение

Red flags vs. false positives – когда агент кричит «волк»

Каждый из пяти сигналов может врать. Вот конкретные ситуации, когда отклонение от нормы – это план команды, который агент не видит без контекста.

Праздничная неделя

Velocity падает, коммитов меньше, задачи закрываются позже. Агент видит падение и бьёт тревогу. Решение простое: добавьте в контекст промпта строку «В этом спринте 3 рабочих дня из-за праздников, нормализуй метрики». Одна строка контекста – и ложного срабатывания нет.

Технический долг-спринт

Команда сознательно взяла меньше задач, чтобы разобраться с рефакторингом. Velocity низкий, разрастания содержания нет, объём изменений в коммитах высокий. Без контекста агент поднимет тревогу. С контекстом – всё по плану.

Онбординг или spike-исследование

Два случая, которые выглядят на графике одинаково, а на деле разные. Новый разработчик вызывает просадку velocity на 2–4 спринта – это нормальная инвестиция в рост, и агент должен знать: «Елена вышла на проект в Sprint 22, ожидаемое освоение – 3 спринта». Исследовательская задача (spike) даёт ту же картину – мало коммитов, мало закрытых тикетов, много времени в одном – но по сути это разведка технологии, а не блокировка. Без контекста агент бьёт тревогу в обоих случаях.

Согласованное изменение содержания

Самый неочевидный случай. PO добавил три задачи в спринт по договорённости с командой, которая в обмен убрала задачи аналогичного объёма. Формально разрастание содержания высокое – 25% от планового объёма добавлено в середине спринта. Реальной проблемы нет: пропускная способность сохранена, цель спринта осталась прежней, просто содержание обменяли на эквивалент. Если PM не передал агенту эту договорённость, отчёт будет с ложной тревогой. Решение: в контекст промпта добавляется одна строка – «Обмен в середине спринта: добавлены FIN-415, 416, 417 (8 SP), убраны FIN-409, 413 (8 SP), согласовано с PO». Этого достаточно.

Общее правило: агент считает числа, PM понимает контекст. Вопрос не в том, доверять ли агенту. Вопрос в том, передали ли вы ему контекст, без которого нельзя отличить праздничную неделю от системного замедления. Автоматический алерт полезен меньше, чем структурированный вопрос: «Вот что я вижу в данных. Это проблема или нет?»

Что делать, если данных нет (или им нельзя верить)

Всё сказанное выше предполагает, что у вас есть нормально заполненный трекер. Это заставляет задуматься: для значительной части команд это не так. Статусы не обновляются, story points не ставятся, задачи добавляются в трекер постфактум или не добавляются вовсе. Трекер превращается в дорогой список дел.

Трекер без данных – это смена источника, а не конец аналитики. Меняется и роль агента. С нормальным трекером агент считает тренды по числам. Без трекера человек становится сенсором, а агент – долговременной памятью и распознавателем паттернов в свободном тексте. Люди плохо помнят, что «почти готово» произносится четвёртую неделю подряд, или что у одного разработчика число сообщений в чате упало вдвое за две недели. Агент с этим справляется без усилий.

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

Стендап как источник сигналов

Кто третий день подряд говорит «вчера то же, что позавчера». Кто перестал называть конкретные тикеты и переходит на «дорабатываю прошлое». Кто впервые за месяц молчит. Это наблюдаемые данные – они не требуют трекера. Один промпт после стендапа: скопируйте свои заметки за пять дней стендапов в свободном тексте и попросите агента найти повторяющиеся блокеры и людей, которые буксуют дольше двух дней. Агент справится с нестрогим форматом.

Тишина в каналах и календарях

Резкое падение активности в Slack, Teams или Mattermost. PR-обсуждения сжимаются до «LGTM» (looks good to me – формальное одобрение без обсуждения). Разработчик, который обычно отвечает за час, отвечает через день. То, что PM ощущает как «что-то стихло», агент превращает в конкретное «у Дмитрия 8 сообщений за неделю против 24 в прошлой». Копипаст истории канала за две недели плюс одна просьба: посчитать сообщения по людям и дням, найти провалы активности, оценить, как изменилась длина обсуждений в PR. Обратный сигнал: календарь PM внезапно забит внеплановые встречами с CTO. Это сигнал про проект, не про команду.

Язык апдейтов

«Почти готово», сказанное три недели подряд – математически невозможная ситуация. «Финализируем» часто означает, что финализация не начата. «Последние штрихи» неделю подряд означают, что есть проблема, о которой не говорят вслух. Скопируйте последние пять-десять апдейтов от команды в чат с агентом и попросите найти повторяющиеся формулировки и оценить, насколько «90% готово» смещается во времени. Это займёт две минуты и часто называет вещи своими именами.

Поведение заинтересованных сторон как опережающий индикатор

CEO внезапно стал заходить в проектный чат. Заказчик прислал три внеплановые запроса за неделю вместо обычного одного раз в две недели. PO молчит на планировании. Реакция заинтересованных сторон часто опережает то, что показывают данные трекера, – они чувствуют тревожность ещё до того, как velocity упал на 15%. PM, который ведёт хотя бы короткий журнал контактов (одна строка в неделю на человека), отдаёт его агенту вместе с данными за прошлые месяцы и получает в ответ: «частота запросов от заказчика выросла в три раза, новые участники в чате – два, тон вопросов сместился от уточнений к проверкам». Сам по себе журнал ничего не стоит. С агентом он становится системой раннего предупреждения.

Если нет ничего – заведите пять колонок

Google Sheets, Excel, заметка в телефоне – неважно. Колонки: задача, кто делает, начато (дата), статус на сегодня (одно слово), блокер если есть. Заполнение – десять минут раз в день после стендапа. Через две недели у вас есть данные, которые скармливаются в любой из промптов выше без изменений.

Google Sheets – не Jira. Но этого достаточно, чтобы увидеть, кто буксует пятый день подряд и какие задачи живут дольше остальных. Не нужно сразу выстраивать дисциплину всей команды – достаточно начать с собственной.

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

Попробуйте сами
Анализ наблюдений, когда трекер не помогает
Вы
Ты – AI-аналитик. У меня нет аккуратной выгрузки из трекера, есть только наблюдения за неделю. Найди сигналы возможного срыва. ## Заметки со стендапов Понедельник: - Алексей: продолжаю с API банка, sandbox не дали - Дмитрий: доделываю компоненты экрана, почти готово - Мария: фикс бага по комиссиям, нашла причину - Сергей: жду API, переключился на documentation - Елена: crash на Android 14, разбираюсь Вторник: - Алексей: то же, что вчера - Дмитрий: финализирую, остались мелочи - Мария: фикс готов, на ревью - Сергей: documentation, всё штатно - Елена: нашла причину crash, патч готовлю Среда: - Алексей: продолжаю ждать sandbox, написал в банк - Дмитрий: последние штрихи - Мария: фикс уже два дня на ревью - Сергей: молчал - Елена: патч готов, тестирую Четверг: - Алексей: sandbox обещают завтра - Дмитрий: почти готово - Мария: ревью переоткрылось, переделываю - Сергей: молчал - Елена: тесты не проходят на одной модели Пятница: - Алексей: sandbox перенесли на понедельник - Дмитрий: ещё чуть-чуть - Мария: переделываю по комментариям - Сергей: молчал - Елена: всё ещё тесты ## Чат-наблюдения за неделю - В понедельник CEO зашёл в #project-fin и спросил про сроки – впервые за месяц - Сергей за неделю написал 6 сообщений (обычно 25–30) - PR-обсуждения короткие: 8 PR закрыты с одним комментарием «LGTM» (формальное одобрение без разбора) - Заказчик прислал 3 внеплановые запроса (норма – 1 в две недели) ## Апдейты команды для отчёта за последние 4 недели - Неделя 20: «Интеграция с API банка – в работе, идёт по плану» - Неделя 21: «Интеграция почти готова, остались последние штрихи» - Неделя 22: «Финализируем интеграцию, на этой неделе закроем» - Неделя 23 (текущая): «Доделываем последние моменты по API» ## Задача 1. Какие имена и темы повторяются как блокеры? Кто буксует дольше двух дней? 2. Оцени дрейф формулировок про API: это прогресс, имитация прогресса или системная проблема? 3. Что значат сигналы из чата – вопрос CEO, молчание Сергея, внеплановые запросы заказчика? Сформулируй гипотезы. 4. Что важнее всего проверить на следующей неделе? 5. Три вопроса, которые PM должен задать команде на ретроспективе. Формат: короткий отчёт с разделами «что видно», «что неясно», «что делать сегодня». Без воды. Каждый сигнал помечен 🟢 норма / 🟡 внимание / 🔴 действовать.
Сравниваем:
deepseek/deepseek-v3.2 · qwen/qwen3.5-397b-a17b · gemini/gemini-3-flash-preview

Главный принцип здесь – регулярность взгляда, а не объём данных. Пять колонок раз в день обыгрывают идеально настроенный Jira, в который никто не смотрит. Одна оговорка: качество анализа зависит от модели. DeepSeek, Qwen и Gemini стабильно находят все пять сигналов в свободном тексте. Модели послабее (включая некоторые локальные) могут пропустить неочевидные паттерны – например, не заметить, что «почти готово» повторяется четвёртый день подряд, или оценить визит CEO в проектный чат как норму. Если ваша модель выдаёт общие советы вместо конкретных имён и дат – попробуйте другую.

Интеграция с P5.express – сигналы, которые поднимаются на уровень портфеля

Если вы работаете с P5.express и агентным ИИ, эти пять сигналов – именно то, что питает Z1-цикл ежедневного мониторинга. Когда агент обнаруживает velocity decay в двух проектах одновременно – это паттерн, который должен попасть в Общий реестр последующих действий.

А ежемесячная оценка проектов (Y2) становится точнее, когда вместо ручного сбора данных PM приходит с готовым анализом по каждому из пяти сигналов. Вместо «прогресс 50%» – «прогресс 50%, но темп команды упал на 15% за 2 спринта, разрастание содержания 45%, два критических блокера с цепочкой зависимостей на 3 задачи». Разговор переходит от описания к прогнозу.

В ритме проекта эти сигналы ложатся в еженедельный цикл: пятничная выгрузка -> анализ агентом -> понедельничное планирование с учётом рисков. Час раз в неделю – столько уходит на то, чтобы PM приходил на планирование с аргументами вместо ощущений.

Ловушка арифметики

Те же грабли, что в анализе P5.express: агент уверенно считает, но иногда считает неправильно. Monte Carlo-симуляцию он проведёт – но может использовать равномерное распределение вместо нормального, забыть учесть выходные в расчёте дней или посчитать velocity как сумму, а не среднее. Конкретный пример: в промпте про velocity одна из моделей рассчитала, через сколько спринтов velocity упадёт ниже 25 SP – но за точку отсчёта взяла среднее за полгода (39,5), а не текущее значение (28). Результат: «5 спринтов до порога» вместо реальных одного-двух. Формула выглядела безупречно, ошибка была в исходной посылке.

Правило: проверяйте любое число, которое влияет на решение. Почему модель взяла именно это распределение? Откуда точка отсчёта? Какие спринты попали в выборку? Исследование паттернов поверхностного внедрения показывает, что именно некритичное принятие AI-выводов – главная причина, по которой инструмент остаётся игрушкой, а не рабочим инструментом. Прогноз «закроем 28 SP из 34» звучит точно – но за ним может стоять ошибка в формуле. Агент – черновик для проверки, не оракул.

Специфическая ловушка для финансовых данных: если в выгрузке из Jira story points записаны как текст (а не число), агент может их проигнорировать или посчитать как 0. Всегда проверяйте, что агент увидел те же данные, которые вы загрузили.

Вы только что видели, как модель взяла среднее за полгода вместо текущего значения и предсказала 5 спринтов вместо двух. Три из 9 задач открытого модуля – именно про это: вы практикуетесь ловить ошибки, которые выглядят правильно. Бесплатно, без регистрации.

Доступ сразу после регистрации

Начать обучение

Агент vs. специализированные инструменты

На рынке есть инструменты, которые делают всё это автоматически: LinearB, Jellyfish, Swarmia, Pluralsight Flow, Apache DevLake. Они интегрируются с Jira и GitHub по API, строят дашборды, шлют алерты.

Честное сравнение:

Агент (ChatGPT / Claude / Kimi)Специализированный инструмент
Стоимость$0–20/мес$30–100/мес за разработчика
Настройка0 минутДни–недели
ДанныеРучная выгрузкаАвтоматическая интеграция
Real-time алертыНетДа
Кросс-командная аналитикаОграничена контекстомПолная
Глубина git-аналитикиМетаданныеПолная (включая code churn, PR review bottlenecks)
Точность прогноза~70% (оценка LinearB для аналогичных метрик)70–80%

Исследования LinearB на реальных командах показывают: агент – хороший первый шаг. Для одной команды из 5–7 человек еженедельная выгрузка и промпт закрывают 70–80% того, что дают платные инструменты. Если нужно обосновать переход на платный инструмент руководству – разбор ROI даст нужные аргументы. Разница в мгновенных оповещениях и автоматической интеграции имеет значение, когда у вас 5+ команд и нужен постоянный мониторинг.

Для команды финтех-стартапа из примера выше – агент достаточен. Для портфеля из 15 проектов – стоит смотреть на DevLake (open source) или LinearB.

Что попробовать на этой неделе

Начните с velocity. В Jira: Board -> Reports -> Velocity Chart, скопируйте числа за 4–6 спринтов. В Asana или Bitrix – соберите вручную, там пять строчек. Скопируйте промпт «Анализ velocity-тренда» из этой статьи, подставьте свои числа, отправьте в ChatGPT или DeepSeek. Семь минут суммарно.

Потом – один взгляд на текущий спринт: есть задачи в «In Progress» дольше пяти дней? Не пытайтесь сразу всё посчитать. Просто добавьте их в промпт «Анализ заблокированных задач» и посмотрите, что скажет агент. Часто он называет вслух то, что PM уже знал, но не формулировал.

Если агент нашёл хотя бы один реальный сигнал, которого вы не видели – поздравляю, у вас работает предиктивная аналитика. Без платных инструментов, без интеграций, без дашбордов. Если не нашёл ничего нового – значит, у вас хорошая видимость. Тоже полезно знать.

Воспроизводимый процесс – пятничная выгрузка, анализ, корректировка в понедельник – описан подробнее в отдельной статье про ритм проекта. А если вы хотите, чтобы агент не просто анализировал выгрузку, а сам читал файлы и запускался по расписанию – посмотрите кейс с агентным анализом данных.

Удивительно, но главный результат предиктивной аналитики – качество разговора. PM приходит на планирование не с ощущением «что-то идёт не так», а с конкретным вопросом: «темп падает третий спринт, разрастание содержания растёт, два блокера с цепочкой на три задачи – что будем делать?» Первый разговор заканчивается эскалацией. Второй – решением.

Проектное управление

От промптов к пайплайну

Статья дала промпты, которые вы вставляете вручную раз в неделю. Курс строит систему: MCP-интеграция с трекером, агенты, которые запускаются по расписанию, и еженедельный отчёт, который собирается без вас. Три главы – от стресс-теста плана до автоматизации полного цикла.

MCP-интеграция: агент читает Jira и GitHub сам
Автоматический еженедельный отчёт по 5 сигналам
Стресс-тест плана: pre-mortem и WBS-аудит
Антикризисное реагирование на реальных кейсах

Часто задаваемые вопросы

Что такое velocity decay и почему он опасен?
Падение velocity (темпа команды) на 15% и более за два спринта подряд статистически коррелирует с последующим срывом сроков. Опасен он тем, что PM видит velocity как число в ретроспективе, а не как тренд – к моменту, когда отклонение попадает в статус-отчёт, окно для дешёвого реагирования уже закрылось. AI-агент видит тренд по выгрузке за 4–6 спринтов и нормализует его по составу команды (отпуска, болезни, освоение нового разработчика).
Какие AI-инструменты работают без VPN для российских PM?
DeepSeek V3.2 и Qwen 3 доступны напрямую без VPN и без зарубежной карты – через openrouter.ai с оплатой в рублях или напрямую через API. Yandex GigaChat и Alice AI – нативные российские модели. ChatGPT и Claude требуют либо иностранную карту, либо посредника (BotHub, ProxyAPI). Для большинства промптов в этой статье DeepSeek достаточен, но валидация показала, что для задач с агрегацией данных Gemini выдаёт более стабильные результаты.
Чем AI-агент отличается от LinearB, Jellyfish или Swarmia?
Специализированные инструменты (LinearB, Jellyfish, Swarmia, Pluralsight Flow, Apache DevLake) интегрируются с Jira и GitHub по API, шлют real-time алерты и строят кросс-командные дашборды – стоят $30–100 в месяц на разработчика и требуют дни–недели настройки. AI-агент (ChatGPT, DeepSeek, Gemini) работает на ручной выгрузке CSV, стоит $0–20 в месяц и настройки не требует. Для одной команды из 5–7 человек агент закрывает 70–80% возможностей платных инструментов. Для портфеля из 15+ проектов – нужны платные.
Какие данные нужно выгружать из Yandex Tracker, Kaiten или Jira?
Из Yandex Tracker: ключ задачи, название, статус, дата создания, дата начала работ, дата завершения, story points, исполнитель, спринт, теги – через CSV-выгрузку очереди. Отдельно – отчёт по спринту из раздела «Гибкие методологии». Из Kaiten: экспорт карточек доски с датами входа и выхода из лейнов (вместо velocity – пропускная способность, вместо завершения спринта – распределение времени цикла). Из Jira: тот же набор полей через Board export. Минимальный набор для большинства промптов – velocity за 4–6 спринтов плюс текущий статус задач.
Что делать, если статусы в трекере не обновляются и данным нельзя верить?
Сменить источник данных, а не отказываться от анализа. Пять наблюдаемых сигналов без трекера: повторяющиеся блокеры в заметках со стендапов (один промпт после стендапа), резкое падение активности в чатах и сокращение PR-обсуждений до «LGTM», дрейф формулировок в апдейтах («почти готово» четвёртую неделю подряд), внезапное появление CEO в проектном чате и рост ad-hoc запросов от заказчика. Если нет ничего – пятиколоночный лист (задача, исполнитель, дата начала, статус, блокер) за 10 минут в день после стендапа даёт через две недели данные, которые скармливаются в любой из промптов.
Почему AI иногда уверенно считает неправильно, и как это распознать?
AI-агент проводит Monte Carlo-симуляцию по запросу – но может использовать равномерное распределение вместо нормального, забыть учесть выходные или взять за точку отсчёта среднее за полгода вместо текущего значения velocity. Формула при этом выглядит безупречно, ошибка в исходной посылке. Распознавание: всегда проверяйте число, которое влияет на решение, спрашивайте у агента, на какие данные он опирался в расчёте, и сверяйте сумму по группам с известным итогом (например, общее число PR должно совпадать с числом строк в выгрузке). Прогноз «закроем 28 SP из 34» звучит точно, но за ним может стоять ошибка – агент это черновик для проверки, не оракул.
Stanislav Belyaev

Stanislav Belyaev

Engineering Leader в Microsoft

18 лет в управлении инженерными командами. Основатель mysummit.school. 700+ выпускников в Яндекс Практикуме и Стратоплане.