Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Информационные технологии и платформы разработки информационных систем

Содержание:

Введение

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

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

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

фирме ООО «Бизнеском», занимающей одно из лидирующих мест на компьютерном рынке, необходимо иметь собственный Интернет-ресурс.

Главной целью работы является разработка информационно-программного обеспечения автоматизации обслуживания клиентов для ООО «Бизнеском, которое бы являлось «отображением» деятельности компании и средством связи с клиентами и партнерами в сети Интернет.

Можно выделить следующие основные задачи:

- изучение деятельности фирмы ООО «Бизнеском», поиск проблем, предлагаемые технические решения (в области курсовой работы) для того, чтобы сайт удовлетворял требованиям компании в максимальной степени;

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

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

1 Системный анализ предметной области

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

Схема вывода «сорит» – это средство генерации следствий на основе гипотетического образа объекта проектирования.

Определим основные понятия.

Сущность – все то, о чем можно нечто утверждать (все, о чем что-то можно говорить на естественном языке). Сущности могут образовывать классы – совокупности, объединенные с помощью общего имени.

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

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

В высказываниях используются связки «есть» и «не есть». Эти связки интерпретируются как:

1) «Есть» – когда эта связка объединяет два класса, она интерпретируется как отношение включения сущностей, образующих эти классы.

2) «Не есть» – когда эта связка объединяет два класса, она интерпретируется как отношение не включения сущностей, образующих эти классы.

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

1) всякий S есть P.

2) всякий S не есть P.

3) некоторый S есть P.

4) некоторый S не есть P.

S будем называть субъектом высказывания, а P - предикатом высказывания.

На основании приведённых проблем и описания разрабатываемой системы построим унарные высказывания

Использованные унарные высказывания:

1) W0 – Интернет-сайт.

2) W1 – Интернет-сайт, удовлетворяющий требованиям заказчика.

3) W2 – Интернет-сайт, оперирующий с БД организации.

4) W3 – Интернет-сайт, предоставляющий удаленный доступ к информации.

5) W4 – Интернет-сайт, имеющий приятный дизайн.

6) W5 – Интернет-сайт, автоматизирующий работу менеджеров.

7) W6 – Интернет-сайт, привлекающий новых клиентов.

8) W7 - Интернет-сайт, приносящий прибыль.

На основе унарных высказываний сформируем бинарные высказывания, в которых задействованы традиционные для формальной логики кванторы:

1) J, W0, W1 – некоторые Интернет-сайты есть сайты удовлетворяющие требованиям заказчика.

2) А, W0, W3 – всякий Интернет-сайт есть сайт, предоставляющий удаленный доступ к информации.

3) А, W6, W7 – всякий Интернет-сайт привлекающий новых клиентов есть сайт приносящий прибыль.

4) J, W4, W6 – некоторые Интернет-сайты, имеющие приятный дизайн есть сайты привлекающие новых клиентов.

5) J, W2, W5 – некоторые Интернет-сайты, оперирующие с БД организации есть сайты, автоматизирующие работу менеджеров.

6) J, W1, W7 – некоторые Интернет-сайты, удовлетворяющие требованиям заказчика есть сайты, приносящие прибыль.

Рисунок 1.1 - Ввод начальных данных

Рисунок 1.2 - Построение сорита

Анализ построенного сорита. Выбор ключевых сущностей.

Используя разрабатываемый Интернет-сайт, фирма стремится автоматизировать работу персонала и привлечь новых клиентов. Эти условия были заложены в сорит.

На верхних уровнях построенного сорита мы получили в качестве ключевой сущности W0(Интернет-сайт). Кроме того, сорит указал нам, что сущность W4(приятный дизайн).

Таким образом, мы имеем две ключевые сущности:

1) W4 – Интернет-сайт, имеющий приятный дизайн.

2) W0 – Интернет-сайт.

Выводы сорита с выбранными сущностями.

Для сущности W 4 – «W4 – Интернет-сайт, имеющий приятный дизайн»:

1) Некоторые Интернет-сайты, имеющие приятный дизайн, есть сайты привлекающие новых клиентов (J,4,6).

2) Некоторые Интернет-сайты, имеющие приятный дизайн есть сайты, приносящие прибыль (J,4,7).

Для сущности W 0 – «W0 – Интернет-сайт»:

1) Некоторые Интернет-сайты, есть сайты удовлетворяющие требованиям заказчика (J,0,1).

2) Всякие Интернет-сайты есть сайты, предоставляющие удаленный доступ к информации (А,0,3).

Концепция разрабатываемой системы.

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

2 Концептуальное проектирование БД

2.1 Система как «чёрный ящик»

Согласно этой модели, представленной на рисунке 2.1, на вход поступают данные из базы данных сайта. На выходе же – выгруженные данные на сайт.

Рисунок 2.1 – Модель «Черный ящик»

2.2 Структура проектируемой системы

ИПО автоматизации обслуживания клиентов предназначено для автоматизации деятельности организации и прогнозирования электронных продаж ООО «Бизнеском».

Данная разработка очень важна для ООО «Бизнеском», с точки зрения руководства, так как оно позволяет сократить затраты на продажу товара, а также изучить спрос и спрогнозировать дальнейшие продажи.

Функционирование на предприятии осуществляется внутри её структурных сегментов с выходом во внешнюю среду для продажи и покупки товаров. На рисунке 2.2 представлена структура организации.

1- отношение директора к руководителям, 2 - отношение руководителя к сотрудникам, 3 - отношение сотрудников к руководителю, 4 - отношение руководителя к клиенту,

5 - отношение сотрудников к клиенту;

Рисунок 2.2 – Структура предприятия

Пояснения к рисунку 2.2 («цифренные» обозначения на рисунке соответствуют пунктам):

  1. определяет миссию предприятия; формирует цели компании; контролирует выполнение поставленных задач; производит внутренний аудит; занимается наиболее важными делами, дает распоряжения руководителям отделов (в форме личных бесед, письменных указаний и электронных писем);
  2. ставит конкретные задачи перед сотрудниками; планирует работу отдела; контролирует работу каждого конкретного сотрудника;
  3. каждые сотрудник отчитывается перед своим руководителем (еженедельные «планерки»);
  4. предоставляет отчет клиенту о проделанной работе;
  5. занимается непосредственной работой с клиентом.

Рассмотрим структурную единицу организации отдел продаж, изображенную на рисунке 2.3.

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

Клиент

Компания(ООО«Бизнеском»)

Обращается за товаром или услугой

Менеджер

Оформляет документы на

Отдел системного администрирования

Склад

Сервисный центр

продажу или услугу

Рисунок 2.3 – Структура отдела продаж

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

2.3 SADT-диаграмма разработки ИПО автоматизации обслуживания клиентов

Оптимальным вариантом описания разрабатываемой системы является функциональная SADT – модель.

SADT (Structured Analysis and Design Technique – методология структурного анализа и проектирования) – это методология, разработанная специально для того, чтобы облегчить описание и понимание искусственных систем, попадающих в разряд средней сложности. Описание системы с помощью SADT называется моделью.[2]

