- •Содержание
- •Введение
- •Требования к системе
- •Преамбула
- •Введение
- •Глоссарий
- •Пользовательские требования
- •Описание системной архитектуры
- •Системные требования
- •Системные модели
- •Возможные направления эволюции системы
- •Индексы
- •2. Архитектурное обоснование
- •3. Модель 0-го уровня
- •4. Архитектурное описание на uml
- •4.1. Usecase-диаграмма
- •Диаграмма классов
- •Класс Товар.
- •Класс СписокТоваров.
- •Класс Корзина.
- •Класс Заказ.
- •Класс Покупатель
- •Диаграмма activity
- •Диаграмма state machine
- •5. Тесты
- •Заключение
- •Список использованных источников
Индексы
Интернет-магазин – п.1.3.
Кассир – п.1.3.
Кладовщик – п.1.3.
Менеджер – п.1.3.
Посетитель – п.1.3.
Покупатель – п.1.3.
2. Архитектурное обоснование
Сайт интернет-магазина будет написан с использованием языков HTML, PHP, CSS.
Главный плюс языка PHP – простота и легкость разработки – не нужно следить за типами переменных, не нужно управлять выделением памяти и выполнять прочие рутинные операции. Но необходима тщательная оптимизация написанного кода, проверка его на безопасность.
Внедрять интерпретируемый код с операторами вывода (и условными операторами) можно прямо в HTML с помощью специального псевдотега
<?php ... ?>). Такая вставка кода может извлекать из хранилища (файла или базы данных) нужное содержание и напрямую выводить его в нужном месте страницы. А в данной системе обращение к БД будет происходить постоянно (оттуда можно извлекать данные о наличии товара на складе, его количестве, цене, характеристиках).
Также в ходе исполнения кода можно генерировать теги форматирования, строя целые блоки страницы. Вставка условных операторов позволяет скрывать или варьировать отдельные участки HTML-кода по заданным условиям.
CSS используется для определения стилей сайта, в том числе дизайна, верстки и вариаций макета для различных устройств и размеров экрана.
Например, он помогает избежать дублирования, облегчает обслуживание, позволяет делать изменения для всего сайта в одном месте.
Сама база данных будет проектироваться в реляционной СУБД MySQL. Плюсы выбора этой СУБД: быстродействие, безопасность, бесплатность, открытость кода, надёжность, переносимость (в случае замены ОС, мы не потеряем данные).
3. Модель 0-го уровня
Эскиз экранной формы представлен на рис. 2-8.
Рис. 2. Прототип главной страницы.
Рис. 3. Прототип описания товара.
Рис. 4. Прототип «Корзины».
Рис. 5. Эскиз экранной формы для оформления заказа.
Рис. 6. Прототип окна, которое появляется после нажатия на кнопку «Заказать» на рис.5.
Рис. 7. Прототип интерфейса для работы Менеджера и Кладовщика
Рис. 8. Прототип интерфейса для работы Менеджера
4. Архитектурное описание на uml
4.1. Usecase-диаграмма
Рис. 9. Usecase-диаграмма
Описание case-ов данной usecase-диаграммы
См. описание case-ов данной usecase-диаграммы в табл. 1-26.
Табл. 1. Описание case «Просмотр списка товаров»
Вариант использования |
Просмотр списка товаров |
Актеры |
Посетитель интернет-магазина |
Краткое описание |
Получение требуемой информации о товарах, представленных в интернет-магазине |
Цель |
Посетитель интернет-магазина просматривает информацию о товарах. Система обеспечивает доступ к любому товару и удобную навигацию по различным категориям товаров |
Ссылки на другие варианты использования |
Отсутствуют |
Табл. 2. Ход выполнения case «Просмотр списка товаров»
Действия актеров |
Отклик системы |
|
|
|
|
|
|
|
|
Табл. 3. Описание case «Изменение содержания корзины»
Вариант использования |
Изменение содержания корзины |
Актеры |
Посетитель интернет-магазина. |
Краткое описание |
Посетитель интернет-магазина может вносить товары в Корзину. |
Цель |
Посетитель интернет-магазина добавляет товары в Корзину, в дальнейшем перейдя в неё он может оформить заказ. |
Ссылки на другие варианты использования |
Отсутствуют |
Табл. 4. Ход выполнения case «Изменение содержания корзины»
Действия актеров |
Отклик системы |
|
|
|
|
Табл. 5. Описание case «Оформление заказа на покупку товаров»
Вариант использования |
Оформление заказа на покупку товаров |
Актеры |
Покупатель |
Краткое описание |
Покупатель оформляет свой заказ, выбирает что и в каком количестве хочет купить. |
Цель |
Покупатель оформляет покупку, чтобы его можно было купить. |
Ссылки на другие варианты использования |
Include: «Оформление заказа на покупку товаров» включает в себя «Регистрацию покупателя». Extend: «Предоставление бонусной скидки» расширяет возможности case-а «Оформление заказа на покупку товаров» |
Табл. 6. Ход выполнения case «Оформление заказа на покупку товаров»
Действия актеров |
Отклик системы |
|
|
|
|
Табл. 7. Описание case «Регистрация покупателя»
Вариант использования |
Регистрация покупателя |
Актеры |
Покупатель |
Краткое описание |
При оформлении заказа покупателем происходит его регистрация: ввод фамилии, имени, адреса электронной почты, моб. телефона, выбор адреса доставки, ввод номера бонусной карты, если она есть. |
Цель |
Завершить оформление заказа. |
Ссылки на другие варианты использования |
Include: Этот case включён в case «Оформление заказа на покупку товаров». |
Табл. 8. Ход выполнения case «Регистрация покупателя»
Действия актеров |
Отклик системы |
|
|
|
|
|
|
Табл. 9. Описание case «Предоставление бонусной скидки»
Вариант использования |
Предоставление бонусной скидки |
Актеры |
Покупатель, Менеджер |
Краткое описание |
При оформлении заказа покупателем происходит его регистрация. Там он может ввести номер бонусной карты, если она есть, которую выдал Менеджер. |
Цель |
Завершить оформление заказа. |
Ссылки на другие варианты использования |
Extend: Этот case расширяет возможности case-а «Оформление заказа на покупку товаров». |
Табл. 10. Ход выполнения case «Предоставление бонусной скидки»
Действия актеров |
Отклик системы |
|
|
|
|
|
|
Табл. 11. Описание case «Оплата выбранных товара(ов)»
Вариант использования |
Оплата выбранных товара(ов) |
Актеры |
Покупатель, Кассир |
Краткое описание |
Оплата товара(ов) |
Цель |
Чтобы потом можно было забрать товар(ы) |
Ссылки на другие варианты использования |
Связан отношением обобщения с case-ами «Оплата товара(ов) наличными» и «Оплата товара(ов) по карте», т.е. «Оплата выбранных товара(ов)» их обобщает. |
Табл. 12. Ход выполнения case «Оплата выбранных товара(ов)»
Действия актеров |
|
|
Табл. 13. Описание case «Оплата товара(ов) наличными»
Вариант использования |
Оплата товара(ов) наличными |
Актеры |
Покупатель, Кассир |
Краткое описание |
Оплата товара(ов) наличными |
Цель |
Чтобы потом можно было забрать товар(ы) |
Ссылки на другие варианты использования |
Отношение обобщения: Является потомком case-а «Оплата выбранных товара(ов)». |
Табл. 14. Ход выполнения case «Оплата товара(ов) наличными»
Действия актеров |
|
|
Табл. 15. Описание case «Оплата товара(ов) по карте»
Вариант использования |
Оплата товара(ов) по карте |
Актеры |
Покупатель, Кассир |
Краткое описание |
Оплата товара(ов) по карте |
Цель |
Чтобы потом можно было забрать товар(ы) |
Ссылки на другие варианты использования |
Отношение обобщения: Является потомком case-а «Оплата выбранных товара(ов)». |
Табл. 16. Ход выполнения case «Оплата товара(ов) по карте»
Действия актеров |
|
|
Табл. 17. Описание case «Отправка письма о наличии заказа Покупателю»
Вариант использования |
Отправка письма о наличии заказа Покупателю |
Актеры |
Кладовщик, Покупатель |
Краткое описание |
Кладовщик ищет товар(ы), заказанные Покупателем и когда находит, отправляет письмо Покупателю, что заказ собран. |
Цель |
Чтобы можно было потом выдать товар(ы) Покупателю. |
Ссылки на другие варианты использования |
Association: Этот case предшествует case-у «Принести товар со склада на кассу». |
Табл. 18. Ход выполнения case «Отправка письма о наличии заказа Покупателю»
Действия актеров |
Отклик системы |
|
|
|
|
Табл. 19. Описание case «Принести товар со склада на кассу»
Вариант использования |
Принести товар со склада на кассу |
Актеры |
Кладовщик |
Краткое описание |
Кладовщик относит собранный заказ на кассу |
Цель |
Чтобы можно было потом выдать товар(ы) Покупателю. |
Ссылки на другие варианты использования |
Association: Этот case выполняется после case-а «Отправка письма о наличии заказа Покупателю». Association: После этого case-а выполняется case «Выдача товара(ов) Покупателю». |
Табл. 20. Ход выполнения case «Принести товар со склада на кассу»
Действия актеров |
|
Табл. 21. Описание case «Выдача товара(ов) Покупателю»
Вариант использования |
Выдача товара(ов) Покупателю |
Актеры |
Кассир, Покупатель |
Краткое описание |
После того как Кладовщик принёс товар(ы) на кассу и Покупатель оплатил их, Кассир выдаёт Покупателю его заказ. |
Цель |
Завершить сделку. |
Ссылки на другие варианты использования |
Association: Этот case выполняется после case-ов «Принести товар со склада на кассу» и «Оплата выбранных товаров».
|
Табл. 22. Ход выполнения case «Выдача товара(ов) Покупателю»
Действия актеров |
|
Табл. 23. Описание case «Поддержка запаса товаров на складе»
Вариант использования |
Поддержка запаса товаров на складе |
Актеры |
Менеджер |
Краткое описание |
Менеджер следит за количеством каждого товара и если его мало, заказывает ещё. |
Цель |
Поддержание нужного количества товаров. |
Ссылки на другие варианты использования |
Отсутствуют
|
Табл. 24. Ход выполнения case «Поддержка запаса товаров на складе»
Действия актеров |
|
Табл. 25. Описание case «Изменение списка товаров»
Вариант использования |
Поддержка запаса товаров на складе |
Актеры |
Менеджер |
Краткое описание |
Менеджер может добавлять и убирать товары и категории из Каталога. |
Цель |
Изменить список товаров в Каталоге |
Ссылки на другие варианты использования |
Отсутствуют
|
Табл. 26. Ход выполнения case «Поддержка запаса товаров на складе»
Действия актеров |
Отклик системы |
|
|