Глава 12. Контрольные работы

Содержание

12.1. Методические указания к курсовому проектированию
12.1.1. Цель
12.1.2. Рекомендации по выбору предметной области
12.1.3. Требования к оформлению
12.1.4. Содержание
12.1.5. Результаты
12.2. Задание на курсовое проектирование
12.2.1. Начало
12.2.2. Горячая новость
12.2.3. Добавление контента
12.2.4. Изменение контента
12.2.5. Фильтрация данных
12.2.6. Фильтрация данных автоматом
12.2.7. Аутентификация пользователей
12.2.8. Калькулятор
12.2.9. Управление содержанием пальцами
12.2.10. Литература

12.1. Методические указания к курсовому проектированию

12.1.1. Цель

Темой курсового проекта является разработка распределенной информационной системы на основе web-технологии PHP.

К распределенным системам относят клиент-серверные системы, функционирующие на основе следующих технологий:

  1. Web

  2. DCOM (Distributed Component Object Model, объектная модель распределенных компонентов)

  3. CORBA (Common Object Request Broker Architecture, стандартная архитектура брокера объектных запросов)

  4. RMI (Remote Method Invocation — вызов удаленных методов)

  5. .Net

Эти технологии обеспечивают обмен данными между объектами, представителями клиента и сервера, посредством сетевых протоколов.

 Система на основе технологии Web (web-система) — это система гипертекстовых документов, поскольку ее ресурсы связаны между собой.  Базовыми элементами web-системы являются браузер клиента, сеть и web-сервер.

Рисунок 12.1. Web-система

Web-система

С помощью специальной программы — браузера, работающем на клиентском компьютере, пользователь  может запрашивать документы web с других компьютеров сети и отображать их на экране  своего компьютера. Для просмотра документа необходимо запустить браузер, затем ввести имя документа и имя  компьютера, на котором он находится. Браузер отправляет этому компьютеру запрос на документ, который обрабатывается программным приложением, получившим название web-сервер. Web-сервер обычно работает как  служба, отслеживающий сетевую активность через специальный порт. Браузер отправляет через этот порт запросы на документ (web-страницу) в специальном формате. Web-сервер получает запрос, находит документ и отправляет его обратно браузеру.

Целью проекта является создание Web-приложения.

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

Браузерами и web-серверами используется протокол HTTP, который определяет, как браузер должен форматировать и отправлять запросы web-серверу.

Помимо установки сетевых соединений и применения протоколов, для обмена документами браузеры также выполняют функцию обработки и отображения документов. Основным языком форматирования web-страниц является язык  разметки гипертекста HTML. Он содержит тэги, определяющие способ форматирования  текста в окне браузера — шрифт, размер, цвет, а также тэги для определения ссылки на другую web-странницу.

В настоящее время развитие языка HTML прекращено. Однако существует дальнейшее развитие HTML под названием XHTML. Пока XHTML по своим возможностям сопоставим с HTML, однако предъявляет более строгие требования к синтаксису.

Важным элементом HTML является форма. Именно наличие формы отличает web-приложение от web-сайта. Форма — это часть web-страницы, в которой пользователь может вводить свою информацию. Общий принцип обработки форм состоит в том, что исполняемая страница используются web-сервером для обработки значений, введенных в форму и генерирования новой страницы HTML, которую необходимо отправить браузеру. Чаще всего в процессе обработки этих значений объекты сервера взаимодействуют  с базами данных.

Рисунок 12.2. Форма

Форма

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

Существуют два принципиально разных подхода к организации web-приложения — статический и динамический.

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

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

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

В-третьих, изменение структуры или дизайна сайта требует модификации всех опубликованных страниц.

Рисунок 12.3. Структура динамического сайта

Структура динамического сайта

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

Рисунок 12.4. Система управления контентом

Система управления контентом

Кроме того, для поддержания многих бизнес-процессов контент должен поступать извне. Информация о курсах валют или акций на биржах, различные статистические данные, новости и т.д. представляют собой так называемый распределенный контент — информацию, содержащуюся на сайтах партнеров и отображаемую на данном сайте либо в исходном виде, либо в виде ссылок на соответствующие сайты. Информация может поступать на сайт от нескольких независимых авторов, и, соответственно, зачастую будет представлена в различных форматах и по-разному оформлена.

Естественно, что поддержка всех этих функций достаточно сложна, и для ее организации возможностей статических сайтов недостаточно.

 При динамическом подходе в основу любой Web-страницы положен шаблон, определяющий отображение страницы в окне Web-браузера. Информация помещается на страницы при помощи стандартных средств, не требующих знания языка HTML, и достаточно сложных для неспециалиста процедур публикации Web-страницы.