SADT – модель системы автоматизации тестирования представлена на рисунке графическим языком. Графический язык SADT организует естественный язык вполне определённым и однозначным образом и обеспечивает структуру и полную семантику естественному языку модели. Представленная модель сосредоточена на функциях системы и поэтому является функциональной. Функциональная модель представляет с требуемой степенью детализации систему функций, которые в свою очередь отражают свои взаимоотношения через объекты системы.[3]

Рассмотрим структурную SADT-диаграмму системы проверки правильности и последовательности соединений компонентов. Прежде всего сформулируем вопросы, на которые SADT-диаграмма должна отвечать:

1) каковы действия пользователя?

2) каковы условия протекания процесса проверки?

3) кто контролирует процесс?

4) на каких этапах требуется указать параметры компонентов?

5) на каких этапах требуется анализ соединения компонентов?

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

Уровень, на котором рассматривается работа блока автоматизированной системы управления продажами, представлен на рисунке 2.4. Он состоит из четырех блоков, каждый из которых расписан подробнее на рисунках 2.5, 2.6, 2.7, 2,8.

Рисунок 2.4 – Нулевой уровень

Рисунок 2.5 – Работа ИПО автоматизации обслуживания клиентов

Рисунок 2.6 – Узел А1

Рисунок 2.7 – Узел А2

Рисунок 2.8 – Узел А3

2.4 Техническое задание

Наименование и область применения (использования).

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

1) Основание для разработки.

Решение руководства предприятия ООО «Бизнеском» и кафедры САПР (Системы Автоматизированного Проектирования) на основе развития современных технологий, обеспечивающих возможность создания данной системы.

2) Цель и назначение разработки.

Создание ИПО автоматизации обслуживания клиентов позволит осуществлять продажи через интернет.

Дерево целей представлено на рисунке 2.9.

3) Источники разработки.

Научная литература, относящаяся к веб-программированию, базам

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

4) Технические требования:

- безопасность заказов обеспечивается согласно законам конкретной страны;

- поток данных осуществляется с учетом защиты от взлома;

- прогнозирование осуществляется при помощи наиболее эффективных методов.

5) Экономические показатели.

Конечная цена готового изделия зависит от машинных часов и материалов, а также от сложности разработки.

ИПО автоматизации обслуживания клиентов

Разработать метод для обмена данных между БД сайта и 1С: Предприятие

Изучить существующие форматы БД

Изучить методы для анализа бизнеса

Выбрать несколько наиболее подходящих методов

Выбрать метод для прогнозирования

Осуществить прогнозирование продаж

Анализировать результаты

Использовать данные из БД сайта для построения прогнозов

Проверить эффективность их применения на практике

Рисунок 2.9 – Дерево целей

6) Стадии и этапы разработки.

В таблице 2.1 представлены основные этапы разработки системы интеграции.

Экспертиза на стадиях:

- технического предложения;

- компьютерного проектирования;

- технического проектирования.

7) Порядок контроля и приемки.

Методические описания, которые согласовываются с организацией заказчиком. Отчетность также согласовывается с организацией – заказчиком.

Приложение к техническому заданию:

листинг;

скриншоты выполнения работ;

результаты испытаний заказов на сайте;

документация;

описание ПО, используемое при разработке.

Таблица 2.1 – Стадии и этапы разработки

Этапы разработки

Сроки

Предпроектная деятельность

1-2 недели

Разработка технического задания

2 недели

Разработка технического предложения

2 недели

Компьютерное проектирование

3-4 недели

Техническое проектирование

2 недели

Рабочий проект

2 недели

Испытание и доводка

3-4 недели

2.5 Виды обеспечения для разрабатываемой системы

1) Техническое обеспечение.

Техническое обеспечение исследуемой системы включает в себя наличие сервера в фирме для формирования БД со следующими параметрами:

- процессор не ниже 2-х ядерного;

- не менее 2 ГБ ОЗУ;

- жесткий диск не менее 200 ГБ;

- сетевая карта;

- видеоадаптер не ниже 512 Мб виртуальной памяти;

- монитор с разрешением не ниже 1024х768 High Color (16-bit или 32-bit);

- подключение к сети Интернет.

Также должен функционировать интернет-магазин фирмы на виртуальном сервере для проверки работы ИПО автоматизации обслуживания клиентов.

2) Математическое обеспечение.

Математическое обеспечение системы рассматривается со стороны построения прогнозов продаж и построения графиков.

3) Программное обеспечение.

Программным обеспечением для данной системы будет являться любой интернет-браузер (Mozilla, Opera, Explorer), среда управления предприятием, среды разработки. Необходима серверная платформа Denwer в которую входит: Apache 2.2.14 (IPv6 enabled), MySQL 5.1., PHP 5.3.1, phpMyAdmin 3.2.4, FileZilla FTP Server 0.9.33. Система может функционировать под следующей ОС: Microsoft Windows XP, Vista, 7.

4) Лингвистическое обеспечение.

Лингвистическим обеспечением является язык программирования PHP. Используется для написание веб-клиента, который обеспечивает взаимодействие между клиентами, агенствами-посредниками и менеджерами.

PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста») — скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов.[7]

5) Методическое обеспечение.

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

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

6) Информационное обеспечение.

Для проектирования требуется информационно – справочная документация, такая как ГОСТы, книги по веб-программированию, по базам данным и другие.

7) Организационное обеспечение.

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

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

8) Правовое обеспечение.

В правовое обеспечение системы входит исключительное право владения и распространения самого проекта, которое будет принадлежать предприятию-заказчику. Так же к правовому обеспечению следует отнести различные нормативно-правовые документы для региона, применительно которого выполняются Правила, поскольку согласно им будут формироваться выводы для использования в системе отчётностей. Документация должна соответствовать всем стандартам и ГОСТам, существующим в РФ.

2.6 Эталонная система моделирования ИПО автоматизации обслуживания клиентов

В ходе проделанного анализа проектной деятельности, который основывался на понятии “треугольника Голбота Фреге” была получена концепция разрабатываемой системы. После получения концепции по теории “треугольника Голбота Фреге” мы выходим на “модель денотата”, а именно на эталонную модель состоящая из шести подсистемы, которые представлены на рисунке 2.10.[5]

ИПО автоматизации обслуживания клиентов

Подсистема подготовки выгрузки

Выгрузка данных

Подсистема настройки выгрузки

Подсистема проверки выгрузки

Указание сайта, на который выгружаем данные

Проверка правильности переданных данных

Внесение пароля БД сайта

Подсистема заполнения каталога на сайте

Прием данных

Заполнение БД товаров

Заполнение БД виртуального сервера

Выбор нужной БД

Сообщение об операции

Сохранение структуры каталога товаров

Указание все ли товары выгружать

Вывод результатов на сайте

Рисунок 2.10 – Эталонная система

2.7 Схема шагов по проектированию САПР

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

Самым важным этапом проектной деятельности является постановка цели. В данном случае – это создание ИПО автоматизации обслуживания.

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

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

Начало

Постановка цели

Создание ИПО автоматизации обслуживания клиентов, позволяющего осуществлять обмен данными

Удовлетворяет условиям

Произвести анализ результатов

Вывод результатов

Конец

Доработка

Испытания

нет

да

Рисунок 2.11 - Блок-схема алгоритма создания ИПО автоматизации обслуживания клиентов

