UML紧急报告系统的协作图

时间:2014-04-05 00:18:17

标签: uml collaboration-diagram

我正在进行一些软件建模/设计作业,而我无法解决如何将这个特定用例转化为协作图的问题。我找到了this优秀的教程,但我正在研究的用例引入了一个“UI”组件,我无法找到它的类比。

引用的问题是:

  

用例名称:报告紧急情况    参与演员:由警官发起并与通讯员沟通    事件流程:

     
      
  1. 该官员激活其终端的“报告紧急”功能
  2.   
  3. 系统通过向主管人员提交表格来回应
  4.   
  5. 官员通过选择紧急级别,类型,位置和填写表格来填写表格   情况简要说明。该官员还描述了可能的回应   紧急情况。表格填写完成后,现场官员提交   形成。
  6.   
  7. 系统收到表格并通知通讯员。
  8.   
  9. 通讯员审核提交的信息并在邮件中创建事件   数据库。通讯员选择回复并确认报告。
  10.   
  11. 系统显示确认和   选择对该官员的回应。   前提条件:该人员已登录系统   后置条件:该官员已收到确认和所选答复   来自记者,或官员已经收到解释说明为什么   交易无法处理。
  12.   

据我了解,协作图中的关联表示对象之间的消息流,并不一定反映对象建模之间的物理关系。如果是这种情况,那么哪个对象应该负责newEmergencyForm()方法,哪个对象应该调用该方法? newEmergencyForm()方法和reportEmergency()方法不能汇总成一个吗?

1 个答案:

答案 0 :(得分:1)

  • 现在(当前的UML标准是2.4.1)该图称为通信图,而不是协作图。合作仍然是一些图表的元素,但它们还有其他意义。

  • 据我了解,Report Emergency正在填写表格。 newEmergencyForm提供了要填写的表单。这是两个不同的动作,你已经知道它们之间的区别,所以,你没有必要不注意这个差异并计算它们的一个操作。但是如果由于某种原因你希望推迟显示以后图表的主题,你可以这样做。这不符合标准。

  • 我不会说出创建这些消息“对象”的内容。在这个抽象层次上,我们宁愿谈论组件。

  • 在定义所有组件之前,您无法说明哪个组件会创建一些消息。你可以在头脑中做到这一点,没关系,但是我们无法帮助你做出选择。什么是'系统'? (在这个级别上,我们不讨论系统整体,它是用例的术语。什么是çorrespondent'?它与官员相同还是可以相同?或者它是一个子系统?你还有什么其他组件? ?

  • 否则,您必须向我们提供组件图作为来源。顺便说一句,我几乎可以肯定,在正确定义所有组件后,您将自己找到解决方案。