UML – 用例图

UML – 用例图

为一个系统建模,最重要的方面是捕捉动态行为。动态行为指的是系统在运行/操作时的行为。

只有静态行为并不足以为系统建模,动态行为比静态行为更重要。在UML中,有五种图可以用来模拟动态性质,用例图就是其中之一。现在我们必须讨论用例图的动态性质,应该有一些内部或外部因素来进行交互。

这些内部和外部代理被称为行为者。用例图由行动者、用例和他们的关系组成。该图被用来为一个应用程序的系统/子系统建模。一个用例图捕获了一个系统的特定功能。

因此,为了对整个系统进行建模,需要使用一些用例图。

用例图的目的

用例图的目的是为了捕捉系统的动态方面。然而,这个定义对于描述其目的来说过于笼统,因为其他四种图(活动图、序列图、协作图和状态图)也有同样的目的。我们将研究一些具体的目的,这将使它与其他四种图相区别。

用例图是用来收集系统的需求,包括内部和外部的影响。这些需求大多是设计需求。因此,当一个系统被分析以收集其功能时,用例被准备好并被确定为角色。

当最初的任务完成后,用例图被建模以呈现外部的观点。

简而言之,用例图的目的可以说是以下几点

  • 用来收集一个系统的需求。

  • 用于获得一个系统的外部视图。

  • 识别影响系统的外部和内部因素。

  • 显示需求之间的相互作用是行动者。

如何绘制用例图

用例图被认为是对一个系统的高水平需求分析。当一个系统的需求被分析时,功能被捕获在用例中。

我们可以说,用例只不过是以一种有组织的方式写的系统功能。与用例相关的第二件事是演员。行为者可以被定义为与系统交互的东西。

行为者可以是人类用户,也可以是一些内部应用,或者是一些外部应用。当我们计划画一个用例图时,我们应该确定以下项目。

  • 表示为用例的功能

  • 行为者

  • 用例和角色之间的关系。

用例图的绘制是为了捕捉系统的功能需求。在确定了上述项目后,我们必须使用以下准则来绘制一个有效的用例图

  • 用例的名称是非常重要的。名字的选择应该是能够识别所执行的功能的。

  • 给演员一个合适的名字。

  • 在图中清楚地显示关系和依赖性。

  • 不要试图包括所有类型的关系,因为图表的主要目的是为了识别需求。

  • 在需要的时候使用注释来澄清一些重要的观点。

下面是一个代表订单管理系统的用例图。因此,如果我们看这个图,我们会发现三个用例 (Order, SpecialOrder, and NormalOrder) 和一个角色,即客户。

SpecialOrder和NormalOrder用例是由 Order 用例扩展而来。因此,它们有扩展关系。另一个要点是确定系统的边界,如图所示。行为体Customer位于系统之外,因为它是系统的一个外部用户。

UML - 用例图

在哪里使用用例图

正如我们已经讨论过的,UML中有五种图来模拟系统的动态视图。现在,每一个模型都有一些特定的使用目的。事实上,这些特定的目的是一个运行中的系统的不同角度。

为了理解一个系统的动态,我们需要使用不同类型的图表。用例图是其中之一,它的具体目的是收集系统需求和行为者。

用例图指定了一个系统的事件和它们的流程。但用例图从来没有描述它们是如何实现的。用例图可以被想象成一个黑盒子,只有输入、输出和黑盒子的功能是已知的。

这些图是在一个非常高的设计水平上使用的。这种高层次的设计被反复完善,以获得一个完整的、实用的系统图。一个结构良好的用例还描述了前条件、后条件和异常情况。在进行测试时,这些额外的元素被用来制作测试用例。

尽管用例不是正向和反向工程的良好候选者,但它们仍然以稍微不同的方式被用来进行正向和反向工程。对于逆向工程也是如此。用例图的使用方式不同,以使其适用于逆向工程。

在正向工程中,用例图被用来制作测试用例,在反向工程中,用例被用来准备现有应用程序的需求细节。

用例图可以用于

  • 需求分析和高层设计。

  • 对系统的背景进行建模。

  • 逆向工程。

  • 正向工程。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程