Тщательное проектирование значительно повышает эффективность процесса разработки. Это общее место. Об этом не писал только ленивый. Но как заставить себя проектировать с нужным уровнем детализации? Как повысить эту самую тщательность? Как понять, что ты продумал будущий сайт уже достаточно подробно?
Я думаю, решение проблемы в частом прототипировании. Создавая готовую версию, волей-неволей приходится думать о разных мелочах. А ведь это и есть проектирование в деталях. Кстати, одним из ключевых принципов методологии RAD как раз является итерационное изготовление прототипов.
Бумажные прототипы хороши. Не нужно ни специальных инструментов, ни особых навыков. Рисуются они мгновенно. Их можно тестировать. На alistapart.com недавно была вдохновенная статья (англ.).
При необходимости с бумаги сайт можно перенести в Visio. Помогут штучки от Гаррета (Garrett Dimon).
Статичная версия сайта. Несмотря на то, что идея не так уж оригинальна, всерьез я задумался о статичных HTML-прототипах только после дискуссии на xpoint.ru.
Ключевой момент — создание набора страниц до разработки базы данных и программирования. Главное преимущество — при детальной проработке страниц всплывет огромное количество неучтенных нюансов. К тому же результаты такого прототипирования не пропадут: реальные материалы будут впоследствии использованы на сайте, а макеты страниц превратятся в шаблоны.
Ну и, наконец, прототипы на движке. Здесь всё понятно. Это промежуточные версии сайта с ограниченной функциональностью.
Замечу, что для каждого варианта прототипов возможен выпуск нескольких версий. Цепочки бывают длинными и интересными.
Дмитрий Сергеев, 22 года. Разрабатываю сайты на Drupal.
Артём Курапов, 14.03.2007 21:13
Давече делал эти "прототипы на движке" как раз. Сначала правда на бумаге всё нарисовал. Что приятно так то что можно фактически copy-paste'ом форм и элементов заниматься. Это значительно легче, когда функциональностей ещё не прикручено.
Плюс ещё в том что дизайнер сразу видит как программер видел общий скелет сайта и может наваять красивости, которые прикручиваются вместе с функциональностью.
Да и с функциональностью проще становится - сразу ясно какие надо данные показать, следовательно остаётся спросить с базы и записать.
Значительно ускоряется разработка.
http://kurapov.name