Пишете крутые статьи? Публикуйте их в Workspace Media, бесплатно!
Назад
#Менеджмент

Понимание Story Points: практики, примеры и методы

505 
 
3 мар 2025 в 8:56
Поделиться: 0 0 0
Понимание Story Points: практики, примеры и методы

Story points (SP) являются ключевым компонентом Agile-методологий (в особенности Scrum), используемых для оценки усилий, необходимых для разработки пользовательских историй, на основе сложности, трудозатрат и неопределенности, но не времени. 

В этой статье мы попробуем дать всестороннее понимание story points, рассмотреть различные методы оценки, включая Planning Poker, а также рассказать про альтернативный метод оценки, который использует часы.

Что такое Story Points?

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

Почему используют Story Points?

  • Относительная оценка: story points дают сравнительную оценку усилий, а не точный прогноз времени.
  • Фокус на сложности: они подчеркивают сложность и неопределенность задач, а не только необходимое время на их разработку.
  • Упрощение планирования: story points помогают понять возможности команды и эффективно спланировать спринты.

Как оценивать в Story Points

1. Используйте относительную оценку

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

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

Предыдущая реализованная пользовательская история: «Я, как пользователь, хочу иметь возможность войти в систему, используя имя пользователя и пароль для того чтобы получить доступ к системе». (Оценка в 5 SP)

Оценка: учитывая дополнительную сложность реализации, функция сброса пароля может быть оценена в 8 SP.

Использованный метод: Метод сравнения: сравнивая с эталонной историей (история входа в систему), команда определяет относительную сложность новой задачи.

Почему 8 SP? Дополнительные задачи по обеспечению безопасности и интеграции делают процедуру сброса пароля более сложной, чем функция входа в систему, что оправдывает более высокую оценку.

2.Вовлекайте всю команду

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

Оцениваемая пользовательская история: «Мне, как администратору, нужно ежемесячно составлять отчеты об активности пользователей для того чтобы понимать, сколько времени они проводят в системе».

Обсуждение в команде: Разработчики оценивают это в 5SP, в то время как тестировщики предлагают 8 SP из-за возможных проблем в тестировании, в точности данных при формировании отчетов.

Оценка: после обсуждения команда согласовывает 8 пунктов истории.

Использованный метод: Метод консенсуса: обратная связь от различных ролей обеспечивает всестороннее понимание сложности задачи.

Почему 8 SP? Проблемы, связанные с точностью данных и формированием отчетов, усложняют задачу, что отражает более высокую оценку.

3. Используйте Planning Poker

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

Оцениваемая пользовательская история: «Я, как пользователь, хочу фильтровать результаты поиска по диапазону дат, для того, чтобы сделать поиск более точечным и точным».

Процесс оценки: члены команды выбирают карты со значениями от 3 до 5 баллов.

Оценка: команда обсуждает различные оценки, рассматривает сложность внедрения фильтра и соглашается на 5SP.

Используемый метод: Planning Poker: он способствует обсуждению и консенсусу посредством одновременного раскрытия карт и переговоров.

Почему 5 баллов? Эта функция отличается умеренной сложностью из-за дополнительной логики фильтрации, позволяющей получить оценку в 5 баллов после обсуждения в команде.

4. Установите базовый уровень

Создайте эталонную пользовательскую историю с известным уровнем затрат и используйте ее для оценки историй других пользователей.

Базовая (эталонная) история: «Как пользователь, я хочу посмотреть данные своего профиля». (Оценивается в 3 SP)

Новая пользовательская история: «Как пользователь, я хочу обновить данные своего профиля, в том числе загрузить фотографию профиля, для того чтобы обогатить данные».

Оценка: Новая пользовательская история предполагает дополнительные функциональные возможности, поэтому команда оценивает ее в 5 SP.

Использованный метод: Базовое сравнение: оценка основана на сравнении с известной эталонной историей.

Почему именно 5 SP? Дополнительная сложность обновления деталей и загрузки изображения увеличивает трудозатраты, что приводит к более высокой оценке.

5. Избегайте излишних размышлений


Разместите
тендер бесплатно

Наша система сама подберет вам исполнителей на услуги, связанные с разработкой сайта или приложения, поисковой оптимизацией, контекстной рекламой, маркетингом, SMM и PR.

Заполнить заявку 12613 тендеров
проведено за восемь лет работы нашего сайта.


Story points должны предлагать относительную меру без чрезмерной точности. Стремитесь к быстрым, консенсусным оценкам.

Оцениваемая пользовательская история: «Как пользователь, я хочу получать уведомления о новых сообщениях для того чтобы быть в курсе всего».

Оценка: команда быстро соглашается на 2 балла истории.

Использованный метод: Быстрый консенсус: направлен на быструю оценку на основе общего понимания.

Почему 2 SP? Функция относительно проста по сравнению с более сложными задачами, что оправдывает более низкую оценку.

6. Альтернативный метод: оценка в часах

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

Оцениваемая пользовательская история: «Как пользователь, я хочу внедрить двухфакторную аутентификацию, для того чтобы обезопасить свои данные».

