交互图(Interaction Diagram)用来描述系统中的对象是如何进行相互作用的。即一组对象是如何进行消息传递的。

当交互图建模时,通常既包括对象(每个对象都扮演某一特定的角色),又包括消息(每个消息都代表对象之间的通信活动,并导致一定的动作发生)。

交互图基本知识点:(点击进入大图)

交互主要用于描述协作的动态行为方面,包括:顺序图(强调消息的事件顺序) 、 合作图(强调对象之间的交互关系)。

一、顺序图

顺序图描述按照时间的先后顺序对象之间交互动作过程。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或状态机中引起转换的事件。展示了对象之间的交互,这些交互是指在场景或用例的事件流中发生的。

顺序图的重点在消息序列上,也就是说,描述消息是如何在对象间发送和接收的。表示了对象之间传送消息的时间顺序。

浏览顺序图的方法是:从上到下查看对象间交换的消息。

举例:(以机房收费系统为例)

(1)一般用户上机

(2)操作员充值

(3)管理员结账

二、协作图

协作图强调的是发送和接收消息的对象之间的组织结构,使用协作图来说明系统的动态情况。主要描述协作对象间的交互和链接,显示对象、对象间的链接以及对象间如何发送消息。

协作图可以表示类操作的实现。

举例:和上面的顺序图一一对应

(1)一般用户上机

(2)操作员充值

(3)管理员结账

三、协作图与顺序图的区别

顺序图与协作图都表示对象之间的交互作用,只是它们的侧重点有所不同:

(1)顺序图描述了交互过程中的时间顺序,但没有明确地表达对象之间的关系;协作图描述了对象之间的关系,但时间顺序必须从顺序号获得

(2)两个图中所使用的建模元素,也各有特点。顺序图中有生命周期线和控制焦点,协作图中没有;协作图中有路径,协作图中的消息必须要有消息顺序号,顺序图中没有路径,也可以没有消息顺序号

(3)和协作图相比,顺序图在表示算法,生命周期,具有多线程特征的对象等方面相对来说更容易一些,但在表示并发控制流方面困难一些。

(4) 两种图的语义是等价的,可以从一种形式的图转换成另一种形式的图,而不丢失任何信息。但两者不能完全代替。顺序图能表示协作图不能表示的信息,协作图也同理。

UML_交互图的更多相关文章

  1. UML交互图(转载)

    概述: 从名字交互作用很明显,图中是用来描述一些不同的模型中的不同元素之间的相互作用.所以,这种相互作用是动态行为的系统的一部分. 这种互动行为表示UML中的两个图,被称为序列图和协作图.这两个图的基 ...

  2. UML中的交互图<转>

      转自>>http://blog.csdn.net/mingxuanyun/article/details/8572128 交互图用来描述系统中的对象是如何进行相互作用的,即一组对象是如 ...

  3. uml系列(七)——交互图

    交互图是uml中描述系统中的对象如何进行交互动作的 . 废话不多说,还是来张图: 概念          交互图,主要描述的是系统中的一组对象的消息的传递的,为对象间的交互定义了一个可视的表示方法. ...

  4. 【UML 建模】UML入门 之 交互图 -- 时序图 协作图详解

    . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/17927131 . 动态图概念 : 从静态图中抽取瞬间值 ...

  5. UML和模式应用5:细化阶段(10)---UML交互图

    1.前言 UML使用交互图来描述对象间消息的交互 交互图可以用于动态对象建模. 交互图有两种类型:顺序图和通信图. UML交互图将用来解释和阐述对象设计. 2.顺序图和通信图 顺序图具有丰富的符号标记 ...

  6. UML入门 之 交互图 -- 时序图 协作图详解

    作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/17927131 动态图概念 : 从静态图中抽取瞬间值的变化描 ...

  7. 【Eclipse】eclipse生成类图、类交互图、包依赖图

    今天,在修改毕设论文的时候需要画类图,系统已经开发完成,如果手动拿PowerDesigner画类图太浪费时间,于是通过网上查阅资料发现eclipse可以集成一个插件生成类图,也可以生成包图.现在做记录 ...

  8. umlの交互图

    版权声明:本文为博主原创文章,若要转载请注明出处!^_^ https://blog.csdn.net/u010892841/article/details/24920155 前面介绍了uml的非常多种 ...

  9. 【UML】协作图Collaboration diagram(交互图)(转)

    http://blog.csdn.net/sds15732622190/article/details/49402269 前言         学完UML时序图,就要看一下UML协作图,因为两张图是相 ...

随机推荐

  1. eclipse工具再学习

    今天下午最后近1小时及晚上2个多小时,我都花费时间在工程环境配置上,自尊心被严重摧残,各种郁闷和抱怨.源头是我部分刷新代码后运行工程依赖的jar报错,后来找同事发现是因为我没更新pom.xml文件,重 ...

  2. IA32与x86

    64位机器相比于32位优点 ①访问虚拟地址范围更大 ②更多的寄存器 ③过程较简单 ④采用条件传送指令 详细看:http://baike.baidu.com/link?url=DoRp7iW_z3cE6 ...

  3. Binary Tree Level Order Traversal II 解答

    Question Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, ...

  4. MongoDb C/java driver

    1,在linux下安装客户端连接windows下 的MongoDBServer.

  5. 各硬件装置在 Linux 中的文件名(笔记)

    各硬件装置在 Linux 中的文件名

  6. 对数组元素进行排序的方法总结(利用C++)

    首先,对数组元素进行排序方法总结为以下两类: 一.简单排序算法(时间复杂度O(n*n)) 1.插入排序 2.选择排序 3.交换排序,即冒泡排序 二.先进排序算法(时间复杂度O(n*logn)) 1.快 ...

  7. iOS加密个人见解

    说说常用的加密方式 1.单向加密,譬如 md5 .SHA 但是这种单向加密安全性也不高了,现在cpu.gpu都那么强大,运算速度很快,彩虹表 撞库 还是容易被攻破的. 如果非得用的话,可以md5加盐, ...

  8. mime大全收集

    {"ai", "application/postscript"},     {"aif", "audio/x-aiff" ...

  9. ssh整合启动tomcat报java.lang.ClassNotFoundException: org.apache.commons.lang.xwork.StringUtils

    今天搭建了一个ssh项目环境,整合后,访问项目首页,登录不进去,控制台报错,后来调试代码后,在获取数据库数据后,返回到action时,又进入了action导致死循环,其实这里是两个问题,控制台报错如下 ...

  10. 【输入输出挂】【Uva11462】Age Sort

    例题17  年龄排序(Age Sort, UVa 11462)照从小到大的顺序输出. [输入格式] 输入包含多组测试数据.每组数据的第一行为整数n(0<n≤2 000 000),即居民总数:下一 ...