Дейли-стендап
Пятнадцать минут, которые либо экономят команде день, либо превращаются в утреннюю планёрку с докладом начальству.
Дейли-скрам (Daily Scrum, стендап) — ежедневная встреча разработчиков не дольше 15 минут, на которой команда сверяет ход работы с целью спринта и при необходимости перестраивает план на день.
Обратите внимание на два слова в определении: разработчиков и перестраивает. Встреча нужна тем, кто делает работу, и нужна она, чтобы что-то изменить в плане. Если после стендапа ничего не поменялось и никто ни о чём не договорился — вы только что потратили 15 минут на пять человек. За двухнедельный спринт это полтора рабочих дня.
Три вопроса — и почему они вводят в заблуждение
Классический формат все знают наизусть:
- Что я сделал вчера?
- Что я делаю сегодня?
- Что мне мешает?
Формулировка удобная, но у неё есть побочный эффект: она подталкивает к рассказу о себе. Пять человек по очереди отчитываются, что делали, — и получается летучка, где каждый говорит в пустоту, а слушает только скрам-мастер, потому что остальным неинтересно.
Поэтому в актуальном Scrum Guide три вопроса вообще перестали быть обязательными. Команда сама выбирает формат — лишь бы он отвечал на главный вопрос: успеваем ли мы к цели спринта и что нужно поменять сегодня?
Простое лечение — переставить фокус с людей на работу. Вместо круга по участникам идти по доске справа налево, от «почти готово» к «ещё не начато»:
Обход доски (walk the board), справа налево:
REVIEW «Оплата картой» висит на ревью со вчера.
→ Марат: посмотрю после стендапа, до 12:00.
IN PROGRESS «Чек на почту» — Лена, третий день.
→ Лена: застряла на шаблонизаторе, к обеду решу или приду за помощью.
«Обработка отказа банка» — Дима, сегодня начал.
TODO «Алерт на падение платежей» — никто не взял.
→ Свободных рук нет. Смотрим завтра; если не начнём — режем (см. план спринта).
ЦЕЛЬ: успеваем, риск — чек на почту.
Разница видна сразу: в таком формате обсуждают задачи, которые стоят, а не людей, которые заняты. И висящее третий день ревью становится заметно, потому что доска показывает это без всяких вопросов.
Почему это не отчёт начальнику
Самая частая деформация стендапа — превращение его в проверку. Приходит тимлид или менеджер, встаёт во главе стола, и каждый отчитывается ему. Даже если он не задаёт ни одного вопроса, само его присутствие меняет речь: люди начинают говорить не «я застрял», а «я в процессе, всё нормально».
Это тихо убивает саму функцию встречи. Стендап нужен, чтобы сегодня вскрыть проблему, пока она стоила два часа, а не пятницу. Если признаться в проблеме страшно, о ней узнают на обзоре спринта — когда чинить уже поздно.
| Отчётный стендап | Рабочий стендап |
| Говорят, глядя на менеджера | Говорят, глядя друг на друга и на доску |
| Цель — показать, что не бездельничал | Цель — понять, где план расходится с реальностью |
| «Всё по плану» три дня подряд | «Я не понимаю, как это тестировать, нужен час с Мариной» |
| После встречи ничего не меняется | После встречи двое договорились и переставили приоритеты |
Значит ли это, что менеджеру нельзя приходить? Приходить можно — слушать. Нельзя вести встречу, задавать контрольные вопросы и уж тем более раздавать задачи. Тонкая грань, но команда чувствует её моментально.
Признаки выродившегося стендапа
Стендап деградирует незаметно. Вот симптомы, по которым это видно раньше, чем команда начнёт саботировать встречу.
| Симптом | Что за ним стоит | Что делать |
| Встреча длится 30-40 минут | Обсуждение проблемы прямо на стендапе, вместо синхронизации | Завести «парковку»: тема названа — записали — обсуждаем после, тем составом, кому надо |
| Все говорят «всё по плану» | Небезопасно признавать проблемы, или встреча воспринимается как формальность | Убрать наблюдателей, перейти к обходу доски, задавать вопросы к задачам, а не к людям |
| Слушает только скрам-мастер | Формат «доклад по очереди» вместо разговора команды | Скрам-мастер выходит из круга или вообще не приходит пару раз |
| Один и тот же блокер третий день | Блокеры называют, но никто не берётся их снимать | У каждого блокера — имя и срок; проверять его первым пунктом на следующем дейли |
| Люди опаздывают или «забывают» | Команда не видит пользы — и, скорее всего, права | Не наказывать, а спросить на ретро: «что должно происходить на дейли, чтобы вы не хотели его пропустить?» |
| Обсуждают задачи, которых нет в спринте | Команду тянут в сторону; цель спринта размывается | Сделать это видимым: раз в спринт показывать, сколько времени ушло мимо цели |
Что делать с блокерами
Блокер (impediment) — то, что мешает команде двигаться к цели и чего она не может убрать сама здесь и сейчас: не дают доступ к тестовому стенду, второй день ждём ответа смежников, сломался CI.
Ошибка — думать, что назвать блокер вслух достаточно. Названный и незакрытый блокер хуже неназванного: он создаёт иллюзию, что проблемой занимаются. Работающая практика — три правила.
- У блокера есть владелец. Конкретный человек, не «команда». Часто это скрам-мастер, потому что снятие внешних препятствий — прямо его работа.
- У блокера есть срок. Хотя бы «сегодня до конца дня напишу и вернусь с ответом».
- Блокеры проверяют первым делом. Не в конце круга, когда все уже смотрят на часы, а в самом начале следующего дейли.
Полезно держать видимый список — колонка на доске или пять строк в закреплённом сообщении:
БЛОКЕРЫ
#1 Нет доступа к sandbox платёжного провайдера
кто: Настя (SM) с: 15 марта срок: сегодня 18:00
статус: написала в поддержку, ждём ответ
#2 Тесты падают на CI, локально зелёные
кто: Дима с: 16 марта срок: 17 марта
статус: воспроизвёл, дело в таймзоне на агенте
Закрыто вчера: доступ к логам прода (заняло 2 дня)
И главное: если блокер решается разговором двух человек на пять минут — не обсуждайте его на стендапе. Скажите «после дейли, Марат, Лена, я — на десять минут» и идите решать. Стендап не место для решения проблем, он место для их обнаружения.
Как это работает
Практическая механика, которая обычно приживается:
- Одно и то же время каждый день. Не нужно договариваться, не нужно напоминать. Лучше не в 9:00 (кто-то опоздает и будет виноват) и не перед обедом.
- Стоя. Отсюда и название. Простой физический таймер: как только становится долго, тело само просит закончить.
- 15 минут — это потолок, а не план. Хороший дейли на команду из пяти человек занимает 7-10 минут.
- Распределённая команда — то же самое в видеозвонке, с включёнными камерами и открытой доской на экране. Асинхронный текстовый стендап в чате работает хуже: он полностью вырождается в отчёт, потому что никто не читает чужие сообщения. Если уж делаете текстом — обязательно оставьте живой созвон хотя бы дважды в неделю.
- Скрам-мастер не ведёт встречу вечно. Через месяц-другой команда должна проводить дейли сама — это один из немногих объективных признаков, что Scrum прижился.
Частые ошибки
- Стендап как отчёт руководителю. Люди перестают говорить о проблемах, и встреча теряет единственный смысл.
- Решение проблем прямо на встрече. Двое погружаются в детали, трое ждут. Выносите обсуждение за пределы 15 минут.
- Блокер назвали и забыли. Без владельца и срока это просто жалоба вслух.
- Разговор о людях, а не о задачах. «Я вчера делал» вместо «эта задача застряла». Обход доски лечит почти всегда.
- Стендап без цели спринта. Если непонятно, к чему идём, невозможно понять, успеваем ли. Цель должна висеть перед глазами.
- Отмена дейли «потому что и так всё знаем». Иногда это правда — команда из двух человек, сидящих рядом. Чаще это признак, что встречу давно превратили в ритуал и никто не попробовал её починить.
Итоги
- Дейли — встреча разработчиков для себя, а не отчёт наверх. Смысл — вовремя увидеть расхождение с целью спринта.
- Три вопроса не обязательны. Обход доски от готового к не начатому обычно работает лучше: обсуждаются задачи, а не люди.
- Если после стендапа ничего не поменялось в плане на день — встреча прошла впустую.
- У каждого блокера должен быть владелец и срок, и проверять их надо в начале следующего дейли.
- 15 минут — потолок. Всё, что требует обсуждения, выносится «на парковку», сразу после встречи, нужным составом.