2007年08月30日 18:37:40
UML 用例
|
(中程在线)老版本介绍:http://www.itisedu.com/phrase/200603071221195.html 业务用例的 RUP 定义:" 业务用例从一个外部的,增加值的角度来描述一个业务过程。为了给这个业务的涉众创造价值,业务用例是超越组织边界的业务过程,很可能包括合作伙伴和供应商。"简单地说,这个定义标识了一些重要点,比如: "业务用例:业务过程是描述这个业务的具体工作流的;一次涉众与实现业务目标的业务之间的交互。它可能包含手工和自动化的过程,也可能发生在一个长期的时间段中。" 系统用例的设计范围就是这个计算机系统设计的范围。它是一个系统参与者,与计算机系统一起实现一个目标。系统用例就是参与者如何与计算机技术相联系,而不是业务过程。 业务用例模型与系统用例模型之间究竟有怎样的差别呢? 业务用例模型与系统用例模型之间主要有三点重大不同之处:设计范围、白盒测试与黑盒测试,以及业务操作者。 其他参考:使用UML建立的完整的系统用例的实现过程 子用例参考: UML用例中的包含、扩展、泛化关系的理解 如何写好最外围用例 TDD开发的全过程] 一、设计阶段 在用例关系中有有三种关系,一是包括,"include" 一是扩展"extend"一是泛化,当然还有最基本的关系,“关联” 包含关系: 包含关系用于将部分工作流程分离出去,对这部分工作流程来说,基本用例只取决于结果,与获得结果的方法无关。如果这种分离可以简化对基本用例的理解(隐藏详细的行为),或者可以在其他基本用例中复用被分离的行为,您就可以将这部分工作流程分离出去。 基本用例通过包含关系连接到包含用例。包含用例总是抽象的。它描述在执行基本用例的用例实例中插入的行为段。基本用例可控制与包含用例的关系,并可依赖于执行包含用例所得的结果,但是基本用例和包含用例都不能访问对方的属性。从这种意义上来讲,包含用例是被封装的,它代表可以在各种不同的用例中复用的行为。 包含关系用于:(1)从基本用例中分解出来这种的行为:它对于了解基本用例的主要目的不是必需的,只有它的结果才比较重要。(2)分解出两个或者多个用例所共有的行为。 扩展关系: 扩展关系将扩展用例与基本用例连接了起来,通过在基本用例中引用扩展点,可以定义在基本用例的哪些位置插入扩展用例,扩展用例通常是抽象的,但是不是必须抽象。 扩展的目的在于:(1)表明用例的某一部分是可选的(或者可能可选)的系统行为。这样,你就可以将模型中的可选行为和必选行为分开。(2)表明只有在特定条件下(有时候是异常情况下)才执行的分支流,如触发警报。(3)表明可能有一组行为段,其中的一个或者多个段可以在基本用例中的扩展点处插入。所插入的行为段(以及插入的顺序)将取决于在执行基本用例时与主角进行的交互。 扩展是有条件的,它是否执行取决于在执行基本用例时所发生的事件。基本用例并不控件执行扩展的条件,这些条件在扩展关系中进行说明。扩展用例可以访问和修改基本用例的属性。但是基本用例看到到扩展用例,也无法访问它们的属性。 扩展用例以隐含的方式修改基本用例。也可以说,基本用例定义了可以在其中添加扩展用例的模块化的框架,但是基本用例看不见特定的扩展用例。 基本用例自身应该是完整的,即基本用例应该是可理解并且有意义的,而不必引用任何扩展用例。但是基本用例并不独立于扩展用例,因为如果无法遵循扩展用例,就不能执行基本用例。 泛化关系: 用例的泛化关系是指一种从子用例到父用例的关系,它指定了子用例如何特化父用例的所有特征和行为。 父用例可以特化形成一个或者多个子用例,这些子用例代表了父用例比较特殊的形式。尽管在大多数情况下父用例是抽象的,但是无论是父用例还是子用例这两者都不要求一定抽象。子用例继承父用例的所有结构、行为和关系。同一父用例的子用例都是该父用例的特例。这就是可适用于用用例的泛化关系。 当你发现两个或者多用例在行为,结构和目的方面存在共性时,就可以使用泛化关系。这种情况发生时,你可以用一个新的、通常也是抽象的用例来描述这些共有部分,该用例随后被子用例特化。 Tags:
JAVA
|
一共有 0 条评论