UML

概述

UML(Unified Modeling Language):统一(标准)建模语言,是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。
UML规范用来描述建模的概念有,类、对象、关联、职责、行为、接口、用例、包、顺序、协作,以及状态。
 

分类

1:用例图
2:静态图:类图:描述系统中类的静态结构
                    包图:是包和类组成的,表示包与包之间的关系,包图描述系统的分层结构
                    对象图:是类图的实例
3:行为图:活动图、状态图
4:交互图:时序图、活动图
5:实现图:配置图

 

★类图:

描述系统的静态结构

概念:

 类图(Class diagram)主要用于描述系统的结构化设计。类图也是最常用的UML图,用类图可以显示出类、接口以及它们之间的静态结构和关系。
 

符号:

虚线箭头:依赖:使用的关系,比如局部变量,方法的参数或者对静态方法的调用。
实线箭头:关联
虚线三角:接口
实线三角:父类
空心菱形:聚合:整体与部分的关系,部分离开整体仍然可以存在。
实心菱形:组合:整体与部分的关系,部分不能离开整体存在。

 
ps:聚合关系是关联关系的一种,关联和聚合在语法上无法区分。
 

图示例:

 

(图源网址一)

 

★时序图(顺序图/序列图)

描述系统的动态行为

 
概念:
描述了对象之间传递消息的时间顺序,它用来表示用例的行为顺序。
 
作用
用对象间的交互来描述用例;
寻找类的操作
 
符号:
实线箭头:简单消息
实线三角:同步消息:消息的发送者把进程控制传递给消息的接收者,然后暂停活动,等待消息接收者的回应消息。
虚线箭头:返回消息:消息的发送者将消息发送给消息的接受者后,不用等待回应的消息,即可开始另一个活动。
(实线半箭头:异步消息)
长矩框:对象激活
              高度表示对象执行一个操作所经历的时间段,顶部表示动作的开始,底部表示动作的结束。
 
 

图示例:

(图源百度)

 

★用例图

概念:

用例图是指由参与者(Actor)、用例(Use Case),边界以及它们之间的关系构成的用于描述系统功能的视图。

 
关系:
关联、泛化、包含、扩展
 
符号:
实线:关联
实线空三角:泛化(继承?)
虚线箭头:包含、拓展
虚线空三角:依赖(后来添加的)
 
 

图示例:

 (图源百度)

 
 

UML之类图、时序图、用例图 粗略版介绍的更多相关文章

  1. UML建模之时序图(Sequence Diagram)<转>

    UML建模之时序图(Sequence Diagram)   一.时序图简介(Brief introduction) 二.时序图元素(Sequence Diagram Elements) 角色(Acto ...

  2. UML建模之时序图(Sequence Diagram)教程

    一.时序图 时序图是一种强调时间顺序的交互图,在时序图中,首先把参与交互的对象放在图的上方,沿X轴方向排列.通常把发起交互的对象放在左边,较下级对象依次放在 右边,然后把这些对象发送和接受的消息沿Y轴 ...

  3. UML建模之时序图

    现在是二月,而且到如今你或许已经读到.或听到人们谈论UML 2.0 —— 包括若干进步的 UML 的新规范,所做的变化.考虑到新规范的重要性,我们也正在修改这个文章系列的基础,把我们的注意力从 OMG ...

  4. UML图 | 时序图(顺序、序列图)绘制

    上一次写过一篇 UML | 类图 相关的文章,平时规范开发会用的上,或者是写什么文档,就还是需要画图,就像毕业设计就是如此.希望能够帮助到大家. 注:本文中所用画图软件为 Microsoft Visi ...

  5. UML建模之时序图(Sequence Diagram)

    一.时序图简介(Brief introduction) 二.时序图元素(Sequence Diagram Elements) 角色(Actor) 对象(Object) 生命线(Lifeline) 控制 ...

  6. 【UML】:时序图

    时序图表达了类之间调用关系,以及调用时序关系. Actor: 调用者实例化类的对象,执行者. Lifeline: 生命线,竖的虚线.上方方框是类名表示存在的时间,从上至下表示时间流逝.Lifeline ...

  7. 轻松理解UML用例图时序图类图的教程

    摘自https://zhuanlan.zhihu.com/p/29874146 写在前面 当你老大扔给你这样的图,或者你需要完成某些功能而去看文档的时候发现以下类似这样的图会不会不(一)知(脸)所(懵 ...

  8. 2.设计模式常用的UML图分析(用例图、类图与时序图)

    1-用例图 概述 展现了一组用例.参与者以及他们之间的关系. 用例图从用户角度描述系统的静态使用情况,用于建立需求模型. 用例特征 保证用例能够正确捕捉功能性需求,判断用例是否准确的依据. 用例是动宾 ...

  9. Pownerdesigner画用例图_类图_时序图

    1. 问题描述 软件过程中,设计阶段有几个常用的工具:Rational Rose.Visio.Pownerdesigner,一般用Rose用例图/类图/时序图,Visio画流程图,Pownerdesi ...

随机推荐

  1. docker Dockerfile学习---构建apache环境

    1.创建目录,上传包 创建项目目录 $ mkdir apache_php $ cd apache_php 把包下载后放到服务器该目录下 $ ls apr-....tar.gz 2.创建Dockerfi ...

  2. zmq作为守护进程?等待连接

    服务端是作为守护进程在运行的,客户端connect成功,但write时直接退出了,我在想肯能服务端socket在write时已经失效了,不然为什么会出现write时进程退出呢?现在的问题是,我要怎么才 ...

  3. 两台linux服务器传文件方法

    scp -r /当前服务器的文件的路径 第二台服务器的用户名@第二台服务器的ip:/第二台服务器的存放文件的路径

  4. Mysql事务学习笔记

    Mysql事务学习笔记 1.事务概述 事务是数据库的执行单元,它包含了一条或多条sql语句,进行的操作是要么全部执行,要么全部都不执行. 2.事务执行命令 语法格式: start transactio ...

  5. kubectl 使用token的方式连接到集群

    首先得有一个账户 kubectl create serviceaccount dashboard-admin -n kube-system #创建一个名叫dashboard-admin 命名空间在ku ...

  6. 自然数幂和&伯努利数(Bernoulli)

    二项式定理求自然数幂和 由二项式定理展开得 \[ (n+1)^{k+1}-n^{k+1}=\binom {k+1}1n^k+\binom {k+1}2n^{k-1}+\cdots+\binom {k+ ...

  7. Java&Quartz实现任务调度

    目录 Java&Quartz实现任务调度 1.Quartz的作用 2.预备 3.Quartz核心 3.1.Job接口 3.2.JobDetail类 3.3 JobExecutionContex ...

  8. HBase的应用场景及特点

    一.Hbase能做什么?1. 海量数据存储:上百亿行 x 上百万列并没有列的限制当表非常大的时候才能发挥这个作用, 最多百万行的话,没有必要放入hbase中2. 准实时查询:百亿行 x 百万列,在百毫 ...

  9. Javascript下拉刷新

    Html相关代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  10. delphi 压缩

    DELPHI 通过ZLib来压缩文件夹 unit Unit1; interface uses ZLib, Windows, Messages, SysUtils, Variants, Classes, ...