指南: 协作图
主题简介协作图用于显示对象之间如何进行交互以执行特定用例或用例中特定部分的行为。设计员使用协作图和序列图确定并阐明对象的角色,这些对象执行用例的特定事件流。它们是主要的信息来源,用于确定类的职责和接口。 与序列图不同,协作图显示了对象之间的关系。序列图和协作图表述的是相似的信息,但表述的方式却不同。协作图显示对象之间的关系,它更有利于理解对给定对象的所有影响,也更适合过程设计。 协作图的格式决定了它们更适合在分析活动中使用(请参见活动: 用例分析)。它们特别适合用来描述少量对象之间的简单交互。随着对象和消息数量的增多,理解协作图将越来越困难。此外,协作图很难显示补充的说明性信息,例如时间、判定点或其他非结构化的信息,而在序列图中这些信息可以方便地添加到注释中。 协作图的内容协作图中可以有对象和主角实例,以及描述它们之间关系和交互的连接和消息。 通过说明对象间如何通过互相发送消息来实现通信,协作图描述了参与对象中发生的情况。您可以为用例事件流的每一个变化形式制作一个协作图。 描述回收机系统的接收储存项用例中部分事件流的协作图。 对象对象用一个对象符号表示,显示对象的名称和它所属的类(带有下划线),两者之间用冒号隔开: 对象名:类名 在协作图中,您可以按照以下方式使用对象:
主角主角实例通常作为交互的调用方出现在协作图中。如果同一个图中有多个主角实例,请尽量将它们置于图的外围区域。 连接连接定义如下:
消息消息是对象之间的通信,它在传达信息的同时期望活动随之发生。在协作图中,消息显示为连接旁带有标注的箭头。这表示连接用于传送,或通过别的途径向目标对象发送消息。箭头沿着连接的方向指向目标对象(接收消息的对象)。箭头通过消息名称及消息参数来标记。为了显示消息在整个交互中的顺序,还可以用顺序号来标记消息箭头。顺序号常用在协作图中,因为它们是说明消息相对顺序的唯一方法。 消息可以是未被分配的,这意味着它的名称是描述消息总体意义的临时字符串。您可以在随后通过指定消息目标对象的操作来分配消息。所指定的操作将替换消息的名称。 |
Rational Unified Process |