天天看点

一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素

用例图的含义

由参与者(Actor)、用例(Use Case) 以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。

其中用例和参与者之间的对应关系又叫做通讯关联(Communication Association)。

用例图的作用

用例图是需求分析中的产物,主要作用是描述参与者与和用例之间的关系,帮助开发人员可视化地了解系统的功能。借助于用例图,系统用户、系统分析人员、系统设计人员、领域专家能够以可视化的方式对问题进行探讨,减少了大量交流上的障碍,便于对问题达成共识。

用例图的构成元素

构成很简单火柴人,鸭蛋,小方块和连线。

参与者(Actor)——与应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示。

一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素

参与者(Actor)是指存在于系统外部并直接与系统交互的人、系统、子系统或类的外部实体的抽象。每个参与者可以参与一个或多个用例,每个用例也可以有一个或多个参与者。

用例(Use Case)——用例就是外部可见的系统功能,对系统提供的服务进行描述。用椭圆表示。

一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素

用例(Use Case)是参与者(角色)可以感受到的系统服务或功能单元。它定义了系统是如何被参与者使用的,描述了参与者为使用系统所提供的某一完整功能而与系统之间发生的一段对话。

用例最大的优点就是站在用户的角度上(从系统的外部)来描述系统的功能。它把系统当作一个黑箱子,并不关心系统内部是如何完成它所提供的功能的,表达了整个系统对外部用户可见的行为。

系统边界——系统边界是指系统与系统之间的界限。用方形框+系统名称表示。

一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素

系统边界是指系统与系统之间的界限。通常所说的系统可以认为是由一系列相互作用的元素形成的具有特定功能的有机整体。系统同时又是相对的,一个系统本身又可以是另一个更大系统的组成部分,因此,系统与系统之间需要使用系统边界进行区分。

系统边界在用例图中用方框来表示,同时附上系统的名称,参与者画在边界的外面,用例画在边界里面。

元素之间的关系

关系类型 说明 表示符号
关联 参与者与用例之间的关系
泛化 参与者之间或用例之间的关系
包含 用例之间的关系
扩展 用例之间的关系
一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素
  1. 关联

    可以理解为参与者使用了什么功能。

  2. 泛化
    • 当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。
    • 在用例的泛化关系中,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系。
    • 泛化关系一般很少使用。
  3. 包含

    包含关系指用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分。

一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素
一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素

主要由以下两种情况需要用到包含关系:

  • 多个用例用到同一段的行为,则可以把这段共同的行为单独抽象成一个用例,然后让其他用例来包含这一用例。
  • 当某一个用例的功能过多、事件流过于复杂时,也可以把某一段事件流抽象成一个被包含的哟管理,以达到简化描述的目的。
  1. 扩展
    • 扩展用例可以在基用例之上添加新的行为,但是基用例必须声明某些特定的“扩展点”,并且扩展用例只能在这些扩展点上扩展新的行为。
    • 在扩展(extend)关系中,基础用例(Base)中定义有一至多个已命名的扩展点,扩展关系是指将扩展用-例(Extension)的事件流在一定的条件下按照相应的扩展点插入到基础用例(Base)中。
    一文带你学会 UML--用例图用例图的含义用例图的作用用例图的构成元素