Ассоциация внутри класса(Прочитано 4636 раз)
Ассоциация внутри класса : 20 Сентября 2013, 15:46:29
В книге "The Unified Modeling Language Reference Manual" на странице 230 есть Figure 13-70 http://msdl.cs.mcgill.ca/people/tfeng/docs/The%20Unified%20Modeling%20Language%20Reference%20Manual.pdf (во втором издании аналогично на странице 268 есть Figure 14-84 http://www.utdallas.edu/~chung/Fujitsu/UML_2.0/Rumbaugh--UML_2.0_Reference_CD.pdf). В рускоязычном издании тоже есть.

Мне такой прием понравился тем, что для часто встречающегося типа ограничения имеется выразительная нотация. Других примеров и/или описания особенностей применения найти не удалось (стандарт очень "скуп" на этот счет, а учебники по UML - еще скупее).

Если есть какая-нибудь информация и/или заинтересованность по этой теме - буду рад получить отклик.



Re: Ассоциация внутри класса Ответ #1 : 22 Сентября 2013, 14:02:46
Вадим, что конкретно Вас заинтересовало? Выражение композиции в целом или композиция внутри(между) кластера(ми)?
Какой Вам информации не хватает?
Не важно какой ты сейчас - большой или маленький, важно - как ты растешь.
Б.А.С.



Re: Ассоциация внутри класса Ответ #2 : 23 Сентября 2013, 11:31:58
Меня заинтересовало то, что можно визуально выразить ограничение: "Server" и "Kiosk" могут быть соединены "Controls" только если относятся к одному и тому же "Cluster".

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

 

 



Re: Ассоциация внутри класса Ответ #3 : 23 Июня 2022, 02:01:47
В современном прочтении, то, что соединяет такая связь, является частями (Part). Ассоциация не может соединять Part в нынешней версии стандарта. В другой теме мы обсудили, что вложенные классы и части композитной структуры рисуются сейчас разными. Части соединяет коннектор. Авторы стандарта избегают примеров диаграмм, где бы коннектор выходил за пределы объемлющего класса. И пишут про коннектор так, как-будто у коннектора (и соединяемых им частей) есть общий владелец-классификатор. Абстрактный синтаксис допускает, что у коннектора нет владельца, но примера в стандарте (как и пояснения к внутренней структуре чего относится такой коннектор) нет. Диаграмма из URM может быть допилена, чтобы потрафить стандарту, добавлением объемлющего классификатора и превращением кластера в part. И всё же, понравившийся пример был и останется уколом в дефекты UML, где конкретный синтаксис норовит войти в клинч с абстрактным.

P. S. Банкет от создателей Visual Paradigm:

В их голове это рифмуется с этим:

См. здесь.
« Последнее редактирование: 23 Июня 2022, 02:07:10 от [прилетело НЛО и...] »
[...и улетело НЛО.]



Re: Ассоциация внутри класса Ответ #4 : 27 Июня 2022, 11:02:39
По ссылке https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-composite-structure-diagram/ смотрел "Deriving Composite Structure Diagram from Class Diagram" и так и не понял, что предлагается:
   1. использовать диаграмму составной структуры вместо диаграммы классов
   2. использовать диаграмму составной структуры вместе с диаграммой классов
И в одном, и в другом варианте вижу проблемные места:
   если 1., то не всё выражено
   если 2., то есть нестыковки



Re: Ассоциация внутри класса Ответ #5 : 06 Июля 2022, 01:07:36
Мне понравилась последняя диаграмма.

Нижний коннектор, соединяющий модули памяти с материнкой, имеет мультиплисити. Части BasicPC, соединяемые им, имеют мультиплисити. И порты на концах коннектора имеют мультиплисити. Чтобы убедиться в том, что 1 модуль памяти втыкается в 1 разъём и при этом всё сходится, необходимо сверить 5 явных цифирь и одну неявную.
[...и улетело НЛО.]




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19