用例协作图也描述业务流程实例组成的一个场景。不象用例序列图,用例协作图描述用例实例和角色实例之间的用例关系和消息交互。用例协作图如图6所示。
图7 UML活动图描述业务流程的允许的顺序
用例交互图描述的仅仅是由用例实例组成的一种典型场景。因此它不能表达用例实例所有允许的顺序,属于用例包的用例实例所允许的顺序可以在用例包生命周期内详细说明。用例包的生命周期可用静态图、Backus-Naur范式(BNF)(请参看[4]如何使用BNF指定生命周期。)的活动图表示,在这些状态中,活动状态或BNF声明映射为用例包中的用例。用例包生命周期是用例包行为的准确描述,然而它难以正确表达,尤其在复杂的用例中。用例交互图很容易表达,但它描述的仅仅是由包中用例组成的某一典型场景。
图7是UML活动图,描述了用例包订单管理(order management)的生命周期。在活动图中的活动与图4、5、6中的用例相对应。
注意UML元模型没有定义任何从状态或行为状态到用例实例的映射,这种映射可以在开发过程进行,与Martin和Odell方法相似,其中子系统的每个状态都指明子系统中的一个候选类。参考[5]。然后,其他开发过程可能以其它方式定义用例包生命周期。例如,用例包生命周期的目的在用例包的范围内可被指定为子系统接口操作允许的顺序。
用例交互模型和用例生命周期还有一个显著的区别——它们在项目知识库中的位置不同,并且与其它设计工件的关系不同。工件用例交互模型与工件用例模型相关,工件用例包生命周期与工件用例包相关,后者的抽象级别比相对应的用例模型和用例交互模型高。
图8 在项目知识库里的用例视图中工件之间的关系。
文章来源于领测软件测试网 https://www.ltesting.net/