九种UML常见图 -2025.10.19

news/2025/10/21 15:58:48/文章来源:https://www.cnblogs.com/XYu1230/p/19155642

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

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

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


一、结构图

1. 类图

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

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

2. 对象图

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

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

3. 组件图

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

4. 部署图

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

5. 包图

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

6. 复合结构图

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

二、行为图

7. 用例图

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

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

8. 活动图

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

9. 状态机图

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

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

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

10. 时序图

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

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

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

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

12. 交互概览图

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

13. 定时图

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

总结与如何选择

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/942363.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里云 CDN部署

阿里云 CDN部署视图预览 阿里云 CDN 每秒访问次数,下行流量,边缘带宽,响应时间,回源带宽,状态码等版本支持 操作系统支持:Linux 前置条件服务器 <安装 Datakit> 服务器 <安装 Func 携带版> 阿里云…

阿里、字节、腾讯等大厂都在用的 12 大主流 AI 前端组件库

阿里、字节、腾讯等大厂都在用的 12 大主流 AI 前端组件库 2025-06-241,720阅读2分钟 Ant Design Xgithub.com/ant-design/…Ant Group 团队打造的面向 AI 时代的全新企业级前端组件库,融合 Copilot、Agent、AI 驱动…

分箱效果评估:IV值和卡方

1.IV值(信息价值):分箱后变量的预测能力 IV值计算过程: 1.计算每个分箱的WOE(证据权重) 2.WOE和分箱的样本占比计算IV2.卡方值(Chi-Square):衡量分箱的“统计显著性”​ 卡方分箱(风控建模) 范围 取值范围:[0, +…

2025 年电缆桥架生产厂家最新推荐排行榜:聚焦北方 / 河北区域及瓦楞 / 防火 / 模压 / 镀锌桥架优质品牌深度解析

引言在电力传输、建筑基建等关键领域,电缆桥架作为线路支撑核心设备,其品质直接决定工程安全与运维稳定性。当前市场中,部分厂家存在工艺粗糙、防腐性能不足、承重不达标等问题,导致桥架寿命缩短、线路故障频发,增…

洒水清洁,音乐相伴,洒水车声音-兰花草音乐芯片详细资料

**兰花草音乐芯片AC1501**是一种广泛应用于电子设备(如贺卡、洒水车、倒车喇叭等)的音乐播放芯片,其核心功能是通过内置解码电路和放大器实现音乐播放。主要应用场景 1、贺卡与玩具:用于制作带有简单音乐播放功能的…

JavaScript 开发代码规范指南

1. 代码格式 1.1 缩进使用 2 个空格进行缩进 不要混用空格和制表符// ✅ 正确 function calculateTotal(items) {let total = 0;items.forEach(item => {total += item.price * item.quantity;});return total; }//…

04.Python百行代码制作查询工具

04.Python百行代码制作查询工具 ------------------------------------------------ 执行后——————————————————————————————————————————————————————————…

通过一台服务器采集所有阿里云账单费用数据

通过一台服务器采集所有阿里云账单费用数据费用 视图预览安装部署说明: 示例 Linux 版本为:CentOS Linux release 7.8.2003 (Core) 通过一台服务器采集所有阿里云账单费用数据前置条件服务器 <安装 Datakit> 服…

2025 油烟机厂家最新推荐榜:五大实力厂商技术与服务口碑评测权威发布滑轨/易清洁/免清洗/智能油烟机厂家推荐

引言 油烟机作为守护厨房健康的核心电器,其性能直接决定烹饪体验与家居环境质量。但当前市场乱象突出:2025 年省级抽查显示多批次产品存在噪声超标、吸力不足等问题,部分产品清洁困难、设计反人类,让消费者陷入选择…

VUE---打印功能

在开发系统的时候,经常会需要将系统里面的报表进行打印,主要是要实现局部打印的功能: 插件:npm install vue-print-nb --save具体示例代码:<template><div><button v-print="#printArea"…

编程语言变量的引用共享问题

编程语言变量的引用共享问题//基本数据类型赋值是开辟新的内存空间。 //修改后面的变量的值不会修改原始变量的值。 var a =1 var b=a b=3 console.log(b) // 3 //引用数据类型赋值时,后面的变量的值修改会改变原始变…

分析一下url的格式和windows与Linux共享文件的格式

分析一下url的格式和windows与Linux共享文件的格式 讲解这些URL和连接格式: ## 1. MSYS2 网址格式分析 `https://www.msys2.org/` 分解: ```https:// - 协议类型(加密的HTTP)www.msys2.org - 完整域名 …

高效管理超多传感器?SHxxx 集线器实现精准切换与零混淆 告别通道混乱,内置校验

高效管理超多传感器?SHxxx 集线器实现精准切换与零混淆 告别通道混乱,内置校验SHxxx 传感器集线器是一款专为高密度传感场景设计的智能切换设备。它支持将最多200路传感器轮转切换至单一接口,彻底解决测试现场因传感…

[ACTF2020 新生赛]Include 1 文件包含

题目界面查看源码以及点击链接从题目include推断是文件包含题目 需要使用php伪协议或者hackbar中模板 ?file=php://filter/read=convet.base64-encode/resource=flag.php将flag.php代码编码成base64编码,然后输出使用…

鸿蒙NEXT网络管理:从“能用”到“智能”的架构演进 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

PostgreSQL可观测性完整方案

PostgreSQL可观测性完整方案软件简述 PostgreSQL 是一种开源的关系型数据库管理系统 (RDBMS),它提供了许多可观测性选项,以确保数据库的稳定性和可靠性。 Observability 可观测性是指对数据库状态和操作进行监控和记…

2025 年通风天窗源头厂家最新推荐:品牌定制能力、售后体系及综合实力深度测评榜单

引言 在工业与民用建筑通风系统中,通风天窗的品质直接决定室内空气质量、能耗成本与安全保障,然而当前市场厂家良莠不齐,部分产品存在防水性能差、通风效率低等问题,且定制服务缺失、售后响应滞后,给企业与建筑方…

2025年唐卡装饰权威深度解析:家装行业新格局与品质承诺

引言 本文聚焦“核心业务与服务优势”这一核心维度,结合公开资料与第三方调研,为正在筛选装修服务商的消费者提供一份可验证、可落地的客观参考。 背景与概况 重庆唐卡装饰2009年成立,历时16年得到100万精英用户的口…

钡铼技术全新APC系列工业边缘可视化平板电脑即将重磅发布!

在智能制造与能源系统快速发展的今天,“边缘可视化” 正成为连接人、设备与数据的关键一环。 如何让操作界面在强光下依然清晰可见? 如何在高温、低温、震动、潮湿等极端环境下依旧稳定运行? 如何让数据在“边缘”完…

2025年大连甘井子区优质养老机构推荐:从社区到自然的暖心之选

随着人口老龄化进程加快,选择合适的养老机构成为许多家庭关心的话题。在大连甘井子区,一批设施完善、服务专业的养老机构,为长者们构筑了温馨的晚年家园。以下结合机构服务特色、环境配套及社会评价,整理出五家优质…