Если сайт состоит из множества страниц или должен часто обновляться, преимущество динамической организации становится очевидным. При изменении информационного наполнения страницы или дизайна разработчикам сайта не надо переписывать всю страницу, поскольку страницы не хранятся целиком, а формируются "на лету" при обращении к ним.

Для создания динамического сайта существуют два пути.

Первый — это написание собственных сценариев, отвечающих за наполнение страницы содержанием в соответствии с нужным шаблоном и поддержку необходимых функций.

Для разработки динамических сайтов чаще всего используются такие системы и языки программирования, как ASP, PHP, Perl, С++. Контент динамических сайтов хранится обычно в базе данных, а на указанных языках пишутся программы, "на лету" генерирующие из содержимого таких баз HTML-странички, которые и видит пользователь.

Созданная таким образом система будет полностью отвечать своему назначению, однако ее разработка может потребовать много времени и усилий программистов.

Итак, статические сайты создаются относительно просто и дешево, но трудоемки и дороги в сопровождении, а кроме того, у них отсутствует целый ряд необходимых функций. Заказные динамические сайты сложны и дороги в разработке, но при удачной постановке задачи могут быть сделаны достаточно дешевыми в сопровождении.

Второй путь — воспользоваться существующими системами, так называемыми системами управления Web-контентом (CMS), например, Joomla, TYPO3. Эти системы представляют собой программное обеспечение, устанавливаемое на Web-сервере и предназначаемое для создания и обслуживания динамических Web-сайтов. Все они в том или ином объеме предполагают отделение контента от дизайна, работу с сообществами, поддержку бизнес-процессов и минимизацию программистских усилий при разработке сайтов. Все хранят контент в базах данных и управляют как контентом, так и дизайном через Web-интерфейс (рисунок 2).

CMS предлагают компромисс между этими двумя крайностями. За счет ограничений, накладываемых на логическую структуру контента, внешний вид (дизайн) и функциональные возможности создаваемых динамических сайтов, такие системы позволяют радикально снизить трудоемкость разработки и поддержки. Однако эти системы могут оказаться недостаточно гибкими, набор их возможностей — недостаточным или избыточным.

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

Цель курсового проекта — создание web-приложения предприятия статического типа  с отдельными динамическими компонентами.

12.1.2. Рекомендации по выбору предметной области

Рекомендуется проектировать web-приложение для хорошо знакомого по производственной практике предприятия.

12.1.3. Требования к оформлению

Курсовой проект должен быть оформлен в соответствии с действующими Государственными стандартами Российской Федерации.

Пояснительная записка к курсовому проекту должна быть оформлена в соответствии с действующими Государственными стандартами Российской Федерации и требованиями установленными в КрасГАУ [1].

Для обозначения текстовых и графических документов проекта согласно ГОСТ 2.201-80 устанавливается следующая структура:

КП 080801 У5 0ХХ ПЗ

Этот шифр указывается в штампе на всех листах пояснительной записки в области “Название документа”.

Шестизначный код — это номер специальности и специализации, по которой выполняется курсовой проект. В данном случае указан код специальности “Прикладная информатика в экономике” 0808. Код специализации —  01.  У5 — это код  кафедры “Информационные системы и технологии в экономике”.  Далее следует трёхзначный порядковый регистрационный номер проекта. Здесь после нуля, вместо XX, записываются две последние цифры номера зачетной книжки студента. Двухзначный буквенный код — это шифр вида документа, который записывают согласно ГОСТ 2.102-68 и ГОСТ 2.701-84. В данном случае указан шифр пояснительной записки ПЗ.

Пояснительная записка является текстовым документом, который должен быть оформлен в соответствии с требованиями, установленными ГОСТ 2.105-79, ГОСТ 2.106-68.

Титульный лист пояснительной записки оформляется  на листе формата А4. На нем выполняется рамка, ограничивающая поля: левое — 20 мм, правое, верхнее и нижнее — по 5 мм. Перенос слов на титульном листе не допускается. Точка в конце фраз не ставится. Структура титульного листа пояснительной записки приведена в [2].

Пояснительная записка выполняется на листах белой бумаги формата А4 с полями: левое — 30 мм, правое — 10 мм., верхнее — 15 мм., нижнее — 20 мм.

Содержание оформляется  на листе со штампом 40 мм. Остальные листы пояснительной записки оформляются  с штампом 15 мм. Для создания штампа используйте шаблон Forms_A4 [3].

Текст записки оформляется  шрифтом с гарнитурой Time New Roman размером 14. Интервал между строками — 1,5.

Размер шрифта для наименования разделов — 16, подразделов и пунктов — 14. Начертание шрифта для разделов, подразделов и пунктов — жирное. Интервал между строками заголовков — 2. Все заголовки выравниваются по центру.

Нумерация разделов: 1. (раздел) 1. (подраздел) 1 (пункт)

