Найти в Дзене
Сравним?

Как использовать Story Points в Agile (пошаговое руководство)

Оценка проектов — непростая задача. По статистике, около 91,5% крупных проектов выходят за рамки бюджета, сроков или и того, и другого. В Agile‑командах для улучшения точности планирования используют Story Points — оценку не в часах, а в относительных единицах, учитывающих сложность, объем работы и риски. Story Points — это относительная шкала оценки задач, которая помогает команде понять, насколько одна задача сложнее или больше другой. Чаще всего используется шкала Фибоначчи: 1, 2, 3, 5, 8, 13, 20, 40, 100 Итак, если команда разработчиков оценила создание автобуса в 8 Story Points, это означает, что по сложности, масштабу и общим затратам усилий задача находится примерно в середине спектра. При определении оценки для каждой задачи команда учитывает несколько факторов: Оценка Story Points является ключевой частью процесса уточнения бэклога, когда команды разработчиков вместе с владельцем продукта и/или менеджером проекта оценивают бизнес-требования и преобразуют их в пользовательские
Оглавление

Введение

Оценка проектов — непростая задача. По статистике, около 91,5% крупных проектов выходят за рамки бюджета, сроков или и того, и другого. В Agile‑командах для улучшения точности планирования используют Story Points — оценку не в часах, а в относительных единицах, учитывающих сложность, объем работы и риски.

Что такое Story Points?

Story Points — это относительная шкала оценки задач, которая помогает команде понять, насколько одна задача сложнее или больше другой.

Чаще всего используется шкала Фибоначчи:

1, 2, 3, 5, 8, 13, 20, 40, 100

Таблица с числами 1, 2, 3, 5, 8, 13 и т. д., расположенными в ряду — это шкала Story Points, часто используемая для оценки.
Таблица с числами 1, 2, 3, 5, 8, 13 и т. д., расположенными в ряду — это шкала Story Points, часто используемая для оценки.

Итак, если команда разработчиков оценила создание автобуса в 8 Story Points, это означает, что по сложности, масштабу и общим затратам усилий задача находится примерно в середине спектра.

При определении оценки для каждой задачи команда учитывает несколько факторов:

  • Сложность - уровень технической сложности каждой задачи
  • Повторяемость - выполнялась ли подобная задача ранее, и есть ли у команды соответствующий опыт
  • Ресурсы - требуется ли участие нескольких членов команды или задачу может выполнить один человек. Также учитывается необходимость внешних ресурсов
  • Риск - насколько рискованными являются изменения для существующего решения, бизнес-операций или успеха проекта
  • Определение готовности - базовый стандарт проекта, описывающий требования к качеству, которым должен соответствовать каждый элемент. Чем выше стандарт, тем больше усилий требуется

Оценка Story Points является ключевой частью процесса уточнения бэклога, когда команды разработчиков вместе с владельцем продукта и/или менеджером проекта оценивают бизнес-требования и преобразуют их в пользовательские истории.

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

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

По мере того как команды разработки выполняют всё больше и больше задач, они обычно становятся более точными в будущих оценках Story Points. Это повышает эффективность команды и гарантирует, что они знают свой недельный, двухнедельный или месячный потенциал — известный в мире Agile как Team Velocity (скорость команды).

Почему не оценивать в часах?

Понимание Story Points может потребовать времени, поскольку эту концепцию сложно объяснить без определённого контекста или общей точки отсчёта для сравнения.

В этой статье Story Points объясняются на примере оценки размера собаки.

Если кто-то спросит вас, какого размера немецкая овчарка, вы вряд ли скажете «около 63 сантиметров в высоту». Вместо этого вы, скорее всего, сравните её с другой известной вам породой собак, например: «немецкая овчарка немного крупнее лабрадора».

Именно поэтому Story Points дают более полную оценку, чем просто время.

Как только команды разработки получают общие точки отсчёта для каждой оценки в Story Points, им становится значительно проще предсказывать сложность, масштаб и трудозатраты будущих задач.

Так зачем в итоге использовать Story Points вместо времени?

  • Оценки в Story Points позволяют учитывать не только время, но и сложность, неопределённость и возможные риски.
  • Позволяют команде планировать спринты без давления жестких дедлайнов.
  • Помогают отслеживать скорость (velocity) команды в ходе нескольких спринтов.

Как внедрить Story Points: пошагово

Шаг 1: Объясните команде идею и пользу Story Points

