Построение диаграммы классов. 1. Создание диаграммы классов для сценария Оформить заказ
![]()
|
Задание Цель лабораторной работы: Составление диаграммы классов для проектируемой информационной системы. Для достижения поставленной цели необходимо решить следующие задачи: 1. создать диаграмму классов для одного из сценариев диаграммы вариантов использования, созданной в предыдущей лабораторной работе. Для каждого класса необходимо задать атрибуты и операции. Каждый класс должен быть подробно задокументирован - необходимо задать текстовое описание самого класса, описания его атрибутов и операций; 2. создать пакеты для группировки классов, созданных в пункте 1; 3. сгруппировать классы из пункта 1 в пакеты; 4. разработать главную диаграмму классов. Выполнение работы Разрабатываемая ИС - веб-магазин по продаже часов. 1. Создание диаграммы классов для сценария «Оформить заказ» Рассматриваемый сценарий состоит из: самого заказа; клиента, который делает заказ; комплектующих изделий, которые входят в заказ. Создадим классы-сущности Order (Заказ), Client (Клиент) и ComponentPart (Комплектующее изделие). Поскольку в один заказ может входить много разных комплектующих изделий, и одно комплектующее изделие может входить во много заказов, то введем еще один класс-сущность OrderItem (Состав заказа). Опишем каждый класс. Класс Client: Класс, представляющий собой клиента фирмы
Класс Order: Класс, представляющий собой заказ, который делает клиент
Класс OrderItem: Класс, представляющий собой пункт заказа, который делает клиент
Класс ComponentPart: Класс, представляющий собой комплектующие изделия
Результат создания классов-сущностей показан на рисунке 1. ![]() Рисунок 1 - Классы-сущности и отношения между ними 2. Создание пакетов для группировки классов, созданных в пункте 1. Добавим теперь на диаграмму граничные и управляющие классы. Рассматриваемый сценарий — это только одно из действий, которые обеспечивает прецедент «Оформить заказ». Прецедент также позволяет просмотреть, отредактировать или удалить заказ. Это означает, что необходимо предусмотреть механизм, который позволяет выбирать необходимое действие. Создадим для этого: граничный класс OrderOptions (Параметры работы с заказом) - класс, обеспечивающий механизм работы с заказами граничный класс AddNewOrder (Добавление нового заказа), который будет служить для добавления новых заказов управляющий класс OrderManager (Менеджер по работе с заказами) - класс для обработки потока событий прецедента «Оформить заказ», который будет обеспечивать обработку потока событий для рассматриваемого прецедента. Пакеты предназначены для группировки элементов в группы по определенным критериям. Создадим три пакета: Entities (классы-сущности), Boundaries (граничные классы) и Control (управляющие классы). Группировать созданные классы будем следующим образом: классы Client, Order, OrderItem и ComponentPart перенесем в пакет Entities; классы OrderOptions и AddNewOrder перенесем в пакет Boundary; класс OrderManager перенесем в пакет Control. 3. Разработка главной диаграммы классов. Окончательный вариант диаграммы классов показан на рисунке 2. ![]() |