用例 - 王兴
用例
UML2.0
用例:
用例视图向外部用户展示了其捕获的系统、子系统、类或者组件的行为。它将系统功能划分成对执行者和有意义的事物。而交互功能的部分被称作用例。
是代表系统中各个项目相关人员之间就形态行为。所达成的契约。
编写用例必须掌握三个概念
- 范围:真正被讨论的系统是什么?
- 主执行者:谁有要实现的目标?
- 层次:目标的层次是高是低?
其它概念:
- 执行者:任何具有行为的人或物
- 项目相关人员:对被讨论的系统的行为有特定兴趣的人或物
- 主执行者:启动与被讨论系统得一次交互活动,从而达到某一个目标的人或物
- 用例:规定被讨论系统行为的契约
- 范围:界定被讨论的系统
- 前置条件和保证:在用例执行之前和之后必须满足的条件
- 主成功场景:一切顺利的情况
- 扩展:场景执行过程中出现的不同情况
三个命名的目标层次
1. 概要层次
包含多个用户目标。在描述系统时,它们有如下三个方面的功能:
显示用户目标运行的语境
显示相关目标的生命周期顺序
为低层用例(包括白色用例和蓝色用例)提供一个目录表。
2. 用户目标级
它是主执行者努力使工作得以完成的目标,或是用户使用系统的目标。
3. 子功能级
是指那些再实现用户目标时可能会被用到的目标。
用例模板
用例图只是简单地可视化描述系统,我们还需要对用例进行详细的说明。为了明确的描述用例我们需要一个用例模板,但是至今并没有统一的用例模板。用例模板的内容一般包括:简要描述、前置条件、后置条件、基本事件流、备选事件流等等。
简要描述:对用例的角色、目的的简要描述。
前置条件:执行用例之前系统必须要处于的状态,或者要满足的条件。
后置条件:用例一旦执行后系统所处的状态。
基本事件流:描述该用例的基本流程,指每个流程都“正常”运作时所发生的事情,没有任何备选流而只有最有可能发生的事件流。
备选事件流:表示这个行为或流程是可选的或备选的,并不是总要总要执行它们。
下面是一个用例模板的示例:
用例:<编号><名称>
特征信息:
用例在系统中的目标(用例目标描述)
范围(当前考虑的是哪个系统)
级别(概要任务/首要任务/子功能)
前提条件(用例执行前系统用具有的状态)
成功后继条件(用例成功执行后应具有的状态)
失效后继条件(用例没有完成目标的状态)
首要角色(与该用例关联的首要角色)
触发(启动该用例执行的系统动作)
主要步骤:
<步骤编号><动作描述>
扩展:
<有变化情况的步骤编号><条件>:<动作或另外一个用例>
变异:
<步骤或变化编号><变异列表>
相关信息:(可选)
优先级(该用例对于系统组织的关键程度)
性能目标(该用例的执行时间耗费)
频度(该用例被执行的频度)
从属用例:(可选)
下属用例:
与首要角色的联系渠道(包括交互式、静态文件、数据库等)
公开问题:(可选)