当前位置: 首页 > news >正文

九种UML常见图 -2025.10.19

UML(统一建模语言)的九种常见图可以分为两大类:结构图行为图

结构图 用于展示系统静态的、不变的部分,就像建筑的蓝图,描述有什么构件。
行为图 用于展示系统动态的、变化的部分,就像建筑的使用手册,描述构件之间如何协作完成功能。

下面我为你详细介绍这九种图。


一、结构图

1. 类图

  • 核心作用:描述系统中所包含的类、类的内部结构(属性和方法)以及类之间的关系(如关联、依赖、继承等)。它是面向对象系统建模中最常用、最基础的图。
  • 使用场景:在系统分析和设计阶段,用于建立领域模型或设计模型。
  • 简单比喻:就像建筑的设计图纸,标明了每个房间(类)的功能(方法)、里面的家具(属性)以及房间之间的门和走廊(关系)。

示例:一个简单的“订单”系统类图

2. 对象图

  • 核心作用:展示在系统某一特定时刻,一组对象实例的状态以及它们之间的链接关系。可以看作是类图的一个实例。
  • 使用场景:用于解释复杂的类图,或表示在运行时某个瞬间的对象关系。
  • 与类图的区别:类图描述“类别”,对象图描述某个时间点的具体“例子”。

示例:上述类图在某一时刻的对象实例

3. 组件图

  • 核心作用:描述软件构件(如可执行文件、库、配置文件等)之间的组织结构和依赖关系。它关注的是系统的物理构成。
  • 使用场景:在系统实现和部署阶段,帮助开发人员理解模块划分和依赖。
  • 简单比喻:就像汽车的设计图,标明了发动机、变速箱、车轮等组件以及它们之间的接口。

4. 部署图

  • 核心作用:描述系统硬件节点的拓扑结构以及软件组件在这些节点上的部署情况。它展示了系统的物理架构。
  • 使用场景:在系统实施阶段,用于指导软硬件环境的搭建。
  • 简单比喻:就像一张服务器机房地图,标明了哪些服务器(节点)上运行着哪些程序(组件)。

5. 包图

  • 核心作用:用于将模型元素(如类、用例等)分组,形成更高层次的组织单元(包),并描述包之间的依赖关系。主要用于管理大型项目的复杂性。
  • 使用场景:在项目初期进行模块划分,管理命名空间。
  • 简单比喻:就像电脑中的文件夹,把相关的文件(类、接口)放在一起,方便管理。

6. 复合结构图

  • 核心作用:描述一个类或组件内部的复杂结构,展示其内部各组成部分(称为“部件”)之间的协作关系。它比类图更能展示内部的运行逻辑。
  • 使用场景:当某个类或组件非常复杂,需要进一步分解时使用。

二、行为图

7. 用例图

  • 核心作用:从用户角度描述系统的功能需求,指出各个功能的操作者(参与者)是谁。它不关心功能如何实现,只关心“做什么”。
  • 使用场景:在需求分析阶段,用于与客户沟通,明确系统范围。
  • 简单比喻:就像饭店的菜单,列出了所有可点的菜(用例)和服务的顾客(参与者)。

示例:一个在线购物系统的用例图

8. 活动图

  • 核心作用:描述业务过程或操作行为的步骤流程,特别强调活动的顺序和并行性。类似于流程图,但功能更强大(支持并行分支、泳道等)。
  • 使用场景:建模业务流程、复杂算法的执行步骤,或用例的具体实现流程。
  • 简单比喻:就像公司的行政审批流程图,清晰地展示了从申请到批准的每一步。

9. 状态机图

  • 核心作用:描述一个特定对象在其生命周期内,因外部事件而发生状态变化的序列。它关注的是单个对象的状态流转。
  • 使用场景:当某个对象的行为取决于其状态时(如订单、电梯、门),用于建模其生命周期。
  • 简单比喻:就像电灯的开关,有“开”和“关”两种状态,按动开关(事件)会引起状态的切换。

交互图(行为图的子集,特别重要)

交互图是行为图中专门描述对象之间交互关系的图,包括以下四种,但常将时序图通信图列为最常用的两种。

10. 时序图

  • 核心作用:强调消息的时间顺序,显示对象之间动态协作关系。它按时间顺序排列交互的对象和它们之间传递的消息。
  • 使用场景:详细分析一个用例的实现过程,清晰地看到消息的调用顺序。
  • 简单比喻:就像一场戏剧的剧本,严格规定了每个角色(对象)在什么时间点说哪句台词(消息)。

示例:用户登录过程的时序图

11. 通信图(原名协作图)

  • 核心作用:强调对象之间的组织结构(链接关系) 以及它们之间传递的消息。它和时序图包含的信息量是等价的,但侧重点不同。
  • 与时序图的区别:时序图强调何时交互,通信图强调和交互。

12. 交互概览图

  • 核心作用:是活动图和时序图的混合体,它从高层概览一系列交互流程(通常由多个时序图或通信图组成)之间的控制流。

13. 定时图

  • 核心作用:是时序图的一种变体,特别强调消息之间跨越临界点的时间约束,常用于实时系统或嵌入式系统。

总结与如何选择

图类型 分类 核心关注点 关键问题
类图 结构 系统的静态结构 系统中有哪些类?它们的关系如何?
用例图 行为 系统的功能需求 系统为谁提供哪些功能?
时序图 行为(交互) 对象间消息传递的时间顺序 完成一个功能,对象之间按什么顺序调用?
活动图 行为 业务流程或工作流 完成一个活动需要经历哪些步骤?
状态机图 行为 对象的状态变化 某个对象在其生命周期中有哪些状态?如何转换?
组件图 结构 系统的物理组件 系统由哪些软件模块构成?
部署图 结构 系统的物理部署 软件运行在哪些硬件上?
通信图 行为(交互) 对象间的组织结构和交互 为了完成功能,哪些对象需要协作?
包图 结构 模型的逻辑分组 如何组织大量的类、用例等模型元素?
http://www.hskmm.com/?act=detail&tid=35840

相关文章:

  • 2025 油烟机厂家最新推荐榜:五大实力厂商技术与服务口碑评测权威发布滑轨/易清洁/免清洗/智能油烟机厂家推荐
  • VUE---打印功能
  • 洒水清洁,音乐相伴,洒水车声音-兰花草音乐芯片详细资料
  • JavaScript 开发代码规范指南
  • 2025 年深圳餐饮设计公司最新推荐排行榜: IP 化设计机构口碑甄选,助力餐饮品牌破局同质化竞争
  • [ACTF2020 新生赛]Include 1 文件包含
  • 编程语言变量的引用共享问题
  • 分析一下url的格式和windows与Linux共享文件的格式
  • 2025 年通风天窗源头厂家最新推荐:品牌定制能力、售后体系及综合实力深度测评榜单
  • 2025年唐卡装饰权威深度解析:家装行业新格局与品质承诺
  • 简略描述 MySQL 的备份及还原
  • 血战上海滩下载与安装教程(Win10/Win11完美运行版)
  • Linux中Expect脚本和Shell的脚本核心特点解析、以及比对分析和应用场景
  • 2025 长沙美食餐厅最新推荐排行榜:红记领衔老字号与新势力,湘味品质之选全解析
  • 2025年大连甘井子区优质养老机构推荐:从社区到自然的暖心之选
  • 2025 MIM 加工优质厂家推荐榜:精密零部件/金属件/金属零件/金属/金属成型MIM 加工厂家,聚焦精密制造的实力派之选
  • 2025年AI营销公司推荐:广东AI营销公司/广州AI营销公司如何以模块化服务破解企业增长困局
  • scanner
  • 2025年越南货架厂家推荐榜:立体/高位/仓储/托盘/重型/流利式/贯通式/穿梭车/模具/货架厂家,多维度解析行业实力派
  • 2025年主轴维修厂家企业推荐: 电/高速/精密/磨床/进口磨床/加工中心电/数控机床/高速电主轴维修厂家,服务商助力制造企业降本增效
  • 2025年磨床电主轴先升级推荐榜:国产/进口/内圆/外圆/无心/平面/来图定制磨床电主轴厂家,聚焦精密制造核心
  • 在写left join的时候 是大表在左侧 还是小表在左侧(二)
  • 在写left join的时候 是大表在左侧 还是小表在左侧(一)
  • 2025年变电站厂家最新推荐榜发布:聚焦高效电力解决方案,陕西四方华能电气设备有限公司领跑行业
  • 高级语言程序设计课程第二次个人作业
  • 2025精密球轴承实力厂家推荐,无锡雨露精工专注半导体设备轴承定制
  • 微信小程序域名查询系统详细介绍
  • 2025 年地铺石厂家最新推荐榜:涵盖生态/仿石/陶瓷等品类,揭秘行业口碑优质企业18厚/火烧/庭院/陶瓷地铺石厂家推荐
  • TLS1.2 和 TLS1.3的简要区别
  • [极客大挑战 2019]Havefun 1 代码审计