Я присоединился к новой команде, которая использует Agile / Scrum, и их процесс разработки выглядит следующим образом:
1) разработчики просматривают каждую историю перед каждым спринтом, чтобы убедиться, что она не пропустила ничего критического. Для этого есть формальное состояние в рабочем процессе.
2) во время начала спринта вся команда оценивает (планирование покера) сколько очков истории будет стоить каждая история.
3) наконец, сразу после начала каждого спринта каждый разработчик должен с готовностью разбивать все назначенные истории на подзадачи с оценками времени (в отличие от подзадач перед началом каждой истории).
Основным аргументом последнего шага является то, что он помогает выяснить, займет ли реализация истории больше времени, чем предполагалось, и предупредить мастера схваток о потенциальных рисках пропущенных сроков спринта.
Тем не менее, я нахожу это контрпродуктивным, в основном из-за следующих причин:
- если цель состоит в том, чтобы предоставить приблизительную оценку, сюжетные пункты (шаг № 2) - то, что делает работу. Иначе зачем вообще рассказывать истории? - просто делайте подзадачи на ранней стадии.
- если цель состоит в том, чтобы предоставить точные оценки, то это является ярким примером того, что описано в « Переключение задач человека, считающихся вредными» . Это, я думаю, особенно актуально для новых разработчиков, которые присоединяются к существующим командам в больших проектах, где понимание того, что необходимо сделать, может занять до 50% времени. Вам необходимо детально изучить историю № 1, затем историю № 2, № 3 и т. Д. И т. Д., Что дает большой объем информации.
Мне также говорят, что такая практика "по книге", и я даже не собираюсь это обсуждать. Может ли кто-нибудь дать ссылку на такую практику - четко ли это определено в Библии Scrum, и / или, возможно, предоставить какую-либо дополнительную информацию?