加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Use Case之间的相互关系

(2008-05-27 12:25:43)
标签:

杂谈

分类: MSN搬家

Use Case之间存在三种相互关系:
1、泛化(Generalize) / 特殊化(Specialize) :其含义是从用例继承了主用例已定义的步骤,并对其中部分步骤进行特殊化。通常主用例为抽象用例,其唯一的目的是组合其他用例,本身是不会被实例化的。关系的方向为从从用例到主用例,表示主用例为从用例的泛化,或从用例为主用例的特殊化。
2、包含(Include) : 其含义是主用例完全包含从用例已定义的所有步骤,为了不进行重复的定义,直接将其包含进来。通常多个用例都包含相同的步骤片断时,才需要将重复的步骤提取出来作为一个新的从用例,并包含之。关系的方向为从主用例到从用例,表示主用例包含从用例。
3、扩展(Extend) :其含义是主用例中有条件地包含从用例中的步骤。通常从用例描述的是另一种业务需求,主用例在某些条件下会执行从用例的步骤,某些情况下不会执行。关系的方向为从从用例到驻用例,表示主用例可选地包含从用例。

例如下列的Use Case Diagram,其中:
uc
·上楼上一个总的概念,可以走楼梯上楼,也可以坐电梯上楼。因此,“上楼”是“坐电梯”和“走楼梯”的泛化,“坐电梯”和“走楼梯”是“上楼”的特殊化;
· 无论是坐电梯或是走楼梯,都必须先进入大楼一楼的大厅,这是必须的也是公有的步骤。因此,“坐电梯”和“走楼梯”都包含了“进入大厅”;
· 楼梯拐角都有厕所,那么走楼梯上楼的途中,兴之所至顺便去上个厕所是可以的,而不想上厕所直接上楼也没问题。因此“上厕所”扩展了“走楼梯”。

另外,在定义一个完整的用例时,还应该详细定义出以下要素:
1、用例的标题
2、用例的标示号,用于用例的追溯;
3、用例是否为抽象用例,描述用例是否能够实例化(被参与者直接调用);
4、用例之间的关系;
5、用例的前提条件,描述执行用例前必先满足的条件;
6、用例的步骤,描述用例的详细内容;
7、用例的后置条件,描述执行用例后必会满足的条件;
8、用例的置换路径,描述特殊情况下,可替换的执行步骤;
9、用例的非功能需求。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有