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 的特点

  1. 它是一种广义建模语言。
  2. 它不同于Python、C、C++ 等软件编程语言。
  3. 它是一种图形化语言,可用于生成强大的建模元素。
  4. 它与面向对象的设计和分析有关。
  5. 它在软件行业以外也有无限的应用。它可以用于可视化工厂的工作流程。

概念模型

在开始 UML 概念之前,必须了解概念模型的基础知识。

概念模型由各种相互关联的概念组成。它帮助我们理解

  • 什么是对象?
  • 如何进行交互来执行一个过程?

UML 需要概念模型。在实际对系统进行建模之前,您需要了解实体及其之间的关系。

要开始使用 UML,需要掌握以下面向对象概念

  • 对象:它是现实世界中的实体。一个系统中存在多个对象。它是 UML 的基本构建块。
  • :类只不过是一个容器,用于维护对象及其关系。
  • 抽象:它是一种表示实体而不显示实现细节的机制。它用于可视化对象的行为。
  • 继承:它是扩展现有类以创建新类的机制。
  • 多态:它是一种表示具有多种形式并用于不同目的的对象的方式。
  • 封装:它是一种将对象和数据绑定为单个单元的方法。它确保对象和数据之间紧密耦合。

以上也称为 UML 的基本构建块

什么是 UML 图?

UML 图是统一建模语言的输出。它是类、对象及其之间关系的图形化表示。UML 图是描述系统一部分的模型。它用于定义系统的功能或设计。图表必须清晰简洁,以便查看者能够轻松理解。

UML 图分为三个不同的类别,例如:

  • 结构图
  • 行为图
  • 交互图

UML 中的结构图

结构图用于表示系统的静态视图。它表示构成系统结构的部分。结构图显示系统中的各种对象。

以下是 UML 中的各种结构图

  • 类图
  • 对象图
  • 包图
  • 组件图
  • 部署图

UML 中的行为图

任何现实世界的系统都可以以静态形式或动态形式表示。如果系统以静态和动态两种方式表示,则认为它是完整的。行为图表示系统的功能。

处理系统静态部分的 UML 图称为结构图。处理系统动态部分的 UML 图称为行为图。

以下是 UML 中的各种行为图

  • 活动图
  • 用例图
  • 状态机图

UML 中的交互图

交互图只不过是行为图的一个子集。它用于可视化系统中各种用例元素之间的流程。交互图用于显示两个实体之间的交互以及数据如何在其中流动。

以下是 UML 中的各种交互图

  • 时序图
  • 顺序图
  • 协作图

上述图表的详细解释将在后续教程中进行说明。

UML 工具

市面上有许多工具可用于生成 UML 图。有些是桌面版,有些可以在线使用。以下是可用于创建 UML 模型的一系列精选工具

我们将使用 Star UML 应用程序来生成 UML 图。

安装步骤:打开链接:http://staruml.io/download

根据您的 PC 配置。下载该应用程序的任何版本。这里我们将选择 Windows 选项。

StarUML Installation

下载应用程序后,使用所有默认选项进行安装。安装完成后,在您的 PC 上启动 Staruml 应用程序。

您将看到以下窗口,

StarUML Installation

您现在可以开始创建 UML 图了。

摘要

  • UML 代表统一建模语言。
  • 它用于创建面向对象的模型,以表示系统的设计和功能。
  • 它由 Grady Booch、Ivar Jacobson 和 James Rumbaugh 开发。
  • UML 是面向对象语言的后继者,但它与它们有很大的不同。
  • 结构图、行为图和交互图是 UML 图的三种类型。
  • UML 被认可为 ISO 标准,许多行业都使用它来开发文档和模型蓝图。
  • UML 图的类型有哪些?
    UML 图主要有三种类型:1) 结构图 2) 行为图 3) 交互图