UML动态模型图简单介绍
UML动态模型图描述了系统动态行为的各个方面,包括用例图、序列图、协作图、活动图和状态图。下面就每种图做一个简单介绍:
用例图
用例图描述系统外部的执行者与系统提供的用例之间的某种联系。所谓用例是指对系统提供的功能的一种描述。执行者是使用用例的人或外部系统,二者之间的联系描述了“谁使用哪个用例”。用例图着重于从系统外部执行者的角度来描述系统需要提供哪些功能,并指明该执行者是谁。在用例图中,椭圆表示用例,小人表示执行者。下图所示为一个普通用户进入某系统的用例图,该图描述了当普通用户进入系统时,“普通用户”为执行者,其具有密码修改、资料修改、订单查询、产品搜索等4个用例。

序列图
序列图又被称为时序图、顺序图,用于描述几个对象之间的动态协作关系。序列图由一组对象构成,每个对象分别带有一条竖线,代表时间轴,称为生命线。从一个对象的生命线指向另一个对象的生命线的水平箭头表示消息。序列图就是描述这些对象随着时间的推移互相之间交换消息的过程。下图示为一个模拟银行间资金转账的序列图,通过中心间联发起转账,描述了银行A、中心、银行B的交互过程,通过该模型图,可以比较清晰的了解整个交互过程及交互顺序。

协作图
与序列图相同,协作图也是用来描述系统中对象之间的动态协作关系。协作图侧重于描述各对象之间存在的消息收发关系,而不专门突出这些消息发送的时间顺序。下图是与上面序列图对应的协作图,对象之间的消息箭头表示它们之间的消息流向,消息上的标号说明这些消息发送的时序。

状态图
状态图是对类描述的补充,用于展示此类对象所具有可能的状态以及某些事件发生时其状态的转移情况。下图示一部电梯的状态图,圆角矩形表示状态,箭头表示状态的转移,而转移旁标出的是所发生的事件。如:当电梯处于上升状态时发生了“到达”的事件,则电梯转为空闲状态。

活动图
活动图是一种特殊的状态图,活动图描述一个操作中要进行的各项活动的执行流程。同时,也常被用来描述一个用例的处理流程或者某种交互流程。下图所示是一台打印服务器的活动图。通过该模型图的描述,可以了解执行打印功能时需要涉及哪些活动及其活动顺序。图中的圆角矩形表示活动,活动图就是由一些活动组成的。当一个活动执行完毕之后,控制将沿箭头转向下一个活动直至结束。

UML动态模型图简单介绍的更多相关文章
- 服务器端IO模型的简单介绍及实现
https://mp.weixin.qq.com/s?src=3×tamp=1541726441&ver=1&signature=xPSye3v7miF7aVeLHb ...
- 服务器端IO模型的简单介绍及实现 阻塞 / 非阻塞 VS 同步 / 异步 内核实现的拷贝效率
小结: 1.在多线程的基础上,可以考虑使用"线程池"或"连接池","线程池"旨在减少创建和销毁线程的频率,其维持一定合理数量的线程,并让空闲 ...
- UML动态模型(顺序图、协作图、状态图)
顺序图:用来表示用例中的行为顺序,当执行一个用例行为时,顺序图中的每条信息 对应了一个类操作或状态机中引起转换的事件.顺序图展示对象之间的交互,这些交互是指在场景或用例的时间六中发生的,顺序图属于动态 ...
- 设计模式-UML图简单介绍
直接上法宝: 1.类(Class) 类图分三层: 第一层显示类的名称,如果是抽象类,则就用斜体显示. 第二层是类的特性,通常就是字段和属性. 第三层是类的操作,通常是方 ...
- UML类图简单介绍
先上一张图: 概述 类图(Class Diagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础.类图主要是用来显示系统中的类.接口以及它们之间的静态结构和关系的一种静态模型. 类图组 ...
- 几种服务器端IO模型的简单介绍及实现
一些概念: 同步和异步 同步和异步是针对应用程序和内核的交互而言的,同步指的是用户进程触发I/O操作并等待或者轮询的去查看I/O操作是否就绪,而异步是指用户进程触发I/O操作以后便开始做自己的事情,而 ...
- 微软BI 之SSAS 系列 - 在 SQL Server 2012 下查看 SSAS 分析服务的模型以及几个模型的简单介绍
在SSDT中部署一个 SSAS 项目到本地服务器上出现错误. You cannot deploy the model because the localhost deployment server i ...
- Python的自定义属性访问跟描述器以及ORM模型的简单介绍
一 . 自定义属性访问 1.__getattr__ 作用:当我们访问属性的时候,如果属性不存在(出现AttrError),该方法会被触发. 2.__getattribute__ 作用:访问属性的时候, ...
- 计算机协议、标准以及OSI模型的简单介绍
由概念启发学习,引导学习.本篇文章中包含了一些最基本的概念和底层知识.虽然零碎,但是这是基础. 一.协议和标准 协议指的是一组控制数据通信的规则.协议有三要素:语法(syntax),语义(semant ...
随机推荐
- 获得URL含有中文出现乱码解决
如: http://www.htmlx.culub/?searchWord=工商代理 当获取链接中所对应searchWord的值时,出现 '%E5%B7%A5%E5%95%86%E4%BB%A3%E7 ...
- java socket 网络编程常见异常
1.java.net.SocketTimeoutException 这个异常比较常见,socket超时.一般有2个地方会抛出这个,一个是connect的时候,这个超时参数由connect(Socket ...
- Sql Server 分区之后增加新的分区
随着时间的推移,你可能会希望为已分区的表添加额外的分区(例如,可以为每一个新年创建一个新的分区).要增加一个新的分区,可以使用ALTER PARTITION SCHEME和ALTER PARTITIO ...
- Winform主窗体设计
主窗体顶部为菜单按钮,子窗体内嵌入Panel显示 界面如下: 第二步,主窗体离不开的几个方法 1,点击菜单功能,加载子窗体 private void btnOpenForm_Click(object ...
- Python执行命令行
背景 我们知道,虽然会破坏平台独立性,但是有的时候需要在代码里面调用命令行来获取一些信息,那么了解在 Python 中如何执行命令行至关重要 使用介绍 Python 中使用命令行可以通过 subpro ...
- Subliem Text 3 的安装和使用
前两天将Sublime Text3简单的看了看,发现是好经典的开发工具.... 1. sublime Text安装:www.sublimetext.com 此时的版本是: Build 3103 可用的 ...
- Python 第五天 装饰器
装饰器 装饰器是函数,只不过该函数可以具有特殊的含义,装饰器用来装饰函数或类,使用装饰器可以在函数执行前和执行后添加相应操作. def wrapper(func): def result(): pri ...
- SQLiteHelper
/** * 实现对表的创建.更新.变更列名操作 * * */ public class SQLiteHelper extends SQLiteOpenHelper { public static fi ...
- 黑马程序员_Java基础:序列化(Serializable)与反序列化
------- android培训.java培训.期待与您交流! ---------- 在学习IO中的ObjectOutputStream和ObjectInputStream时,会涉及到序列化和反序列 ...
- 关于纯移动web优点的一点思考
自己造个小概念,纯移动web就是手机浏览器上访问的网站^_^ 缺点就不说了,说几个随着硬件和网络发展会放大的优势. 1 相对app来说,完全无缝对接,只要符合html标准,一次开发全平台部署 2 推广 ...