В пределах раздела нумерация рисунков сквозная. Например, Рисунок 1.1. Номер рисунка и наименование рисунка помещаются под рисунком. Выравнивание наименования — по центру.

Нумерация таблиц сквозная в пределах раздела. Например, Таблица 1.1. Слово “Таблица” пишется  в правом верхнем углу над таблицей. Ниже и по центру размещается наименование таблицы.

Приложение оформляют как продолжение пояснительной записки. Каждое приложение начинают с нового листа, в правом верхнем углу которого находится слово “Приложение” и его номер, например, Приложение 1. Ниже и по центру располагается наименование приложения.

Литература

[1] Матюшев В.В., Бастрон Т.Н., Шатурина Л.П.. Положение по оформлению текстовой и графической части учебных и научных работ (общие требования). polo_kgau.pdf

[2] Пример титульного листа пояснительной записки курсовой работы. titul_KP.doc  

[3] Шаблоны штампов. Forms_A4.exe  

12.1.4. Содержание

Ниже перечислены разделы курсового проекта и указано, что должно быть отражено в каждом из них.

12.1.4.1. Введение

Введение должно включать следующие пункты.

(1) Наименование предприятия, для которого  разрабатывается web-приложение. Например, компания  ООО “Сибирские пельмени”.

(2) Название проекта. Например, промо-сайт “Жарко с красноярскими пельменями”.

(3) Цель проекта. Например, создание промо-сайта  для рекламной компании по продвижению пельменей.  

(4) Основание проекта. Например, задание преподавателя. Хотя здесь может быть и ссылка на договор с руководством предприятия на выполнение определенной работы, в котором в свою очередь есть ссылка на техническое задание.

(5) Используемые программные средства. Например, PHP, MySQL, Dreamweaver, TYPO3 и т.п.

12.1.4.2. Концепция web-приложения

Этот раздел курсового проекта представляет собой почти бизнес-план. Всегда ли нужен бизнес-план? Не всегда. В проектах с небольшим бюджетом и несложными задачами вполне сгодится простое описание концепции будущего web-приложения. Бизнес-план имеет самостоятельное значение, если вы ожидаете от своего приложения измеряемую выгоду (прибыль, увеличение покупателей). Бизнес-план необходим и в ситуации поиска финансирования интернет-проекта, когда вам предстоит разговаривать с возможными инвесторами.

Бизнес-план на создание web-приложения или его концепция  — это документ, содержащий аргументированные ответы на вопросы:

  1. что даст создание web-приложения?

  2. в чем будут заключаться его функции?

  3. что потребуется  в процессе его создания и поддержки?

  4. что вы теряете в случае низкой эффективности интернет-проекта?

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

12.1.4.2.1. Введение

(6) Кратко и четко определите миссию и цели вашей интернет-деятельности.

Это не должно быть очевидное желание достичь успеха и заработать много рублей! То есть нужно определиться с тем, зачем вашей компании нужно web-приложение. Ниже приведены правильные примеры мотиваций для организации бизнеса в Интернете. Внимание! Не надо переписывать все эти примеры в свой курсовой.

  1. Интернет поможет устанавливать новые и поддерживать старые связи на рынке. Как информационная среда Интернет может оптимизировать процесс деловой переписки, а сам факт существования у компании виртуального ресурса упрощает общение, позволяя избежать стандартных  процедур ознакомления с ее деятельностью.

  2. Интернет может стать действенным инструментом распространения информации о вашем бизнесе и компании. Сайт может предоставить всем желающим документы, фото, аудио и видеоматериалы, необходимые для формирования правильного представления о деятельности и возможности компании.

  3. Интернет поможет производить информационную и сервисную поддержку клиентов и партнеров. Посредством сайта можно не только оперативно отвечать на вопросы, возникающие у пользователей ваших продуктов и услуг, но и формировать базу часто задаваемых вопросов (FAQ).

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

  5. Интернет поможет реализовать удаленную демонстрацию товара, то есть организовать и расширить активность компании в направлении продвижения продаж.

  6. Интернет может стать инструментом обучения и повышения квалификации сотрудников компании и партнеров. Глобальная сеть позволяет не только передавать информацию, но инициировать живое общение на сайте.

  7. Интернет может быть каналом обмена информацией с удаленными представительствами и торговыми точками, а в идеале  — инструментом их управления. Для компаний с региональными  представительствами  или даже подразделениями в одном городе Интернет может стать альтернативным каналом обмена информацией, в том числе документацией, презентационными материалами, инструкциями, внутренними документами.

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

  9. Интернет поможет реализовывать оперативную обратную связь с клиентами в любой точке мира.  Сайт позволяет  не только давать информацию клиентам, но и проводить маркетинговые исследования. Опросы, анкеты, анализ статистики посещений помогут вам скорректировать работу  и максимально приблизить ее результаты к запросам целевых аудиторий.

  10. Интернет поможет взаимодействовать с традиционными и электронными средствами массовой информации.

