banner banner banner
Решебник начинающего руководителя проекта
Решебник начинающего руководителя проекта
Оценить:
Рейтинг: 0

Полная версия:

Решебник начинающего руководителя проекта

скачать книгу бесплатно


Что произойдет, если ты этого не сделаешь? Да все, что угодно. В зависимости от того, чей именно контекст не был учтен. Чаще всего делается проект из контекста «Сдать и получить 5». А значит, и результат дальше защиты не идет. Он достигнет своего контекста и благополучно скукожится. Но может выстрелить другой риск, когда представитель любой стороны проекта, контекст которого мы не учли, может спровоцировать полную остановку проекта в середине процесса, и ты не достигнешь даже минимального результата.

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

– Мы очертили границы будущего результата. Поняли, что делаем в принципе, а чего не будем делать точно.

– Мы поняли основной интерес и мотивацию каждой стороны проекта.

– Мы утвердили приоритеты и ограничения, а также образ будущего проекта (после наступления «нашего» результата).

Все это поможет нам в формулировке «правильного» результата и в расчете достижимого «Как сделать результат» (т. е. его плана).

Если тебе удалось сформулировать и утвердить со всеми сторонами контекст проекта, поздравляю! Ты достигла первого промежуточного результата. Твоя система уже появляется на свет. Да, пока она выглядит как набор тезисов, правил, ограничений, но это уже она – единственная и неповторимая в своем роде. Дальше тебе придется все время держать этот контекст в голове и с каждым шагом, задачей, собранием, рабочим днем своего проекта двигать результат от «абстракции» к реальной рабочей системе.

Зачастую команда на старте уходит в обсуждение процессов, подходов, технологий, дизайна, мотивации и маркетинга. Все это можно и нужно обсуждать, но только в контексте полученного результата! В нашем кейсе результат – это информационная система, которая автоматизирует конкретные бизнес-процессы и сценарии работы.

Результат важнее процессов!

Исходя из этого выставляй приоритеты, разрешай споры и фокусируй работу.

Повторим в очередной раз главное, что надо запомнить из этой главы:

– Главное – результат.

– Результат должен быть получен в определенный срок.

– В распоряжении у тебя есть люди, их квалификация, инструменты и крайне ограниченные другие ресурсы.

– Обсуждение деталей проекта должно проходить в контексте планируемого финального результата.

Помни об этом постоянно, пока выполняешь роль менеджера.

За что отвечаю я? \ Роль менеджера проекта

Люди разные нужны, люди разные важны! Если именно так перефразировать стихотворение Сергея Михалкова, то точно попадешь в корпоративную политику большинства компаний из отрасли информационных технологий.

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

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

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

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

– Аналитик, дизайнер, архитектор, проектировщик – довольно близкие по смыслу роли. Это специалисты, способные представить будущий продукт в виде модели: процессов, сценариев, дизайнов интерфейса, модулей, сервисов, объектов и компонент. Зачем? Да чтобы уменьшить вероятность ошибки в разработке. Чем шире и качественнее проведено предварительное моделирование, тем меньше вероятность, что разработчики «выбросят» уже написанный код из-за появившихся уточнений/требований.

Их результат – архитектурная схема, концепция, описание сценариев и состав пользовательских экранов, постановка задачи в разработку.

– Тестировщики, они же QA/QC-специалисты, они же специалисты по контролю качества. Их ключевая цель – дать вселенной увидеть ровно тот результат, который нужен на самом деле. Их результат – отсутствие замечаний и ошибок в будущей системе и факт того, что система работает «как надо», т. е. поддерживает целевые процессы.

– DevOps-инженер организует и настраивает инфраструктуру как для самой команды, так и для будущей реальной системы. На старте, как правило, тесно работает с техлидом, чтобы организовать рабочее пространство команды так, как тот задумал. Его результат – правила сборки кода каждого разработчика в общий репозиторий и настроенные окружения:

– DEV, т. е. для разработки;

– QA для тестирования;

– UAT (user acceptance testing), предназначенный для приемки продукта.

– Менеджер. Это ты. И у тебя много дел. Давай попробуем обозначить основные твои обязанности и результаты:

– Контроль достижения результата – ты должна осознавать, как команда дойдет до результата, отслеживать изменения на этом пути. Твой результат – это достижимый план проекта и его регулярная актуализация.

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

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

– Работа с коммуникациями – выстраивание всех коммуникационных потоков в проекте: как внутри, так и наружу. Результат: отсутствие простоев или лишней работы из-за «не договорились», отсутствие конфликтов с внешними относительно команды ролями.

