Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LAB_4_UML_СВЯЗИ.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
201 Кб
Скачать
☆

В этом при­мере ограничение ассоциации Обслуживает указывает на то, что БанковскийСлужащий обслуживает клиентов в порядке очереди

Другой тип ограничения представляется отношением ИЛИ, которое обозначается с помощью пунктирной линии, соединяющей две линии ассоциаций, с надписью {или}. Модель на рис. 6 показывает студента, выбирающего бюджетную или ком­мерческую форму обучения.

Рис. 6. Отношение ИЛИ между двумя ассоциациями

3. Классы ассоциаций

Подобно классам, ассоциация может иметь атрибуты и операции. В этом случае можно говорить о классе ассоциации. Для отображения класса ас­социации используются обозначения обычного класса с добавлением пунктирной линии, соединяющей его с линией ассоциации. Класс ассо­циации может быть связан с другими классами. На рис. 7 показан класс ассоциации «Играет в» между игроком и командой. Класс ассоциа­ции Контракт связан с классом ГлавныйМенеджер.

Рис. 7. Класс ассоциации имеет атрибуты и операции. Он связан с соответствующей ассо­циацией с помощью пунктирной линии и может также быть связан с другими классами

4. Связи

Ассоциация (как и класс) характеризуется наличием экземпляров. Если предста­вить себе конкретного игрока, играющего в конкретной команде, отношение «Играет в» называется связью, которую изображают в виде линии, соединяющей два объекта. Имя этой связи, как и имя объекта, подчеркивается (рис. 8).

Рис. 8. Связь является экземпляром ассоциации. Она соединяет объекты. При изображении связи ее имя подчеркивается, как и имена объектов

5. Кратность

Ассоциация между объектами Игрок и Команда предполагает, что два класса находятся в отношении "один к одному". Здравый смысл подсказывает, что это не единственный ва­риант взаимосвязи. В баскетбольной команде пять человек, не считая запасных игроков. Ассоциация «Включает» должна учитывать этот факт. С другой стороны, игрок может играть только в одной команде, что должно учитываться в ассоциации «Играет в».

Приведенные отношения являются примерами разной кратности, кото­рая означает количество объектов одного класса, связанных с одним объек­том другого. Чтобы представить это количество на диаграмме, опреде­ленное число можно поместить над линией ассоциации возле соответст­вующего класса, как это сделано на рис. 9.

Рис. 9. Кратность означает количество объектов одного класса, которые могут быть связаны с одним объектом другого класса

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

Рис. 10. Возможные значения кратности и их представление в UML

Один класс может быть связан с другим различными спосо­бами - "один к одному", "один ко многим", "один к нескольким", "один к ограничен­ному интервалу" (например, "один к 5.. 10"), "один к заданному количеству n" (как в рассматриваемом примере) или "один к набору" (например, "один к 9 или 10").

Для представления понятия "много" в UML используется символ звездочки (*). Логическое ИЛИ передается двумя обозначениями: с помощью двух точек (1. . *), что означает "один или более", или запятой (5,10), что означает "5 или 10". На рис. 10 показаны изображения возможных значений кратности.

Если класс А находится в отношении "один к 0 или 1" с классом Б, то по­следний называется необязательным для класса А.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]