软件工程:UML 建模指南
UML 简介
UML (Unified Modeling Language),即统一建模语言,是一种标准化的可视化建模语言,主要用于:
- 描述软件系统的结构(静态部分)
- 描述软件系统的行为(动态部分)
- 建立无歧义沟通:在业务人员、架构师、开发、测试之间达成共识。
UML 2.5 定义了 14 种标准图,大致可以分为两大类:
1. 结构图(Structural Diagrams)—— 系统由什么组成?
描述静态架构、组件及其相互关系。
|
图类型 |
中文名 |
重要性 |
学生重点掌握 |
|
类图 |
类图 |
⭐⭐⭐⭐⭐ |
✅必学! |
|
对象图 |
对象图 |
⭐ |
了解即可 |
|
组件图 |
组件图 |
⭐⭐⭐⭐ |
✅ 微服务时代极重要 |
|
部署图 |
部署图 |
⭐⭐⭐ |
✅ 云原生必备 |
|
包装图 |
包图 |
⭐⭐ |
模块化设计有用 |
|
复合结构图 |
复合结构图 |
⭐ |
几乎不用 |
|
轮廓图 |
轮廓图 |
⭐ |
高级定制,忽略 |
2. 行为图(Behavioral Diagrams) —— 系统如何运行?
|
图类型 |
中文名 |
重要性 |
学生重点掌握 |
|
用例图 |
用例图 |
⭐⭐⭐ |
✅ 需求分析起点 |
|
序列图 |
时序图 |
⭐⭐⭐⭐⭐ |
✅必学! |
|
通信图 |
通信图 |
⭐ |
时序图替代,少用 |
|
状态机图 |
状态机图 |
⭐⭐⭐ |
✅ 订单/支付状态流必备 |
|
活动图 |
活动图 |
⭐⭐⭐⭐ |
✅ 业务流程建模 |
|
交互概览图 |
交互概览图 |
⭐ |
复杂流程组合,少用 |
|
时序图 |
定时图 |
⭐ |
实时系统专用,忽略 |
核心结论:在一般场景中,重点掌握类图、组件图、部署图、用例图、时序图、状态机图/活动图即可。
用例图(Use Case Diagram)
目的:
- 识别系统边界。
- 明确参与者(Actor)和功能功能(Use Case)。
- 作为后续设计的输入。
核心组成:
- 参与者(小人表示)
- 用例(椭圆表示)
- 系统边界(方框 + 系统名称)
- 关系(连线)
类图 (Class Diagram)
类图涉及面向对象的思想、方法及基本概念,是 UML 中最核心的图示。
1. 类图实例
2. 类图结构说明
类图通常分为三个部分:
- 上半部分:Class Name (类名)
- 中间部分:Attributes (字段/属性)
- 下半部分:Methods (方法/行为)
3. 可见性符号 (Visibility)
在字段和方法前,使用以下符号表示访问控制权限:
|
符号 |
可见性(Visibility) |
说明 |
|
|
民众 |
公有,所有类可见 |
|
|
私人的 |
私有,仅当前类可见 |
|
|
受保护的 |
受保护,当前类及其子类可见 |
|
|
包裹 |
包内可见 |

浙公网安备 33010602011771号