Скрам-мастер «охраняет» процесс разработки. Он понимает причины, лежащие в основе эмпирического процесса, и изо всех сил пытается обеспечить как можно более ровный ход разработки продукта. Этот «слуга-лидер» (термин принадлежит Р. Гринлифу – см. его книгу «Слуга в роли лидера»[5] (Servant Leadership)) защищает членов команды от нежелательных вмешательств и отвлекающих моментов для того, чтобы дать им возможность сосредоточиться на выполнении своих обязательств по спринту, а также помогает владельцу продукта правильно работать с бэклогом. Кроме того, он фасилитирует все встречи, заложенные в структуру скрама, добиваясь, чтобы каждый член команды осознавал поставленные цели и разделял общую ответственность – словом, чтобы команда была настоящей командой, а не наспех собранной группой индивидуумов. Скрам-мастер устраняет препятствия на пути разработки функциональности, несущей максимальную ценность в продукте. Зачастую природа этих препятствий – организационная.
Представьте себе, что скрам-мастер – это такая Швейцария: сохранение нейтралитета, помощь всем стейкхолдерам, вмешательство в самые подходящие моменты – и все это для того, чтобы создавать в первую очередь наиболее важные и ценные элементы функциональности продукта.
Обзор структуры скрама
Структура скрама проста: это шесть событий, одно из которых опционально, три роли и три «официальных» артефакта.
Спринт – первое из шести событий – итерация с определенной датой начала и окончания. Спринт начинается с планирования и заканчивается обзором и ретроспективой. Команда ежедневно собирается на скрам-собрания (скрам-митинги), цель которых – сделать текущую работу каждого члена команды видимой для других и синхронизировать общие действия на основе того, что было усвоено в процессе работы над проектом.
Во время планирования спринта (второе событие) владелец продукта и команда обсуждают важнейшие задачи, внесенные в бэклог продукта, и осуществляют «мозговой штурм» плана по их реализации. Совокупность пожеланий и требований, выбранных для спринта, и задачи, поставленные перед командой в связи с этим, называются бэклогом спринта.
Планирование обычно занимает 8 часов для 30-дневного спринта. Это время пропорционально сокращается для более коротких спринтов (например, планирование двухнедельного спринта длится не более 4 часов). Совещание состоит из двух частей. В первой части главная роль отводится владельцу продукта, который представляет наиболее важные элементы бэклога (при этом он может пользоваться иллюстрациями, моделями, схемами и т. д.) и дает разработчикам пояснения по любым вопросам – что он хочет видеть в продукте и почему он хочет это видеть. Во второй части совещания на авансцену выходит скрам-команда разработки, члены которой совместно вырабатывают подходы к процессу разработки и в итоге согласовывают план. Именно с этого этапа – второй части планирования – начинается собственно спринт.
Разумеется, команды всегда ищут способы сделать планирование более быстрым и эффективным. Если команда действует последовательно, то можно заметить, что от спринта к спринту время, затрачиваемое на их планирование, сокращается.
Результат планирования спринта – бэклог спринта, который включает в себя конкретные требования по продукту для конкретного спринта, а также соответствующие задачи, поставленные командой во второй части планирования. Мы детально рассмотрим, как обеспечить эффективность планирования спринтов, в главе 3.
В ходе ежедневных скрам-совещаний (третьего события скрама) члены команды стараются сделать свой прогресс в работе видимым, чтобы проинспектировать его и адаптировать к своим целям. Это чем-то похоже на ежедневный мини-цикл Деминга («Планируй – пробуй – проверяй – корректируй»)! Совещание обычно проводится в одно и то же время и в одном и том же месте, о чем команда договаривается заранее. Даже если команда приложила все усилия для правильного планирования спринта, ситуация может измениться в мгновение ока. Том завершает свою работу с небольшим опозданием, Бет, наоборот, раньше, а Ашиш вообще застрял на половине. Во время 15-минутной встречи члены команды обсуждают, что им удалось сделать со времени предыдущего митинга, что они планируют сделать к завтрашнему, а также беседуют про препятствия, которые стоят перед ними. Роль скрам-мастера на таких совещаниях – содействовать обсуждению, не давать участникам «закопаться» в поиск решений для каждой проблемы и фиксировать все препятствия, с которыми, как полагают члены команды, они не могут справиться сами. Скрам-мастер должен попытаться устранить эти препятствия после совещания. Ежедневное скрам-собрание представляет собой текущую оценку и адаптацию сделанного. В совещании участвуют члены команды, владелец продукта и скрам-мастер. Присутствовать могут все желающие – но только в качестве наблюдателей.