Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
О.Н. Половикова. Методическое пособие по UML.doc
Скачиваний:
35
Добавлен:
18.03.2016
Размер:
764.42 Кб
Скачать

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

  1. На главной диаграмме классов (Main) создайте пакет Help_entities (Вспомогательные сущности).

  2. Перенесите в этот пакет классы User(Пользователь), Order (Заказ) и другие классы, созданные Вами в качестве вспомогательных к основным классам диаграммы.

  3. Для классов из пакета Help_entities (Вспомогательные сущности) укажите стереотип <<help_entities>> (<<вспомогательные сущности>>)

Рис. 4L.2. Диаграмма классов «наполнить виртуальную корзину»

Рис. 4L.4. Диаграмма последовательности для прецедента «наполнить виртуальную корзину»

Лабораторная работа № 5. Определение связей между классами.

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

Постановка задачи

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

Этапы выполнения работы

Настройка

  1. Найдите в броузере диаграмму классов «Наполнить виртуальную корзину».

  2. Дважды щелкните на ней, чтобы открыть ее.

  3. Проверьте, имеется ли на панели инструментов диаграммы кнопка Unidirectional Association. Если ее нет, добавьте на панель эту кнопку.

Добавление связи ассоциаций

  1. Нажмите кнопку панели инструментов Unidirectional Association.

  2. Добавьте (нарисуйте) отношение ассоциации от класса Forma_of_Input_Output к классу List_of_Catalogues (Список каталогов).

  3. Повторите этапы 1 и 2 для создания новых отношений ассоциации:

От класса Forma_of_Input_Output к классу List_of_Goods

От класса Forma_of_Input_Output к классу Goods

От класса Forma_of_Input_Output к классу Basket.

Добавление связи агрегации

  1. Нажмите кнопку Aggregation (Агрегация) на панели инструментов.

  2. Добавьте связь агрегации от класса Basket к классу Order.

  3. Укажите кратность созданного отношения агрегации (каждая виртуальная корзина состоит из любого количества заказов).

Примечание.

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

  1. Добавьте связь агрегации от класса List_of_Goods к классу Goods и укажите кратность связи.

  2. Добавьте связь агрегации от класса List_of_Catalogues к классу List_of_Goods и укажите кратность связи.

Примечание. Сущность Список товаров (List_of_Goods) является синонимичной к сущности Каталог. Сущность Список каталогов (List_of_Catalogues) – это некоторый набор Каталогов (массив Каталогов или массив Списков товаров). Текущий Список каталогов формируется соответствующими специалистами Виртуального магазина, при включении Каталога в текущий Список учитываются различные факторы: время года, анализ продаж, пожелания покупателей и т.д. Исходя из этих факторов, некоторые Каталоги могут быть не включены в текущий Список каталогов.

Рис. 5L.1. Пример диаграммы классов для сервиса «наполнить виртуальную корзину»