2.8 Вывод

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

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

3 Логическое проектирование БД

3.1 Описание инфологической модели

Сущностью инфологического этапа проектирования является установление соответствия между состоянием предметной области, его восприятием и представлением в БД. На этапе инфологического проектирования используется неформальная модель предметной области типа «сущность – связь». Это модель позволяет моделировать объекты ПО, взаимоотношения объектов. Основное назначение неформальной модели «сущность – связь» является семантическое описание предметной области и представление информации для обоснования выбора видов моделей и структур данных, которые в дальнейшем будут использованы в системе. Для построения модели типа «сущность – связь» используются три основных конструктивных элемента для представления составляющих предметная область – сущность, атрибут и связь

При анализе предметной области были выделены следующие основные сущности:

Принтера, типы принтеров, копиры, мониторы, расходные материалы(фотобарабаны, ракеля, зарядные валы, тонер), комплектующие(процессоры, видеокарты, модули памяти, материнские платы, жесткие диски), заказы.

Рассмотрим подробнее таблицы и поля базы данных.

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

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

В таблице mag_stat расположена информация о статусе заказа:

- в обработке;

- ожидание оплаты;

- формирование заказа;

- отправка заказа;

- готов к отгрузке;

- доставлен;

В таблице mag_zak расположена информация о деталях заказа. Номер заказа, количество товара, дата принятия, состояние, дата исполнения, статус архива.

В таблице mod расположена информация из которой формируется меню и текст на главной странице сайта.

В таблице nas расположена информация о настройках сайта. Email и пароль администратора, отображение прайса, денежных единиц, настройки комментариев.

В таблице users расположена информация о пользователях, а именно о администраторе. Номер, icq, email, имя, пароль, информация о себе, ip-адрес.

3.2 Связи между сущностями

Описание связей между некоторыми сущностями представлено в таблице 3.1.

Таблица 3.1 Описание связей между сущностями

Родительская сущность

Дочерняя сущность

Описание

Тип связи

Тип принтера

Принтеры

Принтеры бывают нескольких видов

1:М

Принтеры

Заказ

Принтер входит в заказ

1:М

Родительская сущность

Дочерняя сущность

Описание

Тип связи

Видеокарта

Заказ

Видеокарты входят в заказ

1:М

Тип Комплектующих

Процессор

Существуют различные комплектующие

1:М

Процессор

Заказ

Процессор входит в заказ

1:М

Тип Расходных материалов

Тонер

Существуют различные расходные материалы

1:М

Тонер

Заказ

Тонер входит в заказ

1:М

Зарядный вал

Заказ

Зарядный вал входит в заказ

1:М

3.3 Разработка даталогической модели

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

имеют связи между собой.

При отображении инфологической модели в даталогическую сущности

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

Таблица 3.2 Используемые стандартные типы полей

Тип поля

Диапазон значений.

varchar

Символьные значения длиной до 8.000 символов.

int

Целочисленные значения в диапазоне

от до -1.

4 Физическое проектирование БД

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

Структура базы данных интернет-магазина представлена на рисунке 4.1.

Рисунок 4.1 – Структура базы данных интернет-магазина

5 Диаграмма вариантов использования (прецедентов, use-case)

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

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

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

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

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

Суть данной диаграммы состоит в следующем: проектируемая система представляется в виде множества так называемых вариантов использования, предоставляемых системой множеству актеров или сущностей, взаимодействующих с системой. При этом актером (actor) или действующим лицом называется любая сущность, взаимодействующая с системой извне. Это может быть человек, техническое устройство, программа или любая другая система, которая может служить источником воздействия на моделируемую систему так, как определит сам разработчик. В свою очередь, вариант использования (use case) служит для описания сервисов, которые система предоставляет актеру. Другими словами, каждый вариант использования определяет некоторый набор действий, совершаемый системой при диалоге с актером.

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

На рисунке представленном ниже, изображена диаграмма вариантов использования для интернет-магазина. Клиент - все люди, желающие воспользоваться услугами интернет-магазина; интернет-магазин – предоставляет онлайн услуги по продаже товара. Работники склада – проверяют наличие товара на складе и передают заказ курьеру. Курьер – доставляет заказ клиенту. Электронная система – проводит платежи.

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

Основным вариантом использования служит “заказ товара”. Для получения товара, клиент смотрит в каталог товаров и выбирает нужный ему товар, поэтому “заказ товара”, включает (include) “просмотр каталога”. После просмотра каталога, клиенту необходимо сформировать заказ. Затем администратор проверяет наличие товара с помощью работников склада, и в том случае, если товар есть на складе, обновляет статус заказа и отправляет клиенту счёт. Чтобы оплатить счёт, клиент пользуется электронной системой, чтобы сделать это онлайн.

Тем временем работник склада передаёт заказ курьеру, а курьер доставляет товар клиенту.

Рисунок 5.1 - Диаграмма вариантов использования

6 Диаграммы последовательности

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

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

На рисунке 6.1 представлена диаграмма последовательности. Клиент зашёл на сайт интернет-магазина. Просмотрев каталог, он формирует заказ. Далее он заказывает товар, и электронная система предъявляет ему счёт. Клиент оплачивает счёт с помощью электронных денег. Через электронную систему курьер узнаёт о заказе и доставляет товар клиенту.

Рисунок 6.1 - Диаграмма последовательности

7 Диаграммы деятельности (активности)

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

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

На рисунке 11.1 представлена диаграмма деятельности для клиента в процессе выдачи товара.

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

Рисунок 7.1 - Диаграмма деятельности

8 Диаграмма классов

Диаграмма классов позволяет создавать логическое представление системы, на основе которого создается исходный код описанных классов.

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

Когда говорят о данной диаграмме, имеют в виду статическую структурную модель проектируемой системы. Поэтому диаграмму классов принято считать графическим представленном таких структурных взаимосвязей логической модели системы, которые не зависят от времени.

Диаграмма классов состоит из множества элементов, которые в совокупности отражают декларативные знания о предметной области. Эти знания интерпретируются в базовых понятиях языка UML, таких как классы, интерфейсы и отношения между ними и их составляющими компонентами.

Данная диаграмма показывает взаимосвязи между сущностями интерне-магазина, описывает внутреннюю структуру и типы отношений.

Работники – включает в себя всех работников магазина: администратор, электронная система, работники склада, курьер. Главным атрибутом класса является должность.

Администратор (Case worker) – является ключевой фигурой, так как взаимодействует с актерами в бизнес системе. Главным атрибутом является ФИО.

Электронная система – принимает платежи клиентов и информирует администратора о результате.

Работники склада – проверяют наличие товара и передают заказ в службу доставки. Главным атрибутом является: ФИО.

Курьер – принимает заказ от работников склада и доставляет заказ клиенту. Главным атрибутом является: ФИО.

Каталог (Business Entity) – перечень всего товара, представленного в интернет-магазине, и его цена. Главным атрибутом класса является: наименование товара.

Заказ – в заказе указывается только номер заказа, дата заказа и номер клиента. Главный атрибут: номер заказа.

Состав заказа– номер заказа, код товара и его количество. Главный атрибут: код товара.

Диаграмма классов представлена на рисунке 8.1.

