【问题标题】:UML Class Diagram - Multiple AssociationsUML 类图 - 多个关联
【发布时间】:2017-11-10 16:32:16
【问题描述】:

需要一个描绘高中管理系统的 UML 类图。

  • 学生和教师从人派生
  • 每个学生都属于 1 个(学校)班级
  • 每个班级有 10-25 名学生
  • 每位教师拥有 >= 1 个证书来教授(学校)科目

进一步要求设计如下:

a) 哪个老师,教哪个班级,哪个科目,教多少人 小时/周?
b) 有没有一种安全的方法可以确保只有教师 教授他有证书的科目?

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

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

在 UML 图中真的有办法做到这一点吗?

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

【问题讨论】:

    标签: java uml diagram class-diagram


    【解决方案1】:

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

    【讨论】:

    • 谢谢!但是,这是标准的 UML 类图注释吗?这种方式对我来说似乎很合乎逻辑。我很想这样写。只是,这是一个“官方”解决方案吗?
    • 这是官方表示法。约束是 OCL。不能说太多(不流利),但看起来还可以。
    • @tingtong OCL 是一种定义约束的语言,它不是 UML 的一部分,但它用于定义模型的约束。 OCL 被 OMG 定义为 UML。
    • @granier 您为该图表使用了哪个程序?谢谢
    • @tingtong EA 但关联类是 UML 的一部分,应该在所有工具中都可用...
    【解决方案2】:

    哪位老师每周教哪门课、哪门课、多少小时?

    这意味着将教师与班级联系在一起的是学科。由于有多个科目,因此教师将具有表示科目列表的属性,而班级也将具有科目列表。为了表示每周多少小时,这将与主题相关联。一个主题应该有一个属性表示它应该持续多少小时,一个属性表示每周教授多少次。这样,一旦老师教了一门科目,通过获取老师所学的科目,您就可以选择一周多少次以及多少小时

    b) 有没有一种安全的方法可以确保教师只教授科目 他有证书吗?

    为此,由于认证与主题相关,因此情况会有所改变。这将意味着教师将不再将科目列表作为属性,而是将证书列表作为属性,因此通过获得教师所拥有的证书,您可以获得教师可以从证书和证书中获取的科目教师每周学习该科目的小时数

    希望这可以帮助您完成图表。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多