UML中的模型“汽车必须由个人或公司所有”

时间:2019-07-03 20:27:17

标签: uml

我们将至少有三个UML框:公司,汽车,人。

人员可以属于公司,汽车必须由人员或公司所有,但绝对不能由所有人所有。

在UML中可能吗?问题是多重的。

enter image description here

“”中应显示什么?点,还是应该以不同的方式建模?

1 个答案:

答案 0 :(得分:2)

是的。您可以将其建模为异或约束。

要显示xor,请用虚线链接两个关联,该虚线上有一个{xor}。注意,由于它表示约束,因此必须放在大括号中。作为一种替代方法(如果您的建模工具不支持这种表示法),您可以创建一个链接到两个关联的注释,并在其中包含单个{xor}语句。

在两种情况下,公司/人员方面的两个关联都需要0..1多重性。

当然,如果您可能有多个所有者,并且所有者可能既是“个人”又是“公司”或两者兼而有之,则将使用{or}运算符,并使用多重性0..n

您可以在规范的第7.6.5节中的第37页的图7.16或here中阅读有关此内容的更多信息(也可以找到其他参考文献)。