Рисунок 8.1 - Диаграмма классов

9 Диаграммы кооперации, состояний

9.1 Диаграмма кооперации

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

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

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

На рисунке 9.1 представлена диаграмма кооперации, сформированная исходя из диаграммы последовательности.

Рисунок 9.1 - Диаграмма коопераций

9.2 Диаграмма состояний

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

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

На рисунке представлена диаграмма состояний, которая отображает деятельность администратора видео-проката. Заметим, что любая деятельность администратора начинается из состояния « Ожидание».

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

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

Рисунок 9.2 - Диаграмма состояний

10 Количественное обоснование выбора СУБД и языка программирования

10.1 Выбор Web-cepвepa

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

Для взаимодействия клиентского программного обеспечения (браузера) с серверным приложением необходимо существование программы Web- cepвepa. Наиболее популярными Web-серверами на данное время являются серверы Apache и Microsoft Internet Information Server.

Microsoft Internet Information Server является программным обеспечением, функционирующем под управлением ОС Windows NT и представляет собой набор трудно разделяемых компонент, таких как FTP- сервер, telnet-cepeep и т.д. Microsoft Internet Information Server - платное

программное обеспечение. Однако по некоторым позициям проигрывает Web- серверу Apache.

Apache является самым широко распространенным Web-сервером в сети Интернет. Базовый дистрибутив работает быстро, распространяется бесплатно и имеет полный набор функций.

Высокая производительность, надежность, безопасность, бесплатная модель распространения - основные причины, сделавшие Apache одним из

самых популярных современных Web-серверов.

Разработка сервера Apache основывается на ранней версии сервера NCSA. Реализация сервера Apache существуют как под ОС Windows, так и под Unix-системы. В данной работе использовалась версия Apache 1.3.31 win 32.

10.2 Выбор СУБД

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

Oracle в настоящее время - это СУБД номер один на рынке СУБД для корпоративных информационных систем. [4] Высокая надежность и производительность являются качествами, которые оптимальным образом подходят для крупных и средних предприятий, где необходимо автоматизировать десятки рабочих мест и обеспечить обработку большого количества документов. Существуют различные поставки СУБД для обеспечения практически любых требований пользователя.

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

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

Механизмы масштабирования в СУБД Oracle последней версии позволяют безгранично увеличивать мощность и скорость работы сервера Oracle и своих приложений, просто добавляя новые и новые узлы кластера. Это не требует остановки работающих приложений, не требует переписывания старых приложений, разработанных для обычной одно-машинной архитектуры. Кроме того, выход из строя отдельных узлов кластера также не приводит к остановке приложения.

Встраивание в СУБД Oracle JavaVM, полномасштабная поддержка серверных технологий (Java Server Pages, Java-cepвлеты, модули Enterprise JavaBeans, интерфейсы прикладного программирования CORBA), привело к тому, что Oracle на сегодняшний день де-факто является стандартом СУБД для Internet.

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

и способен обеспечивать поддержку как баз данных уровня корпорации (Windows 2000 DataCenter, 32-процессорные комплексы, адресация до 64 Гбайт оперативной памяти), так и персональных баз данных. Как было объявлено, после выхода 64-разрядной версии Windows 2000, SQL Server станет первым продуктом из семейства Microsoft BackOffice, для которого будет выпущена 64-разрядная версия [6].

PostgreSQL - это объектно-реляционная система управления, базами данных (ORDBMS) (по-русски ОРСУБД или просто СУБД) основанная на POSTGRES,_Версии 4.2, которая была разработана в Научном Компьютерном Департаменте Беркли Калифорнийского Университета. Проект POSTGRES, под руководством профессора Майкла Стоунбрейкера (Michael Stonebraker), был поддержан Агентством Расширенных Оборонных Исследовательских Проектов (Defense Advanced Research Projects Agency (DARPA)), Офисом Армейских Исследований (Army Research Office (ARO)), Национальным Научным Фондом (National Science Foundation (NSF)), а также ESL, Inc.

PostgreSQL является прямым потомком с открытым исходным кодом от оригинального кода, сделанного в Беркли. СУБД предоставляет поддержку

SQL92/SQL99 и другие современные возможности.

POSTGRES является пионером во многих объектно-реляционных аспектах, появившихся теперь в некоторых коммерческих СУБД.

Традиционные реляционные СУБД (RDBMS) поддерживают модель данных, которая составляет коллекцию поименованных кортежей, содержащих атрибуты заданного типа. В современных коммерческих системах, к возможным типам относятся числа с плавающей точкой, целые числа, символьные строки, денежные-типы и даты. Это обычно приводит к тому, что данная модель является неадекватной для будущих приложений обработки данных. Реляционная модель успешно заменяет предыдущие модели отчасти в силу "Спартанской простоты". Однако, такая простота далает реализацию определённых приложений очень трудной. PostgreSQL предлагает существенное увеличение мощи СУБД, через внедрение следующих дополнительных аспектов, которые позволяют пользователям легко расширять систему:

- наследование;

- типы данных;

- функции.

Другие возможности, предоставляющие дополнительные удобства:

- ограничения целостности;

- триггеры;

- правила;

- транзакционная целостность.

Все эти особенности помещают PostgreSQL в категорию СУБД, известную как объектно-реляционные (object-relation) . Заметим, что здесь есть отличие от тех объектно-ориентированных (object-oriented) СУБД, которые в основном поддерживают традиционные языки реляционных СУБД. Однако, PostgreSQL имеет некоторые объектно-ориентированные возможности, это важно в мире реляционных СУБД. Фактически, некоторые коммерческие СУБД только недавно заимели встроенные возможности, которые были открыты в PostgreSQL [8].

MySQL является небольшим компактным и простым в использовании сервером баз данных, идеальным для приложений малого и среднего размера. MySQL доступна на ряде платформ: UNIX. Windows NT и Windows 95/98 [7].

Основные преимущества MySQL:

1) Поддержка различный языков - MySQL поддерживает кодировки почти всех европейских языков, а также русского языка. MySQL также может выдавать сообщения об ошибках на этих языках.

2) Простые API доступа клиентов к базе данных - приложения баз данных MySQL могут быть написаны на таких языках, как С, PERL, РНР.

3) Хранение больших таблиц - каждая таблица хранится в виде отдельного файла. Таким образом, максимальный размер таблицы равен максимальному размеру файла, допускаемого операционной системой. Каждая же база данных (состоящая из одной и более таблиц) хранится в отдельном каталоге.

4) MySQL является free software.

Полностью многопоточное использование ядерных нитей. Это означает, что пакет может легко использовать много CPUs, если они есть.

Интерфейсы для языков С, C++, Eiffel, Java, Perl, РНР, Python и Tel.

Работает на многих различных платформах.

5) Много типов полей: целые со знаком или без него длиной 1, 2, 3, 4 и 8 байт, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET и ENUM.

6) Очень быстрые объединения, использующие оптимизированное однопроходное объединение многих таблиц.

7) Полная поддержка операторов и функций в частях запроса SELECT и WHERE.

Например: mysql> SELECT CONCAT(first_name, " ", last_name) FROM tbl name WHERE income/dependents > 10000 AND age > 30.

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

