UML动态模型图描述了系统动态行为的各个方面,包括用例图、序列图、协作图、活动图和状态图。下面就每种图做一个简单介绍:

用例图

用例图描述系统外部的执行者与系统提供的用例之间的某种联系。所谓用例是指对系统提供的功能的一种描述。执行者是使用用例的人或外部系统,二者之间的联系描述了“谁使用哪个用例”。用例图着重于从系统外部执行者的角度来描述系统需要提供哪些功能,并指明该执行者是谁。在用例图中,椭圆表示用例,小人表示执行者。下图所示为一个普通用户进入某系统的用例图,该图描述了当普通用户进入系统时,“普通用户”为执行者,其具有密码修改、资料修改、订单查询、产品搜索等4个用例。

序列图

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

协作图

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

状态图

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

活动图

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

UML动态模型图简单介绍的更多相关文章

  1. 服务器端IO模型的简单介绍及实现

    https://mp.weixin.qq.com/s?src=3&timestamp=1541726441&ver=1&signature=xPSye3v7miF7aVeLHb ...

  2. 服务器端IO模型的简单介绍及实现 阻塞 / 非阻塞 VS 同步 / 异步 内核实现的拷贝效率

    小结: 1.在多线程的基础上,可以考虑使用"线程池"或"连接池","线程池"旨在减少创建和销毁线程的频率,其维持一定合理数量的线程,并让空闲 ...

  3. UML动态模型(顺序图、协作图、状态图)

    顺序图:用来表示用例中的行为顺序,当执行一个用例行为时,顺序图中的每条信息 对应了一个类操作或状态机中引起转换的事件.顺序图展示对象之间的交互,这些交互是指在场景或用例的时间六中发生的,顺序图属于动态 ...

  4. 设计模式-UML图简单介绍

    直接上法宝: 1.类(Class)     类图分三层:     第一层显示类的名称,如果是抽象类,则就用斜体显示.     第二层是类的特性,通常就是字段和属性.     第三层是类的操作,通常是方 ...

  5. UML类图简单介绍

    先上一张图: 概述 类图(Class Diagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础.类图主要是用来显示系统中的类.接口以及它们之间的静态结构和关系的一种静态模型. 类图组 ...

  6. 几种服务器端IO模型的简单介绍及实现

    一些概念: 同步和异步 同步和异步是针对应用程序和内核的交互而言的,同步指的是用户进程触发I/O操作并等待或者轮询的去查看I/O操作是否就绪,而异步是指用户进程触发I/O操作以后便开始做自己的事情,而 ...

  7. 微软BI 之SSAS 系列 - 在 SQL Server 2012 下查看 SSAS 分析服务的模型以及几个模型的简单介绍

    在SSDT中部署一个 SSAS 项目到本地服务器上出现错误. You cannot deploy the model because the localhost deployment server i ...

  8. Python的自定义属性访问跟描述器以及ORM模型的简单介绍

    一 . 自定义属性访问 1.__getattr__ 作用:当我们访问属性的时候,如果属性不存在(出现AttrError),该方法会被触发. 2.__getattribute__ 作用:访问属性的时候, ...

  9. 计算机协议、标准以及OSI模型的简单介绍

    由概念启发学习,引导学习.本篇文章中包含了一些最基本的概念和底层知识.虽然零碎,但是这是基础. 一.协议和标准 协议指的是一组控制数据通信的规则.协议有三要素:语法(syntax),语义(semant ...

随机推荐

  1. C++中string查找和取子串和整形转化

    1.string.find函数 #include <iostream> #include <string> using namespace std; /* run this p ...

  2. hibernate基础

    另存为查看吧

  3. 引入Ember插件 大概流程

    引入Ember插件 xxx (转自美女同事 LZX) 1.ember install xxx(过程中可能会提示你安装其他包 按照提示语安装就行)   2.安装之后会看到 工作目录里已经出现了下载好的安 ...

  4. 第一节(配置springmvc环境)学习尚硅谷-springmvc视频教程

    之前,一直从事C#开发.后来,公司调整后领导决定使用java开发,因此需要收集相关学习资料.该视频教程比较入门,也适合自己,于是边看边写的同时再总结一下便于自己牢记,遇到分歧不对之处望指正. 开发环境 ...

  5. EXCEL的导入导出

    using System; using System.Data; using System.Data.OleDb; using System.IO; namespace COMMON { public ...

  6. mybatis中表与表之间的关联

    第三天 1.mybatis处理表与表之间的关系? 比如要在帖子回复表里显示其它两张相关联表的信息. 处理的第一种方式: 1)主要的数据实体类是ReplyInfo,相关联的实体表的数据是TitleInf ...

  7. text-align:justify的使用

    在平常的开发过程中,对于text-align一般用到的是left,center,right,这三个属性都不会陌生.然而,对于justify的使用我却是很陌生.首先有个比较简单的例子. 首先是html代 ...

  8. JAVA SSH 框架介绍

    SSH 为 struts+spring+hibernate 的一个集成框架,是目前较流行的一种JAVA Web应用程序开源框架. Struts Struts是一个基于Sun J2EE平台的MVC框架, ...

  9. mha报错

    用命令检查集群复制状态:masterha_check_repl --conf=/etc/masterha/app1.cnf 报错如下: Tue Jan 12 09:25:51 2016 - [info ...

  10. Django-数据模型

    修改model.py文件 from django.db import models # Create your models here. class Question(models.Model): q ...