我想知道,除了图A中的学生不需要学习程序之外,这两个类图是否等价?
在我看来--例如,在图B中,学习程序可以有很多学生,每个学生都有一个注册。图A指出,每一对学生(学习计划,招生)都有一个学生,所以这也可以传达这样的想法:学习计划有很多学生,而每一个学生都有一个招生。
这些情况之间的区别可能是,在图A中,学生可能独立存在,而在图B中,至少需要有一个学习项目(因此也需要注册)。
我的逻辑正确吗?
a)
b)
发布于 2019-05-03 06:41:40
你的假设是正确的。
UML2.5规范中的引号:
对于具有N个memberEnds的关联,请选择任意N-1结束.让构成另一端的属性称为oep,这样选择的N-1末端的量词就是oep的上下文。将特定实例与上下文结束相关联。然后,协会引用这些特定实例的链接集合将标识oep上的一组实例。oep表示的值是根据此集合计算的集合,如下所示:集合中的所有实例都发生在集合中,其他任何实例都不存在。这个集合的基数是它的大小。oep的多重性限制了这种基数。
对于您的示例来说,下面的引用特别有趣:
N进制联合1(或更多)的末端的较低的多重性意味着一个链接(或多个)必须存在于其他目的的每一个可能的值组合中。
因此,三元关联定义了以下业务规则:
所有这些业务规则也适用于图B,但图B定义了一个附加规则:每个学生至少与一个学习项目(1..*)相关联。
https://softwareengineering.stackexchange.com/questions/391341
复制相似问题