Блог сайта

Agile in IT: 7 техник оценки задач

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

agile estimation techniques preview

Вначале посмотрим какие существуют базовые принципы у всех техник оценки в Agile методологиях. Далее кратко (чтобы не перегружать данный обзор) разберем сами техники и способы оценки. Подробное описание техник я буду приводить в отдельных статьях.

1. Принципы и особенности оценки в Agile

Принцип 1: высокая скорость оценки

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

Принцип 2: командная работа

  • Agile, это командная работа, поэтому и большинство методов оценки тут являются групповыми. В процессе участвуют все вовлеченные в разработку члены команды, аккумулируется информация и мнения различных экспертов. Если речь идет про Scrum, то в оценке бэклога будет принимать участие вся Scrum Team.
  • Совместные методы оценки также дают возможность каждому члену команды комфортно себя чувствовать при высказывании своего мнения, выдвижении предположений по сложности той или иной задачи. Итоговая оценка – это мнение и ответственность всей команды и у отдельных участников нет потребности пререстраховываться, закладывая на всякий случай побольше времени.

Принцип 3: относительные единицы измерения

  • Следующая особенность методов оценки в Agile, это использование относительных единиц измерения. При использовании гибких методологий мы не считаем напрямую рубли, доллары, дни, килограммы и т.п. Для оценки могут используются какие-либо маркеры, точки, карты с числами, цвета и т.д., что дает хорошую возможность сравнивать  различные задачи друг с другом напрямую и качественно.  При этом мы избегаем каких-либо ассоциаций и привязки к дополнительным абстрактным величинам, например, дням.
  • Например, если мы оценили задачу и получили трудозатраты 100000$, то мы невольно задумаемся много это или мало и это может повлиять на конечную оценку. При этом если задачу оценили в 100 story points (очков, баллов, попугаев), то само по себе это значение еще ничего не говорит, он работает только в сравнении с другой задачей и в этом случае оценка не искажается.

2. Методы оценки


Метод 1: T-Shirt Sizes (Размеры футболки)

  • В качестве единицы измерения в этой технике используется размер футболки: XS, S, M, L, XL. Команда принимает решение о размере той или иной пользовательской истории в ходе совместной открытой дискуссии. В случае неопределенности, возможно применение голосования. При желании можно договориться о соотношении «размеров», например, S это до 2 XS, M это до 2 S и так далее.
  • Как правило первые несколько задач оцениваются предварительно. Далее начинает вырисовываться картина о степени декомпозиции историй. В итоге мы находим самые мелкие относительно остальных задачи и они принимаются за XS . После этого остальные задачи оцениваются с точки зрения насколько они больше XS. В зависимости от этого им присваивается определенный размер S, M, L или XL.
  • Также можно договориться, что у нас есть, например, большой размер XXL. Присвоение истории этого размера говорит, что на самом деле мы не можем оценить задачу и она нуждается в дальнейшей декомпозиции и\или уточнении.
  • Данная техника является довольно быстрой и ее можно использовать для оценки большого количеством user story за одну сессию. С ее помощью вполне реально за час оценить 15-20 историй.

Метод 2: Planning Poker (Покера планирования)

  • Это одна из самых популярных техник оценки. Участники процесса используют специально пронумерованные карты (подобные игральным), чтобы голосовать с их помощью за оценку user story. Обычно для «покера» используются карты с числами Фибоначчи (0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89), но возможны и другие варианты.
  • Процесс оценки выглядит следующим образом:
    • Каждый участник получает колоду карт с числовыми значениями для оценки, изображением «?» (запрос уточнения задачи) и «чашки кофе» (требование перерыва).
    • Product Owner делает краткий анонс очередной пользовательской истории и отвечает на вопросы команды по данной задаче.
    • Участники «покера» выбирают карту с подходящей по их мнению оценкой и кладут их рубашкой вверх (чтобы не влиять на выбор друг друга).
    • После того, как все члены команды выбрали свои оценки карты одновременно переворачиваются.
    • Участникам с самыми низкими и высокими оценками делают краткие комментарии объясняя свой выбор оценки.
    • В итоге процесса обсуждения команда приходит к единому решению и после этого переходит к следующей пользовательской истории.
  • Planning Poker одна из самых точных техник оценки, но подходит для сравнительно небольшого количества задач. В течение часовой сессии таким способом можно оценить 4-10 историй.


Метод 3: Bucket System (Система "ведерок")

  • В этой методике используется принцип похожий на Planning Poker - задачи оцениваются и помещаются с ведерки с соответствующим размером. Для указания размера также можно использовать числа Фибоначчи. Однако у этих методов есть принципиальное различие – в Bucket System после начального масштабирования задач, процесс задачи разделяются между участниками для оценки.
  • Процесс оценки выглядит так:
    • Все истории, которые требуется оценить, выписываются на карточки.
    • На столе или доске выстраивается последовательность из «ведерок» для задач различного размера.
    • Команда выбирает по очереди 3-5 произвольные карточки с задачами и оценивает их в ходе открытого обсуждения сравнивая и выстраивая их друг относительно друга.
    • Задачи помещаются в соответствующие «ведра» задавая общий масштаб и ориентиры для последующих оценок.
    • Далее все оставшиеся задачи поровну разделяются между всеми участниками и оцениваются ими самостоятельно, с учетом полученной шкалы измерений.
    • Если кто-то из членов команды затрудняется оценить какую-либо историю, то он передает ее другому.
  • Данный метод (в отличие от Покера планирования) может использоваться для быстрой оценки очень большого числа задач (от 50) и с большим количеством участников.


