Прежде
всего предположим, что речь идет не о домашней странице, а о «сайте на
заказ» - основной отличительный элемент подобного проекта в том, что
вам приходится общаться с клиентом (John Doe, Вася Пупкин). Идея
разработки сайта могла прийти клиенту (Васе) в любой момент времени
(приснилось в страшном сне, бабка нашептала – есть варианты…) – но
собственно цель видна смутно, предназначение определится ближе к концу
игры… повод – как же, это престижно, у Пети есь, у мани есть… Вася
решился и пошел искать креэйтера – благо верстать html-страницы умеет
любой мало-мальски уважающий себя студент, да и школьники нынче не
слабые. Ура! студент нашелся, и у студента возникает к Васе первый
вопрос: А о чем собственно? Какая ТЕМА сайта? С трудом, после долгих
намеков и перемигиваний выясняется, что Вася хочет сайт про свою жизнь,
богатую приключениями… и даже готов платить…
Но!
– стоимость сайта по-прежнему определяется относительно сложного
коэффициента человеко/дней – и студенту необходимо определить объем
работы… и тут начинается самое интересное.
Вася
объем работы определить не может, поскольку «сайт» является для него
одним объектом, который вовсе не подразделяется на такие вещи, как
html-страницы, java-скрипты, формы и Вася знать ничего не желает о
ТАБЛИЦАХ СТИЛЕЙ!
Вариант первый – линейная наработка проекта – когда студент рисует
первую страницу, утверждает дизайн, а потом добавляет кнопки и генерит
остальные страницы по мере общения с Васей.
Недостатки
этого варианта видны сразу, и все их перечислять смысла нет. Основное –
проблема, если навигация исполнена в виде графических меню; проблема –
если графика с логотипами грамотно порезана где-нибудь в ImageReady, а
у Васи идеи по тому, что будет и чего не будет на первой странице,
возникают и меняются несколько раз в день и собственно до самого конца
работы над проектом; проблема, если Вася имеет необходимость в таких
подструктурах сайта, как feedback (чаты, форумы, etc.), обработка
информации в базах данных, автоматизация новостийных обновлений … много
чего может придумать Вася.
Вариант
второй – стребовать с Васи договор о том, что делать и чего не делать и
аванс, сделать все по пунктам договора ничего не меняя, прийти с
друзьями забрать оплату и потерять Васю как потенциального заказчика
навеки… Потому что ТАК НЕ БЫВАЕТ! – что бы по ходу проекта ничего не
менялось… и Вася конечно обидится.
В
выигрыше как всегда золотая середина. Разрабатывается структура сайта,
некоторое время правится, потом принимается относительно стабильный
вариант – и только после этого студент садится рисовать дизайн первой
страницы.
2. СТРУКТУРА
Опять
же есть варианты. Умные люди придумали достаточное количество
программных продуктов для проектирования структур любого уровня
сложности и глобальности. В порядке упрощения:
а) Rational Rose – глобальный и массивный инструмент для проектирования
систем любой сложности. Имеет средства для моделирования, анализа,
реверс инжиниринга (когда не по модели строется проект, а наоборот –
затягивается проект, который анализируется кейсом, и тот генерит модель
проекта, включая связи между элементами и динамику обновлений). Один из
Add-In`ов Rational Rose – создание и анализ WEB – проектов. Rational
Rose поддерживает язык UML (UNIVERSAL modeling language), не сказать,
что невозможно сложный в освоении… но уж больно это глобально. Может
быть оправдано при разработке корпоративных проектов высокого уровня
сложности. Создателям домашних страничек можно не пугаться - Rational
Rose им не понадобится.
б) ER Win – чудная кейс система, которую тоже можно использовать для
проектирования, имеет Add-Ins для генерации WEB-проектов и для Reverse
Engineering . незаменим для любителей XML или всяческих других
сложностей. Простой интерфейс, легко разобраться, что где нажимать, что
бы нарисовать схему и расставить связи… Начать можно именно с того, что
просто втянуть любой (не очень большой) проект в ER Win и посмотреть,
как сам кейс отрисует модель, посмотреть свойства созданных объектов,
типы связей… Рекомендую!
в) Любой редактор, в котором можно рисовать квадратики, стрелочки-кружочки и набирать буковки J. Именно таким способом и были созданы все мои структуры…
Итак,
что есть наша первая страница? Если это презентационный сайт, первая
страница может быть рекламно-феерическая, но все же даже после
просмотра всех ваших гениальных флеш-роликов юзер должен увидеть хотя
бы самый простой вариант меню для навигации. Юзабилити вашего творения,
его графическое и информационное наполнение - материал для других
статей, здесь же рассматривается один из самых основных и сложных шагов
создания сайта - проектирование. Если это информационнный сайт, то меню
уже с первой страници будет достаточно сложным.
На
самом простом варианте структуры сайта указываются основные элементы -
навигационное меню, место для логотипа, слоган, навигационное меню по
опорным разделам, стрелочками можно указывать связи-ссылки на
"внутренние" страницы сайта, пунктирными линиями - логические связи
между элементами... Ясная и продуманная структура (как правило) -
гарантия того, что вы не столкнетесь с ситуацией, когда заказчик
попросит вас "расширить ваше уже построенное 100-этажное здание всего
(!!!) на пять метров", не понимая, что для этого требуется разрушить
все здание и изменения вносить начиная с фундамента.
Нарисуем
все блоки, укажем, что еще не было оговорено (чтобы не забыть) – такую
схему уже можно показывать заказчику – пусть утверждает названия
кнопок, заголовки, наличие сервисов…
На
этой же структуре схематически указываются уровни вложености. И совсем
уже по-хорошему каждый исправленый вариант структуры проекта должен
иметь дату последней модификации и подпись Васи Пупкина, подтверждающую
изменения.
|