您的位置:首页 > 其它

UML用例图中的关系

2013-03-15 20:23 1471 查看
之前的博客对用例图做了一个总结,其中用例之间的关系的内容只是带过,因为本身自己对于用例间的关系理解不是特别的深刻。也是因为如此,UML用例图没有通过师父的验收。并且特别强调了用例间关系需要加深理解。那么本篇博客就是进一步理解之后(还没有彻底),特别对用例间的关系做一个总结。

1、关联关系(association):用带箭头的实线表示,由参与者指向用例。

关联关系是指参与者与用例之间的关系,是参与者和用例之间的通信。一个参与者可以关联多个用例,一个用例可以关联多个参与者。但是每一对参与者和用例之间(即一条连线上)的通信必须是唯一的,否则则存在可以合并的参与者或者用例。

2、泛化关系(dependency):用带空心三角形的实线表示,由子级指向父级。

泛化关系是参与者于参与者之间或者用例于用例之间的关系。泛化即继承关系,子用例(子参与者)继承了父用例(父参与者)的一切行为和通信。同时还可以增加属于自己独有的行为和通信。以机房收费系统中的三个参与者为例。操作员继承了一般用户的所有功能,同时增加了充值、工作记录查询等功能。而管理员则继承了操作员的一切功能,同时增加了结账和报表生成等功能。用例图如下:



3、包含关系(include):用带箭头的虚线和版型(include)表示,由基本用例指向被包含用例。

包含关系是用例之间的关系。所谓的包含关系是指当一个用例需要以另一个用例的执行为前提才能执行时,这两个用例间的关系。即一个用例不能被独立执行,随着另一个用例的执行而执行,也随着另一个用例的消亡而消亡。以机房收费系统中的结账功能为例,如下图:



在上图中结账用例和汇总退还金额用例之间即包含关系。如果结账用例不执行时就无法执行汇总退还金额用例,而结账用例结束那么汇总用例也随之结束。
4、扩展关系(extend):用带箭头的虚线和版型(extend)表示,右基本用例指向扩展用例。

扩展关系也是用例之间的关系。它指的是,当一个用例执行时出现某种特定的条件时,激活另一个用例。这里的一定条件称之为扩展点,被激活的用例称之为扩展用例。以机房收费系统中,上机时余额不足为例,如下图:





上图中,上机用例执行时若发现学生卡号中的余额小于最低余额时则直接转入充值用例,但是充值用例也可以单独被执行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