先按关注点分,不要按图名硬背
软件设计师上午题常用一句业务场景让你选图。比如“参与者使用系统完成哪些功能”,通常是用例图;“类、属性、方法及关系”,通常是类图;“对象之间按时间顺序发送消息”,通常是时序图。
活动图和时序图最容易混。活动图更像流程图,关心活动、分支、并行和汇合;时序图更像聊天记录,关心对象之间谁先给谁发消息。
| UML 图 | 主要看什么 | 题干常见信号 |
|---|---|---|
| 用例图 | 参与者与系统功能 | 用户、角色、系统提供的功能 |
| 类图 | 静态结构和类关系 | 类、属性、方法、继承、聚合、组合 |
| 时序图 | 对象消息的时间顺序 | 消息、调用、先后交互 |
| 活动图 | 业务流程和控制流 | 流程、审批、分支、并行 |
| 部署图 | 物理节点和软件部署 | 服务器、节点、构件部署 |
题干出现这些词,基本就有方向了
如果题干说“客户提交订单,系统校验库存,支付服务返回结果”,并强调对象之间的调用顺序,优先想时序图。如果题干说“填写申请、部门审批、财务复核、付款”,并强调流程分支,优先想活动图。
如果题干说“Web 服务器、应用服务器、数据库服务器之间如何部署”,就不要再往用例图和类图上猜了,这已经是部署图的典型信号。
用一张心里小表处理选择题
考试时没有必要把 UML 标准翻一遍。你可以在草稿纸上写五个词:功能、结构、消息、流程、部署。然后把题干往这五个词里放。
这个方法的好处是不会被选项里的专业名词吓住。题干问的是系统功能边界,就回到用例图;问的是类之间关系,就回到类图;问的是运行环境和节点,就回到部署图。
相关题目解析
下面这些题目和本专题的判断方法关联较强,适合读完概念后回到具体题干里校验理解。
- UML 用例图中 include 和 extend 怎么区分?UML / 用例图
- UML 类图中泛化关系是什么意思?UML 类图关系 / 软件设计师UML类图
- UML 时序图主要用来描述什么?UML / 时序图
- UML 活动图主要用来描述什么?UML / 活动图
- UML 部署图主要描述什么?UML / 部署图
- UML 类图中聚合和组合有什么区别?UML 类图 / 聚合