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. 【第十周读书笔记】读node入门,一本全面的node.js教程

    我学到了路由的定义,路由就是解析URL然后转到相应的执行程序. 我们要为路由提供请求的URL和其他需要的GET及POST参数,随后路由需要根据这些数据来执行相应的代码(这里“代码”对应整个应用的第三部 ...

  2. How to enter special characters like “&” in oracle database? [duplicate]

    SQL> set define off; or use Try 'Java_22 '||'&'||' Oracle_14'

  3. 夯实JavaScript基础之prototype, __proto__, instanceof

    function New(f){ return function(){ var o = {'__proto__': f.prototype}; f.apply(o, arguments); retur ...

  4. Linux系统升级

    查看centos版本的命令:uname -r 升级版本:yum -y upgrade 重启:reboot

  5. Java——单例模式初步

    1.7 单例模式初步 好书推荐:java与模式 1.7.1 什么是设计模式 设计模式是在大量的实践中总结和理论化之后优选的代码结构.编程风格.以及解决问题的思考方式.设计模式就像是经典的棋谱,不同的棋 ...

  6. 【NOI2019模拟2019.7.1】三格骨牌(轮廓线dp转杨图上钩子定理)

    Description \(n,m<=1e4,mod ~1e9+7\) 题解: 显然右边那个图形只有旋转90°和270°后才能放置. 先考虑一个暴力的轮廓线dp: 假设已经放了编号前i的骨牌,那 ...

  7. MaxCompute 表(Table)设计规范

    表的限制项 表(Table)设计规范 表设计主要目标 表设计的影响 表设计步骤 表数据存储规范 按数据分层规范数据生命周期 按数据的变更和历史规范数据的保存 数据导入通道与表设计 分区设计与逻辑存储的 ...

  8. lua数组和数据类型转换

    一.lua数组 Lua数组大小不固定,下标是从  1开始. --数组 arr={"aaa","bbb","ccc"} --使用数值 for通 ...

  9. NX二次开发-C++的vector用法

    #include <algorithm> //vector排序去重 sort( BoxNum.begin(), BoxNum.end()); BoxNum.erase(unique(Box ...

  10. Python-爬虫-HTTP协议请求之GET请求

    我们在百度搜索时,输入关键词,比如“hello”,URL发生变化,如下: https://www.baidu.com/s?wd=hello&rsv_spt=1&rsv_iqid=0xf ...