Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
Что такое Story Point?
Story Point — это условная единица измерения сложности и объёма работы для задачи (user story) в Agile проектах. Это не часы и не дни, а относительная оценка трудозатратности задачи по сравнению с другими задачами в спринте.
Основные характеристики
Story Point используется для:
- Относительной оценки сложности задач
- Планирования спринтов (velocity планирование)
- Прогнозирования скорости разработки команды
- Улучшения точности оценок со временем
Не используется для:
- Оценки времени выполнения в часах
- Сравнения производительности разработчиков
- Контроля скорости работы конкретного человека
Шкала оценок
Обычно используют последовательность Фибоначчи или близкие к ней значения:
1 - очень простая задача (небольшой баг, простой рефактор)
2 - простая задача
3 - задача средней сложности
5 - сложная задача (требует исследования или нескольких компонентов)
8 - очень сложная задача
13 - очень сложная задача, может потребовать разбиения
21 - слишком сложная, нужно разбить на подзадачи
Пример оценки
Для Java проекта:
- 1 point: исправить опечатку в документации
- 3 points: добавить простой getter/setter в модель данных
- 5 points: реализовать REST endpoint с логикой валидации и обработкой ошибок
- 8 points: интеграция с внешним API с кешированием и фоновой обработкой
- 13 points: рефакторинг большого модуля с переписью нескольких классов
Velocity и планирование
Velocity — количество story points, которое команда может выполнить за один спринт. Например, если команда за последние 3 спринта выполняла 30, 32, 29 points соответственно, средний velocity = 30.33 points/спринт.
На основе velocity команда планирует, сколько work items взять в следующий спринт:
Есть 5 задач: 3, 5, 8, 5, 13 points (всего 34 points)
Velocity команды = 30 points/спринт
В спринт возьмём: 3 + 5 + 8 + 5 = 21 points (остаток 9 points обрезаем)
Задача 13 points пойдёт в следующий спринт
Правила оценки story points
- Относительность: все оценки делаются относительно базовой задачи (reference story)
- Командность: оценивает вся команда разработки (часто через planning poker)
- Сложность, не время: в точке должны быть заложены: сложность, неопределённость, объём работы
- Стабильность: со временем оценки становятся точнее благодаря историческим данным velocity
Planning Poker
Популярный метод оценки story points:
1. PO читает user story
2. Каждый разработчик выбирает карточку с числом (1,2,3,5,8,13...)
3. Все показывают карточки одновременно
4. Обсуждают расхождения
5. Переоценивают, если нужно
Частые ошибки
- Привязка к часам: story points ≠ часы, это приводит к давлению на команду
- Использование для сравнения разработчиков: story points оценивают задачу, не人
- Переоценка задач: если задача > 13 points, нужно её разбить
- Игнорирование context switching: при оценке нужно учитывать, сколько задач в спринте
Story Point vs Другие метрики
| Метрика | Назначение |
|---|---|
| Story Points | Относительная сложность для планирования |
| Часы | Оценка реального времени (рискованно) |
| T-shirt sizes (S,M,L,XL) | Упрощённая категоризация |
| Ideal Days | Редко используется, привязка к времени |
Заключение
Story Points — это инструмент для команды, а не для контроля. Правильное использование story points позволяет команде стать более предсказуемой, лучше планировать спринты и не перегружаться работой. Ключ успеха — в регулярном анализе velocity и рефлексии на ретроспективах.