Convert estimates to plans (Maxym Mykhalchuk Ciklum)
1. От оценок к планам
Последние шаги
28 марта 2013
www.ciklum.com/consulting 1
2. План выступления
• О себе
• Планы vs Оценки
• Две методики
–Идеальные Часы
–Story Points
• Бонус
www.ciklum.com/consulting 2
3. О себе
Максим Михальчук
• Технический консультант Ciklum
• Certified ScrumMaster
- Управление командами
- Внедрение Agile
- Коучинг
- Средства управления
разработкой
www.ciklum.com/consulting 3
4. Что такое план?
• Бизнес живёт в
реальном мире
• Наши попугаи – что
идеальные часы, что
story points, бизнес не
интересуют
• План – это поставки
функциональности по
датам
www.ciklum.com/consulting 4
5. Два проекта
•Два реальных проекта с тайм-трекингом
–Одни оценивали в идеальных часах и трэкали в
идеальных часах
–Другие оценивали в стори поинтах и трэкали в
реальных часах
•Я вытянул из JIRA 500+ и 300+ задач,
отмеченных как Closed/Fixed
www.ciklum.com/consulting 5
6. Идеальные часы
• Кто оценивает в идеальных часах?
• Сколько идеальных часов в вашем дне?
• Домножаете ли Вы «для надежности» при
планировании?
www.ciklum.com/consulting 6
10. Планирование для команды #1
• Предположим, что после начала работы и
20 закрытых задач
• К нам приходит менеджмент
• Просит оценить весь бэклог
• И сказать до когда мы его сделаем
• Команда потратила неделю и наоценивала
на 2800 идеальных часов
• Что сказать менеджменту?
www.ciklum.com/consulting 10
12. Планирование для команды #1
• За 2800 часов!
• Среднее 0.72 (мы переоцениваем задачи)
за 2000 часов!
• Внимание, правильные ответы:
• С вероятностью 80% успеем за 1.2 * 2800 = 3360
часов
• Для большей уверености можем выбрать
90% (* 1.3 = 3600 часов) или 95% (* 1.7 = 4800 часов)
• В реальности остаток сделали за 3300 часов
www.ciklum.com/consulting 12
13. Story Points
• Кто оценивает в Story Points?
• Сколько Story Points Вы делаете в день?
• При планировании - домножаете
"для надежности"?
www.ciklum.com/consulting 13
16. Планирование для команды #2
• Та же задача – после начала работы и 20
закрытых задач
• К нам приходит менеджмент
• Просит оценить весь бэклог
• И сказать до когда мы его сделаем
• Команда по-быстрому оценила на 1860
story points
• Что сказать менеджменту?
www.ciklum.com/consulting 16
18. Планирование для команды #1
• За 1860 story points!
• Среднее 1.0 (команда привыкла оценивать в часах)
За 1860 часов!
• Внимание, правильный ответ:
• За 1860 часов с вероятностью 70%
• С вероятностью 80% за 2400 часов (* 1.3 ч/sp)
• В реальности сделали за 2300 часа
www.ciklum.com/consulting 18
19. Идеальные часы vs Story Points
• Как видим технология получения реалистичных
оценок не отличается совсем никак
• Идеальные часы – те же попугаи, которые тоже
нужно пересчитывать в календарное время, но
– Более трудоёмкие
– С плохим названием
(выставляют неправильные ожидания заказчика)
• Недостатки Story Points
– Непривычные
– Точность оценок не улучшается со временем
www.ciklum.com/consulting 19
21. Быстрые оценки
• Почему лучше оценивать быстро, а не качественно?
• Приоритеты бизнеса меняются часто
– Оценка завтра – ненужная оценка
• Приоритеты бизнеса могут меняться в зависимости
от оценки
– Быстрое общение бизнеса и оценивающей стороны
• Быструю относительную оценку иногда может
сделать сам менеджер
– Одно отвлечение 1 программиста = 30 минут на
переключение контекста
www.ciklum.com/consulting 21
22. Плохие планы
Чем больше
последовательных
задач, тем тяжелее
дать вероятную
оценку:
• Если у каждой из 10 задач вероятность
успеть 90%
• У фичи из 10 последовательных задач
p = 0.910 = 34%
www.ciklum.com/consulting 22
По оси Х – во сколько раз затраченное время больше нашей оценкиПо оси Y – с какой вероятностью мы потратим именно столько времениСамое вероятное значение – 100%, но ...
Красным – тоже вероятность, но накапливающимся остатком (правая шкала)С какой вероятностью мы потратим столько времени или меньшеТ.е. вероятность успетьКак видим, вероятность вложиться в эстимейт – 45%, даже меньше чем «или вложимся, или нет»Если мы хотим вложиться с вероятностью 80% - между разработчиками и заказчиками нужно встроить умножитель на 1.7,90% - 2.3С вероятностью 100% успеть можно только за бесконечное время
Важно: это не нормальное распределение! Было бы нормальным – выглядело бы как зелёный графикВ проекте по-разному ошибаютсяЧаще в сторону завышения оценкиРеже, но сильнее в сторону занижения
Качество оценок, мягко говоря, не фонтанНо, т.к. других оценок у нас для вас нет, то мы прикидываем и говорим...
Тоже реальный проект, выбраны 300+ последних законченных задачЗатреканное время разделено на оценку в стори поинтахПо оси Х – отношениеПо оси Y – с какой вероятностью мы потратим именно столько времени на стори поинтКак видно, эта команда качеству оценки уделяет значительно меньше внимания – разброс огромный
Красным – тоже вероятность, но накапливающимся остатком (правая шкала)С какой вероятностью наша задача, оценённая в story point-ах, займёт вот столько часов или меньшеСреднее часов за story point 1.0760% задач займут меньше40% задач – больше (но иногда намного больше)Важно: это тоже не нормальное распределение! Однако сама суть оценки в стори поинтах – ошибаться в разные стороны.
Качество попадания – тоже не ахти, но других данных у нас нет, так что...
Тут нужно выбратьИли кошмарный конецКошмар без концаТ.е. помучаться один раз с настройкой Story Points или постоянно мучаться с идеальными часами