UML统一建模语言概览

什么是UML?

UML(Unified Modeling Language,统一建模语言)是一种标准化的建模语言,用于软件系统的:

  • 可视化
  • 说明
  • 构建
  • 文档化

UML的特点

特点 描述
可视化 提供标准的图形化表示方法
标准化 业界通用的建模标准
文档化 完整的系统设计文档

UML发展历史

时间 事件描述
1994--1996 Grady Booch、James Rumbaugh 和 Ivar Jacobson 开发
1997 被 OMG(对象管理组织)采纳为标准
2005 ISO/IEC 19501 国际标准发布
2017 UML 2.5.1 版本发布

UML图分类结构

UML图分为两大类:结构图行为图


结构图(Structure Diagrams)

  • 类图(Class Diagram)
    • 轮廓图(Outline Diagram)
  • 组合结构图(Composite Structure Diagram)
  • 组件图(Component Diagram)
  • 对象图(Object Diagram)
  • 部署图(Deployment Diagram)
  • 包图(Package Diagram)

行为图(Behavior Diagrams)

  • 活动图(Activity Diagram)
  • 用例图(Use Case Diagram)
  • 状态机图(State Machine Diagram)
  • 交互图(Interaction Diagram)
    • 序列图(Sequence Diagram)
    • 通讯图(Communication Diagram)
    • 交互概览图(Interaction Overview Diagram)
    • 时序图(Timing Diagram)

UML图类型区别与用途总结

结构图(Structure Diagrams)

图类型 主要用途与特点
类图 描述类、属性、方法及类之间的关系,是面向对象设计的核心图。用于静态结构建模。
对象图 展示某一时刻类的实例及其关系,强调对象状态快照,常用于调试或示例说明。
组件图 展示系统的模块组成及依赖关系,适用于软件架构设计,强调模块间接口。
部署图 描述系统在硬件环境中的部署结构,展示节点、设备及其连接关系。
包图 用于组织模型元素,展示包之间的依赖关系,适合大型系统的模块化管理。
复合结构图 展示类的内部结构及其协作关系,适合复杂组件或嵌套结构的建模。

行为图(Behavior Diagrams)

图类型 主要用途与特点
用例图 展示系统功能与用户(参与者)之间的交互,常用于需求分析阶段。
活动图 表示流程或操作的步骤序列,适合建模业务流程、算法逻辑或工作流。
状态图 描述对象生命周期中的状态变化,适合状态驱动型系统,如嵌入式或控制系统。
序列图 展示对象之间按时间顺序的消息交互,强调时间线与调用顺序,适合分析交互过程。
通讯图 展示对象之间的协作关系和消息流,强调结构而非时间顺序,适合补充序列图。
交互概览图 综合多个交互图,展示复杂交互流程的整体结构,适合高层次交互建模。
时序图 展示对象状态随时间变化的图示,强调时间约束与同步,适合实时系统建模。

分类对比简析

  • 结构图:关注系统的静态结构,如类、组件、部署等,适合架构设计与模块划分。
  • 行为图:关注系统的动态行为,如流程、交互、状态变化,适合需求分析与行为建模。
相关推荐
海盗123421 小时前
微软技术周报 · 2026-08-11~2026-08-18
人工智能·microsoft·.net
Zaimmm1 天前
临床文献智能检索哪家强?2026年主流AI循证平台深度测评与推荐
大数据·人工智能·microsoft
Leinwin1 天前
微软MAI-Code-1.1-Flash技术解读:Token效率提升25%,CLI与.NET全面升级
microsoft·.net
淡海水1 天前
01-08-运行时-虚方法分派与接口调用的底层实现
linux·windows·microsoft·c#·虚方法·vtable·vsd
ONLYOFFICE1 天前
微软365停止支持,如何实现无痛切换?
microsoft·开源·onlyoffice
circuitsosk2 天前
AI输出的“质检员”:构建智能体质量评估、异常检测与人工兜底的三层防线
人工智能·python·microsoft·正则表达式·langchain
TunerT_TQ2 天前
Microsoft 微软 Fluent UI 源码静态评测:从工程结构、测试线索到交付治理的完整解读
microsoft·开源·github
TunerT_TQ2 天前
Microsoft 微软 AI-For-Beginners 静态评测:一套 AI 入门课程,为什么不能只按代码仓库来评价?
microsoft·开源·github
行业研究员2 天前
腾讯云ADP:智能体平台封神榜
人工智能·microsoft·腾讯云·智能体·智能体平台·腾讯云adp
张宇Joaquin2 天前
高性能计算之MPI——集合通信漫谈
服务器·microsoft·asp.net