使用场景:用例图并没有涉及太多细节,例如,不要期望它为执行步骤的顺序建模。相反,适当的用例图描述了用例,参与者和系统之间的关系的高级概述。建议使用用例图来补充更具描述性的文本用例。
UML用例图非常适合:
- 表示系统用户交互的目标
- 定义和组织系统中的功能需求
- 指定系统的上下文和需求
- 在用例中对事件的基本流程进行建模
那么一个基本的用例图的组成部分有以下:
用例: 椭圆形表示。描述这个系统可以做什么,用例最好是有逻辑顺序的排放,比如下图中登录用例(log in )放在转账(transfer)前面
参与者: 发出这个动作,可以是人、组织、系统或者设备。主要的参与者在系统边界的左边,次要参与者在系统的右边。参与者至少与其中一个用例进行交互
关系: 是一条线去表明用例和参与者之间如何交互。在复杂的用例图中我们需求明确参与者和用例之间的关系。有不同类型的关系(如关联、包含、扩展和概括),它们由不同类型的线和箭头表示。
-
包括:基本用例包括用例,只有当包括了才完整,通常用虚线表示,箭头指向被包括的用例,比如登录以后需要校验密码是否正确。基本用例执行,被包括的用例一定会执行。
可能出现一个用例被多个用例包括,例如转账和支付都会包括验证余额这个用例 -
扩展:基本的用例执行,泛化的用例不一定会执行,但是大多数的时候会执行,前提是特定的条件被满足以后。通常用虚线表示,箭头指向基本用例,例如登录与登录以后的异