9) Полная поддержка предложений SQL GROUP BY и ORDER BY. Поддержка групповых функций (COUNT(), COUNT(DISTINCT ...), AVG(), STD(), SUM(), MAX() и MIN()).

10) Поддержка LEFT OUTER JOIN и RIGHT OUTER JOIN с синтаксисами ANSI SQL и ODBC.

11) Можно смешивать таблицы из разных баз данных в одном запросе.

12) Привилегии и система паролей, которая является очень гибкой и безопасной, и позволяет проверку, основанную на имени хоста. Пароли безопасны потому, что вся передача пароля шифрована, когда Вы соединяетесь с сервером.

13) ODBC (Open-DataBase-Connectivity) поддерживается для Win32 (с исходниками). Все функции ODBC 2.5 и многие другие реализованы. Например, можно использовать MS Access для связи с сервером MySQL.

14) Очень быстрые дисковые таблицы B-tree с индексным сжатием.

15) Можно иметь до 32 индексов на таблицу. Каждый индекс может состоять от 1 до 16 столбцов или частей столбцов. Максимальная индексная длина 500 байт (это может быть изменено при компиляции MySQL). Индекс может использовать префикс поля CHAR или VARCHAR.

16) Записи фиксированной и переменной длины.

17) Таблицы в памяти, которые используются как временные таблицы.

18) Поддержка поистине огромных объемов данных. Известен случай использования MySQL на 60000 таблиц, хранящих около 5000000000 строк.

19) Все столбцы имеют значения по умолчанию. Вы можете использовать вызов INSERT, чтобы вставить подмножество столбцов таблицы. Те столбцы, которым явно не заданы значения, будут автоматически установлены к их значениям по умолчанию;

20) Для переносимости использованы GNU Automake, Autoconf и Libtool.

21) Пакет написан на С и C++. Оттестирован на всех распространенных компиляторах этих языков.

22) Очень быстрая поточно-безопасная система управления памятью.

23) Никаких утечек памяти. MySQL тестировался с помощью Purify, коммерческого детектора утечек памяти.

24) Есть myisamchk, очень быстрая утилита для проверки таблицы, оптимизации и ремонта. Все функциональные возможности myisamchk также доступны через интерфейс SQL.

25) Полная поддержка для нескольких различных наборов символов, включая ISO-8859-1 (Latin 1), german, big5, ujis и много других.

26) Все данные сохранены в выбранном наборе символов. Все сравнения для нормальных столбцов нечувствительны к регистру.

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

28) Псевдонимы на таблицах и именах столбцов доступны как в стандарте SQL92.

29) DELETE, INSERT, REPLACE и UPDATE возвращают число строк, которые были изменены (обработаны). Можно взамен вернуть число согласованных строк, устанавливая флажок при соединении с сервером.

30) Имена функции не сталкиваются с именами столбцов или таблиц. Например, ABS представляет собой имеющее силу имя столбца. Единственное ограничение: для обращения к функции никакие пробелы не позволяются между именем функции и символом скобки ('('), который следует за ним.

31) Все программы пакета MySQL понимают параметры командной строки —help или -? для выдачи справки о параметрах запуска конкретной программы.

32) Клиенты могут соединяться с сервером MySQL, используя все мыслимые способы, допустимые в сегодняшних сетях: сокеты TCP/IP, сокеты Unix (под Unix) или даже именованные каналы (под NT).

33) MySQL-специфичная команда SHOW может использоваться, чтобы получить информацию относительно баз данных, таблиц и индексов. Команда EXPLAIN может использоваться, чтобы определить, как именно оптимизатор решает запрос.

34) MySQL очень надежен. Благодаря перечисленным достоинствам и самое главное, тому, что пакет бесплатный, выбор в работе был сделан в его пользу. Использовался продукт с номером версии 4.1.8 [11].

10.3 Выбор языков программирования

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

Основными инструментами разработчика являются технологии JSP (Java Server Pages), ASP(Active Server Pages), язык программирования Perl, межплатформенный язык сценариев РНР. JSP - достаточно сложный в изучении и использовании язык. ASP основан на синтаксисе VB Script. Он имеет несколько десятков встроенных функций, использует вследствие этого COM-объекты; помимо этого, он ориентирован исключительно на работу под ОС Windows. Язык программирования Perl предоставляет массу возможностей для разработчика, но при этом сложен в работе с использованием баз данных.

РНР доступен для большинства операционных систем, включая Linux, многие модификации Unix (такие, как HP-UX, Solaris и OpenBSD), Microsoft Windows, Mac OS X, RISC OS, и многих других. Также в РНР включена поддержка большинства современных вебсерверов, таких, как Apache, Microsoft Internet Information Server, Personal Web Server, серверов Netscape и iPlanet, сервера Oreilly Website Pro, Caudium, Xitami, OmniHTTPd и многих других. Для большинства серверов РНР поставляется в качестве модуля, для других, поддерживающих стандарт CGI, РНР может функционировать в

качестве процессора CGI.

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

РНР способен не только выдавать HTML. Возможности РНР включают формирование изображений, файлов PDF и даже роликов Flash (с использованием libswf и Ming), создаваемых "на лету". РНР также способен выдавать любые текстовые данные, такие, как XHTML и другие XML-файлы. РНР способен осуществлять автоматическую генерацию таких файлов и сохранять их в файловой системе вашего сервера вместо того, чтобы отдавать клиенту, организуя, таким образом, кэш динамического содержания, расположенный на стороне сервера.

В РНР включена поддержка DBX для работы на абстрактном уровне, так что вы можете работать с любой базой данных, использующих DBX. Кроме того, РНР поддерживает ODBC (Open Database Connection standard), таким образом, вы можете работать с любой базой данных, поддерживающей этот всемирно признанный стандарт [12].

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

РНР также поддерживает "общение" с другими сервисами с использованием таких протоколов, как LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (на платформах Windows) и многих других.

Кроме того, существует возможность работать с сетевыми сокетами "напрямую". РНР поддерживает стандарт обмена сложными структурами данных WDDX.

Обращая внимание на взаимодействие между различными языками, следует упомянуть о поддержке объектов Java и возможности их использования в качестве объектов РНР. Для доступа к удаленным объектам вы можете использовать расширение CORBA.

Таблица 10.1 СУБД, поддерживаемые РНР

Adabas D

Ingres

Oracle (OCI7 и

OCI8)

dBase

InterBase

Ovrimos

Empress

FrontBase

PostgreSQL

FilePro (только чтение)

mSQL

Solid

Hyperwave

Direct MS-SQL

Sybase

IBM DB2

MySQL

Velocis

Язык РНР, в отличии от других подобных интерпретаторов имеет очень много функций для работы с наиболее популярными SQL-серверами. Помимо всего прочего этот язык свободно распространяемый (бесплатный). Выбор в работе пал именно на этот инструмент версии РНР-4.4.0.

Дополнительные инструментальные средства

Как известно, РНР изначально был языком, встраиваемым в HTML. Таким образом, скрипты, написанные на РНР, содержали в себе смесь РНР-кода и HTML. Это было удобно, когда речь шла о небольших проектах, в которых интерпретатор занимался тем, что подставлял в страницу общие для всего сайта «куски html» и подставлял некоторые переменные (например, текущую дату или значение, пришедшее из формы). Со временем проекты стали расти.

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

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

