什么是用例图
用例图是指由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的视图。用例图(User Case)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
用例图的构成
用例图由参与者(小人)、用例(椭圆)、系统边界、箭头组成,用画图的方法来完成。
参与者指系统以外的,在使用系统或与系统交互中所扮演的角色。
用例是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果
对用例的命名,我们可以给用例取一个简单、描述性的名称,一般为带有动作性的词。
系统边界是用来表示正在建模系统的边界。
边界内表示系统的组成部分,边界外表示系统外部。系统边界在画图中用方框来表示,同时附上系统的名称,参与者画在边界的外面,用例画在边界里面。因为系统边界的作用有时候不是很明显,所以我个人理解,在画图时可省略。
箭头用来表示参与者和系统通过相互发送信号或消息进行交互的关联关系。
箭头尾部用来表示启动交互的一方,箭头头部用来表示被启动的一方,其中用例总是要由参与者来启动。
用例图中的关系
用例图中涉及的关系有:关联、泛化、包含、扩展。

关联
表示参与者与用例之间的通信,任何一方都可发送或接受消息(箭头指向接收方)

泛化(继承)
子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的(箭头指向父用例)

包含
用来把一个较复杂用例所表示的功能分解成较小的步骤(箭头指向分解出来的功能用例)

扩展
扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。(指向基础用例)

依赖
表示源用例依赖于目标用例(指向被依赖项)

一个完整的示例

网友评论