|
知识路径: > 系统开发和运行维护知识 > 系统分析基础知识 > 面向对象分析方法 > 面向对象分析方法 > UML中的图 >
|
相关知识点:8个
|
|
|
|
用例是一种描述系统需求的方法。用例图(use case diagram)展现了一组用例、参与者(Actor)以及它们之间的关系。
|
|
|
用例图中通常包含三种元素:用例、参与者、用例之间的关系,如下图所示。
|
|
|
|
|
参与者是指存在于系统外部并与系统进行交互的任何事物,既可以是使用系统的用户,也可以是其他外部系统和设备等外部实体。
|
|
|
用例是描述系统的一项功能的一组动作序列,这样的动作序列表示参与者与系统间的交互。
|
|
|
用例之间通常存在三种关系:包含(include)、扩展(extend)和泛化(generalization)。
|
|
|
(1)包含关系。当可以从两个或两个以上的用例中提取公共行为时,应该使用包含关系来表示它们。其中被提取出来的公共用例称为抽象用例,而把原始用例称为基本用例或基础用例。当多个用例需要使用同一段事件流时,抽象成为公共用例,可以避免在多个用例中重复地描述这段事件流,也可以防止这段事件流在不同用例中的描述出现不一致。当需要修改这段公共的需求时,也只要修改一个用例,避免同时修改多个用例而产生的不一致和重复性工作。另外,当某个用例的事件流过于复杂时,为了简化用例的描述,也可以将某一段事件流抽象成为一个被包含的用例。
|
|
|
(2)扩展关系。如果一个用例明显地混合了两种或两种以上的场景,即根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和一个或多个扩展用例。
|
|
|
(3)泛化关系。当多个用例共同拥有一种类似的结构和行为时,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。在用例的泛化关系中,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系。
|
|
|
用例图用于对系统的静态用例视图进行建模。这个视图主要支持系统的行为,即该系统在它的周边环境的语境中所提供的外部可见服务。
|
|
|
当对系统的静态用例视图建模时,可以用下列两种方式来使用用例图:
|
|
|
|
对一个系统的语境进行建模,包括围绕整个系统画一条线,并声明有哪些参与者位于系统之外并与系统进行交互。在这里,用例图说明了参与者以及它们所扮演的角色的含义。
|
|
|
|
对一个系统的需求进行建模,包括说明这个系统应该做什么(从系统外部的一个视点出发),而不考虑系统应该怎样做。在这里,用例图说明了系统想要的行为。通过这种方式,用例图使我们能够把整个系统看作一个黑盒子。你可以观察到系统外部有什么,系统怎样与哪些外部事物相互作用,但却看不到系统内部是如何工作的。
|
|
|