Найти тему

Груминг бэклога в Scrum: как подготавливать задачи для успешной работы?

Оглавление

Что такое груминг бэклога и как его проводить? Какие преимущества получает команда, если не пропускает это мероприятие? Давайте разберёмся в статье.

Груминг бэклога — это встреча scrum-команды, на которой разбираются составляющие бэклога: пользовательские истории, эпики, баги и прочее — все они готовятся к последующим спринтам.

В ScrumGuide нет такого термина, но есть понятие «уточнение элементов бэклога» (Product Backlog Refinement).

Термин «груминг» позаимствован из мира природы: он обозначает процесс ухаживания за собой, поэтому вы можете встретить объявления о груминге собак или кошек. Это значит, это профессионал вычешет животное, вымоет, подстрижёт шерсть, почистит ушки и сделает другие процедуры, чтобы питомец был чистым и аккуратным.

Этот образ ложится в основу ухаживания за бэклогом. В нём тоже необходимо прибираться и поддерживать чистоту, чтобы бэклог оставался актуальным, ясным и готовым к работе.

В груминге бэклога участвуют команда разработки и владелец продукта. Они вместе отвечают за разбор бэклога и решают, какие элементы могут быть реализованы в следующем спринте и достаточно ли чётко они сформулированы, чтобы отправиться в работу.

На груминге каждый PBI рассматривается более пристально. В уточнение бэклога входит:

  • оценка историй и расстановка приоритетов,
  • деление общих историй и эпиков на несколько элементов или, наоборот, объединение их в одну задачу,
  • удаление потерявших актуальность историй,
  • добавление новых историй и доказательство их ценности для продукта.

Груминг — неофициальное собрание в Scrum, в отличие от планирование спринта или стендапа, но Scrum Guide советует регулярно отводить время на разбор бэклога:

«Уточнение Бэклога Продукта – это деятельность, направленная на уточнение, оценку и упорядочивание элементов в Бэклоге Продукта. <...> Скрам-команда решает, как и когда должно производиться Уточнение Бэклога Продукта. Этот процесс обычно занимает не более 10% от доступного времени Скрам‐команды».

Как выполняется груминг бэклога

У груминга нет точного места в спринте. Оно определяется самой командой. Например, мы отводим для груминга 4 часа в середине каждого спринта и приглашаем к участию всю команду.

На разборе бэклога команда разбирается с PBI, которые она собирается реализовать в следующем спринте. Разработчики обсуждают критерии приёмки, продумывают сценарии, согласно которым пользователь будет использовать функцию.

Scrum-команда разбивает большие требования, такие как эпики, на небольшие пользовательские истории, которые можно реализовать за спринт. Таким образом, во время груминга не только пересматриваются старые User Stories, но и появляются новые. Некоторые элементы будут полностью удалены из бэклога продукта, если выполнять их сложно, а ожидаемая ценность не стоит таких сил.

Поскольку задачи попадают в бэклог в разное время, их изначальный приоритет может измениться. Владелец продукта с помощью команды переоценивает PBI с учётом новых данных. Для оценки чаще всего используются принцип MoSCoW или модель Кано.

Сценарий груминга, направленного на подготовку историй, обычно такой:

  • команда разработки выделяет истории для разбора,
  • владелец продукта объясняет каждый элемент, его специфику и ценность для проекта,
  • команда соглашается с владельцем продукта или, в случае сомнений, задаёт уточняющие вопросы — тогда история может измениться,
  • команда предполагает, как будет реализовывать это требование, и оценивает рабочую нагрузку в SP,
  • элемент бэклога получает свою актуальную ценность и оценку рабочей нагрузки.

После груминга владелец продукта дорабатывает элементы бэклога, чтобы они были полностью готовы к моменту планирования спринта.

На груминге есть два момента, которые могут пойти не по плану:

Команда не понимает PBI и его не удается уточнить в рамках одной встречи — элемент бэклога должен быть доработан,

Команда не понимает, как реализовать PBI, — тогда инициируется ещё одно обсуждение, куда можно пригласить более опытных коллег или провести консультацию у сторонних экспертов; в некоторых случаях создаются минимальные версии нескольких вариантов.

Для чего проводится груминг

Груминг, как отдельное событие, имеет несколько преимуществ:

  • помогает владельцу продукта вести бэклог,
  • информация о проекте доносится до всех участников команды,
  • все неопределённости решаются и уточняются совместно,
  • команда подготавливается к планированию спринта,
  • задачи обсуждаются до начала спринта, и это снижает риски: остаётся время доработать требования.

Таким образом, упрощается работа владельца продукта и команды разработки, что напрямую влияет на качество продукта.