2.3 Программное обеспечение задачи
2.3.1 Общие положения (дерево функций и сценарий диалога)
Данный проект разрабатывается в целях создания Интернет-магазина одежды. Функции спроектированного Интернет-магазина можно разделить на две составляющие – функции, доступные для покупателей, и функции, доступные администратору магазина.
Все автоматизируемые функции, доступные покупателю, представлены на рис. 2.3.1 в виде дерева функций.
Таким образом, покупателю доступны следующие основные функции:
- просмотр каталога товарных позиций;
- поиск;
- ознакомление с представленной информацией;
- оформление заказа;
- оценка отдельной товарной позиции.
Дерево функций администратора Интернет-магазина представлено на рис. 2.3.2. Администратор может управлять работой магазина, в том числе формировать каталог товаров, следить за оформлением заказов, определять дополнительную информацию и параметры авторизации.
На основе состава функций и их иерархии разрабатывается сценарий диалога пользователя с системой, представленный на рис. 2.3.3.
2.3.2 Характеристика базы данных
В системе используется СУБД MySQL. База данных состоит из 5 таблиц. Для визуального проектирования базы данных использовался программный продукт MySQL Workbench 5.1 OSS.ER-диаграмма базы данных приведена на рис. 2.3.4.
В таблице «SS_categories» хранятся данные о категориях товара, в таблице «SS_ordered_carts» - данные о заказах, в таблице «SS_orders» - данные о покупателях, в таблице «SS_products» - данные о товарах, в таблице «SS_special_offers» - данные о специальных предложениях.
Ниже приведена характеристика таблиц базы данных:
Таблица 2.3.1
Таблица «SS_categories»
№ | Название | Идентификатор поля | Тип данных, длина |
1. | Код | categoryID | int(11) |
2. | Наименование категории | name | varchar(255) |
3. | Значение | parent | int(11) |
4. | Количество товаров | products_count | int(11) |
5. | Описание | description | text |
6. | Изображение | picture | varchar(30) |
7. | Количество товаров | products_count_admin | int(11) |
Таблица 2.3.2
Таблица «SS_ordered_carts»
№ | Название | Идентификатор поля | Тип данных, длина |
1. | Код продукта | productID | int(11) |
2. | Код заказа | orderID | int(11) |
3. | Наименование | name | char(255) |
4. | Стоимость | Price | float |
5. | количество | Quantity | int(11) |
Таблица 2.3.3
Таблица «SS_orders»
№ | Название | Идентификатор поля | Тип данных, длина |
1. | Код заказа | orderID | int(11) |
2. | Время | order_time | datetime |
3. | Фамилия покупателя | cust_firstname | varchar(30) |
4. | Имя покупателя | cust_lastname | varchar(30) |
5. | Адрес электронной почты покупателя | cust_email | varchar(30) |
6. | Страна покупателя | cust_country | varchar(30) |
7. | Почтовый индекс покупателя | cust_zip | varchar(30) |
8. | Область покупателя | cust_state | varchar(30) |
9. | Город покупателя | cust_city | varchar(30) |
10. | Адрес покупателя | cust_address | varchar(30) |
11. | Телефон покупателя | cust_phone | varchar(30) |
Таблица 2.3.4
Таблица «SS_products»
№ | Название | Идентификатор поля | Тип данных, длина | |
1. | Код продукта | productID | int(11) | |
2. | Код категории | categoryID | int(11) | |
3. | Наименование | name | varchar(255) | |
4. | Описание | description | text | |
5 | Оценка покупателя | customers_rating | float | |
6 | Стоимость | Price | float | |
7 | Изображение | picture | varchar(30) | |
8 | В наличии | in_stock | int(11) | |
9 | Изображение 2 | thumbnail | varchar(30) | |
10 | Количество оценивших | customer_votes | int(11) | |
11 | Продано | items_sold | int(11) | |
12 | Изображение большое | big_picture | varchar(30) | |
13 | В наличии | enabled | int(11) | |
14 | Краткое описание | brief_description | text | |
15 | Прежняя цена | list_price | float | |
16 | Артикул | product_code | char(25) |
Таблица 2.3.5
Таблица «SS_special_offers»
№ | Название | Идентификатор поля | Тип данных, длина |
1. | Код предложения | offerID | int(11) |
2. | Код товара | productID | int(11) |
3. | Порядок сортировки | sort_order | int(11) |
2.3.3 Структурная схема пакета (дерево вызова программных модулей)
Система состоит из двух модулей – базы данных MySQL и приложения для взаимодействия с базой данных, реализованного на языке программирования PHP и c использованием JavaScript и HTML.
Работа с системой осуществляется через любой браузер. Для работы необходимо установить скрипты интернет-магазина и базу данных на хостинговую площадку выбранного провайдера. Магазин работает на основе шаблонной библиотеки Smarty, разработанная система включает в себя модули, описанные в таблице 2.3.6.
Таблица 2.3.6
Описание программных модулей Интернет-магазина
№ | Наименование | Описание |
1. | cfg | Модуль конфигурации магазина |
2. | images | Модуль, содержащий используемые изображения |
3. | includes | Модуль скриптов пользовательской части |
4. | languages | Языковой модуль |
5 | products_pictures | Каталог изображений продуктов |
6 | smarty | Модуль библиотек |
7 | Templates | Модуль шаблонов оформления |
8 | Index.php | Основной модуль |
9 | Admin.php | Модуль администрирования системы |
10 | shopevroodegda.mdb | База данных |
Структурная схема пакета представлена на рис. 2.3.5.