UML - 基本符号



UML 因其图示符号而广受欢迎。我们都知道,UML 用于可视化、规范化、构建和记录软件和非软件系统的组件。因此,可视化是最重要的部分,需要理解和记住。

UML 符号是建模中最重要的元素。有效且恰当地使用符号对于创建完整且有意义的模型非常重要。除非模型的目的得到恰当的描述,否则模型是无用的。

因此,从一开始就应该强调学习符号。对于事物和关系,可以使用不同的符号。UML 图是使用事物和关系的符号创建的。可扩展性是另一个重要特性,它使 UML 更加强大和灵活。

本章详细描述了基本的 UML 符号。这只是对第二章中讨论的 UML 构建块部分的扩展。

结构性事物

结构性事物中使用的图形符号在 UML 中使用最广泛。这些被认为是 UML 模型的名词。以下是结构性事物的列表。

  • 对象
  • 接口
  • 协作
  • 用例
  • 活动类
  • 组件
  • 节点

类符号

UML 由下图表示。该图分为四个部分。

  • 顶部部分用于命名类。
  • 第二个用于显示类的属性。
  • 第三部分用于描述类执行的操作。
  • 第四部分是可选的,用于显示任何其他组件。
Class Notation

类用于表示对象。对象可以是任何具有属性和职责的事物。

对象符号

对象 的表示方式与类相同。唯一的区别是名称 下划线,如下面的图所示。

Object Notation

由于对象是类的实际实现,称为类的实例。因此,它与类具有相同的用法。

接口符号

接口由一个圆圈表示,如下面的图所示。它有一个名称,通常写在圆圈下方。

Interface Notation

接口用于描述不带实现的功能。接口就像一个模板,您可以在其中定义不同的函数,而不是实现。当一个类实现接口时,它也会根据需要实现功能。

协作符号

协作由一个虚线椭圆表示,如下面的图所示。它在椭圆内写有一个名称。

Collaboration Notation

协作表示职责。通常,职责是一组。

用例符号

用例表示为一个椭圆,其中包含一个名称。它可能包含其他职责。

Use case Notation

用例用于捕获系统的较高层功能。

参与者符号

参与者可以定义为与系统交互的一些内部或外部实体。

Actor Notation

参与者在用例图中用于描述内部或外部实体。

初始状态符号

初始状态用于显示过程的开始。此符号几乎用于所有图中。

Initial state Notation

初始状态符号的用法是显示过程的起点。

最终状态符号

最终状态用于显示过程的结束。此符号也几乎用于所有图中以描述结束。

Final state Notation

最终状态符号的用法是显示过程的终止点。

活动类符号

活动类看起来类似于带实线边框的类。活动类通常用于描述系统的并发行为。

Active class Notation

活动类用于表示系统中的并发性。

组件符号

UML 中的组件如下图所示,其中包含一个名称。可以在需要的地方添加其他元素。

Component Notation

组件用于表示为其创建 UML 图的系统的任何部分。

节点符号

UML 中的节点由一个正方形表示,如下图所示,带有一个名称。节点表示系统的物理组件。

Node Notation

节点用于表示系统的物理部分,例如服务器、网络等。

行为性事物

动态部分是 UML 中最重要的元素之一。UML 有一套强大的功能来表示软件和非软件系统的动态部分。这些功能包括交互状态机

交互可以分为两种类型:

  • 顺序(由顺序图表示)
  • 协作(由协作图表示)

交互符号

交互基本上是两个 UML 组件之间消息的交换。下图表示交互中使用的不同符号。

Interaction Notation

交互用于表示系统组件之间的通信。

状态机符号

状态机描述了组件在其生命周期中的不同状态。符号在下图中描述。

State machine Notation

状态机用于描述系统组件的不同状态。状态可以是活动、空闲或任何其他状态,具体取决于情况。

分组事物

组织 UML 模型是设计中最重要的方面之一。在 UML 中,只有一个可用于分组的元素,那就是包。

包符号

包符号如下图所示,用于包装系统的组件。

package Notation

注释性事物

在任何图中,对不同元素及其功能的解释都非常重要。因此,UML 具有注释 符号来支持此要求。

注释符号

此符号如下图所示。这些符号用于提供系统必要的详细信息。

Note Notation

关系

除非元素之间的关系得到恰当的描述,否则模型是不完整的。关系 为 UML 模型提供了恰当的含义。以下是 UML 中可用的不同类型的关系。

  • 依赖
  • 关联
  • 泛化
  • 可扩展性

依赖符号

依赖是 UML 元素中的一个重要方面。它描述了依赖元素和依赖的方向。

依赖由虚线箭头表示,如下图所示。箭头指向独立元素,另一端指向依赖元素。

Dependency Notation

依赖用于表示系统中两个元素之间的依赖关系

关联符号

关联描述了 UML 图中元素如何关联。简单来说,它描述了有多少个元素参与交互。

关联由带(不带)箭头的虚线表示。两端表示两个关联的元素,如下图所示。在末端也提到了多重性(1、* 等),以显示有多少个对象相关联。

Association Notation

关联用于表示系统中两个元素之间的关系。

泛化符号

泛化描述了面向对象世界中的继承关系。它是父子关系。

泛化由一个带空心箭头头的箭头表示,如下图所示。一端表示父元素,另一端表示子元素。

Generalization Notation

泛化用于描述系统中两个元素的父子关系。

可扩展性符号

所有语言(编程或建模)都有一些机制来扩展其功能,例如语法、语义等。UML 还具有以下机制来提供可扩展性功能。

  • 构造型(表示新元素)
  • 标记值(表示新属性)
  • 约束(表示边界)
Extensibility Notation

可扩展性符号用于增强语言的功能。它基本上是用于表示系统某些额外行为的其他元素。这些额外行为未被标准可用符号涵盖。

广告