UML用例图之关联关系、包含关系、扩展关系、泛化关系详解



UML定义

UML(Unified Modeling Language,统一建模语言),是一种面向对象的建模语言。它的主要作用是通过提供模型图帮助用户对软件系统进行面向对象的描述和建模,它可以描述这个软件开发过程从需求分析直到实现和测试的全过程。

UML图结构

在这里插入图片描述

用例图定义

  • 从系统的使用者的角度所理解的系统的总体功能。强调这个系统是什么而不是这个系统怎么工作。
  • 建立于系统需求阶段,是需求分析人员和用户对系统需求达成的共识。

用例图中的事物

  1. 用例
    系统外部可见的一个系统功能单元。
    在这里插入图片描述

  2. 参与者
    表示用例的使用者在与这些用例交互时所扮演的角色
    可以是:人、硬件设备或一个系统
    在这里插入图片描述

用例图中的关系

关联关系

  • 参与者与用例之间的关系
  • 表示该用例是该参与者发起的,表示参与者可以行使系统中的这个功能
    在这里插入图片描述

包含关系

特点

  • 用例之间的关系
  • 基用例必须和包含用例一起使用才够完整,包含用例也必然被执行。包含关系在用例图中使用带箭头的虚线表示(在线上标注<>),箭头从基用例指向包含用例。

在这里插入图片描述

使用场景

  • 如果两个以上用例有大量一致的功能,则可以将这个功能分解到另外一个用例中。其它用例可以和这两个用例建立包含关系。
    在这里插入图片描述



扩展关系

特点

  • 用例之间的关系
  • 扩展用例是对基用例的扩展,即使没有扩展用例的参与,也可以完成一个完整的功能。扩展在用例图中使用带箭头的虚线表示(在线上标注<>),箭头从扩展用例指向基用例。
    在这里插入图片描述

使用场景

UML用例图中扩展用例为基用例添加新的行为,相当于为基础用例提供一个附加功能。
在这里插入图片描述



泛化关系

特点

  • 子用例指向父用例,父用例一般是抽象用例(用例之间的关系)
    在这里插入图片描述

  • 是一种继承关系,泛化关系在用例图中用实线+空心三角形表示,空心三角形指向父参与者,子参与者可以继承父参与者所有的行为。
    在这里插入图片描述

使用场景

子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系

包含关系和扩展关系的联系和区别

联系:

  • 都是从现有的用例中抽取出公共的那部分信息,作为一个单独的用例,然后通后过不同的方法来重用这个公共的用例,以减少模型维护的工作量。

区别:

  • 扩展关系中基本用例的基本流执行时,扩展用例不一定执行,即扩展用例只有在基本用例满足某种条件的时候才会执行。
  • 包含关系中基本用例的基本流执行时,包含用例一定会执行。

猜你喜欢

转载自blog.csdn.net/weixin_43514899/article/details/111564250