Планирование Спринта
Описание: Встреча по подготовке к Спринту, обычно разделенная на две части (первая часть - “что делать” и вторая часть - “как делать”).
Участники: Первая Часть: Владелец Продукта, Команда, Скрам-мастер. Вторая Часть: Команда, Скрам-мастер, Владелец продукта (необязательно, но должен быть доступен для вопросов)
Длительность: Каждая часть занимает не более, чем один час из расчёта на одну неделю Спринта [т.е. не более восьми часов для четырёхнедельного Спринта, прим. переводчика].
Планирование Спринта (Sprint Planning) происходит в начале каждого Спринта. Оно разделено на два отдельных части, первое из которых называется Первая Часть Планирования Спринта (Sprint Planning Part One).
На Первой Части Планирования Спринта Владелец Продукта и Команда пересматривают высокоприоритетные элементы в Бэклоге Продукта, в реализации которых заинтересован Владелец Продукта в этом Спринте. Обычно эти элементы были хорошо проанализированы в предыдущем Спринте (во время Уточнения Бэклога Продукта), так что на этом событии возникают лишь незначительные уточняющие вопросы. Во время этого события Владелец Продукта и Команда обсуждают цели и контекст для этих высокоприоритетных элементов в Бэклоге Продукта, передавая Команде представление о ходе мыслей Владельца Продукта. Первая часть посвящена пониманию, что и почему хочет видеть Владелец Продукта. В конце первой части (всегда занятый) Владелец Продукта может уйти, хотя он должен быть доступен (например, по телефону) во время второй части события.
В Первой Части Команда и Владелец Продукта может также предложить Цель Спринта (Sprint Goal). Это краткое отражение бизнес-задач Спринта, которое в идеале связано с ними. Цель Спринта также дает Команде гибкость в определении объёма и способа работ в Спринте, потому что даже если им, возможно, и придется удалить какой-то элемент (поскольку Спринт ограничен по времени), они, тем не менее, должны взять на себя обязательство предоставить что-то осязаемое и “готовое” в духе Цели Спринта.
Насколько большими должны быть элементы, попадающие в Спринте? Каждый элемент должен быть разделен на достаточно мелкие части, чтобы его оценка занимала значительно меньше времени, чем весь Спринт. Обычно считается, что элемент достаточно мал, если согласно оценке вся Команда может завершить его за одну четверть Спринта или меньше.
Вторая Часть Планирования Спринта (Sprint Planning Part Two) нацелена на то, как реализовать элементы, которые команда решает взять на себя. Команда прогнозирует количество элементов, которые они могут выполнить к концу спринта, начиная с верхушки Бэклога Продукта (другими словами, начиная с элементов, имеющих наивысший приоритет для Владельца продукта), и далее по порядку элементов в списке. Это ключевая практика Скрама: Команда, а не Владелец Продукта, решает, сколько работы она будет выполнять. Это делает прогноз более надежным, поскольку Команда делает его на основе собственного анализа и планирования. Несмотря на то, что Владелец Продукта не контролирует, сколько элементов берёт на себя Команда, он(а) знает, что элементы взяты из верхней части Бэклога Продукта - другими словами, элементы, которые он(а) оценил, как наиболее важные. Команда имеет возможность лоббировать элементы, которые находятся внизу Бэклога; обычно это происходит, когда Команда и Владелец Продукта понимают, что что-то менее приоритетное и простое целесообразно сочетается с высокоприоритетными элементами.
Планирование Спринта часто длится несколько часов, но не более четырех часов для двухнедельного спринта – Команда делает основательный прогноз, чтобы завершить работу, и это требует тщательной проработки, чтобы достичь успеха. Первая и Вторая Части имеют одинаковую продолжительность; для двухнедельного спринта каждая часть длится максимум два часа.
Скрам не определяет, как именно проводить вторую часть планирования спринта. Некоторые команды используют скорость, полученную в предыдущих спринтах, чтобы определить, к какому результату нужно стремиться. Другие команды будут использовать более детальный подход, сначала рассчитывая свою ёмкость (capacity).
При оценке ёмкости Команда во Второй Части Планирования Спринта вычисляет, сколько времени каждый член команды может посвятить работе, связанной со спринтом. Большинство команд полагают, что члены команды могут сосредоточиться на работе, связанной со Спринтом, только 4-6 часов в день - остальное время уходит на электронную почту, обеденные перерывы, социальные сети, встречи и кофе. После определения ёмкости команде необходимо выяснить, сколько элементов Бэклога Продукта они могут выполнить за это время, и как они будут их выполнять. Это часто начинается с обсуждения дизайна на доске. Как только общий дизайн будет понят, Команда разбивает Элементы Бэклога продукта на мелкие задачи. Прежде чем приступить к работе с Элементами Бэклога продукта, Команда может сосредоточиться на создании задач по улучшению, обсуждаемых на Ретроспективе предыдущего Спринта. Затем Команда выбирает первый элемент в Бэклоге Продукта - элемент с наивысшим приоритетом для Владельца Продукта - и постепенно продвигается вниз, пока окончательно не ‘заполнит’ всю свою ёмкость. Для каждого элемента они создают список работ, который состоит либо из разбитых на задачи элементов Бэклога Продукта, либо, если элемент настолько мал, что на его реализацию потребуется всего пара часов, то из него самого. Этот список работы в Спринте называется Бэклог Спринта (Sprint Backlog) (Иллюстрации 4 и 5).
Элемент Бэклога Продукта | Задача | Волонтёр | Первоначальная Оценка | Новая Оценка оставшейся работы на конец дня... | |||||
---|---|---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | ||||
Как покупатель, Я хочу положить книгу в корзину | Изменить БД | 5 | |||||||
Создать страницу (UI) | 8 | ||||||||
Создать страницу (JavaScript) | 13 | ||||||||
Написать автоматические приёмочные тесты | 13 | ||||||||
Обновить раздел помощи для покупателей | 13 | ||||||||
... | |||||||||
Улучшить производительность обработки транзакций | Объединить DCP код и законченные тесты слоёв | 5 | |||||||
Закончить машинный заказ для pRank | 8 | ||||||||
Изменить DCP и читателя для использования pRank в HTTP API | 13 |
В конце Планирования Спринта Команда ставит реалистичную цель в отношении того, что, по их мнению, они смогут выполнить к концу Спринта. Обычно это называлось Обязательством на Спринт (Sprint Commitment) - Команда обязуется сделать всё возможное, чтобы достичь своей цели. К сожалению, это иногда неправильно истолковывалось как обещание, написанное кровью, а не как то, что команда осознанно “идёт на это”. Чтобы избежать этой путаницы, цель Спринта теперь называется ‘прогнозом’ (forecast), который сообщается Владельцу Продукта.
Скрам поощряет чтобы работники имели разносторонние навыки, а не только “работающих в точности с должностной инструкцией”, как например “тестировщик”, занимающийся только тестированием. Другими словами, члены Команды “идут туда, где есть работа” и помогают, чем могут. Если задач на тестирование много, то все члены Команды могут помогать. Это не означает, что все являются универсальными; несомненно, некоторые люди особенно опытны в тестировании (и так далее), но члены Команды работают вместе и учатся друг у друга новым навыкам. Следовательно, во время создания и оценки задач на Планировании Спринта нет необходимости - и нецелесообразно - считать людей потенциальными исполнителями по всем задачам, “которые они могут сделать лучше всего”. Скорее, лучше вызываться добровольцем на одну задачу за раз, только когда пришло время браться за новую задачу, принимая во внимание выбор задачи, которая будет специально включать обучение (возможно, в паре с экспертом). Это одна из причин, по которой не следует заранее назначать задачи на людей во время Планирования Спринта, скорее, это следует делать ‘по мере необходимости’ во время Спринта.
С учётом всего сказанного, есть редкие случаи, когда Джон может выполнять конкретную задачу, потому что обучение других невозможно или займет слишком много времени - возможно, Джон - единственный человек, обладающий какими-либо художественными навыками рисования изображений. Другие члены Команды не смогли бы нарисовать “человечка из палочек”, даже если бы от этого зависела их жизнь. В этом редком случае - и если это не редкость и не становится все реже по мере того, как Команда обучается, то что-то не так - может потребоваться спросить, выполнимы ли все запланированные задачи по рисованию, которые должны быть сделаны Джоном в рамках Спринта.
Многие команды представляют Бэклог Спринта в виде доски задач размером со стену (часто называемой Скрам-доской (Scrum Board)), где задачи (написанные на Post-It стикерах) переносятся во время Спринта по столбцам с пометками “Сделать” (To Do), “В Работе” (Work In Progress), и “Готово” (Done). См. Иллюстрацию 5.
Один из столпов Скрама заключается в том, что после того, как Команда устанавливает цель Спринта, любые дополнения или изменения должны быть отложены до следующего Спринта. Это означает, что если в середине Спринта Владелец Продукта решит, что есть новый элемент, над которым он(а) хотел бы, чтобы команда поработала, он не сможет внести изменения до начала следующего Спринта. Если появляются внешние обстоятельства, которые существенно изменяют приоритеты и означают, что Команда будет зря тратить время, если продолжит работу, то Владелец Продукта или Команда могут прекратить Спринт. Команда останавливается, и новое Планирование Спринта инициирует новый Спринт. Обычно это вносит огромную деструкцию; что сдерживает Владельца Продукта или Команду прибегать к такому радикальному решению.
Существует мощное положительное влияние, исходящее от Команды, которая защищена от изменения целей во время Спринта. Во-первых, Команда приступает к работе с абсолютной уверенностью, что её цель не изменится, что усиливает её сосредоточенность на усилиях по завершению. Во-вторых, это дисциплинирует Владельца Продукта, заставляя его по-настоящему подумать над теми элементами, которые он(а) считает приоритетными в Бэклоге Продукта и предлагает взять Команде в Спринт.
Следуя этим правилам Скрама, Владелец Продукта получает две вещи. Во-первых, он(а) уверен в том, что Команда обязалась сделать всё возможное, чтобы завершить выбранный ею реалистичный и чёткий набор работ. Со временем Команда может научиться делать и следовать реалистичным прогнозам. Во-вторых, Владелец Продукта может внести любые, какие захочет, изменения в Бэклог Продукта до начала следующего Спринта. На этом этапе приемлемы все возможные добавления, удаления, модификации и изменения приоритетов. Хотя Владелец продукта не может вносить изменения в элементы, находящиеся в разработке во время текущего Спринта, он(а) находится всего в одном Спринте или меньше от внесения любых изменений, которые пожелает. Опасения и предрассудки относительно изменений исчезли - допустимо изменение направления, требований или просто своего мнения - и возможно, именно по этой причине Владельцы Продуктов обычно относятся к Скраму с таким же энтузиазмом, как и все остальные.
Перевод статьи осуществлён Кротовым Артёмом и Романом Лапаевым.