2015-05-25 3 views
1

, если пользователь может быть частью многих групп, а группа может содержать много пользователей, в UML это отношение должно быть представлено как отношение агрегирования? или мы можем просто использовать простую ассоциацию?отношение агрегации пользовательской группы в UML

ответ

2

В большинстве случаев достаточно ассоциации. Скорее всего, вы добавите множественность в любой конец, чтобы показать, что пользователь (должен быть) по крайней мере один или может быть во многих группах (конечно, это зависит от домена), поэтому вы увидите множественность 1..*. И наоборот, у группы будет 0..* пользователей.

Вы можете использовать Aggregation (полый алмаз на стороне группы), чтобы показать, что группа образована несколькими пользователями. Использование композиции обычно (в контексте управления пользователями) не имеет смысла, поскольку это означает, что группа может состоять только в том случае, если есть пользователи, которые принадлежат ей.

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

+0

большое вам спасибо – Yuri

1

В этом случае ясно, что «композитный» не является вариантом, поэтому он будет либо «общим», либо «ни одним». OMG спецификация определяет общие, как это:

«Точная семантика общей агрегации зависит от области применения и модельера.»

Таким образом, вы можете выбрать либо из вариантов. Если вы хотите, чтобы представить это в UML диаграмме ,,,,, enter image description here

("1 .. *" может быть право множественность ..)

Мой ответ основан на UML Спецификация 2.4.1 - [7.3.2 AggregationKind]

AggregationKind является перечислением следующих значений литералов:

ни

Указывает, что свойство не имеет A ggregation.

совместно

Указывает, что свойство имеет общую агрегацию.

композит

Указывает, что свойство агрегируется композитно, т.е. составной объект несет ответственность за существование и хранения объектов, состоящих (частей).

Семантический Вариация Очки

Точная семантика общей агрегации варьируется в зависимости от области применения и моделировщика.

Порядок и способ создания экземпляров частей не определены.

Смежные вопросы