Зачем использовать баллы истории вместо часов для оценки?

После того, как я потратил часы на оценку наших проектов в течение длительного времени и редко приближался к 20% фактического «от работы до отправки», несколько человек сказали мне, что «баллы» работают намного лучше при оценке сложности и оценке. продолжительность задач в рамках проекта.

Как Story Points лучше оценивают работу, необходимую для проекта?

«редко приближается к 20%» означает, что планы вашего проекта серьезно нарушены. Переход к сюжетным точкам даже отдаленно не решит эту проблему, вы просто скроете свои основные ошибки.

Ответы (19)

Использование точек — это один из вариантов того, что часто называют « относительным размером ». Чтобы получить очень рекомендуемую начальную перспективу, посмотрите это видео , а затем вернитесь. Большинство применений оценки в пунктах ограничивают вас нижней частью ряда Фибоначчи: 1, 2, 3, 5, 8, 13, потому что цель состоит в том, чтобы сгруппировать вещи одинакового общего размера, а не преследовать очень точную оценку.

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

Сложность — это «вещи, которые мы должны выяснить». Мы знаем, что можем решить проблему, и у нас, вероятно, есть хорошее представление о том, как мы к ней подойдем, но нам все еще нужно это понять.

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

Сомнения связаны с тем, о чем мы на самом деле не знаем, можно ли это сделать. Мы можем подозревать, что находимся на ложном пути, что технология не соответствует этому уровню, или какой-то другой фактор, который заставит нас какое-то время колебаться, прежде чем мы выясним, действительно ли мы можем выполнить работу.

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

Окончательная точечная оценка — это просто способ сказать: « принимая во внимание все эти вещи, я думаю, что это больше, чем большинство вещей, которые мы назвали тройкой, и меньше, чем большинство вещей, которые мы назвали восьмерками, так что это должна быть пятерка "

