在 UML 中,我可以在两个 类 之间有两组关系吗?

In UML, can I have two sets of relationships between two classes?

鉴于以下情况:

RQ1: A flight can only be carried out by one plane

RQ2: A plane can be assigned to zero or more flights

所以我有一个叫做 Flight 的 class 和一个叫做 Plane 的 class。

我不知道我是不是对航班飞机之间的关系想得太多了。

因此对于 RQ1,您将在航班和飞机之间建立关联,并且重数将为 Flight [1] ------ Plane [1]

但是随后出现了 RQ2,我需要在 Flight 和 Plane 之间建立关联,但我该如何管理多重性?我想应该是 Flight [0...*] ------ Plane [1]

Problem is, doing that creates two classes and two association lines and 2 pairs of/4 individual multiplicity values which doesn't sound right either.

当然可以。想象一下从 Person 到自我的自我关系。一个是 Father,一个是 Mother(暂时忘记这可能会有所不同,因为不久之前)。所以你可以根据需要在两个 类 之间建立尽可能多的关系。

如果你使用角色名,情况就会好转。因此,RQ2 的关联将被命名为 assignedFlights。 RQ1 中的 carriedOutFlight 角色也可以是 assignedFlights 的索引(作为实现变体)。但当然也可以是不同的协会。