Но…

  1. Интернет не поможет превратить убыточное предприятие в прибыльное. Он не панацея от неудач. Неэффективное предприятие не станет приносит прибыль от одного лишь факта переноса бизнеса в гиперпространство.

  2. Интернет не поможет быстро собрать большую аудиторию потенциальных клиентов или партнеров и потратить на это мало денег.

  3. Не получиться открыть новый бизнес в Интернете и стать лидером рынка. Время дешевых решений  прошло!

  4. Интернет не поможет опередить конкурентов. Сам факт наличия  у компании сайта не решает никаких проблем. Если за созданием сайта не стоит точный расчет и серьезная аргументация, он рискует превратиться в убыточное предприятие.

12.1.4.2.2. Компания

Кратко укажите следующие сведения о компании для которой проектируется web-приложение:

(7) Основные этапы развития компании

(8) Основные достижения

(9) Текущее положение дел

(10) Перспективы роста и успешного развития компании

(11) Форма собственности

(12) Местонахождение (юридический адрес)

(13) Организационная структура компании: ключевые фигуры, должности

(14) Стратегические партнеры: названия компаний и основных поставщиков, с которыми установлены партнерские отношения, способствующие росту конкурентоспособности вашей компании

(15) Цели и задачи: список важнейших краткосрочных и долгосрочных целей и задач

12.1.4.2.3. Описание продукта

(16) Описание продукта (услуги)

Приведите описание предлагаемого вами продукта (услуги) предоставляемого интернет-аудитории. Зарегистрирована ли торговая марка вашего продукта (услуги)? Имеет ли компания  патенты  на этот продукт (услугу)?

(17) Потребительские свойства продукта (услуги)

Укажите потребительские свойства  продукта (услуги): качество, упаковка, отличительные свойства, цена, себестоимость, марка. Покажите, как именно Интернет выявит преимущества  вашего продукта.

(18) Потребительская  ценность продукта (услуги)

Укажите  специфические преимущества, которые получат посетители сайта, приобретая предлагаемый продукт у вас.

(19) Сравнительный анализ  

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

12.1.4.2.4. Описание web-приложения

 Представьте web-приложение по следующей схеме:

(20) Класс web-приложения

Это может быть портал, корпоративное представительство, электронная витрина, сайт-визитка и др. [KOSA01].

(21) Основное предназначение (решаемые приложением задачи)

(22) Модель электронного бизнеса

Укажите модель на которую ориентировано web-приложение: B2B и/или В2С.

  1. Модель B2B (бизнес для бизнеса) позволяет создать развитый бизнес при относительно небольшом числе участников. Достоинства этой модели: привлечение целевых аудиторий не требует больших затрат, поддержка пользователей может производится меньшими, чем в остальных случаях силами, работа с предприятиями приносит наибольшую прибыль за счет больших оборотов и крупных заказов.

  2. Модель B2C (бизнес для покупателей) предназначена для сайтов по продаже услуг и товаров частным лицам. Достоинства модели B2C: возможность широкого охвата целевых аудиторий (товары и услуги массового потребления), возможность наращивания спектра товаров без необходимости увеличения торговых площадей,  непостоянство покупательской аудитории, и, как  следствие, возможность легкого привлечения на сайт “чужих” клиентов, возможность изучения покупательского спроса и персонификация информации для каждого покупателя. Отрицательные факторы развития B2C: непостоянство покупательской аудитории, и как результат необходимость осуществлять постоянную рекламную поддержку, небольшие суммы отдельных покупок, высокие расходы на сервис (доставка, упаковка, поддержка пользователей), относительно небольшое количество пользователей Интернета в России, отсутствие у народа практики безналичных платежей, отсутствии  распространенных систем электронных платежей.

Однако следует помнить, что рамки описанных моделей электронного бизнеса достаточно условны. То есть с помощью сайта можно реализовать сразу несколько моделей бизнеса.

