其他分享
首页 > 其他分享> > UML用例图学习笔记

UML用例图学习笔记

作者:互联网

用例图学习笔记

什么是用例图?

  1. 概念:用例图是站在外部参与者的角度,描述其所能观察到的系统功能,主要用于对系统和子系统的功能建模。
  2. 作用:展示用例之间、用例与参与者之间是怎样相互通信的,展示了系统提供的功能。
  3. 用例图:参与者(人)、用例(椭圆框)、系统(矩形框)、通信(参与者与用例间的连接线)

注意事项:绘制用例图时,所有的用例应该绘制在矩形框内,所有的参与者应该会旨在方框外。

用例图中的元素

  1. 参与者:为实现某个目标,请求系统执行用例的一种类型或一种角色,而不是一个具体的对象。

参与者可能是人、硬件设备、外部系统或时钟。

表示方法:图标表示、人形表示
参与者分类:

  1. 用例:对一组场景的共同行为的抽象,(场景:用例的一次完整的、具体的执行路径,即一系列操作。是为了实现某个目标,按照某种顺序执行的一系列相关操作的集合 )用例与场景的关系可类比于类与对象的关系。
    表示方法:带名称(简单名(用例名)|全名(包名::用例名))的椭圆图形

用例图中的关系

  1. 参与者间的关系
    泛化关系(如:读者是学生、教师的父类)
  2. 用例间的关系
    - 包含关系(用构造型《include》表示,指在基本用例内部的某个位置上显式的调用另一个用例):一个用例调用另一个用例时,被调用的用例称为包含用例,调用包含用例的是基本用例。

包含关系中,虚线箭头由基本用例指向包含用例,基本用例执行时,必定调用包含用例。

       - 扩展关系(用构造型《extend》表示):两个相似用例A和B,B用例操作步骤中包含A用例的操作步骤。A用例定义为基本用例时,**B用例减去A用例后的剩余部分定义为扩展用例。**

扩展关系中,虚线箭头由扩展用例指向基本用例,基本用例执行时,只有满足特定条件才执行扩展用例。

       - 泛化关系(箭头指向:带空心箭头的实线,箭头指向父类):多个子用例中抽取共同行为组成父用例,子用例可以继承父用例的行为、关系、和通信链接。

扩展用例和包含用例统称为抽象用例,抽象用例没有参与者,由基本用例对抽象用例实例化。

如何实现组织用例?

1.定义所有用例,
1.分组比较:首先在系统中识别出一组用例,进行比较,识别和提取抽象用例。
2.组内封装:

什么是用例规格描述?

1.概念:对用例的详细执行流程进行描述。其中的事件流描述了用例执行的具体步骤。
2.组成元素:

  1. 事件流:用例执行操作时的有序集合(用例执行时,一系列操作组成的控制流)。

       -----基本事件流--------:事件正常并成功执行的控制流
       -----扩展事件流--------:事件执行出现意外情况时的控制流
    
  2. 用例模板:(用斜体字显示的项目为必须编写的部分)

       -----自然语言格式--------:
       -----表格形式--------:![图中还可以有:用力概述、用例的设计范围、主要参与者、次要参与者、项目相关人利益说明、规则与约束、非行为需求](https://www.icode9.com/i/ll/?i=0710078bde7040a68c713230f9e37cc8.png?,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAQFZpdmlf,size_20,color_FFFFFF,t_70,g_se,x_16)
    
  3. 用例优先级:高——中——低,首先开发优先级较高的用例,目的是尽可能早地降低风险和不确定性

  4. 用例粒度(指用例执行时包含的步骤有多少):概述级——用户目标级——子功能级,从左往右不断细化用例

用例与协作

  1. 实现(一条带虚线的空心箭头,用例图中,由协作指向用例)
    1.概念:用来描述类目间的语义关系,该关系中,一个类目描述合约,另一个类目实现这个合约。

  2. 用例与协作(用例由实线椭圆表示,协作由虚线椭圆表示,用力和协作都是类目)
    1.协作:描述一组群体对象对外表现出的整体行为。用来实现某个用例的功能。其中的对象既包含静态结构,也有动态行为。

常用建模技术

  1. 对系统语境建模
    存在于系统内部的事物的职责,正好是存在于系统外部的事物希望提供的行为,因此,存在于系统外部事物的集合,构成了系统的语境。
  2. 对软件需求建模

标签:关系,包含,扩展,笔记,用例,UML,执行,参与者
来源: https://blog.csdn.net/weixin_53083297/article/details/121451727