时序图看消息先后,活动图看流程走向
时序图关注对象之间按时间顺序发送消息。比如用户界面调用认证服务,认证服务查询用户数据库,数据库返回结果,这种“谁先调谁、谁再返回”的叙述就很像时序图。
活动图关注活动之间的控制流。比如提交报销、部门审批、财务复核、付款,流程中可能有分支、并行、汇合,这种场景就更像活动图。
| 图 | 关注点 | 容易出现的词 |
|---|---|---|
| 时序图 | 对象间消息的时间顺序 | 消息、调用、返回、交互 |
| 活动图 | 活动流程、分支和并行 | 流程、审批、判断、并行 |
| 部署图 | 节点、服务器和构件部署 | Web服务器、数据库服务器、节点 |
| 类图 | 静态结构和类关系 | 类、继承、关联、聚合 |
部署图一出现服务器节点,就很明显
部署图描述系统运行时的物理结构,包括硬件节点、执行环境、软件构件以及它们之间的连接关系。题干如果出现 Web 服务器、应用服务器、数据库服务器、终端、节点部署,基本就是这个方向。
它不是用来描述业务审批流程的,也不是用来说明类之间继承关系的。部署图解决的是“软件放在哪里运行,节点之间怎么连接”的问题。
做题时按“镜头”判断
如果镜头对准的是对象之间一来一回的消息,用时序图;如果镜头对准的是业务步骤怎么流转,用活动图;如果镜头拉远到服务器、节点、部署拓扑,用部署图。
这个判断比死背定义更管用。因为软件设计师题目常常不直接问定义,而是给你一个业务或系统场景,让你选最适合的 UML 图。
相关题目解析
下面这些题目和本专题的判断方法关联较强,适合读完概念后回到具体题干里校验理解。
- UML 时序图主要用来描述什么?UML / 时序图
- UML 活动图主要用来描述什么?UML / 活动图
- UML 部署图主要描述什么?UML / 部署图
- UML 类图中泛化关系是什么意思?UML 类图关系 / 软件设计师UML类图