Work hard

[原创]Use Case中include和extend的区别

上一篇 / 下一篇  2008-05-17 16:41:46 / 个人分类:软件工程

查看( 11 ) / 评论( 0 )

Use Case中,我以前一直分不清includeextends的区别,理解了以后现在总结一下。

lF@7hy0

 海岸线网络圈P.?5Lb4ZP)A#v2k;a

include是包含的意思。海岸线网络圈3v?u#}$w8Tw

如果B用例包含在A用例中,如下图一所示。

$zR8n0UG0

(图一)

C~^$g}2a*a/o%k0

当去除B用例时,则A用例将变得不完整,所以对于A用例来说B用例是必须的。海岸线网络圈 I {"T.j ^

 

1lBkR4E J0

extend是扩展的意思。海岸线网络圈h7|XG p#{

如果B用例扩展了A用例,如下图二所示。

{7p RNgW7S3o2|0

(图二)海岸线网络圈X?|1dYa9E

 海岸线网络圈)s#M5J8\ ?*a

当去除B用例时,A用例仍然可以运转,所以对于A用例来说B用例不是必须的。海岸线网络圈b?Lgo/d;Jg1I

 

9f#p'p d jAy,h0

所谓一图胜千言别,我们再来分析一下下面2张图:

*S.xf['fD0

M2F+V$] P1CPi0

(图三)

,@*yQUGR-i/M"e0

 海岸线网络圈 U(f1qN J/X*D

海岸线网络圈vx9CRh

(图四)海岸线网络圈-ka\%QFi"Tp

以前我会分不清这两张图到底哪张是正确的,理解了extendinclude的区别后,我们可以很容易分清哪张用例图是正确的。第三张图表示管理员可以查询用户信息,如果需要的话还可以修改用户的信息。第四张图表示管理员在查询用户信息的同时还要修改用户信息。在第四张图中,修改用户信息变得是必须要做的了,因此不符合逻辑。于是,第三张图是正确的。

g oN$iD,k0

 海岸线网络圈.X!^;[gzn,~


TAG: Case extend include Use

我来说两句

(可选)

日历

« 2008-09-08  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 855
  • 日志数: 23
  • 建立时间: 2007-05-21
  • 更新时间: 2008-05-18

RSS订阅

Open Toolbar