UML之用例图
一.用例
参与者与系统的各种交互都可以被量化成用例。用例是系统通过与参与者的交互可以提供的一段连贯的功能。
例如:客户参与者可以从自动贩卖机购买一瓶饮料。客户把钱插进机器,进行选择,最后拿到饮料。
二.用例图
2.1用例图
系统包括一组用例和一组参与者。每个用例表示系统提供的一段功能,用例集合以某种细节层次显示了系统完整的功能。类似的,每个参与者表示系统可以执行其行为的某类对象。参与者集合表示系统服务的完整的对象集合。对象从其作为参与者交互的所有系统中累积行为。
2.2用例之间的关系
包含关系:一个用例可以简单地包含其他用例具有的行为,并把它所包含 的用例行为作为自身行为的一部分。
泛化关系:在泛化关系中子用例继承了父用例的行为和含义,子用例也可以增加新的行为和含义或者覆盖父用例中的行为和含义。
扩展关系:基本用例必须声明扩展点,而扩展用例只能在扩展点上增加新的行为和含义。
2.3用例的主要属性
事件流:描述一个用例在执行时执行者与与系统之间的交互过程。这个过程包含多个分支。
基本流:对用例中常规和预期路径的描述。
备选流:由于受到其他因素影响,用例执行了其他的途径。
前置条件:是该用例执行的前提条件,用来描述在什么条件下可以开始执行一个事件流。
后置条件:说明用例结束时系统的状态。
(前置条件和后置条件可以用于用例的验证和评审。)
2.4用例注意点
1.应该清晰的定义系统边界。
2.防止用例过多。
3.应该从执行者的角度来命名用例。
4.用例描述正规程度。
5.避免执行者的名字不一致。
6.避免执行者和用例之间的关系太复杂。
7.注意用例的大小是否恰当。
8.避免用例描述混乱。
9.区分用例分解和功能分解。
10.避免客户不能理解用例的情况发生。
11.有些场合,用用例来描述需求是不合适的。
(不知道图画的对不对,还请各位大神多多指教~)