(23) Тип web-приложения

  1. Динамическое — web-система, в которой web-страницы генерируются программой в ответ на запрос пользователя. Такая система позволяет быстро и корректно добавлять и модифицировать информацию, динамически изменять, полностью или частично, дизайн, организовывать сложный поиск с учетом множества параметров. Вся информация размещается в БД. Все это важно для сайтов, на которых часто обновляются большие объемы информации. При большой посещаемости сайта могут возникнуть проблемы, связанные с чрезмерной загрузкой сервера. Еще могут возникнуть проблемы с тем, что далеко не каждый провайдер обеспечит размещение БД, программ, работающих с базами или сервера, поддерживающего существующие технологии создания динамических сайтов и взаимодействия с БД. К тому же далеко не каждой фирме (и уж тем более частному лицу) требуется создавать свою БД и несколько раз в день менять в ней информацию.

  2. Статическое — web-система, состоящая из полностью готовых к загрузке web-страниц. У полностью статического сайта существует два преимущества: его может разместить любой провайдер (так как не требуется размещения никаких программных компонентов), скорость загрузки статических страниц гораздо выше, чем скорость генерации любой динамической страницы. Недостатки же статического сайта очевидны: нет возможности управлять сайтом, модифицировать на нем информацию, сложно менять оформление, сложно следить за корректностью работы всех ссылок и правильностью отображения графики.

  3. Статическое с отдельными динамическими компонентами — почти все web-страницы существуют в виде предварительно отформатированных неизменяемых файлов. Часть страниц создается программой в ответ на запрос пользователя. Например, страницы с гостевой книгой, с формами анкетирования, с форумами. Статический сайт с программными компонентами (PHP-сценарии) позволяет частично решить проблемы обычного статического сайта. Так сайт торговой фирмы вполне может быть статическим. Нет никакой необходимости хранить текстовые описания всех подразделений этой компании в БД. Даже если этих подразделений несколько сотен. Хотя должна быть возможность ежедневно обновлять прайс-листы, должен быть поиск, должны работать анкеты и обновляться новости. А это требует создания специализированного программного обеспечения. К тому же все равно остаются проблемы, связанные с проверкой корректности ссылок, единообразия оформления всех страниц и т.д. Несмотря на все это, для большинства компаний такой тип сайта является наиболее приемлемым вариантом.

(24) Информационная структура

Укажите информационные разделы вашего web-приложения. Например, раздел “Каталог” — развернутое описание товаров и услуг, раздел “Новости сайта” — изменения на сайте, раздел “Новости компании”…

(25) Программное обеспечение

Укажите необходимое для функционирования web-приложения программное обеспечение: операционная система (Windows, UNIX), СУБД (MySQL), интерпретатор для серверных сценариев (PHP, Perl, ASP), система управления контентом TYPO3.

(26) Порядок обслуживания бизнес-сайта

Количество человек, задействованных в обслуживании, квалификация специалистов.

12.1.4.2.5. Технологическая база web-приложения

(27) Тип хостинга

Выберите тип размещения web-приложения у провайдера:

  1. бесплатный хостинг-сервис,

  2. размещение на сервере хостинг-провайдера (виртуальный хостинг),

  3. размещение co-location сервера в сети провайдера (подключение собственного компьютера к локальной сети провайдера).

(28) Провайдер хостинга

Выберите реального провайдера хостинга с учетом  потребностей вашего web-приложения. Например, провайдер www.centre.ru. Если для вашего сайта необходима работа сценариев PHP и СУБД MySQL, то провайдер должен обеспечивать функционирование PHP и MySQL [hosting].

(29) Собственное доменное имя

Выберите доменное имя вашего приложения, например, www.pelmeni.ru. Следуйте правилам:

  1. Краткость и простота — короткие адреса легче запоминаются, в них сложнее сделать ошибку: Gazeta.ru.

  2. Описание — хорошо, когда по адресу можно догадаться о содержании сайта. Имя компании не всегда является достаточным пояснением: beerclub.com тумана не напустит.

  3. Запоминаемость — лучшие адреса добавляют к простоте элемент интереса — частенько игру слов, как в www.anekdotov.net - который поможет посетителям помнить это название через часы, дни и месяцы. Идеально, когда адрес можно запомнить, услышав в разговоре или по радио.

Обязательно проверьте свободно ли выбранное вами доменное имя на сайте http://www.nic.ru/

(30) Тарифный план хостинга

Выберите тарифный план хостинга у выбранного провайдера. Подсчитайте годовые затраты на хостинг с учетом цены  регистрации домена. Например, у провайдера www.peterhost.ru можно выбрать тариф BETA, который включает дисковое пространство на 320 Мб, стоимость 1 мес. 9$,  стоимость 12 мес. 92$, регистрация доменного имени второго уровня (зона ru) 23$, поддержка MySQL, Perl, PHP, MyPHPAdmin. Итого годовые затраты на хостинг = 115$. [hosting]

(31) Провайдер интернет-соединения

Выберите реального провайдера для интернет-соединения для того города, где находится ваша компания. Например, корпорация «СибЧелендж» http://www.scn.ru/

(32) Тарифный план интернет-соединения

Выберите тарифный план интернет-соединения (постоянное или соединение на сеанс связи). Подсчитайте годовые затраты. Например, для постоянного подключения через «СибЧелендж» со скоростью 32 Кбит/с  плата в месяц составит 36$. Итого за год=12*36+96 (регистрационная плата)=528$ [hosting]

12.1.4.2.6. План проекта

(33) Составьте план создания web-приложения с помощью программы MS Project.

