UML 图:历史、类型、特点、版本、工具
什么是 UML 图?
UML 图代表统一建模语言。它是一种标准,主要用于为现实世界中的任何软件系统创建面向对象的、有意义的文档模型。它为我们提供了一种开发丰富模型的方法,这些模型描述了任何软/硬件系统的运行方式。
UML 是创建专业文档的一种好方法,这是任何项目开发的重要组成部分。UML 是创建系统面向对象设计的重要组成部分。它为您提供了创建强大模型和设计的手段,这些模型和设计可以轻松理解有理系统。
为什么要使用 UML?完整历史
20 世纪 90 年代是C++等面向对象语言的发展时代。这些面向对象语言被用于创建复杂但引人注目的系统。
随着系统开发变得复杂,导致了系统部署后出现的**设计和分析问题**。很难向他人解释系统。
UML 推出后,许多具有里程碑意义的实验和方法被用于简化分析系统的复杂任务。
UML 是一种面向对象的统一建模语言。它由 Rational software 的杰出软件工程师 Grady Booch、Ivar Jacobson 和 James Rumbaugh 于 1994 年至 1995 年间发明。它一直开发到 1996 年。
UML 的每位发明者,即 Grady Booch、Ivar Jacobson 和 James Rumbaugh,都提出了设计一种能够降低复杂性的语言的绝妙想法。
- Booch 的方法在对象的设计和构建过程中非常灵活。
- Jacobson 的方法提供了一种围绕用例工作的绝佳方式。它还对高级设计有一种强大的方法。
- Rumbaugh 的方法在处理敏感系统方面非常有用。
之后,UML 中引入了行为模型和状态图,它们由 David Harel 发明。
UML 于 1997 年被对象管理组织 (OMG) 认可为一项标准。自 UML 被采纳为标准以来,对象管理组织一直负责管理 UML。
2005 年,国际标准化组织批准 UML 作为 ISO 标准。它被用于各种行业,以创建面向对象的模型。
最新的 UML 版本是 2.5.1,于 2017 年 12 月发布。
UML 版本
Date | 版本 | 关于 |
---|---|---|
1997年11月 | 1.1 | UML 被对象管理组织采纳。这是 UML 的第一个版本。 |
2000年3月 | 1.3 | 对现有模型进行了小幅升级,在 UML 的语义、符号和元模型方面有显著变化。 |
2001年9月 | 1.4 | 这是 UML 主要更新的时期。它通过提供各种扩展来扩展 UML。在图中引入了可见性、工件、受管。 |
2003年3月 | 1.5 | UML 中添加了过程、数据流机制等功能。 |
2005年1月 | 1.4.2 | UML 被 ISO 接受为标准。 |
2005年8月 | 2.0 | UML 中添加了对象、包、时序、交互等新图。为活动图和顺序图添加了新功能。协作图重命名为通信图。在现有图中引入了多个功能和更改。 |
2006年4月 | 2.1 | 对 UML 2.0 进行了修正。 |
2007年2月 | 2.1.1 | 在 UML 2.1 中引入了升级。 |
2007年11月 | 2.1.2 | UML 2.1.1 被重新定义。 |
2009年2月 | 2.2 | UML 2.1.2 的错误已修复。 |
2010年5月 | 2.3 | UML 2.2 已修订,并对组件图进行了小幅更改。 |
2011年8月 | 2.4.1 | 对类、包和受管进行了更改。UML 2.3 已修订并添加了增强功能。 |
2015年6月 | 2.5 | UML 2.4.1 已修订并进行了小幅更改。UML 比以前更简单。引入了快速功能和更有效的模型生成。淘汰了过时功能。模型、模板作为辅助构造被淘汰。 |
UML 的特点
- 它是一种广义建模语言。
- 它不同于Python、C、C++ 等软件编程语言。
- 它是一种图形化语言,可用于生成强大的建模元素。
- 它与面向对象的设计和分析有关。
- 它在软件行业以外也有无限的应用。它可以用于可视化工厂的工作流程。
概念模型
在开始 UML 概念之前,必须了解概念模型的基础知识。
概念模型由各种相互关联的概念组成。它帮助我们理解
- 什么是对象?
- 如何进行交互来执行一个过程?
UML 需要概念模型。在实际对系统进行建模之前,您需要了解实体及其之间的关系。
要开始使用 UML,需要掌握以下面向对象概念
- 对象:它是现实世界中的实体。一个系统中存在多个对象。它是 UML 的基本构建块。
- 类:类只不过是一个容器,用于维护对象及其关系。
- 抽象:它是一种表示实体而不显示实现细节的机制。它用于可视化对象的行为。
- 继承:它是扩展现有类以创建新类的机制。
- 多态:它是一种表示具有多种形式并用于不同目的的对象的方式。
- 封装:它是一种将对象和数据绑定为单个单元的方法。它确保对象和数据之间紧密耦合。
以上也称为 UML 的基本构建块。
什么是 UML 图?
UML 图是统一建模语言的输出。它是类、对象及其之间关系的图形化表示。UML 图是描述系统一部分的模型。它用于定义系统的功能或设计。图表必须清晰简洁,以便查看者能够轻松理解。
UML 图分为三个不同的类别,例如:
- 结构图
- 行为图
- 交互图
UML 中的结构图
结构图用于表示系统的静态视图。它表示构成系统结构的部分。结构图显示系统中的各种对象。
以下是 UML 中的各种结构图
- 类图
- 对象图
- 包图
- 组件图
- 部署图
UML 中的行为图
任何现实世界的系统都可以以静态形式或动态形式表示。如果系统以静态和动态两种方式表示,则认为它是完整的。行为图表示系统的功能。
处理系统静态部分的 UML 图称为结构图。处理系统动态部分的 UML 图称为行为图。
以下是 UML 中的各种行为图
- 活动图
- 用例图
- 状态机图
UML 中的交互图
交互图只不过是行为图的一个子集。它用于可视化系统中各种用例元素之间的流程。交互图用于显示两个实体之间的交互以及数据如何在其中流动。
以下是 UML 中的各种交互图
- 时序图
- 顺序图
- 协作图
上述图表的详细解释将在后续教程中进行说明。
UML 工具
市面上有许多工具可用于生成 UML 图。有些是桌面版,有些可以在线使用。以下是可用于创建 UML 模型的一系列精选工具
- 亿图图示:-
- Moqups:- 点击这里
- Visio:- 点击这里
- ConceptDraw:- 点击这里
- StarUML:- 点击这里
- Umbrello:- 点击这里
- UML Designer Tool:- 点击这里
我们将使用 Star UML 应用程序来生成 UML 图。
安装步骤:打开链接:http://staruml.io/download
根据您的 PC 配置。下载该应用程序的任何版本。这里我们将选择 Windows 选项。
下载应用程序后,使用所有默认选项进行安装。安装完成后,在您的 PC 上启动 Staruml 应用程序。
您将看到以下窗口,
您现在可以开始创建 UML 图了。
摘要
- UML 代表统一建模语言。
- 它用于创建面向对象的模型,以表示系统的设计和功能。
- 它由 Grady Booch、Ivar Jacobson 和 James Rumbaugh 开发。
- UML 是面向对象语言的后继者,但它与它们有很大的不同。
- 结构图、行为图和交互图是 UML 图的三种类型。
- UML 被认可为 ISO 标准,许多行业都使用它来开发文档和模型蓝图。
- UML 图的类型有哪些?
UML 图主要有三种类型:1) 结构图 2) 行为图 3) 交互图