Почему разработчики промахиваются с оценкой? — обложка

При выборе разработчика для вашего ИТ-проекта полезно сравнить предложения от нескольких команд, чтобы принять более взвешенное решение. Но бывает, что оценки сильно различаются.

Например, команда А предложила разработать социальную сеть с видеостримингом за два месяца, а команда Б — за полгода.

Вряд ли вы подумаете, что команда А занижила оценки по ошибке. Скорее всего, вопросы возникнут к команде Б, которая дала «слишком высокие» оценки. Но так ли это на самом деле?

Для начала давайте разберёмся, почему нельзя полагаться только на оценку разработчика.

Как разработчики оценивают задачи?

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

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

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

Что включить в оценку?

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

Следовательно, при оценке проекта необходимо учитывать и дополнительно оценивать следующие этапы:

  • Аналитика (проработка требований, планирование)
  • Дизайн (создание и интеграция дизайнов)
  • Управление проектом (работа менеджера проекта)
  • Тестирование (проверка требований и дизайна, подготовка тест-кейсов, различные виды тестирования, такие как стресс-тестирование, регрессионное тестирование, тестирование на соответствие и т. д.)
  • Разработка (включая резерв времени на исправление багов)

Только с учётом всего этого можно дать более-менее точную оценку разработки проекта.

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

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

Подводим итоги

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

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

Здесь можно подробно почитать, как мы готовим оценки

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

Забронируйте звонок или напишите нам

  • Вопросы клиентов