Это роли. От проекта к проекту каждая роль может исполняться отдельным человеком или один человек может подхватывать несколько ролей. Помни: каждый новый специалист «съест» кусочек ресурса проекта. Ты должна понимать, каким результатом для команды обосновано присутствие в ней каждого участника.

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

Акцент твоей работы в роли менеджера будет меняться по ходу проекта:

– Старт проекта. Ничего не понятно, результат существует в виде общей концепции, риски «не получить результат в конце» максимальны. Ты акцентируешь свое внимание на понимании архитектуры/концепции и построении плана проекта. Выстраиваешь основные потоки коммуникаций. Основная задача – выйти из предпроектного тумана «ничего не понятно» и перейти в штатный режим работы.

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

– Завершение проекта. Когда же проект близится к финалу и кусочки соединяются в итоговое решение, ты переключаешься на качество во всех его проявлениях и на введение решения в эксплуатацию. Основная задача – запустить решение в эксплуатацию. А значит, оно должно работать, и работать хорошо. А пользователи должны хотеть им пользоваться.

Этап проекта диктует менеджеру, как отрабатывать риски и планы, ускорять поставки и управлять изменениями, как шлифовать качество и оформлять результат.

Я намеренно не упоминаю выше такие пункты, как «проведение дэйли», «совещания» и «заведение задач»: ведь сами по себе эти действия не несут результата – это всего лишь инструменты, которые команда может применять, а может и не применять для улучшения своего результата.

Итак, краткие тезисы этой главы:

– Ролей в команде разработки много. Каждая – для своего результата. Определи целевой результат и, исходя из него и доступной команды, распредели роли.

– Роль не равно человек. Береги ресурсы, если проекту не нужна/не ценна работа какой-то роли.

– Роль менеджера – в достижении общего результата.

– Акценты в твоей работе зависят от текущего состояния результата всего проекта.

Ну все понятно, а начинать-то с чего? \ Старт проекта

Как гласит один из законов Мерфи, «все, что хорошо начинается, кончается плохо. Все, что плохо начинается, кончается еще хуже».

От правильного старта проекта зависит довольно многое. Чем лучше подумать на старте, тем меньше потом придется переделывать. Это совершенно не значит, что надо долго думать и мало делать. Делать-то как раз надо много, и с самого начала.

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

1. Опишите все, что хочет заказчик. Лучше начать с простого наброска документа от самого заказчика, которое называется первоначальным Видением. Это не Техническое задание, а именно то, как заказчик видит конечный результат. А потом его надо проговорить словами. Как раз в разговоре вы начнете понимать, что важно для заказчика и чего он хочет достичь на самом деле. Не факт, что именно это написано в Видении. Там может оказаться описание того, КАК заказчик себе представляет решение целевой бизнес-задачи. И не всегда это решение верно.

На первых проектах у тебя может не хватить опыта это понять и предложить, как на самом деле надо. И работа будет отталкиваться именно от Видения заказчика. Это не хорошо и не плохо, это жизнь. И решение, которое придумал заказчик, если даже оно не идеальное, будет работать. Ну и прекрасно. В любом случае попросите сначала описать, а потом рассказать словами задачу. И записывай все, что скажет заказчик. Именно этими записями ты расширишь первоначальное Видение.

В этом пункте используй те же принципы, что и в главе по декомпозиции задач (см. главу «Декомпозиция задач»). На тебя будет валиться куча информации по самым разным аспектам будущего проекта: идеи по реализации, элементы обязательных требований, просьбы по процессам работы и законы, которые влияют на работу отрасли. Старайся выделять «области» будущего проекта и прописывай там каждый такой факт или требование. В первой версии области могут быть такими:

– Функции продукта.

– Техника и инфраструктура.

– Процессы совместной работы.

– Этапы, контрольные точки и дедлайны.

– Источники информации для будущего сбора требований.

– Пользователи, роли и их ограничения.

– Риски.

– Прочее.

Раскладывай входящий поток по нужным областям, выделяй подчиненные области, сегментируй информацию. Чем конкретнее факт и его влияние на будущий результат, тем больше пользы проекту. Плюс ты сразу заметишь, каких данных тебе НЕ хватает. Например, про функции данных много, а про сроки ничего не сказано. А еще так ты можешь неожиданно увидеть противоречия в желаниях заказчика («Хочу много, дешево и вчера»). Это все надо обсуждать, и это тоже часть работы по управлению ожиданиями заказчика.

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

3. Границы проекта. Как только вы более или менее зафиксировали Видение, пришло время прописать Границы проекта. Это дополнительный раздел, где четко описано, что НЕ будет входить в систему и где заканчивается то, что уже описано. Чтобы не было недопонимания потом в стиле: «Я думал, раз вы делаете мостик, то и асфальтированную освещенную дорогу в 5 км к нему сделаете, а иначе как им пользоваться?» Это тоже должно входить в полный вариант Видения. Или следует четко прописать, что никаких подъездных путей и освещения в конечном результате не предусмотрено.