Решение вышеозначенной задачи нашлось в области Объектно Ориентированного Проектирования, а именно в схеме Model/View/Controller (МVС). MVC предлагает разделять логику модели (Model), логику представления (View) и бизнес-логику (Controller). В нашем случае, то есть в веб-проектах, в большинстве случаев мы уже имеем отделенную логику модели базу данных. Как известно, СУБД имеют собственные методы поддержки баз данных, что позволяет вынести из скриптов логику модели. Теперь остается решить, как отделить бизнес логику от логики представления. Выражение «логика представления» очень хорошо сочетается с выражением «markup language» (язык разметки). Остался третий компонент — controller, то есть то, что всем управляет. На эту роль очень хорошо подходит РНР.

10.4 Реализация MVC в WEB

Итак, мы имеем три компонента, давайте посмотрим, как все это должно работать. При поступлении запроса начинает работать РНР-скрипт (Controller). Исходя из полученных параметров, он запрашивает данные у базы данных (Model), затем выбирает шаблон (View).

Взаимодействие компонентов MVC представлено на рисунке 10.2.

Рисунок 10.1 – Классическая схема MVC

11 Разработка интернет-магазина

11.1 Технологии разработки Интернет-ресурсов

Технологии разработки Интернет-ресурсов основаны на двух подходах.

Первый подход подразумевает статическую верстку информации в гипертекст по стандартам.

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

Второй подход разработки сайтов - это создание динамических сайтов. При этом Html-страница формируется в результате работы какого-нибудь скрипта (программы, написанной на каком-либо языке программирования и выполняемой на Web-сервере). Страница формируется в соответствии с запросом клиента.

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

Однако в таком случае мы уже не говорим о структуре данных.

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

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

В системах с динамическим содержанием обычно существует две подсистемы:

- отображения информации (осуществляет генерацию Web-страниц для предоставления их пользователям в соответствии с полученным запросом);

- управления информацией (осуществляет различные манипуляции с публикуемой информацией, предоставляет интерфейс администратора Web- сайта).

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

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

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

Обе системы должны быть расположены на Web-сервере, что позволит редактировать сайт в online режиме.

Итак, создание Интернет-ресурса разбивается на три больших этапа:

1) Разработка пользовательского интерфейса.

2) Разработка баз данных.

3) Разработка связующей системы РНР-программ.

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

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

11.2 Взаимодействие между модулями программных средств

Модель распределенных вычислений в рамках Web технологий в случае реализации доступа к базе данных на стороне сервера можно представить так, как это представлено на рисунке 11.1

Рисунок 11.1 Модель доступа к базе данных

Из рисунка видно, что в состав Web-приложения баз данных входит компонент, который реализуют РНР скриптом. Однако это не единственный компонент таких приложений. Кроме него в состав приложения входит компонент отображения результатов обработки базы данных. Его часто реализуют на языке HTML.

11.3 Структурная модель сайта

Структурно Интернет-ресурс ООО «Бизнеском» состоит из:

  • главной страницы сайта;
  • каталога товаров;
  • корзины;
  • раздела о компании;
  • каталогов с графическими файлами для формирования страниц и файлом таблицы стилей;
  • каталога копировальных аппаратов;
  • каталога мониторов;
  • каталога компьютеров;
  • каталога принтеров;
  • каталога расходных материалов;
  • объекта формирующего «шапку» основных и тематических страниц со ссылками по сайту;
  • объекта, формирующего нижнюю часть всех основных и тематических страниц со ссылками по сайту;
  • объекта, формирующего нижнюю часть всех остальных страниц кроме основных и тематических страниц со ссылками по сайту;
  • базы данных;
  • модуля доступа к базе данных;
  • модуля обработки формы и записи в базу данных;
  • модуль чтения базы данных и вывода информации.

Интернет-ресурс компании ООО «Бизнеском» организован из 5 основных и множества информационных страниц.

Инфологическая модель сайта представлена на рисунке 11.1.

Основные страницы:

- Index.php – главная страница содержит общую информацию о Интернет-ресурсе и компании ООО «Бизнеском»;

- adm.php – административная часть сайта, в которой менеджер сможет просматривать заказы покупателей, добавлять и изменять категории и товары;

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

- d.php – страница, обеспечивающая работу форм заказа товаров из корзины покупателя.

- db.php – страница, обеспечивающая взаимодействие сайта с базой данных.

Рисунок 11.1 - Инфологическая модель Интернет-ресурса ООО «Бизнеском»

11.4 Проектирование баз данных

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

Для разработки интернет-магазина был локальный сервер Denwer. Установим данный пакет, после чего в браузере откроется окно, как на рисунке 11.2. Далее необходимо зайти в браузер, ввести в адресной строке http://localhost и перейти по ссылке «Заведение новых БД и пользователей MySQL» - рисунок 11.3.

Рисунок 11.2 – Локальный сервер Denwer после установки

Рисунок 11.3 – Заведение новых БД и пользователей MySQL

Заполняем все поля и создаем новую базу данных. Для создания таблиц запускаем скрипт bcmag_db.sql. При установке локального сервера создается виртуальный диск – в нашем случае диск (Z:). В директории Z:\home\localhost\www создадим папку с названием нашего интернет-магазина. В данный подкаталог распаковываем скрипт с интернет-магазином и заходим в браузер.

Рассмотрим структуру разработанной базы данных интернет-магазина. Она была создана в СУБД MySQL, так как на ней работает локальный сервер Denwer. Структура базы данных интернет-магазина представлена на рисунке 11.4.

Рисунок 11.4 – Структура базы данных интернет-магазина

11.5 Разработка дизайна сайта

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

Логически сайт был разделен сайт на тематики компании ООО «Бизнеском». Дизайн страницы - это то, на что обращает внимание пользователь сразу же. С современной технологией браузеров пользователи могут видеть только одну страницу в определенный момент времени (или, в крайнем случае, две или три, если размер экрана позволяет увидеть несколько одновременно открытых окон). На странице должна преобладать информация, представляющая интерес для пользователя. Как правило, содержательная информация должна занимать, по крайней мере, половину страницы, лучше всего, если под нее отведено до 80% пространства страницы. Элементы навигации не должны занимать больше 20% пространства страниц.

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

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

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

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

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

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

11.6 Практическая реализация Интернет-ресурса ООО «Бизнеском»

11.6.1 Этапы создания Интернет-ресурса

В процессе реализации Интернет-ресурса были выявлены следующие этапы:

- создание баз данных для содержания в них информации, которая впоследствии будет представлена на сайте ООО «Бизнеском»;

- разработка пользовательского интерфейса;

- разработка дизайна сайта;

- проверка работоспособности Интернет-ресурса в различных браузерах;

- создание баз данных сайта ООО «Бизнеском».

