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专栏查找。