1.UML介绍
1.1 UML是什么
UML是统一建模语言(UnifiedModelingLanguage)的缩写,它发表于1997年,是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持。
1.2 UML特点
UML运用统一的、标准化的标记和定义组合了当今最好的面向对象软件建模方法。
1.3 UML作用
UML对软件系统进行面向对象的描述和建模。
1.4 UML与编程语言区别
UML是一门遵循精确语法的图形语言,与Java不同,用来对一个系统建立模型。
UML既支持正向工程,也支持反向工程。
2.UML结构
- 基本构造块:也就是建模元素,是模型的主体。
- UML规则:支配基本构造块如何放在一起的规则。
- 公共机制:运用于整个UML模型的公共机制,扩展机制。
3.UML基本构造块
3.1 事物、关系、图
- 事物与关系统称为模型元素
- 同一个模型元素可以在不同的UML图中使用
下图为基本构造块组成部分
3.2 UML基本构造块——事物
事物构造块是对模型中最具有代表性的成分的抽象
- 结构事物:UML的名词,模型中的静态部分
- 行为事物:UML的动词,模型中的动态部分
- 分组事物:UML的容器,用来组织模型
- 注释事物:UML的解释部分,用来描述模型
3.2.1结构事物
- 1.类和对象
类是一组具有相同属性和行为的集合
对象是类的一个具体的实例
- 2.接口
用于描述一个类或者构建某种服务的操作集合
- 3.活动类
活动类的对象至少拥有一个线程或进程
活动类最外面的边框用粗线
- 4.用例
能够可视化的概括系统需求
- 5.协作
由一组共同工作以提供协作行为的角色和元素构成
- 6.组件
用于表示软件系统中比类大的实体
- 7.节点
系统在运行时存在的物理元素
3.2.2行为事物
- 交互:由带有名字或内容的有向箭头表示
- 状态机:将状态画为一个圆角矩形,并在矩形内部写出状态名和子状态名
3.2.3分组事物
- 包:对大中型软件中的大量类分组管理
3.2.4注释事物
- 注释:对元素进行解释的简单符号
3.3 UML基本构造块——关系
1. 依赖关系
- 其中一个事物发生变化,会影响另一个事物的语义
2. 关联关系
- 一个事物的对象与另一个事物的对象间的联系
3. 泛化关系
- 可以看做是继承关系
4. 实现关系
- 其中的一个类指定了由另一个类元保证执行的契约
3.4 UML基本构造块——图
3.4.1UML模型图分类
如下图所示
静态图分为:用例图,类图,对象图,包图,构件图,部署图。动态图分为:状态图,活动图,协作图,顺序图。
3.4.2UML九种图
- 用例图:从用户角度描述系统功能,是用户所能观察到的系统功能的模型图
- 类图:描述系统中类的静态结构
- 对象图:描述的是参与交互的各个对象在交互过程中某一时刻的状态
- 构件图:描述部件的物理结构,以及各部件的依赖关系
- 部署图:定义系统中软硬件的物理架构,描述位于节点实例上的运行构件实例的安排
- 序列图:显示对象间的动态合作关系,强调对象之间的消息发送顺序
- 协作图:展现一组对象间的连接以及信息交换
- 状态图:以状态为节点,展示某个特定对象的所有状态,描述某个对象实例的生命周期
- 活动图:描述执行算法的工作流程中涉及的活动,强调对象之间的流程控制
3.4.1UML九种图综合应用