Как было сказано во второй главе данной работы, в качестве программного обеспечения была выбрана СУБД MySQL, а программа - MySQL Servers and Clients версии 4.4.1, встроенная в пакет программ «Денвер». Было создано семнадцать таблиц, каждая из которых отображала необходимую при создании данного сайта информацию. Общее для всех таблиц - использование в каждой первичного ключа «id», по которому можно отследить уникальность информации и при необходимости заменить информацию. Для работы с сайтом были разработаны два интерфейса: для администратора и для обычного пользователя. Были предусмотрены возможности просмотра, создания, удаления, изменения данных со стороны администратора и только просмотра (исключением является таблица, в которой пользователь может создавать запись о себе и своем электронном почтовом ящике для подписки на почту) со стороны обычного пользователя. На рисунке 4.1 представлена главная страница сайта.

Рисунок 4.1 – главная страница сайта.

На рисунке 4.2 приведен пример товара.

Рисунок 4.2 – Пример товара.

На рисунках 4.3 и 4.4 приведены разделы администраторской части сайта. На них представлены разделы редактирования категорий товаров и главного меню соответственно.

Рисунок 4.3 – Редактирование категорий товаров.

Рисунок 4.4 – Редактирование главного меню сайта.

11.6.2 Проверка работоспособности сайта в различных браузерах

Работоспособность сайта была проверена на наиболее распространенных и известных браузерах:

- Opera разработанный Opera Software ASA, версии 12.04;

- Internet Explorer разработанный компанией Microsoft, версии 9;

- Google Chrome разработанный Google, версии 34.0.166.2;

- Mozilla Firefox разработанный Mozilla Corporation, версии 4.5.

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

12. Код модулей сайта

<?

if (isset($_GET['logout']))

{session_start();

if (isset($_SESSION['ses_user'])) { unset($_SESSION['ses_user']); }

if (isset($_SESSION['pass'])) { unset($_SESSION['pass']); }

setcookie('user_id', '', 0, "/");

setcookie('user_pass', '', 0, "/");

header('Location: index.php');

exit;

}

include ("db.php");

$mod_id = globper('mod_id');

$cat_id = globper('cat_id');

$tov_id = globper('tov_id');

//вход, если запомнили

if (isset($_COOKIE['user_id']) && isset($_COOKIE['user_pass']))

{$_SESSION['ses_user'] = $_COOKIE['user_id'];

$_SESSION['pass'] = $_COOKIE['user_pass'];

}

//проверка

if (isset($_SESSION['ses_user']) && isset($_SESSION['pass']))

{

$ses_user = (isset($_SESSION['ses_user'])) ? mysql_real_escape_string($_SESSION['ses_user']) : '';

$pass = (isset($_SESSION['pass'])) ? mysql_real_escape_string($_SESSION['pass']) : '';$bcbase = mysql_query("SELECT `user_id`,`user_login`,`user_pass`,`user_prava`,`user_email`

FROM `bcusers` WHERE `user_pass`='{$pass}' AND `user_id`='{$ses_user}' LIMIT 1",$db) or die(mysql_error());

if (mysql_num_rows($bcbase) == 1)

{$bcrow = mysql_fetch_array($bcbase);

$prava = $bcrow['user_prava'];

$name = $bcrow['user_login'];

$user_email = $bcrow['user_email'];

}else {

$prava = 0;

if (isset($_SESSION['ses_user'])) { unset($_SESSION['ses_user']); }

if (isset($_SESSION['pass'])) { unset($_SESSION['pass']); }

setcookie('user_id', '', 0, "/");

setcookie('user_pass', '', 0, "/");

header('Location: bccat.php');

exit(); }

}

//путь по открытым рубрикам

if (isset($cat_id) && !empty($cat_id) && $act != "login")

{

$cat_idtitl = $cat_id;

for ($i = 0; ; $i++)

{

$bcbaseput = mysql_query("SELECT `cat_name`,`cat_papa` FROM `bccat_cat` WHERE `cat_id`='{$cat_idtitl}'",$db)

or die(mysql_error());

$bcrowput = mysql_fetch_array($bcbaseput);

$titl = $bcrowput['cat_name']." &raquo; ".$titl;

if ($bcrowput['cat_papa']==0) { break;}

$cat_idtitl = $bcrowput['cat_papa'];

}

}

//название товара в титл

if (isset($tov_id))

{$bcbasetovtit = mysql_query("SELECT `tov_nazv` FROM `bccat_tov` WHERE `tov_id`='{$tov_id}' LIMIT 1",$db) or die(mysql_error());

$bcrowtovtit = mysql_fetch_array($bcbasetovtit);

$titl .= $bcrowtovtit['tov_nazv'];

}

//категории

if (isset($mod_id))

{$bcbasemodtit = mysql_query("SELECT `mod_nazv` FROM `bcmod` WHERE `mod_id`='{$mod_id}' LIMIT 1",$db) or die(mysql_error());

$bcrowmodtit = mysql_fetch_array($bcbasemodtit);

$titl = $bcrowmodtit['mod_nazv'];

}

}

?>

<!-- Рабочий блок -->

<?

if (!isset($cat_id) && !isset($mod_id) && !isset($mod) && !isset($act)) { $mod_id = 1; }

if (isset($mod_id))

{

$bcbasemodpr = mysql_query("SELECT `mod_nazv`,`mod_text` FROM `bcmod` WHERE `mod_id`='{$mod_id}' LIMIT 1",$db) or die(mysql_error());

$bcrowmodpr = mysql_fetch_array($bcbasemodpr);

echo '<div class="zag2" style="margin:0 0 5px 0;">'.$bcrowmodpr['mod_nazv'].'</div>';

echo $bcrowmodpr['mod_text'];

//вывод товаров на 1 страницу

if ($mod_id==1){

$bcbasetov = mysql_query("SELECT * FROM `bccat_tov` WHERE `tov_perv`='1' ORDER BY `tov_id` DESC",$db) or die(mysql_error());

if (mysql_num_rows($bcbasetov) > 0)

{

$bcrowtov = mysql_fetch_array($bcbasetov);

$gor=0;

echo '<table cellspacing="0" cellpadding="0" style="margin:0 0 15px 0; border:1px solid #f2f2f2; border-radius: 4px;"><tr>';

do {

if ($gor >= 3) { echo "<tr>"; }

if ($cv == 1) { $bgzapis = "#ffffff"; $cv=0; } else { $bgzapis = "#f5f5f5"; $cv++; }

if (!empty($bcrowtov['tov_foto'])) {

$img = '<a href="bccat.php?mod=cat&cat_id='.$bcrowtov['tov_cat'].'&tov_id='.$bcrowtov['tov_id'].'"><img align="center" style="margin:10px 0 10px 0;" src="pic/tov/sm_'.$bcrowtov['tov_foto'].'" border="0" /><br /></a>'; }

else { $img="<br /><br /><br /><br />"; }

if (!empty($bcrowtov['tov_starcena'])) {

$tov_starcena = '<p><s>Старая цена: '.$bcrowtov['tov_starcena'].' '.$cat_val.'</s></p>'; }

else { $tov_starcena=""; }

if (!empty($bcrowtov['tov_cena'])) {

$tov_cena = '<p class="zag2" style="margin:0 0 0 0;">Цена: '.$bcrowtov['tov_cena'].' '.$cat_val.'</p> <div><a title="Добавить в корзину" id="'.$bcrowtov['tov_id'].'-'.$bcrowtov['tov_cena'].'" href="#" class="dobKorz"><img src="pic/korzinadob.png" /></a></div>'; }

else { $tov_cena=""; }

$tov_nazv = $bcrowtov['tov_nazv'];

if (strlen($tov_nazv) > 40) { $tov_nazv = substr("$tov_nazv", 0, 40); $tov_nazv = $tov_nazv."..."; }

echo '<td>';

echo'<table class="tbl" width="190" height="270" bgcolor="'.$bgzapis.'" style="position:relative; margin:5px 7px 5px 7px; padding:0;" cellpadding="0" cellspacing="0"><tr><td valign="top" align="center" style="margin:0; padding:0;">'.$img.'<p style="word-wrap: break-word; margin:0; padding:0;"><a href="bccat.php?mod=cat&cat_id='.$cat_id.'&tov_id='.$bcrowtov['tov_id'].'"><span class="ch">'.$tov_nazv.'</span></a></p><p>'.$tov_starcena.'</p>

'.$tov_cena.'</td></tr></table>';

echo '</td>';

$gor++;

if ($gor >= 3) { echo '</tr>'; $gor = 0; }

}

while($bcrowtov = mysql_fetch_array($bcbasetov));

echo '</tr></table>';

}

}

}