Прежде чем приступить к внедрению нового способа работы, важно убедиться, что ваша команда готова к этому. Переход на использование Story Points — не исключение, особенно учитывая, что эта концепция может быть сложной для освоения некоторыми членами команды. Поэтому не торопитесь и убедитесь, что каждый понимает ценность и преимущества использования Story Points.

Как вдохновить и мотивировать команду:

  1. Объясните преимущества: Подчеркните, как Story Points помогают улучшить планирование, повысить точность оценок и сделать процесс более гибким.
  2. Приведите примеры: Используйте реальные примеры и аналогии, чтобы показать, как Story Points работают на практике. Например, сравнение размеров собак, как было описано ранее.
  3. Подчеркните практическую пользу: Объясните, как это поможет команде лучше прогнозировать свои возможности и избегать переработок.

Использование различных методов коммуникации:

  1. Асинхронное общение: Рассмотрите возможность отправки информационных писем, создания обучающих материалов и размещения обучающих ресурсов в общем доступе.
  2. Личные встречи: Проводите индивидуальные встречи с каждым членом команды, чтобы ответить на их вопросы и развеять сомнения.
  3. Групповые обсуждения: Организуйте командные встречи, где каждый сможет высказать своё мнение и задать вопросы.
  4. Визуальные материалы: Используйте диаграммы, инфографику и другие визуальные средства для наглядного объяснения концепции.
  5. Практические упражнения: Проводите тренировочные сессии, где команда сможет на практике попробовать оценивать задачи в Story Points.

Дополнительные рекомендации:

  • Постепенное внедрение: Начните с небольших изменений и постепенно внедряйте использование Story Points в рабочий процесс.
  • Обратная связь: Регулярно собирайте обратную связь от команды и корректируйте подход по мере необходимости.
  • Поддержка руководства: Убедитесь, что руководство поддерживает переход на Story Points и активно участвует в процессе внедрения.

Следуя этим рекомендациям, вы сможете успешно внедрить использование Story Points в вашей команде и получить все преимущества от этого подхода.

Шаг 2: Выберите шкалу для оценок

При внедрении Story Points важно правильно выбрать шкалу оценки. Большинство Agile-команд используют вариацию последовательности Фибоначчи. Вот несколько шагов, которые помогут вам определиться с выбором шкалы и её внедрением:

  1. Использование упрощенной шкалы Фибоначчи:
    На начальном этапе рекомендуется использовать упрощенную версию последовательности Фибоначчи, состоящую из округленных чисел, чтобы оценки были более понятны и удобны в работе.
    Пример такой шкалы: 1, 2, 3, 5, 8, 13, 20, 40, 100.
  2. Переход на использование размеров футболок:
    Если ваша команда испытывает трудности с пониманием концепции Story Points, можно использовать альтернативный метод оценки — размеры футболок.
    Вместо чисел вы используете категории: Small (маленький), Medium (средний), Large (большой), Extra Large (очень большой) и т.д. Это помогает упростить процесс оценки.
  3. Создание опорных точек:
    Определите две-три предыдущих задачи или проекта, которые будут служить опорными точками для вашей шкалы.
    Например, небольшое исправление багов может оцениваться в 1 Story Point, а масштабный редизайн сайта — в 100 Story Points.
    Эти референсы помогут новым членам команды быстрее понять систему оценок.
  4. Гибкость в адаптации:
    По мере накопления опыта вы можете корректировать шкалу, добавляя или изменяя значения в зависимости от специфики ваших задач.
    Важно регулярно пересматривать и обновлять шкалу, чтобы она оставалась актуальной и полезной для всей команды.
  5. Обучение и поддержка:
    Обеспечьте обучение команды новым методам оценки и поддерживайте их в процессе перехода.
    Используйте реальные примеры и практические упражнения для закрепления материала.

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

Изображение 2: Пример Planning Poker — команда держит карточки с оценками

Описание изображения:

Группа разработчиков одновременно поднимает карты с оценками задач — пример метода Planning Poker.

Шаг 3: Составьте матрицу критериев

После того как вы определили шкалу и опорные точки, важно структурировать ваши оценки с помощью создания матрицы Story Points. Эта матрица станет удобным справочником для вашей команды и поможет объединить различные уровни усилий, ресурсов, рисков и сложности для получения взвешенной оценки.

Шаги по созданию матрицы Story Points:

1. Определите основные параметры оценки:

  • Усилия (Effort)
  • Ресурсы (Resources)
  • Риски (Risks)
  • Сложность (Complexity)

2. Создайте шаблон матрицы:
Разработайте таблицу с основными категориями и уровнями оценок.
Пример шаблона:

