MD 更新:未知

UML图分类总结

概述

UML(统一建模语言)图分为两大类:结构图(静态图)和行为图(动态图)。

结构图(静态图)

描述系统的静态结构,不随时间变化。

1. 类图(Class Diagram)

  • 特性:描述类、接口、协作和它们之间的关系
  • 侧重点:静态结构设计,是面向对象设计的核心
  • 包含元素:类、接口、关联、泛化、依赖、聚合、组合、实现
  • 使用场景:详细设计阶段,描述系统静态结构

2. 对象图(Object Diagram)

  • 特性:描述某一时刻对象及其关系(快照)
  • 侧重点:实例 snapshot,展示系统在某一时刻的状态
  • 包含元素:对象、链接
  • 使用场景:调试、理解复杂类图的实际实例

3. 构件图(Component Diagram)

  • 特性:描述构件及其依赖关系
  • 侧重点:物理构件组织,展示系统的模块化结构
  • 包含元素:构件、接口、依赖关系
  • 使用场景:架构设计,描述系统组件组织

4. 部署图(Deployment Diagram)

  • 特性:描述硬件节点和软件构件的部署
  • 侧重点:运行时部署,展示软硬件映射关系
  • 包含元素:节点、构件、依赖关系
  • 使用场景:系统部署,描述物理架构

5. 制品图(Artifact Diagram)

  • 特性:描述物理文件(如 jar、dll、exe)
  • 侧重点:物理文件组织,展示系统的物理结构
  • 包含元素:制品、依赖关系
  • 使用场景:配置管理,描述文件组织

6. 包图(Package Diagram)

  • 特性:描述包和依赖关系
  • 侧重点:模型组织,展示系统的分层结构
  • 包含元素:包、依赖关系
  • 使用场景:架构设计,描述系统分层

行为图(动态图)

描述系统的动态行为,随时间变化。

1. 用例图(Use Case Diagram)

  • 特性:描述系统功能和外部交互
  • 侧重点:功能需求,展示系统与外部参与者的交互
  • 包含元素:参与者、用例、关系(包含、泛化、扩展)
  • 使用场景:需求分析,描述系统功能

2. 活动图(Activity Diagram)

  • 特性:描述工作流程,类似于流程图
  • 侧重点:业务流程,展示活动的顺序和分支
  • 包含元素:活动、决策、分叉、合并、泳道
  • 使用场景:业务流程建模,描述算法流程

3. 状态图(State Machine Diagram)

  • 特性:描述对象状态转换
  • 侧重点:对象生命周期,展示状态变化和触发事件
  • 包含元素:状态、转换、事件、动作
  • 使用场景:描述对象行为,特别是状态驱动的系统

4. 交互图(Interaction Diagram)

描述对象之间的交互,包括以下四种:

4.1 顺序图(Sequence Diagram)

  • 特性:强调时间顺序的消息交互
  • 侧重点:时间顺序,展示消息的时间序列
  • 包含元素:对象、生命线、消息、激活
  • 使用场景:描述用例实现,展示对象协作

4.2 通信图(Communication Diagram)

  • 特性:强调对象之间的链接和消息
  • 侧重点:对象链接,展示对象之间的组织结构
  • 包含元素:对象、链接、消息
  • 使用场景:描述对象协作,展示对象关系

4.3 定时图(Timing Diagram)

  • 特性:强调时间约束
  • 侧重点:时间约束,展示状态随时间的变化
  • 包含元素:状态、时间轴、约束
  • 使用场景:实时系统,描述时间敏感的行为

4.4 交互概览图(Interaction Overview Diagram)

  • 特性:活动图和顺序图的混合
  • 侧重点:交互控制流,展示交互的概览
  • 包含元素:交互、决策、分支
  • 使用场景:复杂交互的概览,描述交互流程

考试重点

图的选择

  1. 需求阶段:用例图(功能需求)、活动图(业务流程)
  2. 设计阶段:类图(静态结构)、顺序图(动态交互)
  3. 实现阶段:构件图(组件组织)、部署图(物理部署)
  4. 测试阶段:状态图(状态覆盖)

易混淆点

  1. 类图 vs 对象图:类图是模板,对象图是实例
  2. 顺序图 vs 通信图:顺序图强调时间,通信图强调链接
  3. 活动图 vs 状态图:活动图描述活动流程,状态图描述状态转换
  4. 构件图 vs 部署图:构件图描述软件组件,部署图描述硬件部署

记忆口诀

  • 结构图:类对构部制包(类图、对象图、构件图、部署图、制品图、包图)
  • 行为图:用活状交(用例图、活动图、状态图、交互图)
  • 交互图:顺通定交(顺序图、通信图、定时图、交互概览图)

答题技巧

  1. 看到”功能需求” → 用例图
  2. 看到”业务流程” → 活动图
  3. 看到”状态变化” → 状态图
  4. 看到”时间顺序” → 顺序图
  5. 看到”对象链接” → 通信图
  6. 看到”静态结构” → 类图
  7. 看到”物理部署” → 部署图

相关笔记


创建时间:2026年5月10日