UML交互视图

来源:互联网 发布:ios存照片软件 编辑:程序博客网 时间:2024/06/05 15:21
1.概述
      对象间的相互作用体现了对象的行为。这种相互作用可以描述成两种互补的方式:一种以独立的对象为中心进行考察;另一种以相互作用的一组对象为中心进行考察。交互视图适合描述一组对象的整体行为。交互视图是对象间的协作关系模型。
2.协作
      协作描述了在一定语境中一组对象以及用以实现某些行为的这些对象之间的相互作用。它描述了为实现某种目的而相互合作的“对象社会”。协作中有在运行时被对象和连接占用的槽。协作槽也叫做角色,因为它描述了协作中的对象或连接的目的。类元角色表示参与协作执行的对象的描述;关联角色表示参与协作执行的关联描述。类元角色是在协作中被部分约束的类元,关联是在协作中被部分约束的关联。协作中的类元角色与关联关系只有在特定的语境中才有意义。通常,同样的关系不适用于协作之外的潜在类元和关联。系统中对象可以参与一个或者多个协作。协作包括结构和行为两个方面。结构方面与静态视图一样。行为方面是一个消息集合,这些消息在一个角色的各个对象之间传递。协作中的消息集合称为交互。一个协作可以包含多个交互。协作表示潜藏在计算过程中三个主要结构的统一,即数据结构、控制流和数据流的统一。
3.交互
      交互是协作中的一个消息集合,这些消息被类元角色通过关联进行交换。交互作用可对操作的执行,用例和其他行为实体建模。消息是在两个对象之间的单路通信,从发送者到接受者的控制信息流。消息可以被组织成为顺序的控制线程,包括同步线程和异步线程。为了表示消息序列,用两种图来表示:顺序图和协作图。
4.顺序图
      顺序图将交互关系表示为一个二维图。纵向是一个时间轴,时间沿竖线向下延伸。横向表示了在协作中各个独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。下面是一个顺序图图例:

5.激活
      激活是过程的执行,包括它等待嵌套过程的执行时间。在顺序图中,它用部分替换生命线的双道线表示。下面是一个带过程的顺序图图例:

6.协作图
       协作图是一种类图,它包含类元角色和关联角色。类元角色和关联角色描述了对象的配置和当一个协作执行时可能出现的连接。协作图只对相互间具有交互作用的对象以及对象间的关系建模,忽略了其他对象和关联。下图是一张协作图图例:

下面是一张流图例:

       顺序图常常表示方案,协作图用于表示过程的详细设计。
7.模板
       模板是一个参数化的协作,并有表示何时使用该协作的标线。参数可以被不同的值替代产生不同的协作,它通常为类指定槽。下面是一个观察者模式的模板:

原创粉丝点击