Как? Читайте [PROJ1] и [4]. При составлении плана используйте шаблон “Разработка программного обеспечения” и типовые работы из [KOVA01].

(34) Распечатайте сетевой график, диаграмму Ганта проекта.

12.1.4.2.7. Оценка стоимости проекта

(35) Выполните оценку стоимости вашего проекта на год с помощью программы MS Project или Excel — [PROJ1], [4].

Составление начните с установления сроков реализации проекта (не более 2-х месяцев) и выбора основных категорий затрат, которые планируются в рамках проекта.

Все затраты делятся  на капитальные и операционные.

Применительно к интернет-технологии в состав капитальных затрат входят затраты на основные средства и нематериальные активы.

Виды основных средств интернет-проекта: рабочие станции, серверы, сетевое оборудование, офисное оборудование.

Виды нематериальных активов: ПО для веб-серверов, ПО для рабочих станций.

В состав операционных затрат входят: расходы на заработную плату персонала в Красноярске (разработка и поддержка), расходы на информационное наполнение, расходы на аренду офиса, расходы на маркетинг и рекламу, расходы на хостинг, интернет-соединение, прочие расходы (управленческие расходы, расходы на обучение персонала, на расходные материалы).

(36) Распечатайте парочку отчетов отражающих стоимость проекта — [PROJ1], [4].

12.1.4.2.8. Литература

[KOSA01], [KOSA02], [site01], [site02], [site03], [hosting (здесь уже устаревшие тарифы!)], [KOVA01], [PROJ01]

[4] Гультяев А.К. MS Project 2002.Управление проектами

12.1.4.3. 2. Спецификация проекта

Этот раздел посвящён проектированию web-приложения.

Основные документы этапа проектирования — техническая концепция (ТК), техническое задание (ТЗ), эскизный проект (ЭП), технический проект (ТП). Стандарты ISO 6592:1986, ISO 9294:1990-TO, ISO 9127:1987, ГОСТ 34.201-89 кроме ТК и ТЗ выделяют еще около 30 разных документов, создаваемых при проектировании сложного программного средства. В совокупности эти документы являются составными частями эскизного и технического проектов. Но сложившаяся практика разработки сайтов и web-приложений показывает, что разработчики, увы, не разделяют ТК, ТЗ, ЭП, ТП.  В результате в техническое задание включаются и основные бизнес-идеи, и требования заказчика, и способы реализации требований исполнителей, и алгоритмы взаимодействия частей системы. Эскизным проектом  обычно называют эскизы типовых страниц сайта. Про технический проект знают, что “есть такой”.

По сути, ТК, ТЗ, ЭП, ТП имеют принципиальные отличия:

  1. техническая концепция  устанавливает цели, задачи и идеи, которые должны быть реализованы при создании сайта, а также фиксирует ограничения, накладываемые аудиторией, администраторами, ресурсами заказчика.  Задача ТК — установить, какая деятельность и в какой мере нуждается в автоматизации. То есть, ТК — ответ на вопрос о том, “что и зачем делать”;

  2. техническое задание фиксирует требования к решениям, которые должны быть реализованы при создании сайта. Задача ТЗ — определить способы автоматизации. То есть, ТЗ отвечает на вопрос “как делать”;

  3. эскизный проект показывает конкретные способы реализации требований в части архитектуры и интерфейсов. ЭП показывает, как именно и в какой последовательности разработчики собираются выполнить требования ТЗ заказчика. ЭП уточняет то, “как должно работать приложение”;

  4. технический проект уточняет полученные интерфейсные и архитектурные решения на уровне функциональной структуры и алгоритмов взаимодействия отдельных программных элементов между собой. То есть  главный вопрос ТП — “как будет работать”.

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

Спецификация проекта — документ этапа эскизного и технического проектирования.  Спецификация проекта составляется не для заказчика, а для конкретных исполнителей. Поэтому спецификация  описывает весь проект предельно подробно. Задачами спецификации являются: разработка проектных  решений по структуре навигации и маршрутам посетителей, разработка проектных решений по архитектуре и интерфейсам сайта, разработка алгоритмов и функциональной модели взаимодействия данных, разработка рабочей документации системы, описание информационного наполнения сайта.

12.1.4.3.1. Решения в области программного обеспечения

Структура информационной системы

(37) Архитектурный шаблон

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

Выберите используемый в вашем проекте архитектурный шаблон:

  1. Thin Web Client

  2. Thick Web Client

  3. Web Delivery

(38) Представьте структуру системы в виде графической схемы — например, см. рисунок. 3.

Рисунок 12.5. Структура web-приложения

Структура web-приложения

1. Коля clicks on a link to from his web browser; his web browser sends a request for http://www.pelmeni.ru/price.php

2. Apache gets the request for price.php. It knows that .php files are handled by the PHP preprocessor, so it tells PHP to deal with it.

