http://book.51cto.com/art/200810/93762.htm
协作图(Collaboration Diagram,也叫合作图)是一种交互图(interaction diagram),强调的是发送和接收消息的对象之间的组织结构。一个协作图显示了一系列的对象和在这些对象之间的联系以及对象间发送和接收的消息。对象通常是命名或匿名的类的实例,也可以代表其他事物的实例,例如协作、组件和节点。使用协作图来说明系统的动态情况。
协作图(Collaboration Diagram)显示某组对象如何为了由一个用例描述的一个系统事件而与另一组对象进行协作的交互图。使用协作图可以显示对象角色之间的关系,如为实现某个操作或达到某种结果而在对象间交换的一组消息。如果需要强调时间和序列,最好选择序列图;如果需要强调上下文相关,最好选择协作图。
协作图用于显示对象之间如何进行交互以执行特定用例或用例中特定部分的行为。设计员使用协作图和序列图确定并阐明对象的角色,这些对象执行用例的特定事件流。它们是主要的信息来源,用于确定类的职责和接口。
与序列图不同,协作图显示了对象之间的关系。序列图和协作图表述的是相似的信息,但表述的方式却不同。协作图显示对象之间的关系,它更有利于理解对给定对象的所有影响,也更适合过程设计。
协作图的格式决定了它们更适合在分析活动中使用(请参见活动:用例分析)。它们特别适合用来描述少量对象之间的简单交互。随着对象和消息数量的增多,理解协作图将越来越困难。此外,协作图很难显示补充的说明性信息,例如时间、判定点或其他非结构化的信息,而在序列图中这些信息可以方便地添加到注释中。
协作图强调参与一个交互对象的组织,它由以下基本元素组成:活动者(Actor)、对象(Object)、连接(Link)和消息(Message)。在UML中,使用实线标记两个对象之间的连接,
协作图中的消息,由标记在连接上方的带有标记的箭头表示。协作图包含类元角色和关联角色,而不仅仅是类元和关联。类元角色和关联角色描述了对象的配置和当一个协作的实例执行时可能出现的连接。当协作被实例化时,对象受限于类元角色,连接受限于关联角色。关联角色也可以被各种不同的临时连接所担当,例如过程参量或局部过程变量。连接符号可以使用构造型表示临时连接(《parameter》或《local》)或调用同一个对象(《self》)。虽然整个系统中可能有其他的对象,但只有涉及到协作的对象才会被表示出来。换而言之,协作图只对相互之间具有交互作用的对象和对象间的关联建模,而忽略了其他对象和关联。
协作图的内容
协作图中可以有对象和主角实例,以及描述它们之间关系和交互的连接和消息。通过说明对象间如何通过互相发送消息来实现通信,协作图描述了参与对象中发生的情况。您可以为用例事件流的每一个变化形式制作一个协作图。
在协作图中,您可以按照以下方式使用对象:
· 可以不指定对象的类。通常先制作只带有对象的协作图,而后再指定它们的类。
· 可以给对象命名,但如果您要区分同一个类的不同对象,则应给对象命名。
· 如果对象的类主动参与了协作,则可以将类本身在协作图中表现出来。
主要描述协作对象间的交互和链接(一条链接是一个关联的实例化)。时序图和协作图都是描述交互,但是时序图强调的是时间,而协作图强调的是空间。
协作图和时序图间的主要区别在于协作图显示真正的对象及其链接(正在协作的“对象网络”),在许多情况下,这有利于理解对象的交互。而时间序列在时序图更容易看出来,从上至下看即可。当要决定选用哪一种图时,一般的原则是当对象及其链接有利于理解交互时选择协作图,当只需了解序列时选择时序图。
分享到:
相关推荐
- 协作图强调对象之间的交互关系和布局,可以看作是时序图的另一种形式,更注重对象之间的关系结构。 7. **组件图(Component Diagram)**: - 组件图展示了系统的模块化结构,每个组件代表一个可替换的软件单元...
3. **PLC系统架构**:S7-400的硬件组成,如中央处理单元(CPU)、输入/输出模块、通信模块等,以及它们如何相互协作实现自动化控制。 4. **I/O系统**:S7-400的输入输出系统如何与现场设备交互,如传感器、执行器等...
通过以上四个场景的序列图(图3至图6)和协作图(图7至图8),我们可以全面理解每个步骤的执行顺序和对象间的交互方式,这对于理解和设计系统的动态行为至关重要。 总结,用例图、协作图和序列图是UML中用于描绘...
**UML协作图详解** UML(统一建模语言)是一种标准的图形建模语言,用于软件工程领域,用于描述软件系统的设计和架构。协作图是UML交互建模的一部分,它强调对象间的结构和相互关系,而不仅仅是交互的顺序。 ### ...
### 图书借阅管理系统miniLib的顺序图和协作图 #### 实验背景 在软件工程领域,统一建模语言(Unified Modeling Language, UML)是一种广泛使用的标准建模语言,用于绘制系统的各种图形化表示形式,包括但不限于用...
7. **用户登录系统的协作图** - **User the LoginInter(用户登录接口)**:用户输入登录信息的界面。 - **LoginInterfac(登录界面)**:处理登录请求的组件。 - **Server(服务器)**:验证用户身份的后端。 -...
7.协作图.doc涵盖了: 1. **对象(Object)**:参与交互的实体。 2. **链接(Link)**:表示对象间的关系或通信连接。 3. **消息(Message)**:对象间的通信,包括同步消息和异步消息。 4. **生命线(Lifeline)**...
这份作业包含了多种类型的UML图:类图、用例图、活动图、状态图以及顺序图(协作图)。下面将针对这些图形中的关键知识点进行详细的阐述。 ### 一、类图 类图(Class Diagram)是UML中最常见的图形之一,主要用于...
6. 图形化界面:PowerDesigner提供了丰富的图形化界面,用户可以自定义布局、调整线型和颜色,使得模型更易读,也更便于团队之间的沟通和协作。 7. 文档生成:软件还能自动生成模型文档,方便用户分享和存档,提高...
协作图则更注重对象间的合作关系,强调谁与谁合作,以及如何合作。比如在"维护教授信息"时,管理员可能需要与数据库系统进行协作,更新教授的个人信息和教学科目。 以下是一些关键用例的详细说明: 1. **注册课程*...
7. **编程和调试**:S7-1500 PLC使用TIA Portal软件进行编程和调试,支持Ladder Logic (LD),Structured Text (ST),Sequential Function Chart (SFC)和Function Block Diagram (FBD)等多种编程语言。 了解以上知识...
4. **编程与控制**:S7-200SMART支持Step 7 Micro/WIN SMART编程软件,用户可以利用它编写和下载控制程序。EPLAN_CAx资料可能包含了与S7-200SMART编程相关的示例程序和指导,这对于初学者理解PLC编程逻辑和指令集很...
7. **协作与共享**:可能支持团队协作,允许多人同时编辑,方便项目组成员间的沟通和协作。 使用这类工具,不仅可以提高E-R图的绘制效率,还能提升设计质量,确保数据库模型的准确性和完整性。在数据库设计的早期...
5. **项目管理**:学会如何保存、备份和导入导出项目,这对于团队协作和项目版本控制至关重要。 6. **通讯功能**:虽然在仿真中可能不涉及实际网络连接,但理解S7-200的通讯协议,如PPI、MPI、Profibus和Profinet,...
4. **兼容性**:CAD模板通常采用通用格式(如DWG),可以方便地在不同软件之间共享和协作。 5. **模块化设计**:S7-1200的模块化特性在CAD模板中得以体现,用户可以根据实际需求选择不同的I/O模块,并在图纸上清晰...
7. 公司信息:中科新松有限公司的地址、邮编、网址等信息。 知识点:公司信息、联系方式 8. 目录:本手册的目录包括简介、打开与关闭电源、界面介绍、移动界面、编程界面、运行界面、状态界面、设置界面、关于界面...
《深入理解TLZ7xH-EVM开发板:从PDF原理图到Cadence与AD转换》 TLZ7xH-EVM开发板是一款基于Xilinx Zynq-7000系列的高性能评估平台,其设计复杂度高,集成了丰富的功能模块,是嵌入式系统开发者的重要工具。这份资料...
7. **编程与控制**:CRX-10iA可能支持直观的编程方式,如通过示教器进行点对点示教,或者使用高级的离线编程软件,如FANUC的ROBODRIVE。此外,它可能具备内置的智能功能,如视觉识别和自学习能力。 通过这个压缩包...
《draw.io:轻量级绘图神器的探索与应用》 ...通过安装"draw.io-15.2.7-windows-installer.exe",Windows用户可以充分利用这款工具,提升自己的图表制作能力和团队协作能力,实现更加直观和有效的信息传达。
这款软件提供了全面的编程环境,支持Ladder Diagram(梯形图)、Structured Text(结构化文本)、Sequential Function Chart(顺序功能图)和Function Block Diagram(功能块图)四种IEC 61131-3标准的编程语言,...