交互图(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. synchronized常见用法解析及示例

    synchronized作用:保证代码执行的原子性:保证可见性(与volatile作用相同) JAVA中synchronized关键字能够作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法 ...

  2. python连续爬取多个网页的图片分别保存到不同的文件夹

      python连续爬取多个网页的图片分别保存到不同的文件夹 作者:vpoet mail:vpoet_sir@163.com #coding:utf-8 import urllib import ur ...

  3. Poj 2187 Beauty Contest_旋转凸包卡壳

    题意:给你n个坐标,求最远的两点距离 思路:用凸包算法求处,各个定点,再用旋转凸包卡壳 #include <iostream> #include <cstdio> #inclu ...

  4. Impala 3、Impala、Hbase整合

    Impala可以通过Hive外部表方式和HBase进行整合,步骤如下: • 步骤1:创建hbase 表,向表中添加数据 create 'test_info', 'info' put 'test_inf ...

  5. jquery第一期:运行第一个jquery

    首先下载js文件,网址jquery.com去下载,可以下载1.10版的 首先打开editplus进行编辑,添加js文件: 编写代码: <!DOCTYPE html PUBLIC "-/ ...

  6. aspnet_regiis 加密/解密 web.config

    加密: @echo off echo web.config c: cd c:\windows\Microsoft.NET\Framework64\v4.0.30319 aspnet_regiis -p ...

  7. 几个因为hadoop配置文件不当造成的错误

    192.168.1.20: Exception in thread "main" java.lang.IllegalArgumentException 192.168.1.20: ...

  8. Struts2 工作流程

    Struts2使用了WebWork的设计核心(XWork),在内部使用拦截器处理用户请求,从而允许用户业务逻辑控制器和ServletAPI分离.Struts2内部是一个MVC架构,Struts2 的核 ...

  9. H - Ones

    Description Given any integer 0 <= n <= 10000 not divisible by 2 or 5, some multiple of n is a ...

  10. JavaMail发送简单邮件

    非常简单的发送邮件实现,网上有很多啦,但还是自己写写记录下吧. package cn.jmail.test; import java.util.Properties; import javax.mai ...