PMsoop: Глава №15: Детальное планирование разработки итерации

В ролях – Менеджер Проекта, разработчики

Артефакты – ТЗ, План Проекта -> детализированный ПП для первой версии

Суть – Менеджер Проекта совместно с разработчиками уточняет план разработки первой версии

Детальное планирование разработки выполняется перед стартом каждой новой итерации проекта. Задача – разделить длительные задачи на более «мелкие». Основной смысл – увеличить количество «точек контроля» в проекте за счёт проверки выполнения выполненных задач.

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

- блок login & password + capcha, с проверкой на уникальность имени

- блок ввода контактной информации

- блок подгрузки аватары

- блок дополнительных данных

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

Напомню, что критериями для определения задач разработки на подготовительном этапе являются:

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

- «несвязанность» – в процессе выполнения этой задачи не требуются результаты других задач

Задачи, определённые таким образом, могут быть весьма и весьма длительными. Для небольших проектов разработка целой версии может быть представлена одной задачей. Контролировать ход выполнения длительных задач зачастую бывает неудобно – так как основным инструментом контроля является «опрос» разработчика, ответственного за задачу. В случае, если в процессе разработки возникли проблемы – информация о них почти гарантировано поступит Менеджеру Проекта с задержкой (так как разработчики часто сообщают о проблеме только после нескольких неудачных попыток её решить),

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

Итак, перед стартом разработки новой версии Менеджер Проекта собирает разработчиков и вместе с ними детализирует задачи разработки для этой версии. По результатам необходимо обновить План Проекта. В процессе обсуждения могут быть обнаружены новые «непонятки» в требованиях, также могут измениться оценки трудозатрат – это нормально.

Дополнительной (а иногда и основной) целью детализации задач разработки является «последняя проверка» полноты и ясности требований, а также правильности оценок / верности сроков. Актуальность такой проверки растёт с каждой следующей версией проекта – так как в процессе разработки и сдачи предыдущих версий часто появляется новая информация, которая приводит к изменению оценок и планов. Фактически, детализация задач – это «маленький подготовительный» этап для каждой версии, в чём-то повторяющий общий подготовительный этап для всего проекта в целом.

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

Leave a comment

Your comment