Оцінка в сторіпоінтах
Кілька днів тому на ДОУ сталась чергова міні драми, в якій виплив один типовий момент з оцінками задач:
Насправді, я погано перформив — і з цим згоден, бо задачу на 8 СП розтягнулась на 3 тижні (Хоча мала б бути зроблена за 2)
Ця ситуація цікава не стільки сама по собі, скільки тим, що піднімає одразу кілька типових проблем при плануванні спринтів (СП) та оцінці задач.
Проблема перша
Як перерахувати абстрактні сторіпоінти в робочі дні, щоб отримати строки виконання задачі? Адже менеджмент цікавлять саме строки, а не якісь там сторіпоінти. Логічне рішення тут взяти довжину спринту (зазвичай 2 тижні — 10 робочих днів) та поділити на кількість роботи виміряної в сторіпоінтах, та отримати 1 СП в днях/годинах. На жаль, не все так просто хоча б тому, що для того аби це працювало, потрібно, щоб команда/людина стало виконувала певну кількість СП за спринт.
Менеджери часто очікують, що таку оцінку можна робити вже після 1-2 спринтів. В реальності команди виходять на більш-менш стабільний темп десь за квартал (~6 спринтів). Та і додавання/прибирання учасника команди може легко суттєво змінити кількість СП в спринті. При тому оцінки самого новачка будуть несинхронізовані з командним розумінням складності (про це далі), а ще йому треба буде рамп-ап період (це легко займе 1-2 спринти).
Проблема друга
Що таке ті СП часто не розуміють і члени команди. Чому так постійно відбувається, хоча є купа матеріалів та тренінгів на цю тему, для мене лишається загадкою.
Тут логічне рішення — прирівняти 1 СП до певної одиниці часу, та отримати зручну “матеріальну” оцінку, яка ще й чудово зрозуміла бізнесу. Дуже зручно 1 СП — 1 день, бо в такому випадку 5 СП — робочий тиждень, а 8 СП — це спринт з урахуванням пари днів на незаплановані активності. Інша популярна оцінка — 20 СП на спринт, вона має ту ж логіку та як бонус кращу гранульованість — тепер у нас на день 2 СП, а значить можна взяти більше малих задач. Тут ми бонусом маємо проблему, що в оті малі задачі на півдня, якщо і входить час на тестування, то забувається час на делівері до продакшена.
Але це найменша проблема в такому підході. Куди важливіша проблема — це те що ми беремо 1 значення як “правдоподібну” оцінку і додаємо певну константу для закриття ризиків. Ми знову ж рухаємось не з тієї сторони.
Куди ефективніше взяти той же 3-точковий PERT (проектні менеджери винайшли метод Сімпсона). Інший дієвий інструмент бити задачу на менші, тоді оцінка буде точнішою, але зазвичай значно більшою. 8 СП легко можуть перетворитись в 13 чи навіть 20 сумарно.
Проблема третя
Чому ж так стається, що задача на 8 СП при поділі на менші в сумі стає більше ніж 8 СП? Окрім згаданого вище покращення точності є ще й причина, яку ми згадали при розборі першої проблеми.
Сторіпоінти не є мірою часу. Хоча і не є мірою складності. СП — це одиниця зусиль (effort). Вони враховують в собі час на виконання, перевірку та інші активності; але також вони враховують в собі складність та мінімально необхідну кваліфікацію виконавця; вони враховують особливості умов роботи (наприклад наявний технічний борг в тій частині системи, куди треба внести зміни).
У мене була ситуація, коли задачу на 5-8 СП, я зробив за 1 день + на наступний день протестував і підготував в до релізу. Але чому ж це 8 СП? Бо інша команда оцінила цю роботу в 20+ СП загальних змін, а інші члени команди сказали, що на реалізацію вже погодженого підходу їм треба “2 тижні”.
Проблема чотири, бонусна
8 СП, що розтягуються на спринт — це 2 тижні в часовому вимірі. Якось так склалось, що коли ви чуєте оцінку більше 5 робочих днів — це завжди 2 тижні. Ці 2 тижні легко можуть тривати 3 тижні (2-3 тижні), місяць, кілька місяців. 2 тижні — це вже невизначеність, її потрібно уникати. Якщо у вас виникає бажання дати оцінку, що буде співрозмірна з понад 5 робочих днів — це ознака, що задача потребує подальшої декомпозиції.
Підсумуємо
При впровадженні оцінки в сторіпоінтах, не пробуйте зводити їх до вже відомих одиниці (як то час чи навіть складність), візьміть, як часто рекомендується, якусь невелику задачу на 1 СП і спробуйте розміщати типові задачі відносно неї та вже раніше розміщених задач.
Прийміть, той факт, що на впровадження цього підходу вам треба буде багато часу, не очікуйте результат за 2-3 тижні.
Визначте рівень, оцінку вище якого ви маєте уточнювати, розбиваючи задачу на менші. Визначте його “науково”, на основі даних, а не власних відчуттів. Ознаками можуть служити як те що перерахунок на час вищий за 5 днів (це потребує вже налагодженого процесу), так і подивитись розподіл оцінок і відсікти хвіст (ті оцінку, що рідко зустрічаються). Другий підхід може не спрацювати, якщо команда починає з оцінки комплексних задач без декомпозиції, умовно у вас мало 1-2, але купа задач на 8-20 СП.
Enjoy Reading This Article?
Here are some more articles you might like to read next: