UML作为设计工具,重在实践上,而这就离不开九种图了。绘图是在看完视频以后进行的,刚開始绘图的时候脑袋懵懵的,不知道该从哪下手,于是就在绘图之前再次的学习了一下这九种图和四种关系。理了理思路。最终有点了想法,这才開始着手画。UML的九种图包含:用例图,对象图,类图。构件图。部署图,状态图,顺序图。活动图。协作图。四种关系和九种图在UML学习中是重中之重。而在这九种图中最重要的是用例图,类图和顺序图。重复的学习才干将它消化。

一、概念

在这九种图中又能够将他们分成静态图和动态图。静态图包含:类图,对象图,用例图,构件图,部署图;动态图包含:状态图,顺序图,活动图。协作图。



1、用例图(user-case diagram)

定义了系统的功能需求。它是从系统的外部看系统功能,并不描写叙述系统内部对功能的详细实现。

2、类图(class diagram)

对静态结构的描写叙述,用来定义系统中类和类之间的关系。

3、对象图(object diagrams)

表示类的对象实例。

通经常使用来演示样例一个复杂的类图,通过对象图反映真正的实例是什么。它们之间可能具有什么样的关系,帮助对类的理解。

4、状态图(statechart diagrams)

类所描写叙述事物的补充说明,类全部对象可能具有的状态。以及引起状态变化的事物。

5、序列图(Sequence Diagrams)

又叫顺序图。强调消息时间顺序的交互图,描写叙述类以及类相互交互以完毕期望行为的消息。

6、协作图(collaboration diagrams)

协作图仅仅对相互间有交互作用的对象和这些对象间的关系建模。而忽略了其它对象和关联。

7、活动图(activity diagram)

反映一个连续的活动流,用于描写叙述某个操作运行时的活动状况。

8、构件图(component diagrams)

主要用于描写叙述各种软件构件之间的依赖关系。

9、部署图(deployment diagrams)

是用来显示系统中软件和硬件的物理架构。从部署图中,能够了解到软件和硬件组件之间的物理关系以及处理节点的组件分布情况。

二、九种图的应用阶段

需求阶段:用例图描写叙述需求

分析阶段:类图描写叙述静态结构

设计阶段:类图和包图对接口的应用

实现阶段:构件图,部署图

三、PK赛

1、时序图 and 协作图

同样点:

(1)时序图和协作图都属于交互图,他们表示对象间的交互关系,描写叙述了一个交互。由一组对象和他们之间的关系组成,而且还包含在对象之间传递的消息,

(2)时序图和协作图是等价的

(3)两者都来自UML元模型的同样信息,因此他们的语义是等价的,他们能够从一种形式的图转换成还有一种形式的图,而不丢失不论什么信息。

不同点:

协作图强调的是空间,但时间顺序必须从序列号获得。

时序图强调的是时间可是没有明白的表达对象间的关系



2、状态图 and 活动图

同样点:都属于行为图,都是描写叙述对象的动态行为。

不同点:

(1)描写叙述对象不同:

状态图:描写叙述对象状态及状态之间的转移。它主要表现该对象的状态。

活动图:描写叙述从活动到活动的控制流,它主要表现的是系统的动作。

(2)使用场合不同:

状态图:描写叙述对象在其生命期中的行为状态变化。

活动图:描写叙述过程的流程变化。



3、对象图 and 类图

同样点:对象图是类图的实例,差点儿使用与类图全然同样的标识。

不同点:对象图显示类的多个对象实例。而不是实例的类。

因为对象存在生命周期。因此对象图仅仅能在系统某一个时间段存在。



4、活动图 and 用例图

活动图是对用例图的一种细化。



5、状态图 and 类图

状态图是对类图的一种补充,帮助开发人员完好某一类。



四、小结

        UML的九种图重在实践,仅仅有通过重复的学习来加深对它的理解,如今仅仅是初步的学习UML。对它的理解没有那么深,有什么不正确的,欢迎指出!