3. price.php is a PHP script that contains commands. One of these commands is to open a connection to a database and grab some data. PHP knows how to talk to the database, so it does its thing.

4. The data comes back from the database, and price.php does something to format the data. Typically this would be to make it look pretty before formatting it into HTML.

5. The HTML goes back to Apache.

6. Apache sends this back to browser Коли, as the response to his request. Коля now sees a pretty web page containing some information from a database.

(39) Опишите как представленные на схеме п. 37 программные компоненты взаимодействуют — например, см. комментарии к Рис. 3.

Функции программного обеспечения web-приложения

(40) При описании используемых программных средств придерживайтесь следующего плана:

  1. назначение

  2. версия

  3. общие характеристики

  4. достоинства

  5. недостатки

  6. цена

  7. вид лицензии

  8. адрес сайта компании разработчика.

(41) Выполните описание операционной системы, которая установлена у выбранного вами в п. 28. хостинг-провайдера. Это обычно FreeBSD и т. п. — см. п. 40.

(42) Выполните описание операционной системы, которая используется вами для разработки приложения. Это обычно Windows XP — см. п. 40.

(43) Выполните описание СУБД MySQL. — см. п. 40.

(44) Выполните описание  PHP-Engine  — см. п. 40.

(45) Выполните описание  web-сервера Apache  — см. п. 40.

(46) Выполните описание редактора Dreamweaver — см. п. 40.

12.1.4.3.2. Литература

[dw_2007], [Лицензии_GNU], [Лицензии_MS]

12.1.4.3.3. Решения в области организации базы данных

Опишите физическую структуры базы данных используемых для хранения данных. Используйте программу phpMyAdmin.

(47) Приведите перечень файлов/таблиц БД.

(48) Приведите имена столбцов, типы данных, первичные ключи, внешние ключи файлов/таблиц БД.

(49) Создайте и распечатайте с помощью CASE-средства  схему базы данных на физическом уровне — [mysql_erwin].

12.1.4.3.4. Решения в области файловой структуры

Рисунок 12.6. Дерево каталогов

Дерево каталогов

(50) Представьте файловую структура сайта в виде дерева каталогов, в которых размещены HTML-файлы, PHP-файлы, графические файлы — см. Рис. 4. Укажите имена и назначение каталогов.

(51) Для каждого каталога укажите имена принадлежащих ему файлов.

12.1.4.3.5. Решения в области функциональной структуры

Типичное web-приложение может включать следующие разделы:

  1. главная страница —  содержит ссылки на основные разделы сайта;

  2. каталог — развернутое описание товаров (услуг);

  3. прайс-лист — краткая информация о наличии товаров, связанная с каталогом функционально;

  4. новости компании и сайта — самые значимые коммерческие предложения и изменения;

  5. информация о компании — время, место и порядок работы;

  6. справочная информация — новости рынка, обзоры и советы;

  7. сопутствующая информация — анекдоты, конкурсы, мнения и т.п.;

  8. оформление и оплата заказов (корзина с информацией о выбранных товарах и инструментарий оплаты);

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

  10. конференции — обмен мнений и ответы на вопросы между посетителями и службой поддержки сайта;

  11. подписка — возможность получить заказанную информацию по электронной почте,

  12. регистрация   — запоминание сведений о посетителе с целью его узнавания при повторном посещении;

  13. сравнение товаров между собой — унифицированный с точки зрения однотипных  характеристик инструмент выбора.

12.1.4.3.6. Навигационная схема web-приложения

(52) Представьте разделы приложения в виде навигационной схемы, с указанием связей между ними.

Сервисная структура web-приложения

Сервисная структура  демонстрирует, какие возможности по обработке информации и интерактивному взаимодействию вы предоставляете пользователю. Для типичного web-приложения  сервисная структура может  включать: оформление и оплату заказа, обратная связь в виде гостевой книги, аукционы и т.п.

(53) Представьте сервисную структуру приложения в виде графической схемы — например, см. Рис.6.

(54) Опишите как представленные на схеме п. 52 разделы сайта взаимодействуют с пользователем и между собой. Например, описание процессов на Рис.6:

Сначала покупка:

1. Клиент просматривает каталог изделий.

2. Клиент добавляет элементы в корзину покупок.

3. Клиент подтверждает покупку.

Далее обработка оплаты клиента (Payment Processing):

4. Транзакция отправляется к компании по обработке оплаты (клиринговому центру).

5. Компания проверяет количество денег на расчетном счете клиента и снимает указанное количество с его счета.

6. Компания платит нам (после того, как снимет свою плату за посредничество)

Далее идет выполнение заказа (Order Fulfillment):

7. Склад собирает изделия в заказе для отгрузки.        

8. Компания-курьер отправляет товары клиенту; покупка закончена

