Связи между субъектами и вариантами использования в метамодели UML2

Я пытаюсь понять правила, определенные метамоделью UML2 для ассоциаций между субъектами и вариантами использования в диаграммах вариантов использования. Я понимаю, что акторы и варианты использования могут принимать участие в обобщениях (поскольку они являются производными от Classifier, который добавляет возможность обобщения), и я понимаю, что вариант использования может иметь отношения расширения/включения с другими вариантами использования ( потому что это прямо определено в спецификации для диаграмм вариантов использования). Вот часть диаграммы метамодели для вариантов использования:

введите здесь описание изображения

Как видите, на этой диаграмме вообще нет никаких связей между акторами и вариантами использования. Это может означать только то, что ассоциации разрешены из-за общего супертипа субъекта и варианта использования, возможно, BehavioredClassifier или Classifier. Итак, мой вопрос:

  • Какие мета(-классы) или элементы в иерархии метамодели отвечают за ассоциации между субъектами и вариантами использования?

Еще одна вещь, которая сбивает с толку: есть ограничение, которое говорит:

Актер может иметь ассоциации только с вариантами использования, компонентами и классами. Кроме того, эти ассоциации должны быть бинарными.

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


person ceran    schedule 14.05.2013    source источник
comment
Вы разрабатываете инструмент UML? Или просто попытаться изучить UML, чтобы использовать его?   -  person Hippias Minor    schedule 14.05.2013
comment
Я пытаюсь создать независимую, легкую и небольшую метамодель на основе ecore для диаграмм вариантов использования, которая точно следует правилам метамодели uml. Это прототип инструмента UML. Но помимо этого мне просто интересно сейчас.   -  person ceran    schedule 14.05.2013


Ответы (1)


Метаклассы, отвечающие за ассоциации между субъектами, вариантами использования, классами, компонентами и т. д., — это ассоциация и свойство. Когда вы связываете актера с вариантом использования, задействованы три элемента: ассоциация и два свойства. Ассоциация — это ненаправленная связь между элементами (классами, компонентами и т. д.). Свойства представляют собой «концы» вашей ассоциации, и ассоциация является бинарной, если у нее ровно два конца.

Надеюсь, это поможет

person Red Beard    schedule 14.05.2013
comment
Спасибо. Было бы здорово, если бы вы могли обрисовать простую единую ассоциацию между действующим лицом и вариантом использования, а также то, как они связаны. Итак, у нас есть актор A, вариант использования B и ассоциация C с двумя свойствами на каждом конце, P1 и P2. Ассоциация имеет среди прочего ссылки memberEnd и ownedEnd. MemberEnd всегда задействован (2..*), но когда использовать ownedEnd (0..*)? И как A и B узнают об ассоциации между ними, ссылаются ли они на P1/P2 в своих ссылках на атрибуты (0..*)? Спасибо. - person ceran; 15.05.2013
comment
На все концы ассоциации ссылается memberEnd, а ownedEnd используется для моделирования навигации. A и B знают об ассоциации, если они владеют концом. Если P1 и P2 принадлежат ассоциации, A и B не знают об ассоциации, которая не является судоходной. если A и B владеют одним свойством, каждый из них знает об ассоциации, поэтому ассоциация доступна для навигации с обеих сторон. и если один конец принадлежит ассоциации, а другой конец, скажем, А, то ассоциация может перемещаться из А в В. - person Red Beard; 22.06.2013