Метод 4: Dot-voting (Голосование по точкам)

  • Этот способ предполагает использование специальных «точек», которые показывают голоса участников\баллы оценки поставленные для той или иной задачи. В качестве таких «точек» могут использоваться: наклейки, стикеры, магниты, точки\штрихи проставленные маркерами.
  • Этапы процесса оценки:
    • Все оцениваемые User Stories выписываются на отдельные карточки и размещаются на столе\доске.
    • Для выполнения оценки каждый из участников получает одинаковое количество «точек». Каждый член команды распределяет свои «точки» между задачами как он считает нужным, учитываю, что чем больше «точек», тем сложнее задача и тем больше на нее необходимо времени.
    • После того как каждый участник сделал свою оценку и распределил все свои «точки», подсчитывается общее количество точек выставленных для каждой пользовательской истории. В результате все задачи ранжируются между собой по количеству «точек».
  • Данный метод является очень простым и быстрым, он будет эффективно работать для оценки небольшого количества историй (до 8-10).


Метод 5: Maximum Size or Less (Разделение до максимального размера или меньше)

  • В рамках этой техники участники процесса оценки вначале определяют максимально возможный размер для задачи в бэклоге. Чаще всего в качестве максимального значения выбирается 1 человеко-день (1 FTE). В этом случае самые большие задачи должны требовать для их выполнения не более 1 дня.
  • Далее процесс оценки выглядит следующим образом:
    • Каждая история обсуждается всеми участниками, чтобы ответить на вопрос: оцениваемая задача больше максимального значения или меньше\равна ему?
    • Если данная история больше максимального размера, то группа декомпозирует ее на подзадачи и повторяет процесс с оценки для составных частей.
    • Процесс продолжается пока все оцениваемые задачи не окажутся в разрешенном диапазоне размеров – будут равны или будут меньше выбранного за максимальное значения.
  • Этот метод оценки также очень прост в использовании и с его помощью команда способна за справиться с 15-30 задачами (в зависимости от сложности и опыта декомпозиции).


Метод 6: Big/Small/Uncertain (Большой/Малый/Неопределенный)

  • Данный метод похож на технику Bucket System, основное различие состоит в том, что в этом случае используется только 3 ведра: большой размер, малый размер, неопределенный размер задачи.
  • Процесс оценки:
    • Все оцениваемые истории обсуждаются участниками и помещаются в одну из трех категорий Big/Small/Uncertain.
    • Сначала группа проводит групповое обсуждение нескольких первых задач (3-5), определяя масштаб и ориентиры для каждой категории. 
    • Затем, подобно Bucket System, оставшиеся истории распределяются между участниками и оцениваются самостоятельно, что сильно ускоряет процесс.
  • Это одна из самых быстрых техник оценки. Она позволяет оценить за одну сессию большое количество историй (от 50) и позволяет привлекать к процессу одновременно много участников.


Метод 7: Ordering Rule (Выстраивание порядка)

  • Данный метод представляет собой пошаговую игру, цель которой выстроить все задачи друг относительно друга на единой шкале размера.
  • Процесс оценки:
    • Сначала все оцениваемые истории выписываются на карточки.
    • Карточки с задачами случайным образом размещаются на столе или доске со шкалой, на границах которой указаны «малый размер» и «большой размер».
    • Каждый участник по очереди совершает свой «ход» оценки. Такой «ход» включает одно из следующих возможных действий: переместить любую историю по шкале на одно деление (т.е. поменять оценку на более низкую или высокую), обсудить историю с коллегами, пропустить свой «ход». 
    • В результате «ходов» сотрудников задачи могут перемещаться по доске, их оценка друг относительно друга уточняется.
    • Когда все участники пропускают свой «ход», процесс оценки завершается. Все задачи распределены по шкале между значениями «малый размер» и «большой размер».
  • Этот метод довольно эффективен для оценки небольшого количества задач (5-15). Участники вовлечены в общий геймифицированный процесс и изменяя положения историй относительно друг друга добиваются высокой точности оценки.

 Смотрите также:

Agile: 8 методов декомпозиции задач

Agile: методы приоритезации задач

О проекте

  • Проведение тренингов и вебинаров: QA, Time management, People management, Agile
  • Консалтинг в области организации рабочих процессов в ИТ
  • Проведение и подготовка к собеседованиям

Информация об авторе проекта

 

Контакты

Skype: xpavnov

E-mail: xpavnov@gmail.com

VK: https://vk.com/doitsmartly

Группа вконтакте

doITsmartly©2024
Яндекс.Метрика

Search