Ресурсное планирование и ресурсные планы

Ресурсное планирование. Часть 4.1. Прежде чем делать ресурсный план

Ресурсный план. Подготовка.

Ресурсное планирование отдельно взятого проекта — большая тема, и мы её поделим на несколько частей. В первой части мы рассмотрим задачи, которые надо решить, информацию, которую надо собрать и решения, которые надо принять при подготовке к ресурсному планированию. А во второй части поговорим о том, как делать ресурсный план.

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

О чём нужно помнить, когда делаешь WBS?

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

Общие вопросы

Отдельный список по QA-части

Частенько приходилось сталкиваться с недооценкой влияния QA на качество планирования. Но ведь QA — это далеко не только функциональное тестирование. Ниже — список, который поможет не забыть некоторые важные вещи.

Глядя на этот список, у многих может возникнуть вопрос — а зачем на этом этапе работать с HWE, NFR и SVT? Можно, конечно, с этими артефактами и не работать. Но в моей практике были случаи, когда все проектные оценки сделали, распланировали все ресурсы. И вроде даже HWE и NFR были и high-level SVT-план был. Только они не были согласованы между собой. Как можно догадаться, за это пришлось заплатить не одним десятком неоплаченных человеко-часов и кучей нервов.

Какие накладные расходы нужно закладывать в ресурсный план?

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

Шаринг бойцов с другими проектами

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

Шаринг и работа с техподдержкой

Если ваш проект — долгоиграющая история и предыдущие версии уже находятся на проде, то есть большой пласт вопросов, в которых нужно ориентироваться для качественного ресурсного планирования.

Совещания и коллы

Другим видом накладных расходов является участие членов команды в совещаниях. В совещаниях. Типичная картина — на сеньёрного разработчика запланировано по 40 часов разработки в неделю, а по факту он регулярно тратит по несколько часов в день на коллы и очные совещания с командой и заказчиком. И вместо 40 часов у него на работу остаётся 30. В результате разработчик или не успевает или овертаймит или выдаёт код не самого лучшего качества.

Ещё более острая проблема, обычно, складывется у бизнес-аналитиков. С одной стороны, они, по роду своей деятельности, должны тесно работать с заказчиком. С другой стороны, бесконечные совещания у заказчика зачастую пожирают более половины общего времени BA и он не успевает детализировать требования к следующим спринтам, начинает овертаймить и/или выдавать требования не лучшего качества.

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

Как вы понимаете, и то и другое — плохо. Если в первом случае вы искуственно создаёте своей команде изначально стрессовую ситуацию и предпосылки к нескончаемым овертаймам, то во втором случае вы просто перестаёте понимать реальную структур работ.

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

Сразу решить, как управлять изменениями

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

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

Если у вас большой проект, вы сразу согласовали с заказчиком объём возможных изменений и у вас есть CR Bucket (объём LOE, оплаченное заказчиком, которое будет потрачено на изменения) — отлично. Тогда у вас есть почти точная цифра часов, которые вы должны заранее зарезервировать под пока неизвестные задачи. В зависимости от размера этого LOE и предполагаемого потока изменений, полезно заранее решить. В любом случае, нужно ответить себе на следующие вопросы:

Подумать про методику учёта и сбор фактического времени

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

Факт не равен факту

Что такое факт в терминах ресурсного планирования? Это часы, которые члены команды действительно потратили за прошедший период на:

Зачем руководителю проекта нужны фактические цифры, мы уже обсуждали в предыдущих статьях. А вот как собирать факт?

Приступая к этому вопросу нужно осознавать разницу между часами для ресурсного планирования и LOE, выделенным на выполнение задачи. Например, разработчик в течение дня закрыл два бага, на каждый из которых он потратил 3 часа. В сумме он отработал по задачам 6 часов. В Jira списано 6 часов. Но заработную плату он получит за 8 часов и на проекте он отработал 8 часов за этот день. И это нормально — часы нахождения на проекте никогда не будут равны эффорту, потраченному на решение проектных задач. 

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

Как собирать факт в ресурсный план?

Вариант номер 1. Целиком полагаемся на таск-трекер (например, Jira)

Преимущества:

Недостатки:

Вариант номер 2. Используем систему таймшитов

Преимущества:

Недостатки:

Вариант номер 3. Две крайности

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

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

У полностью автоматизированных систем ресурсного планирования и управления проектами преимущества и недостатки прямо противоположны ручному варианту — работая в таких системах руководитель проекта может легко потерять “связь с землёй”, полагаясь на цифры из своей системы. С другой стороны, такой процесс гораздо менее трудоёмкий и применим на проектах разного размера.

Как учитывать овертаймы?

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

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

В любом случае, у вас должен быть готов ответ на эти вопросы.

В следующей части мы наконец-то начнём создавать ресурсный план.