Односторонняя ассоциация с множественностью UML - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь понять этот конкретный случай:

 ---------                ---------
|         |0..*      0..*|         |
|CLASS  A |------------->| CLASS B |
|         |              |         |
 ---------                ---------


 ---------                ---------
|         |1..*      0..*|         |
|CLASS  A |------------->| CLASS B |
|         |              |         |
 ---------                ---------

Что я понимаю из первого примера: Один объект из класса A имеет отношение к нулю или нескольким объектам из класса B. Это имеет смысл, потому что класс A знает класс B. Но что именно означает другая множественность? Класс B не знает Класса A, поэтому не имеет смысла помещать множественность там.

То же самое касается второго примера.

Если у кого-то есть хорошее объяснение, я был бы очень благодарен.

Привет, джон

Ответы [ 3 ]

0 голосов
/ 17 мая 2018

Это означает, что на экземпляр B могут быть нацелены многие экземпляры A. через вашу ассоциацию.

Но обычно я не устанавливаю кратности для ролей, не предназначенных для навигации, в ассоциациях uml, поскольку он не используется длягенерация кода (для этой информации о множественности обычно нет реализации ...).

0 голосов
/ 17 мая 2018

На самом деле это имеет смысл, поскольку выражает ограничение вашей модели (данных).

Купив установку кратности на [1..*] на стороне A, вы заявляете, что всегда должно быть хотя бы 1 или более экземпляров A, имеющих отношение к B.

При написании (или создании) бизнес-кода это ограничение обычно не применяется, но это только одно приложение для модели UML.

Он также служит функциональной документацией, где меня определенно интересуют кратности с обеих сторон.

Этот тип информации также важен при проектировании базы данных. Он определит, будет ли поле FK иметь значение NULL или нет.

0 голосов
/ 16 мая 2018

Тот факт, что B не знает о A, не помешает нескольким A s подключиться к B.Например, взяв B в качестве адреса.И A компании знают ряд адресов.Но тогда эти компании передают адреса другим компаниям - и B не знает об этом.

...