UML简单介绍(十一)

您所在的位置:网站首页 活动图和协作图 UML简单介绍(十一)

UML简单介绍(十一)

2024-07-11 21:32| 来源: 网络整理| 查看: 265

1、协作图

        协作图是一种与时序图语意类似的图形,换句话说,它能表示的意思,使用时序图都能表示。他们不同的地方在于,时序图重在表示时间的顺序关系,而协作图重在表现对象之间的变化关系。

        关于时序图和协作图的使用,两者取其一即可,没有必要两者都用上。在非要使用两者的情况下,也可以使用建模工具进行转换。

2、事物

与之前介绍其它图形类似,我们来看看协作图的事物,如下表格:

3、关系

协作图中的关系比较单一,实际上只有链接这一种。用线条来表示链接,链接表示两个对象共享一个消息,位于对象之间或者参与者对象之间。这里不再展开做介绍说明。

4、标签

消息标签的Format:        [前缀]  [守卫条件]  序列表达式   [返回值 :=] 消息名

前缀的语法规则:    序列号,序列号,⋯,序列号 ‘/’

(前缀用来同步线程,意思是在发送当前消息之前指定序列号的消息被处理.例:1.1a, 1.1b/)

一个标签的完整案例,如下图:

5、两个案例

我们先看看如下的一个简单案例,这里描述的是一个顾客去打印店打印东西的场景,如下图:

整体的过程,可以描述为:actor发送Print消息给Computer,Computer发送Print消息给PrintServer,如果打印机空闲,PrintServer发送Print消息给printer。

        我们再来看看另外一个案例,这里描述了一个人乘坐电梯的全部过程,存在的事物主要包括参与者和电梯对象,其中参与者又包括按钮对象、电梯控制对象、命令对象以及工作队列,而其中的关系,就是链接关系了。如下图所示:

        我们将上面的图形转换为自然语言,可以描述为:参与者需要乘坐电梯,他从系统外部按下按钮,让电梯到达他想去的楼层。此时,电梯系统的操作被启动,电梯控制对象以循环的方式检查所有的电梯,从中选择一个工作队列长度最短的。然后,它创建一个作业命令,并将该命令放入对应电梯的工作队列,接着激活队列。电梯对象并发运行,从它的队列中选择一个作业并执行。电梯是一个活动对象,它与它的控制线程并发执行。

6、与时序图综合

在开始介绍协作图的时候,我们就说过,协作图和时序图表示的意思是一致的,两者可以任选一个作为图示对象即可,不必非要选两个,这里,我们将上面举例中的乘坐电梯的协作图,转为时序图,如下:

7、总结

协作图和顺序图都表示出了对象间的交互作用,两者之间也可以相互转化,但是它们侧重点不同:

1)顺序图清楚地表示了交互作用中的时间顺序(强调时间),但没有明确表示对象间的关系。

2)协作图清楚地表示了对象间的关系(强调空间),但时间顺序必须从顺序号获得。

当我们在具体使用两者的时候,要依据具体的需求而定。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3