The first thing you need to do when you are implementing Scrum is to create a Backlog. It can be hundreds of items long, or contain only the few things that you need to figure out first. Of course, you need a clear idea of what you want at the end of the work.
Первое, что вам нужно сделать при внедрении Скрама, – создать бэклог. Он может состоять как из нескольких первостепенных элементов, так и из нескольких сотен. У вас должно быть чёткое представление того, что именно вы хотите получить по окончании работы.
В этой статье мы хотим поделиться информацией о практическом обучении, которое мы провели у себя в компании, по одной из наиболее важных тем планирования: формирование и оценка бэклога продукта. Мы надеемся, что наш опыт будет полезен, и вы сможете задействовать некоторые приёмы также и в своей компании.
Цель тренинга
Второй по счёту тренинг из серии «Разработка программного обеспечения по принципам Agile в рамках Скрама» был посвящен формированию бэклога проекта и оценке пользовательских историй.
В ходе тренинга участниками были рассмотрены следующие шаги:
- Получение требований заказчика к разработке целевого продукта.
- Заполнение бэклога продукта на основе требований, разбитых на короткие пользовательские истории.
- Оценка пользовательских историй в сторипоинтах.
Проведение тренинга
Подготовка
Участники сформировали две команды. В каждой есть Владелец продукта и Скрам-мастер. Команды выступили в роли заказчиков друг для друга. То есть участники каждой из команд устанавливали требования к продукту, который требуется произвести. В качестве продукта фигурировало универсальное кресло.
Получение требований заказчика
На первом этапе тренинга каждой из команд был осуществлён сбор требований заказчика. Команда, будучи заказчиком другой команды, в свободной форме формулировала свои требования к продукту. Владелец продукта записывал требования в виде обычного списка. Затем команды поменялись ролями, и тогда уже вторая команда собирала требования к продукту, заявленные первой командой. По завершении первого этапа у каждой команды был список из 10–15 требований. Первая команда запросила высокотехнологичный стул со множеством настроек, а вторая – кресло-качалку, соответствующую подробно изложенным требованиям.
Заполнение бэклога продукта
На втором этапе команды должны были выполнить разбиение требований заказчика на минимальные элементы бэклога продукта: пользовательские истории. Команды, ведомые Владельцами продукта, обсуждали требования заказчика и разбивали их на элементарные блоки. Процесс модерировали Скрам-мастера команд.
Оценка элементов бэклога
Существует несколько подходов к оценке пользовательских историй. Истории можно ранжировать по шкале размеров футболок, по сложности мытья собак различных пород, по числам Фибоначчи и т.д. Каждый подход предполагает использование специфичного метода получения оценки.
Командам предложили два самых популярных метода для наглядной оценки своих задач:
- Покер – один из самых популярных методов оценки. Участники проекта оценивают пользовательские истории путем голосования с использованием нумерованных карт, похожих на игральные.
- Метод ранжирования – это пошаговая игра, цель которой состоит в том, чтобы расположить все задачи друг относительно друга на единой шкале, а затем оценить их, используя для этого числа Фибоначчи, записанные на таких же картах, что и в Покере.
Оба метода подробно описаны во многих источниках в интернете.
Команды, сидя за своими столами, заносили оценки всех пользовательских историй в свои бэклоги по продукту в соответствии с рекомендованным методом. Процессом управляли два Владельца продукта, два Скрам-мастера модерировали процесс.
В завершении всё было готово для планирования спринта с последующим его запуском, что стало темой следующего (третьего) тренинга.
Основные положения тренинга
- Важно полностью понять и записать все требования заказчика, уделяя внимание деталям.
- Заполнять бэклог продукта должен Владелец продукта, однако процесс становится более эффективным, если он делает это вместе с другими участниками команды.
- Оценка элементов бэклога продукта – обязанность каждого в команде.
- В процессе оценки все пользовательские истории обсуждаются всеми членами команды до достижения полного понимания.
- Правильная оценка элементов бэклога продукта открывает путь для последующего более точного заполнения бэклогов спринтов.