Что такое оценка по Agile?

Независимо от того, разрабатывает ли команда продукт или проект, нам нужно ответить: «Когда мы сможем его завершить?» или «В какой степени мы сможем его доставить к определенному времени?» Как и в традиционных моделях разработки, нам нужно оценить объем работы до начала проекта.

Оценка по Agile имеет следующие три характеристики:

Коллаборативная оценка командой

В Scrum разработке команда делит ответственность и совместно работает над каждым Sprint. Поэтому команды по Agile используют колляборативные методы оценки для оценки объема работы. Коллаборативная оценка обычно использует Planning Poker в качестве инструмента, при котором команда совместно играет в игру по оценке. Planning Poker считается одной из наиболее эффективных и увлекательных техник оценки усилий в Agile разработке. Он состоит из набора чисел, похожих на числа Фибоначчи: 0, 0,5, 1, 2, 3, 5, 8, 20, 40, ?, ∞. Каждая колода включает четыре набора этих чисел Фибоначчи, предназначенных для использования до четырех членов команды.

Точность групповой оценки по сравнению с индивидуальной

Исследование точности оценки усилий между индивидуальными и групповыми оценками в эксперименте по разработке программного обеспечения показало, что 20 специалистов по программному обеспечению из одной компании независимо оценили усилия, необходимые для реализации одного и того же программного проекта. У участников были разные профессиональные бэкграунды и роли, а программный проект ранее уже был реализован. Позже они были сгруппированы в пять команд. Каждая команда обсуждала и объединяла свои знания, чтобы прийти к единому мнению по оценке.

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

Шаги игры в Planning Poker

  1. Каждый член команды получает комплект карт, содержащих: 0, 0,5, 1, 2, 3, 5, 8, 13, 20, 40, ?, ∞ — всего 12 карт.
  2. С Product Owner читает описание пользовательской истории или функции команде.
  3. Члены команды обсуждают функцию и задают вопросы Product Owner при необходимости.
  4. После обсуждения каждый участник выбирает карту, представляющую его оценку, и одновременно открывает её.
  5. Если оценки значительно различаются, команда обсуждает: Согласны ли мы? Какие факторы были упущены? Человек с самой высокой или самой низкой оценкой должен объяснить свою аргументацию перед следующим раундом голосования.
  6. После обсуждения команда может пройти еще один раунд, пока не будет достигнуто согласие.
  7. Вернитесь к шагу 2 и начните оценивать следующий элемент бэклога.

Оценка размера, а не времени — использование относительной оценки вместо абсолютной

Оценка — это просто обоснованное предположение. Мы используем весь доступный опыт и знания, чтобы оценить, сколько времени это займет. Вместо того чтобы оценивать каждый новый элемент работы изолированно, почему бы не сравнить его с ранее завершенными элементами? Люди лучше справляются с оценкой похожих по размеру объектов, чем с оценкой абсолютных размеров.

Например: близко ли это к очень маленькому элементу? Или больше похоже на проект среднего размера? Или действительно большой, как тот, который мы завершили в прошлом месяце? Относительная оценка не только сокращает время, затрачиваемое на оценку, но и значительно повышает точность.

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

Story Point Estimation

Оценка очков истории

Оценка скорости — запись и усреднение скорости команды на каждый спринт

Скорость командыскорость — это количествоочков историикоторыекоманда Scrumфактически завершает в спринте. Скорость команды показывает, насколько быстро команда работает. Для нового проекта или команды (без предыдущих записей скорости) мы можем провести 1–2 спринта, чтобы измерить и установить начальную скорость. Во время выполнения спринта мы фиксируем скорость команды каждый спринт для планирования в будущем.

Estimating User Story Velocity

Оценка скорости пользовательской истории

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

Scrum Project Duration Estimation

Оценка продолжительности проекта Scrum

Leave a Reply