Кратность неявно подразумевает наличие полюсов ассоциаций. Полюс ассоциаций может иметь не только кратность, но и имя. Имена полюсов ассоциаций часто присутствуют в описании к задаче в виде существительных.
Каждый полюс ассоциации может иметь имя.
(3)
User |
Directory |
+owner 1 *
0..1 +container
+authorizedUser * * * +contents
Имена Container и Contents позволяют различить два способа использования класса Dir.
Имена полюсов ассоциации позволяют различать между собой разные ассоциации между одними и теми же классами. Каждый каталог имеет только одного владельца и множество пользователей которые имеют право работать с каталогом. Имена полюсов позволяют унифицировать несколько ссылок на один и тот же класс, при построении диаграмм следует корректно использовать имена полюсов ассоциаций и не вводить отдельный класс для каждой ссылки.
|
|
Корректной модели экземпляр человека принимает участие в двух и более связях: Дважды в качестве родителя и произвольное количество раз в качестве ребенка, так же здесь отображен случай что ребенок не обязательно должен иметь родителя.
Поскольку имена полюсов ассоциаций позволяют объекты друг от друга, все имена на дальнем полюсе ассоциаций прикрепленных к некоторому классу должны быть уникальными. Аналогично имя полюса ассоциации не должно совпадать с именем, какого либо атрибута исходного класса.
Упорядочение объектов у полюса ассоциации.
Часто объекты у полюса ассоциации с обозначение кратности (*- много) не имеют никакого выраженного порядка в этом случае их рассматривают как множество.
Window |
Screen |
1 VisibleOn *
Каждое окно присутствует на экране не более чем в одном экземпляре. Окна имеют явный порядок и в каждой конкретной точке экрана видимо только одно из них (Верхнее) Упорядоченность является внутренним свойством ассоциаций и указывается ключевым словом {ordered} около соответствующего полюса ассоциации.