|
|
51CTO旗下网站
|
|
移动端

2.6.1 因果图中的基本符号

《软件测试基础教程》第2章基于需求的测试生成,本章主要介绍从非形式化或形式化定义的软件需求生成测试集的技术。这些技术,有的可以自动地执行,而大部分则需测试人员付出艰辛的劳动,特别是在测试大型软件时。本章所介绍的大部分测试技术属于黑盒测试,因为生成测试集时不需参考被测软件的源代码。本节为大家介绍因果图中的基本符号。

作者:王峰/郭长国/陈振华 等译来源:机械工业出版社|2011-09-17 22:44

2.6.1 因果图中的基本符号

图2-10列举了因果图中的基本元素。由这些基本元素组合构成的因果图,能有效获取需求中所涉及的各种因果关系。对于图2-10中的4个基本元素,采用if-then结构描述,其语义如下,其中C、C1、C2、C3表示原因,Ef表示结果。

 

图2-10因果图的基本元素:蕴含关系imply、非关系not(~)、与关系and(∧)、或关系or(∨)。C、C1、C2、C3表示原因,Ef表示结果。当存在三个或三个以上的原因时,要加上一条弧,如本图中的与关系and

原因(即输入条件)之间往往存在约束关系。例如某库存控制系统,功能为跟踪库中产品的库存情况。对于每个产品,其库存属性可以设置为“正常”、“较低”、“空”三种取值。库存控制系统将依据该属性值的变化情况采取相应的措施。在确定软件需求中的“原因”时,库存属性的三种取值将形成三个不同的“原因”,如下所示:

C1:库存正常

C2:库存较低

C3:库存为空

在任何情况下,C1、C2、C3中最多只能有一个为真,对于三者之间的这种约束关系,在因果图中可使用“排异约束”(E)表示,如图2-11所示。另外,图2-11中还包含了其他三种约束:“包容约束”(I)、“要求约束”(R)、“唯一约束”(O)。当C1、C2之间存在I约束时,表示 C1、C2之中至少有一个为真。当C1、C2之间存在R约束时,表示若C1为真,则C2也必须为真。当C1、C2之间存在O约束时,表示C1、C2中有且仅有一个为真。

 
下表分别列出了在E、I、R、O约束下原因的取值情况。原因取值为0表示该输入条件为假,原因取值为1表示该输入条件为真。除约束R外,其他约束都是二元或二元以上的关系。约束R仅用于描述二元约束关系。
 
原因之间存在约束关系,结果之间也同样存在着约束关系。因果图方法提供了结果之间的“屏蔽约束”(M),如图2-12所示。考虑前面介绍的库存控制系统,其结果如下:
 

MEf1:生成“发货清单”

Ef2:生成“订单未完成”致歉信

当库存能够满足订单要求时,产生结果Ef1。当库存不能满足订单要求时,或者当订单被答应之后却又中止发送货物时,产生结果Ef2。因此,我们说Ef2被Ef1屏蔽了,即对同一订单不能同时出现两种结果。

当一个原因为假或真时,我们称其处于“0状态”或“1状态”。同样,当一个结果发生(或不发生)时,我们称其处于“1状态”或“0状态”。

【责任编辑:云霞 TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

网管员必读—服务器与数据存储

《网管员必读—服务器与数据存储》全面、系统地介绍了在中、高级网络管理和网络工程实施中两个重要方面的主流技术和应用:硬件服务器和数据...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