В этой части важно еще описать, что дополнительно будет поставляться в рамках результата проекта – документация (в каком виде и какого объема?), дополнительные материалы, дополнительные работы в виде обучения, маркетинга, поддержки и т. д. Или не будут поставляться. Здесь нет задачи от чего-то сразу отказаться. Тут задача – максимально четко прописать границы. Вот и прописывай. Чем лучше пропишешь, тем меньше надо будет доделывать по завершении проекта и тем более счастливыми будут все участники.

4. Требования. Теперь уже можно писать Техническое задание (оно же – Требования). Хотя бы верхнего уровня. Берете Видение + Границы, разбиваете на сценарии и бизнес-кейсы и начинаете прорабатывать каждый в отдельности. Как проработали, прикидывайте архитектурную, техническую, интеграционную, инфраструктурную и все остальные стороны. На этом этапе необходимо продумать и описать все, включая такие очевидные вещи, как, например, авторизация, восстановление пароля, управление пользователями, уведомления и т. д. Потом надо будет оценивать, как эти задачи влияют на трудозатраты и сроки реализации.

Глубина и структура ТЗ определяется тобой (ТЗ – это текстовая модель результата. Выше мы писали про роли аналитиков-проектировщиков и про то, что глубина их участия в разных проектах разная). Есть, конечно, различные стандарты, но лучше ориентироваться опять же на здравый смысл. ТЗ должно быть понятным, должно описывать, что и как надо сделать. Больше его расписывать, если нет специальных требований заказчика, смысла нет. Если только в качестве упражнения в стиле «А жахну-ка я ТЗ по ГОСТ 34.602—89», но это уже на любителя.

5. Технологии. Пока вы описывали Требования, как система должна работать, что включать, что не включать и т. д., дальше надо договориться о технологиях создания. Вы оба (заказчик и команда) уверены, что понимаете, как надо. Только в понимании проектной команды и заказчика могут присутствовать разные технологии. Если два этих списка технологий более или менее сошлись – прекрасно. Если нет, надо договариваться. Делать все на старых технологиях – не вариант, но и совсем все новое, скорее всего, тоже не получится протащить. Тут нужен разумный компромисс – то, что без особых проблем «встанет» у заказчика, и то, на чем можно вести разработку на современном уровне.

6. Установочная встреча (она же kick-off meeting). Это неформальная встреча с участием заказчика, руководителя проекта и команды. Ее можно провести раньше официального старта работ или чуть позже. У нее нет протокола или обязательных составных частей. Это, скорее, ознакомительная и вдохновляющая встреча. Команда видит заказчика, заказчик видит команду и может услышать каждого. Заказчик обычно рассказывает о своей бизнес-задаче, цели проекта, уже плюс-минус согласованном с менеджером Видении, границах проекта и подходах. PM (Project Manager – ты) может рассказать про подходы к реализации, о технологиях и команде. Именно в этот момент проясняются ваши ожидания друг от друга, в этот же момент возникают вопросы и предложения, которые могут сфокусировать конечный продукт или прояснить новые риски. На встрече заказчик «вливается» в команду, появляются общие цели и ожидания. И это хорошо.

7. Minimal Viable Product (он же MVP). Выделите с командой и заказчиком основные этапы и MVP, т. е. минимальный кусок системы, который покажет основной процесс или его часть. Потом это будете развивать. Вам результат нужен как можно раньше, чтобы проверить вашу идею и видение конечного результата. Есть миллион причин, почему проект может не взлететь. И половину этих проблем тебе придется решить в виде задач как раз при создании MVP.

Дополнительно внесите в этот этап непонятные вопросы и риски, которые могут «выстрелить», и тогда весь проект не срастется. К примеру, вопросы архитектуры, интеграции и т. д. Т. е. на этапе MVP у вас две задачи – проработать все непонятное, заставив это работать в базовом необходимом виде, и сделать минимальный кусок решения, который уже начнет приносить основную пользу. Если вы решите обе эти задачи, то все остальное – дело техники.

При выпуске MVP вы мало того что предоставите заказчику то, что уже можно использовать, так вы уже будете знать, что дальше делать (у вас есть ТЗ) и как (все мутные технические вопросы вы решили уже на этапе MVP).

8. Оценка трудозатрат. Теперь MVP надо оценить. В виде задач верхнего уровня, которые вы постепенно детализируете до конкретных понятных атомарных (малых) задач. Желательно, чтобы оценка каждой задачи не превышала 1—3 дня работы. Вы получаете структурированный план работ и Трудозатраты.