12.1.4.4. Результаты разработки

12.1.4.4.1. Спецификация программного кода

(55) Распечатайте окончательные тексты PHP-сценариев используемые в проекте.

12.1.4.4.2. Электронная документация программного кода

(56) С помощью системы phpDocumentor  создайте электронное описание программного кода проекта.

(57) Распечатайте страницы  документации созданные с помощью phpDocumentor.

12.1.4.4.3. Экранные формы разделов web-приложения

(58) Распечатайте основные экранные формы разделов приложения (главной страницы, каталог, новости и др.).

12.1.4.5. Развитие web-приложения

Интернет — это интерактивная и динамичная информационная среда. Web-приложение как часть этой среды обладает такими же свойствами. Этими свойствами надо уметь пользоваться и их нельзя игнорировать: создав самое совершенное приложение, необходимо сразу же  позаботиться о его развитии во времени.  Развитие web-приложения необходимо по ряду причин: объективных и субъективных. К первым относится все, что определяет динамику состояния рынка. Ваше приложение должно отслеживать эту динамику, изменяя свою форму и содержание в зависимости  от рыночной конъюнктуры. К субъективным причинам можно отнести то, что связано с характеристиками конкретных людей, которые интересуются вашим приложением.

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

12.1.4.5.1. План рекламных мероприятий

(59) Портрет целевой аудитории

Составьте портрет целевой аудитории для привлечения которой будут проводиться информационно-рекламные мероприятия. — см. [KISE, стр. 13-17]

(60) Виды рекламы

Выберите как минимум три способа представления информации целевым аудиториям из следующих видов рекламы:

  1. регистрация сайта в поисковых системах,

  2. регистрация сайта в рейтингах,  

  3. баннерная реклама,

  4. обмен текстовыми ссылками,

  5. массовая рассылка электронной почты,

  6. непрямая реклама

(61) Подготовка к регистрации

Если выбрана регистрация web-приложения в поисковых системах, то подготовьте сайт к регистрации  — см. [KISE,  стр. 74-82]

(62) Поисковые системы

Если выбрана регистрация web-приложения в поисковых системах, то представьте список поисковых систем в которых вы планируете регистрироваться. — см. [KISE, стр. 83-84]

(63) Рейтинги

Если выбрана регистрация web-приложения в рейтингах, то представьте список рейтингов в которых вы планируете регистрироваться. — см. [KISE, стр. 86-89]

(64) Баннеры

Если выбрана баннерная реклама, то выберите способ размещения баннеров. — см. [KISE, стр. 98-105]

(65) Ссылки

Если выбран обмен текстовыми ссылками, то создайте на своем сайте страницу для ссылок. — см. [KISE, стр. 106-107]

(66) Spam

Если выбрана массовая рассылка Email, то выберите технологию ее рассылки (самостоятельно или  через специализированную фирму). — см. [KISE, стр. 115-116]

(67)  Off-line

Если выбрана непрямая реклама, то укажите планируемые приемы. — см. [KISE, стр. 121-126]

12.1.4.5.2. Литература

[KISE] Ю.В. Киселев. Электронная коммерция. Практическое руководство.

[Энциклопедия Интернет-рекламы]

[KOSA03]

12.1.4.5.3. Доставка товара

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

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

Существуют следующие формы доставки товаров:

  1. почтовая доставка (обычная и экспресс-почта) — удобно использовать для малогабаритных и относительно прочных товаров, например, дисков, книг.

  2. курьерская доставка (собственная или силами специализированных фирм) уместна во всех случаях и предпочтительней, когда вы продаете хрупкие, крупногабаритные или скоропортящиеся продукты. Например, рояли, живые цветы.

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

(68) Форма доставки

Укажите форму доставки товара клиенту вашего web-приложения. Обоснуйте выбор.

12.1.4.5.4. Платежная система

Все способы оплаты делятся на три группы:

  1. оплата при доставке (оплата наличными, пластиковые карты),

  2. предоплата (банковский перевод, почтовый перевод, пользовательский лицевой счет),

  3. в режиме реального времени (пластиковые карты, электронная наличность).

(69) Форма оплаты

Выберите форму оплаты  на вашем web-приложении. Обоснуйте выбор.

12.1.4.5.5. Литература

[KOSA02]

12.1.4.6. ЗАКЛЮЧЕНИЕ

Напишите несколько абзацев, в которых…

12.1.4.7. Список литературы

[5] Ковалев А., Курдюмов И. Управление проектом по созданию интернет-сайта. М.: Альпина Паблишер, 2001. — 337 с.

12.1.5. Результаты

1. Действующая модель web-приложения на локальном компьютере.

2. Пояснительная записка к курсовой работе на бумаге.

3. Файл пояснительной записки по курсовой работе в формате pdf.

4. Файл проекта с расширением mpp.