解析UML九种图的更多相关文章

  1. UML九种图-包图、类图

    UML九种图-包图.类图 一.包 (一)相关概念: 1.包: 一个包=一层=一个命名空间=一个文件夹 2.包的命名: 简单名:王老二 路径名:中国.河北省.廊坊市.廊坊师范学院.信息技术提高班.九期班 ...

  2. 【转】浅谈UML的概念和模型之UML九种图

    原文地址:浅谈UML的概念和模型之UML九种图 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...

  3. 浅谈UML——九种图(一)

    前言 学UML将近两个星期了,对UML有了一定的了解,学过的没学过的都知道UML中最最最核心的部分要数那九个图了.浅谈UML九种图. 实例 1.用例图: 什么是用例?描绘一个系统外在可见的需求情况,是 ...

  4. UML九种图作用简介

    UML(统一建模语言):是面向对象的可视化建模语言. UML中有3种构造块:事物.关系和图,事物是对模型中最具有代表性的成分的抽象,关系是把事物结合在一起,图聚集了相关的事物 UML中有九种图如下: ...

  5. [UML]转:浅谈UML的概念和模型之UML九种图

    转自:http://blog.csdn.net/jiuqiyuliang/article/details/8552956 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UM ...

  6. UML 小结(6)- UML九种图的比较与学习

    UML中的九种图: 用例图.类图.对象图.状态图.时序图.协作图.活动图.部署图.构件图. 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...

  7. UML九种图 之 包图和对象图

    前言     对象图和包图依然是对系统的静态的描写叙述.UML九种图加上包图,事实上是十幅图. 包图     1.构成           2.包中的元素      类.接口.用例.构件.其他包等.( ...

  8. 讨论UML概念和模型UML九种图。

    文件夹: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图.在每一种视图中都包括一个或多种图. 本文我们重点解说UML每种图的细节问题: 1.用例图(use case d ...

  9. UML九种图汇总

    UML视频读,该文件开始起草.我不知道如何下手啊!我想先UML九图和总结的关系,然后开始用它的文件. 首先在地图上. UML的九种图各自是:用例图.类图.对象图.状态图.活动图.协作图.序列图.组件图 ...

随机推荐

  1. Linux命令运行监测和软件安装

    监测命令的运行时间 time command $ time sleep 5 real 0m5.003s # 程序开始至结束的时间,包括其它进程占用的时间片和IO时间 user 0m0.001s # 进 ...

  2. CAD如何动态绘制带面积周长的圆?

    CAD绘制图像的过程中,画圆的情况是非常常见的,用户可以在控件视区点取任意一点做为圆心,再动态点取半径绘制圆. 主要用到函数说明: _DMxDrawX::DrawCircle 绘制一个圆.详细说明如下 ...

  3. CAD在网页中绘图,并为新绘的对象写扩展数据和读取扩展数据

    在网页中绘图,并为新绘的对象写扩展数据和读取扩展数据.下面帮助的完整例子,在控件安装目录的 Sample\Ie\iedemo.htm 中. 主要用到函数说明: _DMxDrawX::InsertBlo ...

  4. Redis系列(十一)--阿里云开发规范

    本文主要介绍阿里云Redis的开发规范,主要从以下几个方面说明: 1.键值设计 2.命令使用 3.客户端使用 4.相关工具 一.键值设计 1.key name设计 1).[建议]:可读性和可管理性 以 ...

  5. 02JavaScript基础语法及数据类型

    JavaScript基础语法及数据类型 2.1数据类型 2.1.1字符串(String) 用单引号或双引号括起来的零个或多个单一的字符所组成. 2.1.2数值(Number) 包含整数或浮点数. 2. ...

  6. scala学习(2)---option空值处理

    https://blog.csdn.net/shadowsama/article/details/78148919 https://www.cnblogs.com/mustone/p/5648914. ...

  7. 如何防止XshellPortable、putty、SecureCRT等断网造成Linux命令中断

    在使用XshellPortable.putty.SecureCRT等工具远程连接Linux系统时,如果我们执行了一大堆命令,在命令尚未执行完毕,客户端突然断网或者XshellPortable.putt ...

  8. 设置Python解析器

    如果同时安装了多个Python,如 Python2.7 和 Python3.7 .如果某些特殊原因(比如有些框架只能在Python2.7中使用),需要修改程序在 Python2.7 下运行,即可设置P ...

  9. codeforces 372 Complete the Word(双指针)

    codeforces 372 Complete the Word(双指针) 题链 题意:给出一个字符串,其中'?'代表这个字符是可变的,要求一个连续的26位长的串,其中每个字母都只出现一次 #incl ...

  10. [bzoj4591][Shoi2015][超能粒子炮·改] (lucas定理+组合计数)

    Description 曾经发明了脑洞治疗仪&超能粒子炮的发明家SHTSC又公开了他的新发明:超能粒子炮·改--一种可以发射威力更加 强大的粒子流的神秘装置.超能粒子炮·改相比超能粒子炮,在威 ...