1、概念
用例图是描述用例、参与者以及它们之间关系的图。
用例图是从用户的角度来描述对信息系统的需求,分析产品的功能和行为。
用例图定义和描述了系统的外部可见行为,是分析、设计直至组装测试的重要依据。
用例图由如下几个概念组成:
参与者actor:角色,系统的用户;
系统边界system scope:确定系统的范围,边界是一个方框,用例在边界内,参与者在边界外;
用例use case:系统提供的服务;
关联association:参与者与用例间的关系。
2、什么是参与者?
参与者是指在系统之外,但与系统直接交互的对象,即actor,也叫执行者、活动者。
参与者用人形符号表示,在人形符号下面标出参与者的角色名。参与者不止是人员,也有可能是信息系统、设备。
3、什么是用例?
用例是用户期望系统具备的功能,每一个用例说明一个系统提供给它的使用者的一种服务或功能。
用例的目标是要定义系统的一个行为,但并不显示系统的内部结构。
用例名一般为动宾短语,符号是椭圆加用例名(Visio中用例名写在椭圆内)。
4、如何寻找和确定用例?
参与者需要从系统中获取哪种功能?
参与者是否需要读取、产生、删除、修改或存储系统中的某种信息?
系统的状态改变时,是否通知参与者?
是否存在影响系统的外部事件?
系统需要什么样的输入与输出?
5、用例描述
用例图没有描述系统行为的细节,所以需要以书面文档的形式对用例进行描述。至少包括:
名称:与用例图中的名称保持一致;
标识符:用例的代码或编号;
基本操作流程:描述各项工作都正常进行时用例的工作方式;
可选操作流程:很少使用、异常情况、发出错误的情况。
另外还能包括:用例概述、范围、参与者、前置条件、后置条件、子事件流、规则与约束等。
6、用例图中的各种关系
a)参与者与用例间的关联关系:参与者与用例之间的通信,也成为关联或通信关系。
b)用例与用例之间的关系:包含关系(include)、扩展关系(extend)、泛化关系。
7、包含关系
包含关系描述的是一个用例需要某种功能,而该功能被另外一个用例定义,那么在用例的执行过程中,就可以调用已经定义好的用例。表示符号:<<include>>
8、扩展关系
用一个用例(可选)扩展另一个用例(基本例)的功能,将一些常规的动作放在一个基本用例中,将可选的或只在特定条件下才执行的动作放在它的扩展用例中。表示符号:<<extend>>。
9、泛化关系
子用例继承了父用例所有的结构、行为和关系,是父用例的一种特殊形式。
——部分内容整理自网络——