Uml 聚合多样性

Uml 聚合多样性,uml,aggregation,multiplicity,Uml,Aggregation,Multiplicity,我和我的同事在一点上意见不一致。在UML中,当进行聚合时,菱形边的多重性最大值是1,还是可以是0..*?还是取决于一种观点? 提前谢谢你 是的,它可以是0..*。有一个很好的例子:系里有几个教授,每个教授可能同时隶属于几个系。首先,你需要明确指出,你所说的“钻石”是聚合中的空钻石,而填充钻石是合成钻石 如果你的意思是空钻石,那么冰袋是正确的,你混淆了两个不同的东西。多样性与聚合无关,因此“菱形”聚合指示符可以具有任何您喜欢的多样性,因为它们是不相关的 如果你指的是填制的菱形ie作文,那么有人发布

我和我的同事在一点上意见不一致。在UML中,当进行聚合时,菱形边的多重性最大值是1,还是可以是0..*?还是取决于一种观点?

提前谢谢你

是的,它可以是0..*。有一个很好的例子:系里有几个教授,每个教授可能同时隶属于几个系。

首先,你需要明确指出,你所说的“钻石”是聚合中的空钻石,而填充钻石是合成钻石

如果你的意思是空钻石,那么冰袋是正确的,你混淆了两个不同的东西。多样性与聚合无关,因此“菱形”聚合指示符可以具有任何您喜欢的多样性,因为它们是不相关的

如果你指的是填制的菱形ie作文,那么有人发布的例子对你并没有真正的帮助,因为它说:“有很多系,但
只有1所大学(多元)”,以及“如果所有系都被删除,那么大学也会被删除(作文)”

我正在努力想出一个好的例子,在这个例子中,合成结束将不仅仅是
1
,而且据我所知,它永远不会是
0..*
,因为你可以拥有一个必须删除可能不存在的东西的类?然而,我可能是
1..*
即多对多,例如考试和试题


多重性可以是
1..*
1..*
ie考试有
1个或多个
问题,一个问题可以存在于
1个或多个
考试中。考试结束时填上菱形(作文)意味着如果所有问题都被删除,那么所有考试也将被删除

@sfinie欢迎您使用任何表示这种关系的方式。我不知道还有什么更好的方法,它是一个直接的二进制。空心钻石告诉你的一切都是直二进制所不能做到的。这只是视觉上的噪音。但不要相信我的话:阅读这个问题(),看看UML的合著者Jim Rumbaugh对此有什么看法。不要看到任何矛盾。聚合添加了详细信息。由你决定是否需要这些细节。此外,这里的问题不是聚合,而是关系中特定方面的多重性。简单联想的答案是一样的,不要说有矛盾。我说有点混乱。最初的问题被提出的事实证明了这一点。我的观点是,目前定义的UML聚合很少是一个有用的概念。至于增加“细节”,这取决于你所说的“细节”是什么意思。它添加的唯一定义良好的语义是递归非循环性。否则它不会说任何东西,而一个直接的二进制文件不会。很少有人知道非循环性质。所以你必须明确指出这一点。[ctd]