【问题标题】:Implementing UML Sequence and Class Diagram实现 UML 序列和类图
【发布时间】:2020-05-26 12:08:25
【问题描述】:

我最近遇到了这个问题,我只是好奇我的工作是否正确,如果不正确,我在哪里犯了错误。

我的任务:

a) 官员是临时或永久任命的。教授是可以被任命为固定任期或终身的公务员。 教授也是教学教授或研究负责人。科研机构的雇员是公务员或雇员。 教授隶属于科学部长,科研院所员工隶属于教授。 研究所的教授和员工都在研究所工作。研究所可以召集教授和工作人员开会。

创建适当的 UML 类图。

我的回答:


b) 教授可以通知秘书处,他或她想与研究所的工作人员进行约会。秘书处随后将向所有相关工作人员发送一份拟任用清单。一旦秘书处收到所有工作人员的反馈,它将向他们每个人发送最终任命。

创建对应的UML序列图。

我的回答:

c) 用 Ja​​va 实现 (b) 的过程(方法体就足够了!)。这样做时,请遵守 (a) 中定义的类、抽象类和接口。

我的回答:

我试图解决这个问题,但我没有更进一步,尤其是关于使用抽象类和接口解决任务的问题。我觉得这个子任务不用抽象类和接口也能解决吧?

科研机构是否应该实现为抽象类?

谁能给我解释一下? 非常感谢:)

【问题讨论】:

  • 有人可以帮帮我吗?我有一场考试,我只能在 2020 年 5 月 28 日再试一次
  • 回答 Java 和 UML 问题的人大部分时间都不一样。并且没有 UML 标签,所以 UML 人没有注意到它。我已经编辑添加了 UML 标记并删除了 java 标记:这将涵盖前两个问题(并提供了答案)。对于 java 部分,我建议您打开一个单独的更集中的问题,在其中解释为什么您认为它可以在没有抽象类的情况下完成。

标签: interface uml abstract-class class-diagram sequence-diagram


【解决方案1】:

类图

有一个错误,因为professorcivil-servant,他们是co-worker,他们从属于professor:在你的叙述中,教授是事工的下属,而不是其他教授的下属。

我从叙述中了解到,在scientific institute 工作并且是subordinate toprofessor 的员工只能是employee

在你的图表中,部分叙述消失了:

  • 只有fulltime_employee。目前尚不清楚这些与临时和永久雇员有何关系。
  • 没有与教职员工和教授相关的meeting
  • 工作人员在哪里?

在你的图表中还有一种现实世界中不存在的刚性:professor 可能会开始职业生涯,有一天会晋升为director of studies。还是那个教授。只是角色变了。在这里我建议考虑首选composition over inheritance

序列

对我来说似乎是合理的,除了:

  • 你真的应该单独显示execution activity:秘书处发送活动,然后就结束了。当收到反馈时,另一个活动开始。在某些情况下(收到最后的反馈),随后是另一个不同的活动来发送最终确认。
  • 您应该小心箭头。大多数请求是asynchronous 并且有一个开放的箭头。
  • send final 是发送给工作人员的普通异步消息(纯线,开头),但它是对教授的回答(这里可以保留虚线。

实施

这本身就是一个复杂的问题。最好将此作为一个单独的问题提出。但你需要更具体。

提示:抽象类,是不能实例化的类:继承自它的类必须实现其抽象方法,才能实例化对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-26
    • 2016-01-07
    • 2011-08-14
    • 1970-01-01
    相关资源
    最近更新 更多