семантического отношения
Это означает, что есть структурные отношения между вещами, связаны, что возникает проблема пространства. Например: ассоциация Person owns Dog
. В приложении для лицензирования собак эта взаимосвязь является центральной концепцией; приложение существует для управления связями между людьми и собаками. Это «семантическая» связь, потому что она имеет смысл, возникающий из проблемного пространства.
множество кортежей, связанных экземпляров классификаторов
Кортеж является «упорядоченное множество элементов» (wikipedia). Примером ассоциации Dog-Ownership может быть ("Fido", "Fred")
, где «Fido» представляет Собака и «Fred» Person. Ассоциацию можно представить в виде набора кортежей в том, что для каждой комбинации Dog есть один кортеж & Лицо, для которого выполняется соотношение; например
[("Fido", "Fred"), ("Angel", "Chuck Norris"), ("Boatswain", "Lord Byron")]
Примечания нет кортежей для пар, где отношения не владения; например ("Fido", "Lord Byron")
.
каждое значение кортежа может появиться в самый раз
Это не возможно множество содержит дубликаты, как это будет просто сказать то же самое в два раза. Поэтому нет смысла добавлять ("Fido", "Fred")
еще раз в список выше; мы уже знаем, что Фред владеет Фидо.
Ассоциация представляет собой совокупность связей между экземплярами классификаторов
Это просто еще один способ думать об отношениях. Для каждого кортежа в наборе вы можете думать о соединении - или соединении - между связанными объектами.
Экземпляр Ассоциации является ссылка, которая представляет собой кортеж экземпляров
См выше. Каждый кортеж представляет собой одну связанную пару объектов. Ссылки связаны с ассоциациями как объекты для классов. Классы имеют много объектов; У ассоциаций есть много ссылок.
Основополагающие ассоциации существуют, чтобы показать, где вещи систематически связаны с другими вещами.Кортежи и наборы - это способ думать и/или представлять связанные вещи. (На самом деле я бы немного поспорил с определением в вашем OP: ссылки в ассоциации могут быть представлены как как набор кортежей: но это не то, что они , так они моделируются. информация может в равной степени быть смоделированы с помощью графика, где каждый объект представлял вершины (узла) и каждой ассоциации край
HTH
EDIT:..
в ответ на вопросы внешности. как вы это хорошо понимаете, некоторые наблюдения.
Во-первых, вот как я бы моделировать его:
Теперь к каждому из пунктов:
Имя: это имя отношения ассоциации (по желанию, вы можете дать ему имя или нет)
Я предпочитаю глагольную фразу, основанную на именовании, поскольку она выявляет смысл отношений. Моя модель можно прочитать непосредственно, как:
- Каждый человек имеет много собак (где «много» означает 0 или более)
- Каждая собака находится в собственности именно одна персона
Это удаляет нужно явно указать ассоциацию, хотя вы все равно можете сделать это, если хотите.
видимость (меня это не волнует, по крайней мере пока, я до сих пор не осознавал ее значимости).
Я согласен. Лично я никогда не комментирую модели с видимостью.
Имя: (здесь это имя MemberEnd), поэтому я оставил его имя по умолчанию на скриншоте
Смотрите комментарий о ассоциации именования выше. Я предпочитаю глагол-называние на основе ролей: «owns» гораздо более явным образом описывает назначение отношений, чем называние конца ассоциации «собака» или «собака».
владелец memberEnd [...]
Лично: Я не использую это. В общем, есть еще одно обсуждение этого вопроса, которое, по-моему, не имеет существенного влияния в большинстве случаев.
Судоходная [...]
Опять же я не использую это лично. В действительности судоходство должно быть получено из основного поведения. Нужно ли ему переходить в одну сторону/обе? Затем установите навигацию соответственно.Однако некоторым людям нравится указывать его явно, на основе этого он делает реализацию более понятной (если только судоходная в одном случае она может быть реализована только с ссылкой (-ами) только в одном классе, а в случае двунаправленного ей нужны ссылки в обоих направлениях - с сопутствующей логикой чтобы все было согласовано).
Кратность
Я согласен с вашим выбором.
Надеюсь, что это поможет.
Привет @ sfinnie! Я достаточно удачлив, чтобы получить такой ответ .I've провел последние 3 часа или так просто поглощая каждое слово, я действительно не могу не поблагодарить вас достаточно. Я смоделировал ассоциацию «Человек владеет собакой». Я надеюсь, что вы ответите на мою попытку, убедитесь, что я пытаюсь сделать правильно и действителен в UML. это диаграмма классов: http://postimg.org/image/cjn6js2ex/ это соответствующий «вид свойств» ассоциации отношение в диаграмме классов (для редактирования его свойств) http://postimg.org/image/llblttv5d/ – Carlos
Вот мое понимание об ассоциации: # Имя: это имя ассоциации (необязательно, вы можете дать это имя или нет) #visibility (меня это не волнует, по крайней мере на данный момент я до сих пор не знал его значение . # Имя: (вот имя MemberEnd), поэтому я оставил его имя по умолчанию в скриншот, являющийся экземпляром типа класса, но в наш e Xample это Fido – Carlos
#The владелец memberEnd: У меня есть два варианта либо объединение или классификатор [Как я понял, я должен указать классификатор для обоих концов , потому что я думаю, что Фидо имеет тип 'Dog class' и Fred имеет тип 'Person класс'], но я не знаю, в каких случаях AssociationEnds должен быть принадлежит ассоциации, не принадлежащей классификатору? – Carlos