UML一对多类关系
我对UML非常陌生,正在使用Lucidchart对java中的一些类进行建模。我试图代表一对多的关系,其中一个艺术家将有许多专辑,每个专辑将有一个艺术家。这是建立这种关系模型的正确方法吗 编辑 谢谢你的帮助。这就是我到目前为止所想到的。我仍然有点困惑关于这些房产的其他说法。多重性和线条是否正确UML一对多类关系,uml,lucidchart,Uml,Lucidchart,我对UML非常陌生,正在使用Lucidchart对java中的一些类进行建模。我试图代表一对多的关系,其中一个艺术家将有许多专辑,每个专辑将有一个艺术家。这是建立这种关系模型的正确方法吗 编辑 谢谢你的帮助。这就是我到目前为止所想到的。我仍然有点困惑关于这些房产的其他说法。多重性和线条是否正确 您的图表作为UML图表是不正确的。我可以说是因为鱼尾纹上的结社 要使图表正确,请执行以下操作: 将鱼尾纹更改为多重数0..* 将albums属性移动到关联的Album末尾(因为在UML中永远不应该隐藏这
您的图表作为UML图表是不正确的。我可以说是因为鱼尾纹上的结社 要使图表正确,请执行以下操作:
- 将鱼尾纹更改为多重数
0..*
- 将
属性移动到关联的albums
末尾(因为在UML中永远不应该隐藏这样的列表——这就是关联所代表的!)Album
- 将关联的
结尾更改为多重数Artist
1
- 在关联的
末尾命名属性(例如,Artist
)Artist
- 创建一个名为
的新类(这是一个实际的概念,其信息比名称更多,例如持续时间、作曲家等)Song
- 在
和相册
之间建立新的关联,创建适当的多样性和属性歌曲
乐队成员
和艺术家
都是作曲家
。在现实生活中,人
也可以是多个乐队
中的乐队成员
,这就指出了你不应该对角色使用泛化的一个原因。一些多样性可能是不正确的。例如,一张专辑
可以有许多艺术家
在其上表演。一张专辑
可以播放多个乐队
。一首歌曲可以出现在许多相册上。乐队成员可以在不同的专辑上演奏不同的乐器
。公平地说,这个图表在ER符号中是正确的,它只是不正确。尽管这被标记为一个UML问题,我还是稍微软化了措辞。@JimL。谢谢你的帮助。我已经更新了我的帖子,上面有更多关于你答案的问题。