Я полностью согласен. Также при оценке в часах обычно возникает некий психологический барьер продления задачи дольше, чем оценка (что влияет на качество и возможности рефакторинга). Нечто аналогичное происходит и с задачами, которые команда могла закончить раньше - формируется психологическое разрешение занять свободное время вместо сокращения оценки задачи. (что влияет на производительность)
Если это «относительный» размер, то зачем выбирать произвольные метки, такие как 1,2,3,5,8,13...? Почему бы не просто 1,2,3,4... или даже A,B,C,D, чтобы указать, что они не являются количественными мерами?
Количественная мера полезна, когда дело доходит до оценки «скорости» команды. Если команда набирает в среднем 30 относительных баллов каждую неделю за последние 3 недели, вы можете использовать оставшиеся баллы для оценки даты завершения.
@mehaase, мы предпочитаем экспоненциально увеличивающуюся серию, чтобы заполнять большие пробелы по мере увеличения предметов. Ведь разница между «1» и «2» гораздо важнее, чем разница между «13» и «14».
@mehaase, легче различить 8 и 13, чем 10 и 11, поскольку разница между 10 и 11 слишком мала (всего 10%). Например, разница между 1 и 2 составляет 100 %, между 2 и 3 — 50 %, между 3 и 5 — 66 %… между 8 и 13 — 62,5 %.
Кроме того, большие разрывы между числами демонстрируют неявную степень неопределенности. Если кто-то оценивает историю как «8», он на самом деле говорит, что рабочий элемент — это что-то от 6 до 12.
Отличный ответ, хотя меня больше всего беспокоит включение в оценку компонента «сомнения». Это может привести к тому, что 13 указателей (увеличенных с 5 или 8 из-за сомнений) будут сильно завышены или, возможно, все еще недооценены. Там, где есть достаточно сомнений, чтобы переместить историю из одной оценочной корзины в другую, я бы предложил всплеск, чтобы устранить это сомнение в более раннем спринте, а затем правильно оценить его. Очевидно, что всегда есть неопределенность, и я не предлагаю полностью ее устранить, просто не включаю сомнительную цифру в оценки.
@ Эрик отличный ответ. К сожалению, по указанной ссылке видео недоступно.
@mehaase Наш разум воспринимает и противопоставляет логарифмически. Подобно октавам, мы неосознанно применяем это при оценке блоков времени. Проталкивание его в эти более крупные блоки помогает учесть это, а также снижение точности при оценке дальше.
Я полюбил этот ответ пару лет назад. Это очень четкая ссылка для объяснения этих аспектов моим командам. Эрик, я только что понял, что на самом деле, как сказал @Dhurvin, видео больше не доступно, было бы здорово, если бы вы напомнили название или каким-либо образом поискали его снова :)
Видео называлось «Agile Chalk Talk: Story Points» и было произведено RallySoftware. С тех пор Rally была куплена CA, и похоже, что весь их контент был выброшен в дыру памяти.
В качестве случайного источника для резервного копирования того, что сказал оператор: synchronit.com/downloads/freebooks/… стр. 36
@electronix384128 ... и эта ссылка теперь защищена паролем :(

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

  1. При оценке в часах вы сосредотачиваетесь на ответе на вопрос «Сколько времени это может занять у нас?». Так что в основном это более или менее предположения, основанные на вашем предыдущем опыте.

  2. При оценке в баллах вы ориентируетесь на относительные размеры или сложность оцениваемых задач/историй/чего угодно. Итак, вы обычно берете некоторые из ваших задач и применяете к ним одно из значений баллов, а позже для каждой другой задачи вы пытаетесь ответить на вопрос «Насколько она велика по сравнению с теми, которые я уже оценил».

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

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

«оценки относятся ко времени». так что оба являются просто догадками, и нет никакой разницы, кроме того, что вы добавляете абстракцию ко времени. Бизнес имеет дело со временем, а не с усилиями. Никто не заботится о усилиях. Это не начальная школа, вы не получаете награды за участие, бизнес зависит от результатов.
@ChrisMarisic скорость предназначена для перевода очков в продолжительность. Даже если оценка точна в часах, фактическая продолжительность может занять больше времени из-за дополнительной связанной работы (например, совещаний, документации) и не связанной работы (например, других проектов). Наблюдая за скоростью, вы можете предсказать временные рамки, тогда как с оценками, основанными на времени, вы в конечном итоге будете искать недостающие часы в каждом спринте.
@DannyVarod с этими оговорками это хуже, чем бессмысленно. И ничего не делает для устранения фактических утечек ресурсов, которые мешают своевременной доставке вашего проекта.
@ChrisMarisic, наоборот, вы можете измерить изменения скорости и в ретроспективе посмотреть, что можно сделать, чтобы увеличить скорость. Кроме того, оценки никогда не бывают точными, поэтому их использование для определения даты окончания разработки никогда не приведет к правильному прогнозу конечной даты. Если вы оцениваете в баллах и достигаете скорости с небольшими вариациями, вы можете лучше прогнозировать.
@DannyVarod совершенно неверно определяет, когда закончится разработка. Вы не оцениваете проект. Вы оцениваете отдельные действия, вставляете их в график диаграммы зависимых сетевых узлов, вычисляете временные резервы, определяете критический путь и затем отслеживаете проект, обновляя ход выполнения. Пока ваш проект не съедает быстро флот и ваши разработчики не задерживают критический путь, вы точно знаете, когда проект закончится.
Без этого анализа у вас нет возможности вмешаться, ДО ТОГО, как вы ударитесь о стену. Очки истории и скорость просто бессмысленны, потому что единственное, что имеет значение, — это время (он же доллары). Время измеряется критическим путем. Свободный оборот и общий резерв измеряют, когда некритические операции становятся критическими и тем самым изменяют весь график проекта. Agile просто прячет голову в песок в отношении дизайна проекта. Без мониторинга графа узлов проекта вы не представляете, какие, казалось бы, безобидные действия, которые задерживаются, в конечном итоге тянут за собой весь проект.
@ChrisMarisic Я согласен с необходимостью определения критического пути, чтобы определить фактическую продолжительность проекта и его риск, однако никто не может правильно оценить каждое отдельное действие - у вас никогда не будет всех исходных данных заранее. Способ, которым мы оцениваем, заключается в переводе известной сложности и того, насколько хорошо мы знаем детали, и сравнении этих «чисел» с прошлым опытом, баллы просто пропускают последний этап и заменяют его более наглядной статистикой = скорость.
@ChrisMarisic ... Может быть, если мы начнем относиться к бизнесу как к начальной школе, мы начнем получать больше удовольствия.
@ChrisMarisic «никто не заботится об усилиях»: усилие как показатель - это время, потраченное на работу. О да, бизнес очень заботится об этом.
Усилия и время @Esteban полностью ортогональны. Любая деятельность может быть связана с очень большими усилиями при короткой продолжительности или с очень низкими усилиями с большой продолжительностью. Примеры хирургия и охранник соответственно. Однако компании очень заботятся об усилиях, которые не приносят результатов, поскольку усилия — это буквально сожженные там деньги.
Не в том смысле, который используется здесь. В PM принято описывать рабочие единицы как «усилия». pmbypm.com/difference-project-effort-and-duration

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

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

Для начала вам нужно будет выбрать пару заданий/историй средней/средней сложности/размера. Назначьте им несколько точек из выбранного вами диапазона точек (обычно ряда Фибоначчи). Эти задачи/истории становятся вашими эталонными задачами/историями. Теперь назначьте баллы остальным задачам в зависимости от того, насколько сложной/большой является каждая задача по сравнению с вашими эталонными задачами. Большие задачи получают более высокие баллы, чем баллы за эталонные задачи. В конце оценочного упражнения (обычно выполняемого с помощью Planning Poker) вы суммируете все баллы, чтобы получить общее количество баллов для этого проекта.

После завершения нескольких проектов у вас будет история того, сколько очков ваша команда покрывает за определенный промежуток времени. Это будет скорость команды. Ключевым моментом здесь является то, что вы не меняете размер команды. Члены команды могут быть заменены, но не предпочтительны.

+1 за параллель между My 10 hours task could be your 5 hours task.
План проекта не должен заботиться о ваших 5 или 10 часах. Это должно заботиться о человеко-неделях. Ваша человеко-неделя не должна сильно отличаться от аналогичной. Единственные существенные различия на уровне человеко-недель должны быть между младшим разработчиком и старшим разработчиком.
@ChrisMarisic Когда кто-то обязуется часто и непрерывно поставлять работающее программное обеспечение (рекомендуется каждые 1-3 недели), оценки на уровне недели не будут точными. Приходится сводить к человеко-дням или даже часам. Кроме того, My 10 hours task could be your 5 hours taskиспользовалось просто как пример (метафора).
Я не собираюсь вдаваться в вопрос о том, является ли Agile разумным выбором или нет, но остановлюсь на остальном. Какова цена трения при работе с заданиями, измеряемыми часами? Вы хотите тратить время на планирование с участием нескольких сотрудников, которые выполняются за меньшее количество часов, чем требуется для их планирования? Даже если вы заинтересованы в непрерывной доставке, почему бы вам не хотеть, чтобы у членов вашей команды были действия, которые на самом деле охватывают это? Для действий, которые настолько незначительны, что занимают меньше дня, зачем вообще беспокоиться о планировании? Просто сделайте это и предположите 1 день.
Если у вас есть серьезные проблемы с поиском человеко-недель тесно связанной работы, которую может выполнить 1 разработчик, я действительно задаюсь вопросом, какую ценность вы создаете, если все выполняется за несколько часов? Не говоря уже о влиянии этого на пользовательский опыт. Каждую неделю давайте добавлять 10 очень маленьких функций с кнопками, колокольчиками и свистками для всех них. developer.apple.com/library/mac/documentation/userexperience/… «Сосредоточьтесь на решениях, а не на функциях» «80% пользователей используют лишь несколько функций приложения» вы обслуживаете 80%?

Все дело в том, чтобы абстрагироваться от ложной реальности.

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

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

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

+1 за абстракцию. Это отсутствует во всех других ответах
Так 1 балл стоит 1 доллар? 100 баллов - это 10 000 долларов? Это бессмысленно. Вы можете разумно оценить 1 человеко-неделю за 2000 долларов для большинства разработчиков и 4000 долларов за человеко-неделю для высшего уровня.
@ChrisMarisic Стоимость баллов меняется со временем; после одной итерации точка может составлять три человеко-дня, а через десять итераций точка может составлять всего два человеко-дня. То, что баллы могут быть более легко изменены по стоимости таким образом, является одной из причин использовать их для оценок в часах или днях.

Как всегда, на этот вопрос нет простого ответа. Я бы сказал, что вы должны выбрать то, что лучше всего подходит для вас . Однако, как вы говорите, работа с часами не работает для вас.

В моей команде это был психологический аспект работы с очками. Когда люди оценивают в баллах, они чувствуют себя более комфортно, потому что нет простой меры, что 1 балл = 1 часу, поэтому они не будут наказаны, если им потребуется больше времени, чтобы выполнить задачу, чем они заявили.

Другое дело, что при работе с очками (1,2,3,5,8,13,20) или размерами (S, M, L, XL) вы просто определяете сложность задачи. Скорость показывает, сколько точек вы можете добавить в итерацию, но скорость меняется .

И чем менее утомительна работа с точками - если вы плохо оценили, ваша скорость упадет.

«Так что они не будут наказаны, если им потребуется больше времени, чтобы выполнить задачу, чем они заявили». какая цель оценки, если есть нулевая ответственность перед лицом, делающим оценки?
Причина в том, что программное обеспечение по своей природе трудно оценить, в отличие, например, от гражданского строительства. Но со временем ваши ошибки оценки попадут в нормальное распределение. Пропускать точную оценку следует допускать при разработке программного обеспечения. Это требует доверия, а не наказания. По иронии судьбы, доверие и забота о людях необходимы для создания высокоэффективной команды и заработка.

Хотя это, вероятно, и не является предполагаемой функцией, одно из преимуществ использования баллов с точки зрения менеджера заключается в том, что задачи измеряются по сложности, а не по времени, что позволяет вам легко увидеть, кто в команде работает быстрее, чем все остальные. Например, вы знаете, что человеку А требуется 2 часа, чтобы сделать что-то, а человеку Б требуется 10 часов (для конкретной задачи; возможно, для другой задачи наоборот). Если человек А оценил 2 часа, а затем заболел, человек Б отстает от оценки на 8 часов, даже не начав. Но если вы дадите ему баллы, а затем усредните результаты по команде, вы, скорее всего, достигнете своей отметки в целом.

Есть две причины, по которым мне нравятся очки вместо часов.

Часы имеют подразумеваемую точность и, как правило, считаются точными на 100%, все люди понимают, что такое час, поэтому, если вы говорите 10 часов, это должно быть десять часов. Чтобы компенсировать это, человек, оценивающий, построит некоторое «дополнительное время», чтобы компенсировать неизвестные. Это просто человеческая природа, они не хотят нести ответственность за оценку, когда у них нет всех необходимых данных.

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

С другой стороны, точки имеют «приемлемую» подразумеваемую неточность, поскольку они относятся только друг к другу.

Используя ряды Фибоначчи: 1, 2, 3, 5, 8, 13 и т. д., команда может компенсировать как сложность проекта, так и ожидаемые усилия. По мере того, как числа становятся больше, в оценку встраивается нечеткость. Время не тратится впустую на попытки определить, является ли это числом 9, 10 или 11, больше ли оно, чем то, что команда называет 8, и меньше, чем то, что команда называет 20, то это 13. По мере того, как история приближается к принятию в итерацию, она далее разбивается и уточняется, а точность оценки улучшается.

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

Джефф

«Чтобы компенсировать это, человек, оценивающий, построит какое-то «дополнительное время»» — очень верное утверждение. Не оценивайте в часах. Оценка в человеко-неделях. Очень немногие люди готовы преувеличивать свои оценки на целые величины. Используя ваш пример часов, если они предполагают 8, они могут ответить 10. Если они оценят 8, они не скажут 16, если только они не намерены надуть вас.

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

Так что не беспокойтесь о часах. Час бессмысленный. Измеряйте в человеко-неделях. Если деятельность не может быть измерена в человеко-неделях, почему мы вообще беспокоимся о планировании? Просто сделайте это, это будет сделано раньше, чем нужно планировать, сколько времени это займет.

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

Будьте осторожны, как только вы переключитесь на оценки в баллах, не будет простого способа вернуться к использованию часов.

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

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

Все это довольно обманчиво. Дело в том, что в нашей голове мы склонны преобразовывать очки обратно в часы, когда знаем нашу скорость. Пуристы могут говорить о очках весь день, но это просто люди, которые пытаются быть высокомерными. На самом деле ключ здесь в том, чтобы побудить людей, оценивающих, мыслить в относительных терминах; например, этот проект примерно такой же сложный, как тот проект, и этот проект занял, x hoursпоэтому этот проект должен занять y hours.

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

Ну нет, проблема в том, что вы часами думаете, когда выбираете очки. Я действительно не могу сказать вам, занимает ли 5-стрелочная калибровка 2 часа, 5 часов или 2 дня, поскольку это относительно нашей истории калибровки по 2 точкам, которая может занять 3 часа / 1,5 дня или неделю. все, что я знаю, это то, что я думаю, что это займет примерно в 2,5 раза больше времени.
Я думаю, что ваш вопрос теряет ценность, когда вы прибегаете к оскорблениям (говоря, что люди «высокомерны». Хотя я согласен с тем, что хорошие разработчики преобразуют баллы в часы в уме, баллы по-прежнему ценны. В моей команде я знаю 4 Точечный рассказ — это примерно одна неделя работы для одного человека. Но я также знаю, что это не ровно одна неделя. Это может быть четыре дня, может быть, шесть. определенно не 8. Использование баллов означает, что мне не нужно выделять определенное количество часов или дней.
Я видел, как баллы конвертировались 1 к 1 в дни, и это просто неправильно. Идея состоит в том, чтобы абстрагировать оценки от абсолютных до относительных ориентиров для команды . И точность этих оценок будет увеличиваться с течением времени (и вы их просматриваете). Вот почему это не строго Фибоначчи — используйте размер рубашки или какой-либо другой произвольный размер, если у ваших людей проблемы с Фибоначчи.
@BryanOakley «это не ровно одна неделя. Это может быть четыре дня, может быть шесть». и кого это волнует? Вы можете определенно назвать это 1 человеко-неделей! Плюс-минус день в человеко-неделях — это все в пределах допусков любого хорошо спроектированного проекта и свободного времени. (Любой человек, который не знает, что такое свободное время, не имеет права участвовать в этом обсуждении.)

Story Points работают лучше всего, когда существуют следующие условия:

  1. Организация имеет высокую толерантность к риску, что допускает значительные отклонения запланированного от фактического в начале нового, трудно поддающегося оценке проекта.
  2. Команды работают в закрытой системе, где все команды следуют agile, а команды стабильны. Никакие ресурсы не используются совместно, и командам не требуется взаимодействовать с командами, используя другие методы (например, Waterfall).
  3. В состав команды входит заинтересованный владелец продукта или конечный пользователь.
  4. Выделенный тестовый ресурс, автоматизация или и то, и другое позволяют получать относительно стабильные оценки тестирования.
  5. Команда координирует приоритизацию технического долга с каждым спринтом вместе с приоритетами заказчика.
  6. Планирование включает только магазины, перенесенные в завершение, или истории, определенные как «достаточно хорошие» для оценки (например, хорошая пользовательская история, бизнес-правила, универсальные или специфичные для субъекта, условия приемки/критерии тестирования могут быть установлены в течение 24 дней после постановки задачи.
  7. После планирования с владельцем продукта командам разрешается «время наедине» и техническое руководство для обсуждения и определения приоритетов задач.
  8. Во время спринта команда ежедневно оценивает прогресс, сотрудничая и устраняя препятствия. Команды придерживаются задач, которые они взяли на себя.
  9. Им не требуется заполнять стандартную или традиционную документацию, такую ​​как BRD или SRS, до начала работы.
  10. Обязательства по проекту или другие элементы, которые команда не может контролировать, не определяют приоритеты спринта, но учитываются при планировании.
  11. Команды демонстрируют и исправляют в течение спринта, как вклад в скорость
  12. Команды получают кредит за работу, выполненную за спринт, хотя история может быть неполной, но код готов к работе — по крайней мере, частично.
  13. Команды не торопятся, чтобы проанализировать различия в скорости, определить, что им нужно улучшить в ретроспективе, определить план и измерить свой успех.
  14. Качественный, свободный от ошибок код развертывается вовремя, больше ничего не ломает, соответствует критериям приемки и тестирования и не оставляет незавершенной работы с огромным количеством технического долга.

Если команда не может отметить каждое из этих полей «да, мы делаем это», ваше руководство будет сопротивляться, и следующим шагом станет баланс для управления бизнесом. Как упоминалось в предыдущем ответе, командам следует начать планировать очки и часы для решения этого сценария. Менеджмент знает, что каждый пункт истории равен некоторой стоимости в человеко-часах. Идентифицируйте это как команду или будьте готовы, когда это будет определено для вас деловым нравом.

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

Суть в том, что мы не можем оценить реальное время и думаем, что оцениваем в «идеальных часах», но не можем абстрагироваться от восприятия времени. Это также может создать ложное впечатление, что количество оставшихся часов — это «часовые часы», а не «идеальные часы».

Я немного согласен с комментарием Blaze, но я постараюсь обосновать его более удачно:

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

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

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

Story Points лучше всего работают в Scrum из-за мышления метода.

По моему опыту, Scrum — один из немногих методов, который позволяет это сделать, потому что в Scrum-менеджменте не должно быть рук. Scrum дает команде разработчиков определенную свободу для завершения всех бэклогов без вмешательства руководства (и PM) до конца спринта. Поэтому спрашивать, сколько времени займет разработка одной Истории, не имеет значения.

Например, история А оценивается примерно в 5 Story Points, а общее количество Story Points в следующие 2 недели спринта составляет около 20. Если вам как продакт-менеджеру нужно знать, сколько времени займет история A, что ж.. , 2 недели ваш ответ. Параллельно с другими Stories в спринте.

В конце концов, вы всегда можете попытаться рассчитать соотношение человеко-дней на Story Point. В приведенном выше случае 20 Story Points займут 2 недели (10 дней). Это означает, что это может занять 5 Story Points. Задача займет 2,5 дня. Но в Scrum вы не упаковываете релиз через 2,5 дня. Вы должны дождаться завершения Спринта, что составляет 2 недели. Что делает соотношение человеко-дней на Story Point довольно бесполезным.

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

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

Здесь есть элемент опасности в том, что я вижу, как многие команды полагают, что они «заработали деньги» на разработке, они наконец-то раскрыли секрет прогнозирования с помощью математики! - это ложное срабатывание, потому что если кто-то выделяет историю как «маленькую» (подход размером с футболку), а затем этот человек распаковывает 20 задач, чтобы завершить эту историю, то каждая из этих задач по-прежнему выделяет временные переменные для уравнения.

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

Как руководителю группы, вам по-прежнему необходимо знать соотношение «время + задача», и это не наказание разработчика за то, что он не уложился в свой временной бюджет. Это скорее способ наблюдения за их ростом или способностью помочь им развивать лучшее коммуникативное поведение — «Сэм не любит просить о помощи», поэтому это позволяет лидеру помочь реабилитировать поведение в направлении «смириться с неудачей, неудачей». преподает уроки жизни». Это также позволяет вам поставить младшего разработчика на старшее задание, потому что вы хотите увидеть, насколько хорошо они справятся ... да, они превысят оценки системы баллов, но это часть обучения росту на рабочем месте и так далее.

Как я уже сказал, вы можете «обыграть» моделирование прогнозов с помощью методов абстракции, таких как система баллов, но когда дело доходит до распределения и даже скорости, время все еще ускользает. Вот почему большинство команд считают, что x недель — это спринт, тогда как, если бы это была действительно абстрактная методология, это было бы «это спринт из 45, а следующий — спринт из 24» или что-то в этом роде... спринт бы быть переменным по длине и времени. Вместо этого вы оказываетесь в этом когнитивном диссонансе вокруг абстракции точек в относительное время? но как использовать произвольные исходные данные для количественной оценки данных?

Еще один момент, который следует добавить, заключается в том, что команда часто оценивает работу до ее выполнения. Оценки, основанные на времени, относятся к людям, завершающим работу. Относительный размер (Story Points с использованием Planning Poker) — это размер команды. Это не специфично для людей.

В основном время и сюжетные очки не эквивалентны .

Баллы добавляют абстракцию от времени по психологическим причинам, неявно, чтобы предотвратить выгорание программиста. Кто-то все еще должен превратить абстракцию во временные/финансовые затраты. Он просто проходит вверх по цепочке до тех пор, пока кто-то не захочет взять на себя ответственность за него.

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

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

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

Привет и добро пожаловать в PMSE. Не могли бы вы уточнить, как ваш ответ влияет на первоначальный вопрос о баллах и часах?

Если коротко, то «часы — это в лучшем случае только предположение». Но если вы посмотрите на стори-пойнты — называйте их как хотите — вы рассматриваете карту действий (и естественные зависимости внутри этой карты), которые в конечном итоге приведут к тому, что эти оплачиваемые часы будут потрачены.

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

Story Points не следует использовать для планирования проекта. Нет никакой цели. Оценки должны строиться в человеко-неделях или человеко-месяцах. Сюжетные очки не предоставляют никакой информации, на которую можно было бы воздействовать. История оценивается в 10 баллов. Что такое 10? Это 10 на 1 человека, это 10 на 100 разработчиков, работающих над проектом?

Использование человеко-недель прямолинейно.

В конце концов, оценка, будь то очки или время... это оценка. Он основан на опыте человека, создающего оценку. Используя время напрямую, вы гораздо лучше измеряете успех своих оценок. Сравнение стори-пойнтов с стори-пойнтами в лучшем случае нечетко, а в худшем — бессмысленно.

И, наконец, как вы строите систему с историями? Сколько членов команды нам нужно? Когда это будет сделано? Время и деньги — это бизнес. Планирование проекта состоит в том, чтобы дать бизнес-информацию о том, как лучше всего использовать их время и деньги.

Оценки не так полезны для планирования проекта в целом. Будь то в очках или во времени. Вместо этого, где это возможно, время выполнения заказа для каждого типа услуги в сочетании с вероятностным прогнозированием позволит получить более точную картину того, сколько времени может занять все. Кроме того, «измерение успешности оценок» не имеет большого значения. Измерение созданной ценности и рентабельности инвестиций гораздо полезнее. В дополнение к этому, если вы хотите что-то оценить, почему бы не оценить, насколько ценным будет рабочий элемент при доставке, а не сколько времени потребуется для его создания?
@IanDominey «почему бы не оценить, насколько ценным будет рабочий элемент при доставке, а не сколько времени потребуется для его создания?» это действительно разумное утверждение. Agile был создан специально для внесения изменений в существующий проект. Он никогда не предназначался для новой разработки (то есть для замены проектного дизайна). Если вы выполняете итеративную разработку существующего продукта, объем которого не требует новой системы для его достижения (даже если эта система существует внутри текущей), было бы очень разумно измерить точки ценности рабочего элемента и соответственно расставить приоритеты.
На практике Agile используется для замены необходимости заниматься дизайном проекта. Это приводит к отсутствию дизайна. Это не просто неправильно, это противоположно правильному . Системы не «эмерджентны», архитектура не «эмерджентна».
Я не мог не согласиться больше. Agile используется, чтобы принять тот факт, что в начале проекта вы собираетесь отправиться в путешествие по открытию знаний, которое по определению содержит множество неизвестных. Системы действительно эмерджентны, я призываю вас найти много примеров эффективных систем, которые были разработаны заранее, а не адаптированы для удовлетворения возникающих потребностей.
@IanDominey blog.ts.fujitsu.com/face2fujitsu/index.php/… не волнуйтесь, он интегрирован только с более чем 80 000 магазинов. Это не похоже на индивидуальный рабочий процесс, а удаленная интеграция — сложная проблема / с. Системы не эмерджентны, функциональность должна быть эмерджентной. Хорошо спроектированная система способна охватить все соответствующие варианты использования в бизнесе.
Я отсылаю вас ко всей природе, которая является эмерджентной и непреднамеренной системой. Ну и сам интернет. И общество.
@IanDominey вы бы стояли под мостом, построенным на основе сюжетных очков, когда по нему проезжает первый грузовик? Или уйти под воду на подводной лодке? Я точно не стал бы. Инженерия существует не просто так. Если бы были построены мосты, сколько создается программного обеспечения, мы бы все умерли, не дойдя до офиса этим утром.
Сюжетные баллы не строят мосты, это делают инженеры. И в отличие от мостов, которые хорошо понятны и определены, большая часть ценного программного обеспечения представляет собой процесс обучения знаниям в действии. Мосты — плохая аналогия большей части программного обеспечения. Разработка программного обеспечения больше похожа на проведение множества экспериментов, чем на наведение мостов. Это большая часть того, почему существует бережливый и гибкий подход. Но вернемся к исходной точке — стори-пойнты — это бесполезная абстракция, которая позволяет нам слишком самоуверенно полагать, что мы можем точно угадать, сколько времени займет то, чего мы не понимаем.
Говорит как человек, который понятия не имеет, о чем говорит.
@RubberDuck мои планы точны и всегда вовремя, потому что я использую реальные прогнозы, а не волшебную пыль. Люди по большей части вообще не имеют ни малейшего представления о том, как правильно применять инженерию к программному обеспечению... разработке.
@ChrisMarisic я тоже, и я делаю это без почасовой оценки снизу вверх или очков истории. Не говорите инженеру, что он не может быть инженером. Особенно, когда планирование проекта и проектирование — не одно и то же.
Планы проекта @RubberDuck должны быть разработаны. Вы используете сетевой анализ и математику, чтобы определить жизнеспособность плана проекта и риск неудачи.
Добавлен архив системы Fujitsu, упомянутой 2 года назад, на случай, если исходный адрес когда-нибудь исчезнет archive.is/hlt7e
@ChrisMarisic, будьте также осторожны, чтобы вы не были просто «умницами», умнее остальной команды и так далее. Ничей план не является «точным и всегда своевременным», потому что на самом деле не существует такого понятия, как «настоящее прогнозирование». Если бы это было так, ни у кого из нас не было бы работы. Поэтому мы все просто пытаемся минимизировать бизнес-риски для наших клиентов и работодателей, давая им наилучшие шансы на успех, как мы это видим. В частности, проекты компьютерного программного обеспечения не являются детерминированными. Программное обеспечение — это автономная машина с буквально миллионами движущихся частей, соединенных между собой.
@MikeRobinson, если бы такое же отношение было применено к электротехнике, управляющей вашим источником питания в вашем вычислительном устройстве, оно загорелось бы перед вами, когда вы напечатали это.
Заметка @MikeRobinson, связанная с этим, есть много компаний-однодневок, которые используют ваш менталитет при создании продуктов, это зарядные устройства для телефонов и ховерборды, которые сжигают людей.