00_UML(Unified Modeling Language)

195 阅读2分钟

1. 简介

UML,全称Unified Modeling Language,中文名称:统一建模语言,由一个数百个组织组成的OMG(Object Management Group)创建。

UML是可视化的建模工具,使用图形描述软件、系统等等的设计思路,常用于面向对象的开发方法中。

UML的最初版本起源于三种主要的面向对象方法(Booch、OMT和OOSE),并结合了建模语言设计、面向对象编程和体系结构描述语言的许多最佳实践。直至2017年,OMG将UML更新至2.5.1版本,后续没有更新。

 

2. 产生原因

  • 为系统架构师、软件工程师和软件开发人员提供工具,用于分析、设计和实现基于软件的系统,以及对业务和类似流程进行建模。

  • 支持对象可视化建模工具的互操作性来提升行业的发展。

  • 让不同的工具之间有意义地交换模型信息。

 

3. 实现需求

  • 基于MOF的通用元模型的正式定义,用于指定UML的抽象语法。抽象语法定义了一组UML建模概念、它们的属性和它们之间的关系、组合这些概念以构建部分或完整UML模型的规则。

  • 详细解释每个UML建模概念的语义:计算机是如何以一种独立的方式定义概念的。

  • 一种人类可读的符号元素规范,用于表示各个UML建模概念,以及将它们组合成各种不同图表类型的规则,对应于建模系统的不同方面。

 

4. 作用

  • 建立软件系统模型。

  • 建立软件系统的说明文档。

 

5. 分类

5.1. 结构图

  • 包图(Package Diagram)

  • 类图(Class Diagram)

  • 对象图(Object Diagram)

  • 组件图(Component Diagram)

  • 部署图(Deployment Diagram)

  • ER图(Entity Relationship Diagram)

  • 思维导图(The Mind Map)

  • 拓扑图(Topology)

  • 复合结构图(Composite Structure Diagram)

5.2. 行为图

  • 用例图(Use Case Diagram)

  • 时序图(Sequence Diagram)

  • 流程图(Flow Chart Diagram)

  • 协作图(Communication Diagram)

  • 活动图(Activity Diagram)

  • 数据流图(Data Flow Diagram)

  • 状态图(State Chart Diagram)

备注:

以上分类中有些并不属于UML官方文档中,属于小编个人的见解把这些图形归类到UML中,主要原因如下:

个人认为,UML属于独立于任何语言的语言,不仅仅适用于软件工程。UML属于对世界见解的思维的描述、表达,方便描述世界,说白了就是描述思维的语言。

如果想要了解UML图形的细节,可以到小编主页的UML专栏查找。