UML - 基本符号


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

UML 符号是建模中最重要的元素。有效且适当地使用符号对于制作完整且有意义的模型非常重要。除非正确描述了其目的,否则该模型毫无用处。

因此,学习符号从一开始就应该受到重视。事物和关系可以使用不同的符号。UML 图是使用事物和关系的符号来制作的。可扩展性是使 UML 更加强大和灵活的另一个重要特性。

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

结构性事物

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

  • 课程
  • 目的
  • 界面
  • 合作
  • 使用案例
  • 活跃课程
  • 成分
  • 节点

类别符号

UML如下图所示。该图分为四个部分。

  • 顶部部分用于命名类。
  • 第二个用于显示类的属性。
  • 第三部分用于描述该类执行的操作。
  • 第四部分是可选的,用于显示任何附加组件。
类别符号

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

对象表示法

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

对象表示法

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

接口符号

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

接口符号

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

协作符号

协作由点蚀表示,如下图所示。它有一个名字写在 eclipse 里面。

协作符号

合作代表责任。一般来说,责任是在一个群体中的。

用例符号

用例被表示为一个包含名称的 Eclipse。它可能包含额外的责任。

用例符号

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

演员符号

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

演员符号

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

初始状态符号

初始状态被定义为显示进程的开始。几乎所有图表中都使用这种表示法。

初始状态表示法

初始状态表示法的用途是显示过程的起点。

最终状态符号

最终状态用于显示进程的结束。几乎所有图表中也都使用这种表示法来描述结尾。

最终状态符号

最终状态表示法的用途是显示进程的终止点。

活动类表示法

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

活动类表示法

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

组件符号

UML 中的一个组件如下图所示,里面有一个名称。可以根据需要添加其他元素。

组件符号

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

节点表示法

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

节点表示法

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

Behave事物

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

交互可以有两种类型 -

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

交互符号

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

交互符号

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

状态机符号

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

状态机表示法

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

将事物分组

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

封装符号

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

封装符号

注释性事物

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

注释符号

该表示法如下图所示。这些符号用于提供系统的必要信息。

注释符号

人际关系

除非正确描述了元素之间的关系,否则模型是不完整的。关系为 UML模型赋予了正确的含义。以下是 UML 中可用的不同类型的关系。

  • 依赖性
  • 协会
  • 概括
  • 可扩展性

依赖符号

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

依赖关系由虚线箭头表示,如下图所示。箭头头代表独立元素,另一端代表从属元素。

依赖符号

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

关联符号

关联描述了 UML 图中的元素如何关联。简而言之,它描述了有多少元素参与交互。

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

关联符号

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

泛化符号

泛化描述了面向对象世界的继承关系。这是一种父母和孩子的关系。

概括起来用带有空心箭头的箭头表示,如下图所示。一端代表父元素,另一端代表子元素。

泛化符号

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

可扩展性符号

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

  • 刻板印象(代表新元素)
  • 标记值(代表新属性)
  • 约束(代表边界)
可扩展性符号

可扩展性符号用于增强语言的功能。它基本上是用于表示系统的一些额外Behave的附加元素。标准可用符号未涵盖这些额外Behave。