-3

3. Заполните матрицу примерами:
Опишите, какие задачи соответствуют каждому уровню оценок.
Например:

  • 1 Story Point: Простая задача, требующая минимальных усилий и ресурсов.
  • 5 Story Points: Задача средней сложности с умеренными рисками.
  • 13 Story Points: Более сложная задача, требующая значительных ресурсов и повышенного внимания к рискам.
  • 40 Story Points: Очень сложная и масштабная задача с высоким уровнем неопределенности.

4. Согласуйте матрицу с командой:
Проведите встречу с командой, чтобы убедиться, что все понимают и согласны с предложенной матрицей.
Обсудите примеры и получите обратную связь для возможных корректировок.

5. Регулярно обновляйте матрицу:
Периодически пересматривайте и обновляйте матрицу на основе накопленного опыта и новых данных.
Убедитесь, что матрица остаётся актуальной и полезной для всех членов команды.

Создание и использование матрицы Story Points поможет вашей команде более точно и согласованно оценивать задачи, учитывая все важные факторы, и обеспечит успешное внедрение этого метода в рабочий процесс.

Шаг 4: Подготовка бэклога продукта с использованием Story Points

Теперь, когда ваша шкала оценки Story Points готова к использованию, настало время приступить к подготовке бэклога продукта. Под руководством Владельца продукта команда работает над приоритизацией требований, удалением неактуальных задач, добавлением новых элементов и обеспечением того, чтобы все требования были четко определены и готовы к планированию спринтов.

Шаги по подготовке бэклога:

  1. Понимание стратегии продукта:
    Убедитесь, что вся команда понимает стратегию продукта. Это может быть как решение проблем пользователей, так и использование новых возможностей для бизнеса. Регулярно пересматривайте стратегию, чтобы убедиться, что бэклог соответствует текущим целям и задачам.
  2. Обновление знаний по Scrum и Agile:
    Бэклог груминга — это основа многих методологий Agile-управления проектами, включая Scrum. Если у вас есть пробелы в знаниях, освежите свои знания с помощью руководств и материалов по Scrum и Agile.
  3. Приоритизация требований:
    Работайте над приоритизацией требований вместе с командой. Определите, какие задачи наиболее важны и срочны. Используйте матрицу Story Points для оценки сложности и усилий по выполнению каждой задачи.
  4. Удаление неактуальных задач:
    Регулярно анализируйте бэклог и удаляйте задачи, которые больше не актуальны или не соответствуют текущей стратегии продукта. Это помогает сосредоточиться на действительно важных задачах и избежать перегрузки бэклога ненужными элементами.
  5. Добавление новых элементов:
    Следите за появлением новых требований и возможностей. Добавляйте их в бэклог, если они соответствуют стратегии продукта. Убедитесь, что новые задачи четко описаны и понятны всем членам команды.
  6. Использование фреймворков приоритизации:
    Если вы новичок в груминге бэклога, используйте фреймворки приоритизации, такие как RICE (Risk, Impact, Confidence, Effort), чтобы определить, какие функции следует поставить в приоритет. RICE помогает оценить риски, влияние, уверенность и усилия для каждой задачи, что облегчает принятие решений о приоритизации.
  7. Регулярное обновление бэклога:
    Постоянно обновляйте бэклог, чтобы он всегда отражал текущее состояние продукта и стратегию команды. Проводите регулярные встречи для обсуждения и обновления бэклога, чтобы все члены команды были в курсе изменений.

Следуя этим шагам, вы сможете эффективно подготовить бэклог продукта и обеспечить успешное планирование и выполнение спринтов с использованием Story Points.

Шаг 5: Внедрение оценок с использованием Story Points

Теперь, когда бэклог обновлен и готов, настало время добавить последний элемент головоломки: оценки. Именно на этом этапе вы начинаете активно использовать Story Points, когда каждый член команды предлагает свою оценку для обсуждения и согласования. Существует несколько способов сделать процесс оценки более увлекательным и эффективным. Рассмотрим два самых популярных метода.

1. Planning Poker (Плановый покер)

-4

Плановый покер — это наиболее распространенный способ оценки с использованием Story Points. Вот как он работает:

  1. Материалы: Каждый член команды получает набор карточек с оценками в Story Points (например, 1, 2, 3, 5, 8, 13, 20, 40, 100).
  2. Вопросы и ответы: По очереди каждый член команды задает вопросы Владельцу продукта относительно функциональности. После ответов на все вопросы каждый участник выбирает одну из карточек.
  3. Обсуждение: Все одновременно показывают свои карточки. Команда обсуждает различия в оценках и пытается прийти к консенсусу.
  4. Повторение: Процесс повторяется до тех пор, пока все члены команды не согласятся с выбранной оценкой.

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

