- •Содержание
- •Введение
- •Требования к системе
- •Преамбула
- •Введение
- •Глоссарий
- •Пользовательские требования
- •Описание системной архитектуры
- •Системные требования
- •Системные модели
- •Возможные направления эволюции системы
- •Индексы
- •2. Архитектурное обоснование
- •3. Модель 0-го уровня
- •4. Архитектурное описание на uml
- •4.1. Usecase-диаграмма
- •Диаграмма классов
- •Класс Товар.
- •Класс СписокТоваров.
- •Класс Корзина.
- •Класс Заказ.
- •Класс Покупатель
- •Диаграмма activity
- •Диаграмма state machine
- •5. Тесты
- •Заключение
- •Список использованных источников
Класс Покупатель
Атрибуты класса:
+имя, тип – строковый, видимость – общедоступный элемент.
+фамилия, тип – строковый, видимость – общедоступный элемент.
+адресЭлектроннойПочты, тип – строковый, видимость – общедоступный элемент.
+мобТелефон, тип – строковый, видимость – общедоступный элемент.
+адресДоставки, тип – перечисление, видимость – общедоступный элемент.
+номерБонуснойКарты, тип – беззнаковое длинное целое, видимость – общедоступный элемент.
Связи между классами:
Между «Товар» и «СписокТоваров»:
Агрегация – «СписокТоваров» состоит из объектов типа «Товар»; объектов типа «Товар» может быть любое количество, а типа «СписокТоваров» только один.
Между «Товар» и «Корзина»:
Агрегация – «Корзина» состоит из объектов типа «Товар»; объектов типа «Товар» может быть любое количество, а объектов типа «Корзина» больше или равно 1-му.
Между «Корзина» и «Заказ»:
Ассоциация: 1 объекту типа «Корзина» соответствует 1 объект типа «Заказ».
Между «Покупатель» и «Заказ»:
Ассоциация: у 1 объекта типа «Покупатель» может быть 1 или больше объектов типа «Заказ».
Диаграмма activity
Диаграмму деятельности см. на рис. 11 и пример разбиений деятельности с использованием дорожек на рис. 12.
Рис. 11. Диаграмма деятельности
Рис. 12. Диаграмма деятельности с использованием дорожек
Описание диаграммы:
Покупатель оформляет заказ – регистрируется, предварительно заполнив «Корзину» товарами.
Кладовщик получает заказ, собирает его, отправляет письмо Покупателю о наличии заказа, дальше Кладовщик приносит заказ на кассу, а Покупатель получает письмо.
Получив письмо, Покупатель идёт в магазин или пункт самовывоза за заказом.
После того, как кассир получил заказ (его принёс на кассу Кладовщик), а Покупатель пришёл за заказом в магазин, Кассир выдаёт счёт Покупателю, тот оплачивает заказ. После этого Кассир выдаёт заказ Покупателю, который его забирает, и Кассир закрывает заказ.
Диаграмма state machine
Диаграмму конечного автомата см. на рис. 13.
Рис. 13. Диаграмма state machine
Описание диаграммы конечного автомата для экземпляра класса Заказ:
Эта диаграмма описывает жизненный цикл любого отдельного заказа. При поступлении заказа от Покупателя создается отдельный экземпляр класса «Заказ», что соответствует переходу из начальной вершины в состояние «Принят». Далее после сборки заказа объект переходит в состояние «Собран». Далее после отправки письма Покупателю о наличии заказа объект Заказ переходит в состояние «Письмо отправлено». Потом после того, как заказ будет принесён на кассу, объект переходит в состояние «Заказ на кассе». После произведения оплаты объект переходит в состояние «Оплачен». Потом после того, как заказ выдан, объект переходит в состояние «Выдан». Далее Заказ закрывается и переходит в состояние «Закрыт». Из этого состояния можно перейти в узел завершения, в котором выполняется разрушение соответствующего экземпляра.