Оценка: по оценкам команды, выполнение этой задачи займет около 16 часов.

Используемый метод: Оценка на основе времени: прямое прогнозирование необходимого времени на основе опыта команды.

Почему 16 часов? Задача включает в себя множество компонентов (например, интеграцию SMS-сервисов, изменения пользовательского интерфейса), которые требуют определенного времени.

Рекомендации по использованию Story Points

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

Определение Story Points для человека на примере двухнедельного спринта: сколько и почему?

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

Понимание Velocity и Capacity

  1. Velocity (скорость работы). Скорость — ключевой показатель в Agile, который отражает среднее количество story points, выполненных командой за спринт. Анализируя скорость за несколько спринтов, команды могут лучше предсказать, какой объем работы они могут выполнить в предстоящем спринте.
  2. Capacity (потенциал, производительность команды). Производительность — это объем работы, который человек или команда могут выполнить в течение спринта, учитывая их доступность, рабочее время и другие обязательства. Расчет производительности часто начинается с предположения о стандартном рабочем дне, обычно составляющем 8 часов, и корректируется с учетом любых известных факторов, таких как отпуска, встречи или другие перерывы.
  3. Четко передавайте информацию: четко определите, что представляет собой каждое значение Story Point для команды.
  4. Использование исторических данных: используйте данные прошлых спринтов для информирования о будущих оценках и улучшения планирования.
  5. Сосредоточьтесь на представлении ценности: используйте Story Points как инструмент для улучшения планирования и поставки, а не как жесткую меру времени.

Расчет Story Points для отдельного человека

Шаг 1: Определите рабочее время в спринте. Для 2-недельного спринта рассчитайте общее количество доступных рабочих дней и часов.

Пример расчета: предположим, что в 2-недельном спринте 10 рабочих дней. Каждый день состоит из 8 рабочих часов. Общее количество рабочих часов = 10 дней * 8 часов в день = 80 часов.

Шаг 2: Учтите время, не связанное с разработкой. Не все 80 часов будут потрачены на разработку. Члены команды часто проводят время на встречах, груминге и других мероприятиях, не связанных с разработкой.

Пример корректировки: предположим, что 20% времени тратится на мероприятия, не связанные с разработкой. Время, доступное для разработки = 80 часов — (20% * 80) = 64 часа.

Шаг 3: Установите базовое значение Story Points. Story points не переводятся напрямую в часы, но вы можете установить базовый уровень на основе исторических данных. Если команда выполнила задачи схожей сложности в предыдущих спринтах, вы можете оценить, сколько времени обычно требуется на story point.

Пример: если на разработку пользовательской истории на 3 SP обычно уходит 8 часов, то 1 story point может быть примерно эквивалентен 2,67 часа.

Шаг 4: Оценка индивидуальных возможностей. Используя исходные данные, вы можете оценить, со сколькими story points человек сможет справиться за доступное время.

Пример оценки: доступное время разработки = 64 часа. Предполагаемые часы на 1 story point = 2,67 часа.Story points на человека = 64 часа / 2,67 часа на 1 Story point ≈ 24 story points.

Шаг 5: Регулируйте оценку с учетом опыта сотрудника и сложности задач. Учитывайте уровень опыта каждого сотрудника и сложность задач. Менее опытные разработчики могут выполнить меньше задач по сравнению со старшими разработчиками из-за различий в скорости обучения и эффективности.

Пример корректировки: младший разработчик может справиться только с 70% предполагаемых story points, что составит ≈ 17 story points. Старший разработчик может справиться со 100% или более.

Обоснование распределения Story Points

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

Ключевые моменты

  • Динамика команды: разные команды работают с разной скоростью, и даже в рамках одной команды вклад отдельных сотрудников может различаться. Необходимы регулярные ретроспективы и корректировки.
  • Сложность задачи: story points должны учитывать не только время, но и сложность и риск задач. Более сложная история может иметь более высокую оценку в SP, даже если она занимает меньше времени.
  • Процесс обучения: по мере того, как члены команды набираются опыта, их возможности могут возрастать, что требует периодической переоценки распределения story points.

Определение того, с каким количеством story points может справиться сотрудник за спринт, требует тщательного учета скорости, возможностей и уровня опыта сотрудника. Используя исторические данные и постоянно уточняя оценки, команды могут более точно планировать спринт, что приводит к лучшим результатам и устойчивой производительности. Регулярный анализ и корректировка story points обеспечивают соответствие процесса изменяющимся возможностям и рабочей нагрузке команды.

Вывод:

Story points — ценный инструмент для Agile-команд, предлагающий относительную меру усилий и сложности. Команда L-TECH использует в своей практике такие методы, как относительная оценка, Planning Poker, сравнение базовых показателей и рассматрение альтернативных методов, улучшая планирование и доставку спринта. Регулярный обзор, последовательность, четкая коммуникация и сосредоточенность на доставке ценности повышают эффективность Story Points в наших Agile-практиках.






Лучшее
Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.