2. Bucket System (Система ведер)

Система ведер — это альтернативный метод оценки, который также позволяет эффективно распределить задачи по уровням сложности:

  1. Подготовка: Фасилитатор размещает на доске стикеры с крайними значениями шкалы Story Points (например, 1 и 100).
  2. Карточки задач: Каждый член команды получает карточки, представляющие оцениваемые задачи.
  3. Размещение: Участники размещают свои карточки на доске в соответствии с тем, насколько сложной они считают задачу.
  4. Обсуждение: Команда обсуждает, почему задачи были размещены в тех или иных местах шкалы. Важно прийти к общему пониманию и скорректировать оценки.
  5. Консенсус: После обсуждения команда согласовывает окончательные оценки для каждой задачи.

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

Шаг 6: Планирование спринта в PM-инструменте

Используйте инструменты управления проектами для учета Story Points и построения отчетов (burn‑down, burn‑up).

-5

Шаг 7: Ретроспектива и анализ

После каждого спринта важно проводить ретроспективу — встречу, на которой команда обсуждает, что прошло хорошо, а что можно улучшить. Это помогает не только оценить точность оценок Story Points, но и выявить области для совершенствования в будущих спринтах.

Как провести успешную ретроспективу:

  1. Подготовка: Убедитесь, что все участники готовы делиться своими мыслями и предложениями.
  2. Обсуждение успехов: Начните с положительных моментов — что команда сделала хорошо и что принесло наибольшую пользу.
  3. Анализ проблем: Обсудите возникшие трудности и причины их появления.
  4. Поиск решений: Сформулируйте конкретные шаги по улучшению процессов, инструментов и взаимодействия в команде.
  5. Действия: Определите ответственных за реализацию предложенных улучшений и установите сроки.

Рекомендации по проведению ретроспективы:

  • Используйте структурированные шаблоны обсуждений.
  • Привлекайте всех членов команды к активному участию.
  • Фиксируйте все идеи и предложения для дальнейшего анализа.
  • Сделайте ретроспективу регулярной частью вашего процесса.

Отслеживание метрик:

Данные играют ключевую роль в оценке эффективности команды и улучшении процессов. Важно отслеживать следующие метрики:

  1. Velocity (Скорость): Показывает, сколько Story Points команда завершает за один спринт. Помогает понять, сколько работы команда может выполнить за определенный период.
  2. Cumulative Flow (Кумулятивный поток): Визуализирует количество задач на разных стадиях разработки, помогая выявить узкие места и оптимизировать процессы.
  3. Lead Time (Время выполнения): Время от создания задачи до её завершения. Позволяет оценить эффективность процессов и выявить задержки.
  4. Issue Burn Up (Сгорание задач): График, показывающий, сколько задач было запланировано и сколько уже выполнено, помогает отслеживать прогресс и планировать будущие спринты.

Как использовать метрики:

  1. Сбор данных: Регулярно собирайте и анализируйте данные по указанным метрикам.
  2. Анализ и отчетность: Создавайте отчеты для команды и заинтересованных сторон.
  3. Принятие решений: Используйте данные для принятия обоснованных решений по улучшению процессов и распределения ресурсов.
  4. Постоянное улучшение: Постоянно сравнивайте текущие показатели с предыдущими спринтами и внедряйте изменения для повышения эффективности.

Следуя этим рекомендациям, вы сможете не только улучшить точность оценок Story Points, но и создать более слаженную и продуктивную команду, готовую к достижению новых высот в Agile-разработке.

Частые ошибки при работе с Story Points

  • Привязывать Story Points к конкретным часам — это убивает идею относительной оценки.
  • Не адаптировать шкалу под свою команду и продукт.
  • Игнорировать неопределённость и риски.
  • Не объяснять подход заинтересованным лицам вне команды.
  • Отказываться от метода после первых неудач.

Что делать, если Story Points не работают?

Рассмотрите методику #NoEstimates — альтернативный подход, где упор делается на непрерывный поток задач без традиционных оценок.

Итог

Story Points — это мощный инструмент Agile, позволяющий командам улучшить планирование и управление задачами. Главное — адаптировать метод под свою команду и регулярно совершенствовать процесс.

#Agile #StoryPoint #Velocity #PlanningPoker #Product #Backlog