Содержание
Почему проекты занимают больше времени, чем планировалось? Как рассчитывать сроки точнее?
Веб-разработчик Дейв Стюарт разобрал ошибки при оценке сроков реализации на примере своего проекта и составил схему, которая поможет улучшить расчеты. Приводим сокращенный и адаптированный перевод статьи из его блога.
Предыстория
В прошлом году я взялся за, как казалось, короткий и простой проект, который в течение года превратился в нескончаемый кошмар. Из-за множества факторов было сложно оценить, сколько времени он потребует.
Когда последняя фаза была наконец завершена, я решил разобраться, почему я так неверно воспринимал объем фактической работы, и в процессе переосмыслить все, что я знаю о предположениях и оценках.
Почему так сложно рассчитать сроки проекта?
Оценивать сроки сложно, поскольку невозможно предсказать будущее. Вот несколько стратегий, которые мне знакомы или которые я когда-либо пробовал.
- Добавить 30% времени на управление проектом. Недостаток этого подхода в том, что на управление проектом вряд ли понадобится столько времени. К тому же он не учитывает реальные причины проблем с планированием и не помогает их устранить.
- Удвоить или утроить оценку. Это одна из моих стратегий, и, судя по нескольким проектам, для которых я оценивал сроки, она дает почти точный результат. Но она тоже не объясняет, почему первоначальные подсчеты были неверны.
- Увеличить оценку в четыре раза. Первоначальная оценка — это непосредственно работа, первое удвоение — детали и изменения, а второе — проблемы и ошибки.
В приведенных выше пунктах речь идет не о нарушении сроков проекта, так как это подразумевает, что оценка была верной, а вот исполнение — нет. Реальная проблема заключается в невозможности предсказать, что нужно будет сделать и сколько времени потребуется на это.
Ошибки при расчете сроков проекта
Чтобы выявить слепые пятна в своем подходе, я проанализировал работу за предыдущие месяцы. Целью было:
- просмотреть выполненную работу и сопоставить ее с первоначальными оценками;
- определить ошибки в таких областях, как планирование, навыки, коммуникация и так далее;
- разобраться в несоответствии между планом и возможным результатом с психологической и технической точек зрения;
- обдумать прошлые проекты и сравнить допущенные ошибки;
- выявить общие закономерности, которые можно применить к будущим ситуациям.
Первый важный вывод: сам процесс анализа прошлых ошибок оказался очень ценным. Во время выполнения проекта я понимал, что будет много «дополнительной работы», но изложив процесс на бумаге, заметил множество «невидимых» задач и проблем, которые есть в каждом проекте по веб-разработке.
Наблюдались две общие тенденции:
- большая часть работы была «работой, проделанной для выполнения работы», а не «реальной» работой;
- большая часть работы была недооценена или даже не учтена, поскольку это была не «реальная» работа.
Выводы оказались в равной степени шокирующими и поучительными. Не верилось, что я не замечал этого до сих пор. Возможно, я считал эту незапланированную работу тем, что просто нужно сделать? А может, я думал, что раз уж я так внимателен к деталям, то мне не избежать переработок?
Скорее всего, это была смесь неуместной профессиональной гордости и уровня когнитивного диссонанса относительно того, как быстро, по моему мнению, должна быть выполнена профессиональная работа, а не того, сколько времени она на самом деле занимает. Фактически я игнорировал дополнительное время, потому что оно казалось лишним.
Это можно сравнить с темной материей: она невидима (как и большая часть работы над проектом), но по ее гравитационному влиянию ученые знают, что она составляет большую часть массы Вселенной. Вывод заключается в том, что эти усилия не были рассмотрены, оценены и оплачены.
Как проходит работа над проектом?
Стало ясно, что подход, учитывающий только удачное стечение обстоятельств, был не только затратным в финансовом плане, но и, вероятно, объяснял, почему я в течение многих лет сталкивался с различными проблемами, связанными с превышением запланированных расходов и переработками — либо за свой счет, либо иногда за счет клиента.
И хотя выводы сами по себе казались очень ценными, их нужно было конкретизировать и объединить. Цели были такими:
- вписать их в какую-то «систему»;
- использовать их как строительные блоки, чтобы разбивать будущие проекты, возможно, даже добавляя сроки;
- выделить общую структуру и характер проектов, а также их оценку.
Я начал с того, что разделил задачи на те, что выполняются «до, между и вокруг» работы. В конечном итоге я остановился на такой схеме.
Аналогия | Реальность |
Работа вокруг работы | Административные задачи (встречи, ревью, управление проектом) |
Работа для получения работы | Получение работы (изучение информации, проведение экспериментов, определение объема, оценка, питчинг) |
Работа перед работой | Подготовка (конфигурация, установка, выбор сервисов и инфраструктуры) |
Собственно работа | Выполнение (сборка, продукт, дизайн, документация, тесты) |
Работа между работой | Итерация (итерация, отладка, рефакторинг, обслуживание, инструменты) |
Работа вне работы | Изменения (изменения, упущения, необязательные функции, расползание границ проекта) |
Работа за пределами работы | Проблемы (сюрпризы, чрезвычайные ситуации, расширение миссии) |
Работа после работы | Поддержка (хостинг, развертывание, безопасность, поддержка, обновление, исправления) |
Хотя эти аналогии примерно соответствуют реальным фазам проекта, переосмысление работы в такой абстрактной манере помогло понять, как процесс проходит в реальности, а не в идеализированном представлении.
Визуализация работы над проектом
Следующая схема — первая попытка рассмотреть «работу» в сравнении с общим объемом всего жизненного цикла проекта.
Инфографика: Дейв Стюарт
Для небольшого или среднего проекта квадраты могут представлять дни, линии — недели, маленькие серые квадраты — еженедельные встречи, а маленькие зеленые квадраты — вечера и выходные. Это не научная, а скорее примерная визуализация.
Также стоит учитывать, что мы редко работаем все восемь часов в день. Как это влияет на общую оценку?
Обратите внимание на:
- относительно небольшую долю «собственно работы» в общем объеме усилий;
- объем и долю работы «между» работой;
- количество работы «за пределами» проекта.
Анализ схемы работы над проектом
Эту примерную диаграмму можно разбить по областям и рассмотреть с математической точки зрения. Оценив временные затраты на административную, «промежуточную» и запланированную работу в процентном соотношении, можно сделать следующие выводы.
- «Запланированная работа» может составлять всего пятую часть (20%) от общего объема усилий по проекту.
- «Между» работой происходит много другой работы — это невидимые задачи, которых не избежать.
- Объем «дополнительной работы» (22%) может быть таким же, как объем запланированной работы, или даже превышать его.
- Объем «дополнительной работы» увеличивается пропорционально сложности работы (сравните желтый с бирюзовым и голубым квадратами).
- Изменения (22%) следует учитывать, хотя всегда найдутся неучтенные моменты (минимум 12%).
- Кажется, что эти изменения небольшие, но они сильно влияют на время и стоимость в общем.
Вывод
Главный вывод заключается в том, что даже при детальной оценке «работы» можно упустить большое количество «невидимых» задач. Вот несколько стратегий и мыслей, которые могут быть полезны.
- Анализируйте прошлые проекты, чтобы оценить реальное положение дел.
- Попробуйте отслеживать и записывать, сколько времени фактически заняла работа — так в дальнейшем будет проще планировать сроки.
- Изучите свои предубеждения и слабые места в оценке сроков и постарайтесь их устранить.
- Помните, что большинство из описанных «невидимых» задач встречаются в каждом проекте.
- Остерегайтесь проектов с фиксированной ценой.
Фото на обложке: AleksandarNakic / Getty Images