1、概述
用于表示系统功能需求,以及应用程序与用户或者与其他应用程序之间的交互关系。
2、组成
- 参与者(Actors):与系统交互的用户或其他系统。用一个人形图标表示。
- 用例(Use Cases):系统需要完成的特定功能或行为。用一个椭圆形图标表示。
- 关系(Relationships):用例之间的关系,用于将多个功能组织在一起
- 通信链路
Communication Link
:用于连接参与者和用例,被连接的两者有通信关系 - 扩展点
Extension points
: 描述extend
关系中的child
用例的触发条件 - 注释
Note
:对用例图中的元素做进一步的说明。
3、用例关系
包含(Include)
、扩展(Extend)
、泛化(Generalization)
3.1、包含include
某一个用例 (base
) 使用到了另一个用例 (child
) 中的功能,它们之间有了很强的依赖关系,会在整个业务流程中先后运行。箭头由base
指向child
3.2、扩展extend
某个用例(child
)是另外一个用例(base
)的一部分,它与包含关系的区别在于扩展关系并 不要求 child
在业务流程中一定会运行,它属于是一种功能增强,在满足一定条件的情况下才会执行。箭头方向是由child
执行base
3.3、泛化
也叫“继承关系”,子用例在父用例的基础上实现了功能拓展。泛化关系是由实线 + 空心三角箭头来表示的,箭头方法由child
指向parent
。
4、扩展点
一般在base用例上,上半部分是功能说明,下半部分是拓展点说明。
5、注释
注释一般是用一个类似于纸张的图形+虚线来组成,虚线连接的是任何一个你想说明的元素,可以是执行者、用例、关系等。
6、系统边界(Boundary of system)
。系统边界是矩形框,在矩形框的上面会写出这是属于哪一个系统,我们对上面的图形做一点点修改: