Когда использовать классы ассоциации UML?

Могу ли я улучшить свой дизайн на этих двух диаграммах ниже? Если да, то как?

Меня смущает использование ассоциативных классов в моих диаграммах. Должен ли я их использовать?

фигура 1

диаграмма классов 1


фигура 2

диаграмма классов 2


person Zabahey    schedule 20.01.2011    source источник


Ответы (2)


Для классов ассоциаций они имеют смысл только в том случае, если они представляют ассоциации с некоторым поведением и состоянием. Посмотрите на тему статьи. У него нет ничего, кроме источника, цели и личности. Вам не нужен класс для такой ассоциации, просто используйте обычную ассоциацию, которая имеет все эти свойства. Таких ненужных ассоциативных классов на ваших диаграммах больше. Еще одна важная вещь при использовании ассоциативных классов заключается в том, что каждый экземпляр этого ассоциативного класса должен иметь уникальную пару источника и цели. Например, комментарий нельзя идентифицировать только по статье и пользователю — у одного пользователя может быть много комментариев к одной статье, а это недопустимо.

person Gabriel Ščerbák    schedule 20.01.2011
comment
Спасибо за ваше предложение. Я улучшу свой дизайн с вашим предложением. Ты так открываешь мой разум. и у меня есть один вопрос, чтобы задать вам: Могу ли я решить проблему, добавив номер комментария в зависимости от статьи? - person Zabahey; 21.01.2011
comment
Я не уверен, что вы думаете, но имейте в виду, что диаграммы классов предназначены для структуры. - person Gabriel Ščerbák; 21.01.2011

Класс ассоциации используется для фиксации определенных характеристик ассоциации между двумя классами. Эти характеристики принадлежат не ассоциированным классам, а отношениям между классами.

person Paws    schedule 01.02.2012