20
08/2009

Закончили тут этап проекта

The English version of this post

Закрыли сегодня первый этап крупного проекта (начался в ноябре). Многому научился за это время — и в организационном плане, и в плане разработки.

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

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

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

Во-вторых, понял, что перед началом проекта обязательно нужно проводить подготовительные работы:

  1. Настроенные и готовые к работе средства коллективной разработки: система версионного контроля (svn, cvs, git, на любителя), багтрекер и средства планирования/обсуждения в отдельных или одном лице.
  2. Документация и материалы. Сюда входят ТЗ, описаниях архитектуры, интерфейса, дизайн, а также согласованные командой документы по организации кода, комментариев, базы данных и т.п.

Хаос в этих моментах приведет к хаосу во всем проекте (не путать с Доктором Хаусом ;).

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

P.S. Да, и если вам предлагают поучаствовать в проекте по разработке мессенджера за 2 месяца командой из 2-х человек, я настоятельно вам не рекомендую соглашаться. 

2 Comments_2

Насчет сроков - согласен с Вами. Пока не наткнешься сам на неполадки - не поймешь, где и что надо тестировать.
Масксимально детализировать требования заказчика не всегда возможно. Часто заказчик сам не знает что хочет, а в процессе работы у него появляются новые идеи. Был случай, когда заказчик после завершения проекта, сказал что ему надо совсем другое. Благо грамотный договор не позволил сделать это другое за те же деньги.
Оставить comment
Показать другие цифры

В тексте комментария можно использовать теги <b><i><u><s><sup><code><pre>.
Адреса сайтов автоматически становятся ссылками.

_