UML - 3 类 之间的关联

UML - Association between 3 classes

我有一段声明,我不明白如何在 class 图表中对其建模。这是关于 一级方程式比赛。作品如下:

We can only have one race per circuit in each season

所以CIRCUITSEASONRACE之间有关系。


我相信这是一个三元关联,但朋友告诉我它可能是 CIRCUIT - SEASON 之间的关联,然后是 [ 之间的关联=29=]那个协会RACE

那张照片有错吗?我的意思是,据我所知,关联应该在 2 classes 之间。不在 class 和协会之间...

非常感谢!!!!

编辑: 陈述是错误的,我重述了它并且可以翻译成:(假设我们有 3 个电路)

我们每个赛季每个赛道只能有一场比赛

要根据需要使 Race 关联 class,请将水平连接器设为虚线并删除重数。上面目前显示了一种三元连接器(参见讨论)。

这相当于

多重性 0..1 表示每个赛季和巡回赛有一场比赛或没有比赛。

根据我的理解,下图根据需要对情况进行了建模:

每个赛季都可能与 * 赛道有种族关联,反之亦然。如果特定赛季与特定赛道有 Race 关联,则该关联只有一个 Race 关联 class 实例。

一个赛季不必与一个循环相关联,那么这个组合就没有比赛。

现在每个赛季最多只能参加一场比赛的限制-赛道组合从何而来?这是因为在一个关联端有一个 *(或任何数字 > 1)意味着一个实例可能与超过 1 个 不同 个其他实例相关联,但不是多次与另一个相同的实例。

在此示例中,一个季节实例可能与多个不同的电路相关联,但不会多次与同一个电路相关联。 (如果您想对此建模,则必须使用例如多个关联或合格关联)