9. Ресурсы. Следующим шагом табличку с планом нужно обогатить информацией о том, кто и когда сделает эту задачу. Для каждой задачи укажите ответственного за выполнение, плановое время работы (хотя бы ориентировочно это может оценить сам ответственный) и дату, когда она должна быть сделана. Для MVP это надо сделать обязательно. В будущем можно будет там же отслеживать статус: взято в работу, сделано, отложено на столько-то. В отдельной колонке укажешь комментарии.

10. Дорожная карта. Детальные оценки на MVP и экспертные (на остальные этапы) лягут в основу верхнеуровневой Дорожной карты. Нарисуйте линейку и на нее нанесите результаты, когда и что будет. Или под ней укажите, когда начнутся и закончатся этапы. Масштаб линейки и цена ее деления зависит от величины проекта. Обычно таймлайн – от недели до квартала. При проектах больше 2 лет их разбивают на отдельные проекты и объединяют их в связанную программу. Но пока это вам не грозит. Так что берите и верстайте Дорожную карту.

Таким образом, уже на старте ты четко определишь, что такое результат, как к нему прийти и сколько это займет. А в рамках MVP ты отработаешь основные проектные процессы и снизишь проектные риски.

Все, ты все хорошо проработала на старте проекта. Выходи на штатную работу и двигайся к результату.

Кто все эти люди и как с ними работать? \ Команда

У тебя появилась твоя команда. И это прекрасно.

Известная поговорка гласит: «Один в поле не воин». Полностью согласимся с тем, что проект надо делать командой. «Команда» изначально появилась как спортивный термин. В настоящий момент этот термин активно используется в корпоративном сегменте, а в проектном управлении уже закрепилось понятие «проектная команда».

Проектная команда отличается от простой группы специалистов наличием следующих вещей:

– общих целей;

– общих соблюдаемых правил;

– специализации (или выполняемых ролей);

– активного взаимодействия внутри.

Т. е. тебе надо из людей с их интересами, слабыми и сильными сторонами, графиком жизни и вкусами создать единый организм – команду. Которая будет шагать в сторону проектного результата. Это и есть ее главная проектная цель.

С точки зрения управления надо каждого человека рассматривать в нескольких ипостасях:

1.Человек разумный. Человек как человек. Живет своей жизнью, у него свои интересы, свои проблемы, боли, здоровье, отношения со второй половиной. Он так же, как и ты, думает, что он будет есть на ужин и что по пути домой купить. Не забывай, что у него есть личная жизнь и часто она важнее, чем проект или вообще работа.

2.Человек командный. Представитель команды. Это специалист с компетенциями, на которые ты рассчитываешь. Этого человека рассматривают с точки зрения так называемых hard & soft skills. Т. е. что он знает, умеет и вообще насколько готов работать в команде.

3. Человек результативный. Можно сказать, результативность – одна из характеристик человека командного. Пусть так. Не будем спорить.

Обращай внимание на это качество, оценивая успехи команды и отдельных ее представителей. Бывают люди со слабыми soft & hard навыками, которые за счет усидчивости и упорства выдают результат даже бо?льший, чем «звезды». Возможно, при этом они делают ошибки, но они не высовываются и не рекламируют себя. Анализ фактических результатов показывает, что они молодцы. Опирайся на результативных людей.

Я специально выделил результат в отдельный аспект, чтобы обратить внимание на две крайности в людях:

a.Хороший человек. ТОЛЬКО «хороший человек». Это может быть друг/подруга, отличный добрый человек широкой эрудиции и искрометного юмора и вообще душа компании. Но бывает, что посмотришь на него с точки зрения результата, а там пустота. А если ты отбросишь эмоции, то обнаружишь, что проектные созвоны превращаются в веселые посиделки.

Так вот: хороший человек – это не профессия. И брат-сват-друг – тоже не профессия. Тебе же нужны профессионалы ради проектного результата?

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

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

Есть хорошая поговорка на эту тему: «Лучше с умным потерять, чем с дураком найти». Время показывает, что не зря ее мудрые люди придумали.

От нерезультативных людей надо аккуратно избавляться в рамках проекта. Это можно сделать, например, при переключении этапов.

Несколько слов про расставания. Нельзя переходить на личности и доказывать человеку, что он дурак, неуч и вообще плохой человек. Расставаться надо конструктивно, с уважением. Ну бывает, что у вас что-то совместно не получилось. Но даже если ты в жизни с ним не хочешь работать и общаться, расставайся позитивно. Земля круглая, и, возможно, вы еще не раз встретитесь и даже поработаете над другими проектами.