uml交互图

来源:互联网 发布:能恢复手机数据的软件 编辑:程序博客网 时间:2024/06/05 10:33


交互图用来描述系统中的对象是如何进行相互作用的。即一组对象是如何进行消息传递的。当交互图建模时,通常既包括对象(每个对象都扮演某一特定的角色),又包括消息(每个消息都代表对象之间的通信活动,并导致一定的动作发生)。

关键字: 对象、顺序、消息(顺序号、名称、参数)

一次交互就是指在特定语境中为了实现某个目标而在一组对象之间进行交换的一组消息所表示的行为。

在uml中,交互图可以分为这4种,   顺序图(时序图)、通信图、定时图、交互概述图。


顺序图:

顺序图是将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。


同步消息画法:

异步消息画法:

返回消息用虚线表示

约束:[boolean Test]  

对象与角色画法:对象名:类名   如

交互画法:

对象生命线画法:


在顺序图中除了按顺序发送后接受消息,还可以用交互片段来执行一些复杂操作。

选择元素:


另一种选择元素,单选


循环元素:最少循环m次,最多n次


同步:


引用:


跳出:符合条件就跳出中间操作


原子性操作:不允许中间操作被打断。 critical交互片段中的操作都算作一个事件,均为同步消息



通信图:

顺序图和通信图都属于交互图。
这两种图之间的区别在于:顺序图基于时间,按时间顺序显示出现的任务;而通信图显示任务和信息(对象)的交互方式。在通信中,时间以编码形式显示,很难选取。

通信图主要目的在于 描述对象之间的通信关系和反映通信网络.
虽然存在这些根本区别,但这两类图有相同之处:都用于显示对象和用户如何交互以执行任务。


消息编号:消息的编号有两种,一种是无层次编号,它简单直观;另一种是嵌套的编号,它更易于表示消息的包含关系
迭代标记:用*号表示,表示循环,通常还有迭代表达式,用来说明循环规则

监护条件:通常是用来表示分支的,也就是表示“如果条件为true,才发送消息” 
在通信图中使用监护条件一定要有所限制,通常应只列出主要的监护条件,否则会影响其阅读。

定时图:


坐标轴交换了位置,改为从左到右来表示时间的推移
用生命线的“凹下凸起”来表示状态的变化,每个水平位置代表一种不同的状态,状态的顺序可以有意义、也可以没有意义
生命线可以跟在一根 线后面,在这根线上 显示些不同的状态值
可显示一个度量时间 值的标尺,用刻度表 示时间间隔

0 0