UML Class 图 - 多重关联

UML Class Diagram - Multiple Associations

需要描绘高中管理系统的 UML class 图。

进一步要求设计如下:

a) which Teacher, teaches which Class, in which Subject, for how many hours/week?
b) is there a safe way to assure that a Teacher only teaches Subjects he has a Certificate for?

经过几个小时的模糊测试后,我想到了这个:

但我仍然无法想象如何设计图表,使 a) 中的所有(或至少三个)条件都按要求呈现。

在 UML class 图中是否真的有这样做的方法?

编辑: 在阅读 Ayo Ks 的评论后我想出了这个:

which Teacher, teaches which Class, in which Subject, for how many hours/week?

这意味着将教师绑定到 class 的是一个主题。由于有多个科目,教师将有一个代表科目列表的 属性,class 也将有一个科目列表。对于表示多少hours/week,这将与主题相关联。一个科目应该有一个 属性 代表它应该持续多少小时,一个 属性 代表它每周教授多少次。这样一旦老师教了一个科目,通过获取老师上的科目,你可以选择一周上几次课,多少小时

b) is there a safe way to assure that a Teacher only teaches Subjects he has a Certificate for?

对于这一点,由于认证与主题相关联,因此情况会有所改变。这将意味着教师将不再拥有作为 属性 的科目列表,而是拥有证书列表,因此通过获得教师拥有的证书,您可以获得教师可以选择的科目证书和数量 hours/week 老师选修了该科目

希望这有助于您完成图表。

我会使用带有约束的关联 class。