文章目录
- 第X部分 工具篇
-
- 第X章 UML绘图工具
-
- X.1 UML工具简介
-
- X.1.1 基本概念
- X.1.2 用例图(UseCase Diagrams)
- X.1.3 类图(Class Diagrams)
- X.1.4 对象图(Object Diagrams)
- X.1.5 状态图(Statechart Diagrams)
- X.1.6 活动图(Activity Diagrams)
- X.1.7 序列图-时序图(Sequence Diagrams)
- X.1.8 协作图(Collaboration Diagrams)
- X.1.9 构件图(Component Diagrams)
- X.1.10 部署图(Deployment Diagrams)
- X.2 图的差异比较
- X.3 UML与软件工程
- X.2 Plantuml
-
- X.2.1 plantuml简介
- X.2.2 plantuml安装及设置
- X.2.3 plantuml官方指南
第X部分 工具篇
第X章 UML绘图工具
X.1 UML工具简介
UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。下面将对UML的九种图+包图的基本概念进行介绍以及各个图的使用场景。
X.1.1 基本概念
如下图所示,UML图分为用例视图、设计视图、进程视图、实现视图和拓扑视图,又可以静动分为静态视图和动态视图。静态图分为:用例图,类图,对象图,包图,构件图,部署图。动态图分为:状态图,活动图,协作图,序列图。
X.1.3 类图(Class Diagrams)
用户根据用例图抽象成类,描述类的内部结构和类与类之间的关系,是一种静态结构图。 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)。
各种关系的强弱顺序: 泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖
2.1.泛化
【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何继承父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。
【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。
【代码体现】:成员变量
【组合关系】:是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。
组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。
【代码体现】:成员变量
【箭头及指向】:带实心菱形的实线,菱形指向整体
X.1.5 状态图(Statechart Diagrams)
是一种由状态、变迁、事件和活动组成的状态机,用来描述类的对象所有可能的状态以及时间发生时状态的转移条件。
泳道表明每个活动是由哪些人或哪些部门负责完成。
X.1.7 序列图-时序图(Sequence Diagrams)
交互图的一种,描述了对象之间消息发送的先后顺序,强调时间顺序。
序列图的主要用途是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。同时序列图更有效地描述如何分配各个类的职责以及各类具有相应职责的原因。
同步等待消息
组合片段用来解决交互执行的条件及方式. 它允许在序列图中直接表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。常用的组合片段有:抉择、选项、循环、并行。
X.1.8 协作图(Collaboration Diagrams)
交互图的一种,描述了收发消息的对象的组织关系,强调对象之间的合作关系。时序图按照时间顺序布图,而协作图按照空间结构布图
X.1.10 部署图(Deployment Diagrams)
描述了系统运行时进行处理的结点以及在结点上活动的构件的配置。强调了物理设备以及之间的连接关系。
部署模型的目的:
描述一个具体应用的主要部署结构,通过对各种硬件,在硬件中的软件以及各种连接协议的显示,可以很好的描述系统是如何部署的;平衡系统运行时的计算资源分布;可以通过连接描述组织的硬件 络结构或者是嵌入式系统等具有多种硬件和软件相关的系统运行模型。

参考链接:
[UML]UML系列——协作图(通信图)collaboration diagram
http://www.cnblogs.com/wolf-sun/p/UML-collaboration-diagram.html
使用Emacs敲出UML,PlantUML快速指南
http://archive.3zso.com/archives/plantuml-quickstart.html#sec-5-4-1
X.2 Plantuml
X.2.1 plantuml简介
PlantUML 是一个开源项目,支持快速绘制:
? 时序图
? 用例图
? 类图
? 活动图
? 组件图
? 状态图
? 对象图
? 部署图
? 定时图
同时还支持以下非 UML 图:
? 线框图形界面
? 架构图
? 规范和描述语言 (SDL)
? Ditaa diagram
? 甘特图
? 以 AsciiMath 或 JLaTeXMath 符 的数学公式
通过简单直观的语言来定义这些示意图。
X.2.2 plantuml安装及设置
AndroidStudio中使用plantUML
https://blog.csdn.net/a282255307/article/details/78568003
plantuml安装配置
http://skyao.github.io/2014/12/05/plantuml-installation/
X.2.3 plantuml官方指南
Plantuml官方在线指导文档
http://plantuml.com/zh/sitemap-language-specification
官方指导文档百度云备份
https://pan.baidu.com/s/1GOy9lNfqEXcSkCZE3XvSOw
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!