2. Содержание концепции web-проекта с
описанием отдельных пунктов
• Название проекта
Тут всё понятно. Как корабль назовёшь, так он и поплывёт.
• Цель проекта
• Вспоминаем дипломную работу в институте и пишем нечто подобное. Это
необходимо для четкого понимания того, для чего этот проект затевался.
Напомню, цель отображает желаемый результат. Например: создание и
реализация браузерной MMORPG «Кирпичи», получения дохода от
рекламы и продажа проекта.
• Задачи проекта
• Аналогично предыдущему, вспоминаем диплом. Это нужно для понимания
того, как этот проект осуществить. Напомню, задачи отображают
действия, которые необходимо проделать для достижения результата.
Например: исследовать рынок браузерных MMORPG, разработать
программный код, протестировать сервис.
3. • Участники проекта
• В этом пункте ФИО всех, кто участвует в создании проекта. Совет на будущее: используйте
свои реальные ФИО, так как иначе потом трудно доказать, что, например, «Зафорд
Библброкс», который писал программный код это Вы.
• Сроки проекта
• Здесь все начинающие (и даже опытные) разработчики делают ошибку. Выделяйте на
разработку в два раза больше времени, чем Вам кажется.
• Логотип и девиз
• Тут тоже всё понятно.
• Описание проекта
• Напишите несколько абзацев текста, описывающих ваш проект, подчеркивающих его
достоинства. Пишите понятно и главное увлекательно. Потом пригодится для привлечения
инвесторов или покупателей.
• Отличительные особенности проекта
• Все особенности вашего проекта. Если Вам нечего сюда писать, кроме как — «этот проект
лучший, так как мой», то можете на этом заканчивать свою деятельность web-разработчика.
• Целевая аудитория
• Опишите людей, для которых пишется проект. Например: продавцы леса города
Биробиджан.
4. •
•
•
•
•
Техническая часть
Сервер и расширения. Например, Apache 2.2+
Серверный язык и расширения. Например, PHP 5+
СУБД. Например, MySQL 5+
Ожидаемая посещаемость. Надо четко понимать, сколько народа сможет обслуживать ваш сервис
без тормозов. Например, 3000 человек в день.
• Трафик. Тут всё просто. Количество людей в день умножаем на средний вес страницы и получаем
объём трафика в день.
• Общая часть
• Кодировка. Опишите основные кодировки, используемые в вашем проекте. Совет: используйте
кодировку utf-8.
• Сжатие. Будут ли файлы сжиматься при отправке клиенту.
• Минимизация. Будут ли файлы минимизироваться (вырезаться лишние пробелы и комментарии) при
перенесения на рабочий сервер.
• Фильтр входящих данных. Очень важно определить в начале какие данные мы будем принимать от
клиента. Например, только буквы русского и латинского алфавита, цифры, знаки =_&
• Ограничение доступа. Опишите директории проекта, к которым доступ пользователям запрещен.
Например, доступ к директории scripts запрещён для всех пользователей, кроме root.
• Правила названий. Даже если Вы пишете проект один, то вначале определите, как будете называть
модули, файлы, функции и переменные. Например, для функций использовать нижнее
подчеркивание, для переменных выделение заглавными буквами.
• Правила комментирования. Например, заголовок функции в /* */, разделение функций при помощи
/--/
• Способы взаимодействия разработчиков. Например, icq.
5. • Логика приложения
• В этом пункте желательно нарисовать схему того, как будет происходить обмен данными
между частями сервиса. Конечно, пункт можно опустить, если взаимодействие
элементарное, по принципу клиент-сервер.
• Серверная часть
• В этом пункте описываются все критические настройки серверной части. Я выделяю
следующие:
• magic_quotes
• register_globals
• allow_files
•
•
•
•
•
•
•
•
Клиентская часть:
Фреймворки и плагины. Например, JQuery
Doctype. Например, strict
Поддерживаемые браузеры. Например, IE7+, Opera 9+, FF 3.5+
Поддерживаемые ОС. Например, только Windows
Поддержка телефонов
CSS. Например, всё до css3
Разрешение экрана клиента. Например, выше чем 1024*768. Прошу обратить внимание на
этот пункт. О нём обычно вспоминают в конце работы, когда видят свой «разъехавшийся»
сайт.
• Тип изображений. Например, Jpeg и Gif. Благодаря IE, этот пункт нужно тоже учитывать.
9. Цели проекта должны отвечать на вопрос, зачем данный
проект нужен. Цели проекта должны описывать бизнеспотребности и задачи, которые решаются в результате
исполнения проекта. Целями проекта могут быть:
Изменения в Компании. Например, автоматизация ряда
бизнес- процессов для повышения эффективности основной
производственной деятельности
•
Реализация стратегических планов.
Например, завоевание значительной доли растущего рынка
за счет вывода на него нового продукта.
•
Выполнение контрактов. Например, разработка
программного обеспечения по заказу.
•
Разрешение специфических проблем.
Например, доработка программного продукта в целях
приведения его в соответствие с изменениями в
законодательстве.
10. Результаты проекта отвечают на вопрос, что должно
быть получено после его завершения. Результаты проекта
должны определять:
• Какие именно бизнес- выгоды получит заказчик в результате
проекта.
• Какой продукт или услуга. Что конкретно будет произведено
по окончании проекта.
• Высокоуровневые требования. Краткое описание и при
необходимости ключевые свойства и/ или характеристики
продукта/ услуги.
11. • Иерархическая структура работ ( ИСР) ( W o r k B r e a k d o w
n S t r u c t u r e , W B S ) - ориентированная на результат
иерархическая декомпозиция работ, выполняемых командой
проекта для достижения целей проекта и необходимых
результатов. С ее помощью структурируется и определяется
все содержание проекта. Каждый следующий уровень
иерархии отражает более детальное определение элементов
проекта.