UML - 标准图


在前面的章节中,我们讨论了构建块和UML的其他必要元素。现在我们需要了解使用这些元素的位置。

这些元素就像是可以以不同方式关联的组件,以制作完整的UML图片,这被称为图表。因此,理解用于在现实生活系统中实现知识的不同图表是非常重要的。

通过制作某种图表或图片可以最好地理解任何复杂的系统。这些图表对我们的理解有更好的影响。如果我们环顾四周,我们会发现图表不是一个新概念,但它在不同行业中以不同形式广泛使用。

我们准备UML图表以更好,更简单的方式理解系统。单个图表不足以涵盖系统的所有方面。UML定义了各种图表来涵盖系统的大多数方面。

您还可以创建自己的图表集以满足您的要求。图表通常以递增和迭代的方式制作。

有两大类图表,它们又分为子类别

  • 结构图

  • 行为图

结构图

结构图表示系统的静态方面。这些静态方面代表图的那些部分,它们形成主要结构并因此是稳定的。

这些静态部分由类,接口,对象,组件和节点表示。四个结构图是 -

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

类图

类图是UML中最常用的图。类图由类,接口,关联和协作组成。类图基本上代表系统的面向对象视图,其本质上是静态的。

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

类图表示系统的面向对象。因此,它通常用于开发目的。这是系统构建时使用最广泛的图表。

对象图

对象图可以描述为类图的实例。因此,这些图更接近我们实现系统的现实场景。

对象图是一组对象,它们的关系就像类图一样。它们还代表系统的静态视图。

对象图的使用类似于类图,但它们用于从实际角度构建系统的原型。

组件图

组件图表示一组组件及其关系。这些组件由类,接口或协作组成。组件图表示系统的实现视图。

在设计阶段,系统的软件工件(类,接口等)根据它们的关系排列在不同的组中。现在,这些组称为组件。

最后,可以说组件图用于可视化实现。

部署图

部署图是一组节点及其关系。这些节点是部署组件的物理实体。

部署图用于可视化系统的部署视图。这通常由部署团队使用。

注意 - 如果仔细观察上述描述和用法,则很明显所有图表都彼此存在某种关系。 组件图依赖于类,接口等,它们是类/对象图的一部分。同样,部署图依赖于用于制作组件图的组件。

行为图

任何系统都可以有两个方面,静态和动态。因此,当完全涵盖这两个方面时,模型被认为是完整的。

行为图基本上捕获了系统的动态方面。动态方面可以进一步描述为系统的改变/移动部分。

UML有以下五种类型的行为图 -

  • 用例图
  • 序列图
  • 协作图
  • 状态图
  • 活动图

用例图

用例图是一组用例,参与者及其关系。它们代表系统的用例视图。

用例表示系统的特定功能。因此,用例图用于描述功能及其内部/外部控制器之间的关系。这些控制器称为 演员

序列图

序列图是交互图。从名称来看,很明显该图处理了一些序列,这些序列是从一个对象流向另一个对象的消息序列。

从实现和执行的角度来看,系统组件之间的交互非常重要。序列图用于可视化系统中的调用序列以执行特定功能。

协作图

协作图是交互图的另一种形式。它代表系统的结构组织和发送/接收的消息。结构组织由对象和链接组成。

协作图的目的与序列图类似。但是,协作图的特定目的是可视化对象的组织及其交互。

状态图

预计任何实时系统都会受到某种内部/外部事件的反应。这些事件负责系统的状态变化。

状态图用于表示系统的事件驱动状态更改。它基本上描述了类,接口等的状态变化。

状态图表用于通过内部/外部因素可视化系统的反应。

活动图

活动图描述了系统中的控制流程。它包括活动和链接。流可以是顺序的,并发的或分支的。

活动只不过是系统的功能。准备活动图的数量以捕获系统中的整个流。

活动图用于可视化系统中的控件流。这准备好了解系统在执行时的工作方式。

- 系统的动态特性很难捕获。 UML提供了从不同角度捕获系统动态的功能。序列图和协作图是同构的,因此它们可以相互转换而不会丢失任何信息。对于状态图和活动图也是如此。