Как оценить проект?
Проекты разработки программного обеспечения почти всегда проходят последующие итерации.Клиент может добавить новые требования или предложить исправления, расширяющие масштаб проекта.И хотя объем функциональных возможностей проекта может измениться, срок сдачи проекта не должен откладываться или откладываться навсегда.Вот почему иногда сложно точно оценить программный проект, определив, сколько времени и усилий вам нужно для его завершения.К счастью, здесь есть кое-что, что может помочь.
Ваша методология работы влияет на производительность и усилия
Как разработчик вы должны знать, что существует более одной модели работы.Вы, наверное, слышали омодели Waterfallили Kanban, Lean, FDD.В предыдущих статьях мы упоминали об Agile-методе, который кажется правильным, когда дело касается управления огромными проектами.Методология Agile, хотя и была создана после Waterfall, лучше адаптирована к меняющимся требованиям.Традиционная модель предполагает более высокую стоимость итераций.
Чтобы оценить программный проект, начните с выбора модели работы, которая лучше всего соответствует этим вопросам:
- Каков объем проекта?Есть ли необходимость в быстром созданииMVP,который является приоритетом над остальными функциями?Уверен ли клиент во всех требованиях?
- Какой бюджет?
- Кто будет в команде разработчиков?
- Какие модели работы успешно использовались в прошлом с точки зрения объема, времени и стоимости?
Зачем нужна подходящая модель?
Характер модели более или менее допускает исправления и изменения во время работы над проектом.Некоторые методики не подходят для внесения изменений в середине работы.Выбирая Agile-подход, при котором работа делится на «спринты», после каждого из них вы получаете обратную связь о ходе выполнения.Таким образом, ваши оценки будут более точными, поскольку вы сможете контролировать, что делается, а что остается.Кроме того, это не проблема при внесении большого количества изменений.
Извлеките урок из своего предыдущего опыта
Наши оценки основаны на наших навыках и прошлом опыте.Взгляните на последние проекты и посмотрите, сколько времени и усилий вы вложили в них.Возможно, выбранная технология вам знакома, поэтому вы знаете механизм и возможные сложности ее использования.С другой стороны, как разработчики программного обеспечения, мы стремимся найти новые, лучшие решения, которые мы не пробовали раньше, поэтому иногда нам не хватает знаний, чтобы правильно оценить нашу работу.Тем не менее, хорошо, когда первоначальная оценка основана на вашем предыдущем сотрудничестве.
Избегайте переоценки
Разработчики могут завершить несколько проектов.Им нужно переключаться между задачами, а это может быть очень сложным.Это еще один вопрос, который следует учитывать при оценке времени и усилий — сколько проектов вы сейчас выполняете?И когда вы ответите на этот вопрос, вы также можете найти ответ на вопрос, сколько вы реально можете сделать?Слово «реально» здесь важно.Страх, что что-то совпадет и не будет доставлено, заставляет нас переоценивать необходимое время.Затем, вместо того, чтобы выполнять более мелкую задачу, как обычно, вы оцениваете, что вам понадобится целый день для этой конкретной функции.
Пересмотреть оценку
Очень часто клиенты улучшают свою первоначальную идею, пока она уже реализуется.Поэтому оптимальное решение — оценивать проект вместе с процессом разработки.Включая отзывы клиентов и вашей команды, вы можете писать код более эффективным способом, сводя к минимуму последующие усилия.Более того, с каждым изменением требований к продукту изменяется масштаб проекта и, соответственно, первоначальная оценка.Частые оценки — самый разумный выбор, и они предоставят вам самые свежие и точные результаты.
Последнее
Не забывайте сообщать клиентам обо всех препятствиях на пути.Иногда интеграция с внешним сервером может вызвать много проблем и потребовать больше времени, чем ожидалось.Вот почему лучше быть в постоянном контакте и держать всех в курсе.