//путь по открытым рубрикам

//категории

if (isset($cat_id))

{

$cat_idput = $cat_id;

for ($i = 0; ; $i++)

{

$bcbaseput = mysql_query("SELECT `cat_id`,`cat_name`,`cat_papa` FROM `bccat_cat` WHERE `cat_id`='{$cat_idput}'",$db)

or die(mysql_error());

$bcrowput = mysql_fetch_array($bcbaseput);

$catput = "<a class='ch' href='bccat.php?act=cat&cat_id=".$bcrowput['cat_id']."'>

".$bcrowput['cat_name']."</a> <span class='kr'>&raquo;</span> ".$catput;

if ($bcrowput['cat_papa']==0) { break;}

$cat_idput = $bcrowput['cat_papa'];

}

$catput = "<a class='ch' title='к рубрикам' href='bccat.php'>Главная</a>

<span class='kr'>&raquo;</span> ".$catput."";

$catsey = $bcrowput['cat_name'];

echo '<div style="background-color:#f5f5f5; padding:10px; margin:0 0 10px 0; border-radius: 4px; ">';

echo $catput;

echo '</div>';

<? } //завершение Личный кабинет - заказы ?>

<!-- Завершение Рабочий блок -->

</td>

</tr>

</table>

<!-- Завершение Основной таблицы -->

<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" background="pic/bcscript_fon_niz.png">

<tr>

<td align="center"><table width="950" height="68" border="0" align="center" cellpadding="0" cellspacing="0">

<tr>

<td width="33"></td>

<td width="210" align="left"><div class="sm2">OOO "Бизнеском", 2014<br />

</div></td>

<td width="33"><a href="adm.php">Администрирование</a></td>

<td width="33">&nbsp;</td>

<td width="33" align="right"></td>

</tr>

</table></td>

</tr>

</table>

</body>

</html><? if (isset($al)) { al($al); } ?>

Заключение

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

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

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

Проведен подробный отчет об этапах разработки интернет-магазина..

Данная система разрабатывалась для предприятия ООО «Бизнеском», для решения имеющейся проблемы.

Преимущества разработанной системы:

- отсутствие действий со стороны менеджера для осуществления интеграции;

- возможность сохранения структуры каталогов;

- быстрое и безошибочное выполнений операций, на которые вручную затратилось бы большое количество времени.

Список использованных источников

  1. ГОСТ Р ИСО/МЭК 12207/99. Государственный стандарт РФ. Информационная технология. Процессы жизненного цикла информационных систем. Издание официальное. - М., 2012
  2. Перегудов, Ф.И. Введение в системный анализ[Текст]: Учебное издание / Ф.И. Перегудов - М.: Высш. шк., 1997. – 347 с.: ил.
  3. Вендров А.М., CASE-технологии. Современные методы и средства проектирования информационных систем - М.: Финансы и статистика, 2007 г, 456 стр.
  4. Губанов, В. А. Введение в системный анализ [Текст]/ В. А. Губанов - М.: Высш. шк., 1988. – 297 с.: ил.
  5. Норенков, И. П. Основы автоматизированного проектирования [Текст]: учеб. для вузов/ И. П. Норенков. – 2-е изд., перераб. и доп. – М.: Изд-во МГТУ, 2002. – 336 с.: ил.
  6. 1С-Битрикс. [электронный ресурс]. Режим доступа. - http://www.1c-bitrix.ru/
  7. Википедия. [электронный ресурс]. Режим доступа. - http://ru.wikipedia.org/wiki
  8. Анализ статистическим методом. [электронный ресурс]. Режим доступа. - http://www.cfin.ru/finanalysis/math/statistical_method.shtml
  9. Гвоздева Т. В., Б. А. Баллод, Проектирование информационных систем, М, Издательство: Феникс, 2009 г., 512 стр.
  10. ГОСТ 34.601-90. Стандарты. «Автоматизированные системы. Стадии создания» [Текст]. – Введ. 1992 – 01 – 01. – М.: ИПК Изд-во стандартов, 1997. – 11 с.
  11. Орлов Л. В. Как создать электронный магазин в Интернет [Текст], - 2_е изд./ Л. В. Орлов - М.: Бук_пресс, 2006. - 384 с.:ил.
  12. Ульман Л. Основы программирования на PHP [Текст]/ Л. Ульман - М., 2001. – 288с.:ил.
  13. Joomla. [электронный ресурс]. Режим доступа. - http://www.joomla.org/
  14. Современные интернет-технологии в коммерческой деятельности. 2-е изд.х [Текст] / Н. А. Инькова. – Москва, Омега-Л, 2007. - 150 с.: ил. - 1500 экз. - ISBN 5-370-00054-9 978-5-370-00054-6;
  15. Интернет технологии, 2008 [Электронный ресурс] - Режим доступа: http://webplot.ru/ lrub3part1.html;
  16. INTERTECH - Научный центр интернет-технологий ИНТЕРТЕХ, 2010 [Электронный ресурс] - Режим доступа: http://www.intertech.ru/Dictionary/internet.asp;
  17. Библиотека Интернет Индустрии, 2008 [Электронный ресурс] - Режим доступа: http://www.i2r.ru/static/512/out_22646.shtml;
  18. Способы Создания Веб-Страниц И Сайтов, 2008 [Электронный ресурс] - Режим доступа: http://www.lessons-tva.info/;
  19. Apache.RU - Документация, 2008 [Электронный ресурс] - Режим доступа: http://www.apache.ru/docs/;
  20. Руководство по PHP, 2010 [Электронный ресурс] - Режим доступа: http://docs.php.net/manual/ru/index.php;
  21. Руководство по использованию «Joomla!», 2009 [Электронный ресурс] - Режим доступа: http://www.joomla.ru/;
  22. Руководство по использованию «Денвер», 2007 [Электронный ресурс] - Режим доступа: http://dklab.ru/;
  23. Web-дизайн.Справочник., 1-е изд. [Текст]/ Дженнифер Нидерст Роббинс – Москва.: КУДИЦ-Пресс, 2008. - 816 с.: ил. - 2000 экз. - ISBN 978-5-91136-039-9.