协作图(协作图的组成元素)
协作图中嵌套消息怎么画
用星号来画。
第二个消息被称为嵌套在第一个消息里。嵌套可以剁成嵌套。循环与时序图中的循环类同。表示方式:用星号表示。协作图是动态图的另一种表现形式,强调参加交互的各对象结构的信息。协作图是一种类图,包含类元角色和关联角色,而不仅仅是类元和关联。协作图强调参加交互的各对象的组织。
协作图中多对象的含义是什么
协作图
协作图包含一组对象和以消息交互为联系的关联,用于描述系统的行为是如何由系统的成分合作实现的。在协作图中,类元角色描述了一个对象,关联角色描述了协作关系中的链,并通过几何排列表现交互作用中的各个角色。
协作图的含义
所谓协作,是指在一定的语境中一组对象以及用以实现某些行为的这些对象间的相互作用。它描述了这样一组对象为实现某种目的而组成相互合作的“对象社会”。在协作中,它同时包含了运行时的类元角色(Classifier Roles)和关联角色(Association Roles)。类元角色表示参与协作执行的对象描述,系统中的对象可以参与一个或多个协作;关联角色表示参与协作执行的关联的描述。
协作图就是表现对象协作关系的图,它表示了协作中作为各种类元角色的对象所处的位置,在图中主要显示了类元角色和关联角色。类元角色和关联角色描述了对象的配置和当一个协作的实例执行时可能出现的连接。当协作被实例化时,对象受限于类元角色,连接受限于关联角色。
从结构方面来讲:
协作图和对象图一样,包含了一个角色集合和它们之间定义行为方面的内容的关系,从这个角度来说,协作图也是类图的一种,但是协作图与类图这种静态视图不同的是,静态视图描述了类固有的内在属性,而协作图则描述了类实例的特性,因为只有对象的实例才能在协作中扮演自己的角色,它再协作中起了特殊的作用。
从行为方面来讲:
协作图和序列图一样,包含了一系列的消息集合,这些消息在具有某一角色的各对象间进行传递交换,完成协作中的对象则为达到的目标。可以说在协作图的一个协作中描述了该协作所有对象组成的网络结构以及相互发送消息的整体行为,表示潜藏于计算过程中的三个主要结构的统一,即数据结构、控制流和数据流的统一。
协作图的作用
协作图作为一种在给定语境中描述协作中各个对象之间组织交互关系的控件阻止结构的图形化方式,在使用其建模时,可以将其作用分为以下三个方面。
通过描绘对象间消息的传递情况来反映具体的使用语境的逻辑表达。一个使用情境的逻辑可能是一个用例的一部分,或是一条控制流,这个序列图的作用类似。
显示对象及其交互关系的控件阻止结构。协作图显示了在交互过程中各个对象之间的阻止交互关系以及对象彼此之间的连接。与序列图不同,协作图显示的是对象之间的关系,并不是侧重交互的顺序,它没有将时间作为一个单独的维度,而是使用序列号来确定消息及并发线程的顺序。
协作图的另外一个作用是表现一个类操作的实现。协作图可以说明类操作中使用到的参数、局部变量以及返回值等。当使用协作图表现一个系统行为时,消息编号对应了程序中的嵌套调用结构和信号传递过程。
组成协作图的元素
对象(Object)、消息(Message)和链(Link)这三个元素构成了协作图。协作图通过各个对象之间的组织交互关系以及对象彼此之间的连接表达对象之间的交互。
对象:
协作图中的对象和序列图中的对象的概念相同,同样都是类的实例。对象的角色表示一个或一组对象在完成目标的过程中所应起的那部分作用。对象是角色所属类的直接或者间接实例。在协作图中,不需要关于某个类的所有对象都出现,同一个类的对象在一个协作图中也可能要充当多个角色。
协作图中对象的表示方式也和序列图中对象的表示方式一样,使用包围名称的矩形框来标记,所显示的对象及其类的名称带有下划线,两者用冒号隔开,使用“对象名:类名”的形式,与序列图不同的是,对象的下部没有一条被称为“生命线”的垂直虚线,并且对象存在多对象的形式。
消息:
在协作图中,可以通过一系列的消息来描述系统的动态行为。和序列图中的消息概念相同,都是从一个对象(发送者)向另一个或几个其他对象(接收者)发送信号,或由一个对象(发送者或调用者)调用另一个对象(接收者)的操作,并且都由三部分组成,分别是发送者、接收者和活动。
在协作图中,消息使用带有标签的箭头表示,它附在连接发送者和接收者的链上。链连接了发送者和接收者,箭头的指向便是接收者。消息也可以通过发送给对象本身的方式,依附在连接自身的链上。在一个连接上可以有多个消息,它们沿着相同或不同的路径传递。每个消息包括一个顺序号以及消息的名称。消息的名称可以是一个方法,包含一个名字、参数表和可选的返回值表。消息的各种实现的细节也和“交付商品”两步。
协作图中的链与对象图中的链的概念和表示形式都相同,都是两个或多个对象之间的独立连接,是对象引用元组(有序表),也是关联的实例。在协作图中,关联角色是与具体语境有关的暂时的类元之间的关系,关联角色的实例也是链,其寿命受限于协作的长短,就如同序列图中对象的生命线一样。
在协作图中,链的表示形式为一个或多个相连的线或弧。在自身关联的类中,链是两端指向同一对象的回路,是一条弧。为了说明对象是如何与另外一个对象进行连接的,可以在链的两端添加上提供者和客户端的
visio顺序图怎么改成协作图
有一个软件叫IBM.Rational.Rose,专门用来画UML图的。然后在 Rose 中,时序图与协作图间的转换特别容易。要从时序图转换为协作图,只需打开时序图,然后选择 Browse → Create collaboration Diagram 或按 F5 ;要从协作图转换为时序图,只需打开协作图,然后选择 Browse → Create sequence Diagram 或按 F5 。
顺序图和协作图是什么意思?
顺序图(也叫序列图)和协作图(也叫合作图)称为交互图。其中,序列图用来描述对象之间消息发送的先后次序,阐明对象之间的交互过程以及在系统执行过程中的某一具体时刻 将会发生什么事件。
序列图是一种强调时间顺序的交互图,其中对象沿横轴排列,消息沿纵轴按时间顺序排列。序列图中的对象生命线是一条垂直的虚线,他表示一个对象在一段时间内存在。
准则
尽力保持消息的顺序是从左到右排列的。一个顺序图的消息流开始于左上方,消息乙的位置比消息甲低,这意味着消息乙的顺序比消息甲要迟。因为西方的阅读习惯是从左到右,你应该尽量按照和描述消息流一样的方式,从左至右排列分类器(角色、类、对象,和用例)。
以上内容参考:百度百科-顺序图
如何创建UML协作图
协作图用于显示组件及其交互关系的空间组织结构,它并不侧重于交互的顺序。协作图显示了交互中各个对象之间的组织交互关系以及对象彼此之间的链接。与序列图不同,协作图显示的是对象之间的关系。另一方面,协作图没有将时间作为一个单独的维度,因此序列号就决定了消息及并发线程的顺序。协作图是一个介于符号图和序列图之间的交叉产物,它用带有编号的箭头来描述特定的方案,以显示在整个方案过程中消息的移动情况。