实现UML序列和类图

问题描述 投票:1回答:1

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

我的任务:

a)官员是临时或永久任命的。教授是可以任期固定或终身的公务员。教授还是教授或研究负责人。科学研究所的雇员是公务员或雇员。教授是科学部长的下属,科学研究所的雇员是教授的下属。科学研究所的教授和雇员都在科学研究所工作。该研究所可以召开与教授和教职员工的会议。

创建适当的UML类图。

我的回答:

enter image description here


b)教授可以通知秘书处,他或她想与科学研究所的工作人员约会。秘书处然后将拟议任命的清单发送给所有有关工作人员。秘书处一旦收到所有工作人员的反馈,就会将最后任命发送给每个工作人员。

创建相应的UML序列图。

我的回答:

enter image description here

c)用Java实现(b)中的过程(方法体就足够了!)。为此,请遵循(a)中定义的类,抽象类和接口。

我的回答:

我试图解决这个问题,但是我没有做进一步的事情,特别是关于使用抽象类和接口解决任务的问题。我认为无需抽象类和接口就可以解决此子任务,对吧?

科学研究所应作为抽象类实施吗?

有人可以向我解释吗?非常感谢:)

interface uml abstract-class class-diagram sequence-diagram
1个回答
0
投票

类图

[这是一个错误,因为professor是属于civil-servantco-workerprofessor:在您的叙述中,一位教授是该部的下属,而不是另一位教授的下属。

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

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

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

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

序列

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

  • 您应该单独显示execution activity:秘书处发送活动,然后结束。收到反馈后,将开始其他活动。在某些情况下(收到了最后的反馈),随后还有另一个不同的活动来发送最终确认。
  • 您应该注意箭头。大多数请求为asynchronous,并带有打开的箭头。
  • Send final是发送给工作人员时的普通异步消息(普通线,人头张开,但这是对教授的答复(在这里您可以保留虚线。)>
  • 实施

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

© www.soinside.com 2019 - 2024. All rights reserved.