
有限状态图在图形界面软件可靠性测试操作剖面表示中的应用研究.pdf
4页有限状态图在图形界面软件可靠性测试 操作剖面表示中的应用研究黄( 北京北京航空航天大学文工程系统工程系1 0 0 0 8 3 )摘要本文在分析传统软件可靠性测试剖面表示法以及图形界面软件可靠性测试自身特点的基础上,提出用有限状态图的方法来表示图形界面软件可靠性测试操作剖面的思想,该方法能够很好地解决图形界面软件可靠性测试的诸多问题,为有效地进行图形界面软件可靠性测试提供新的途径I图形界面的软件可靠性测试软件可靠性测试是指为了保证和验证软件的可靠性要求而对软件进行的测试其主要特征是按照用户实际使用软件的方式来测试软件为了满足用户对软件的可靠性要求、评价软件可靠性水平及验证软件产品是否达到可靠性要求,开发方需要对软件进行可靠性测试图形界面是一种定义为采用了四种基本组件( 窗E l 、图标、菜单和鼠标指针) 的人机交互方式在图形用户界面的基本特性中,固有的重要特性是直观操作,提供鼠标或指针支持,图形和应用软件功能和数据区域[ 2 ] 图形界面软件的使用为人机交互提供了一种方便的方式但同时亦应看到,虽然从使用者一方来看这能够使得计算机便于操作,但它却使得软件开发过程复杂化为保证软件质量,不仅需测试底层软件亦需测试图形界面本身以检验其是否符合图形界面规格要求,这使得图形界面软件可靠性测试比传统软件的可靠性测试更加复杂。
2图形界面软件可靠性测试剖面及其表示法研究操作剖面即操作的集合及其出现的概率整个可靠性测试的剖面开发包括:确定操作模式、确定操作发起者、选择表示法、创建操作表和确定出现率Ⅲ软件可靠性测试的关键技术是如何构造操作剖面在同一操作模式情况下,操作剖面包含执行不同任务( 也就是操作) 的不同过程在完成任务的过程中,根据处理过程发生的分歧,导致不同的操作流向和不同的失效行为操作发起者在完成一项任务的过程中经过进行多次物理操作的选择,最终完成一次运行,即一个操作的实例传统剖面表示法主要有表格表示法和树形分叉图表示法两种表格表示法为所有操作的文字排列,主要适用于可用很少文字即可描述的简单操作树形分叉图表示法将整个操作剖面横向划分为若干个不同属性段,每个属性至少包含两个属性值操作即一项任务的·1 8 3·完成实际过程中,发起者在完成一项任务的过程中经过若干属性段,进行多次物理操作的选择,最终实现操作图形界面软件可靠性测试剖面主要有如下特点:首先,可能存在的操作数量巨大,不同操作序列都将输出不同结果,所有操作在不同的操作序列中都需要得到检验;其次,在图形界面系统中的实际使用过程中,不同的操作之间常无固定的先后顺序,一个操作自身也可能 发生多次循环,产生大量的操作序列。
在剖面表示法上,表格表示法和树形分叉图法均是对单一操作的孤立的剖面描述方法由于图形界面软件操作数多,各操作闻常存在一定的依赖关系,可排列次序复杂,同一操作在不同的操作序列中输出结果一般不同,这两种表示法对图形界面软件常见的操作无固定使用顺序的和操作多次循环的情况缺乏有效而简明的表示手段而有限状态图在图形界面软件操作剖面表示和操作间相互关系描述方面,都能进行很好的处理3 有限状态图有限状态机是一个5 元组M 一( Q ,∑,艿,q F ) ,其中,A .Q = ( q o ,q ,,⋯,q ) 是有限状态集合在任一确定的时刻,有限状态机只能处于一个确定的状态吼;B .≥:= ( 盯0 “ 2 ,⋯,O ' m ) 是有限输入字符集合譬在任一确定的时刻,有限状态机只能接收一个确定的输人口j ;c .d :Q x ≥:一Q 是状态转移函数在某一状态下,给定输入后有限状态机将转入由状态迁移函数决定的一个新的状态;D .q ∈Q 是初始状态,有限状态机由此状态开始接收输入;E .F ∈Q 是终结状态集合,有限状态机在达到终态后不再接收输入有限状态图是状态机的图形化表示图中节点代表状态,有向弧表示迁移关系,输入标注在相应的关系弧旁边。
图1 显示了一个简单的有限状态图,该状态图有4 个状态q o ,9 1 ,q z ,图1 有限状态图q 3 ,输入集合有3 个元素a , b 和c 各个状态之间的转移关系可从图中清楚地看出嗍4 有限状态图在图形界面软件剖面表示中的研究将有限状态图进行一定的扩展,运用于可靠性测试的剖面表示非常合适定义:一个图形界面软件可靠性测试剖面的状态机M 用一个五元组表示如下:M = ( Q ,∑,艿⋯qF )其中,Q 为操作结点的集合;∑为操作问相互关系的集合;艿为操作间的转移及其转移概率的集合;q 0 为初始结点;F 为终结点在与其相对应的有限状态图中,结点表示操作,有向边表示操作间的转换边上所附标·】8 4·注为操作闯转移的概率用标签来表示可能存在的操作问的相互关系结点可存在指向自身的有向边,用以表示操作的多次循环对过于复杂系统,采用分层思想,将实现相似功能或在执行过程中具有一定依赖关系的若干操作合为一个操作集合,并且这一个操作集合仅在起始结点和终结点与剖面的其余操作存在关联任意剖面起始结点均由实心圆点表示,终结点由内含黑点的圆圈表示如图2 所示,剖面起始子左侧实心圆点,终结于右侧包含黑点的圆圈,上层剖面包含“操作1 ”和“操作集合1 ”,“操作集合1 ”下的子剖面包含“操作2 ”、“操作3 ”和“操作4 ”。
操作间存在一定的转移关系,转移方向由有向边的方向表示,其中“操作2 ”存在指向自身的转移操作3 ”到“操作4 ”的转移存在一定的约束关系,用标签表示图2 基于有限状态图的操作剖面根据有向状态图,从初始结点出发,沿有向边,直至终结点,生成相应的操作序列有向边序列所附概率数值相乘即为该序列的发生概率5 图形界面软件可靠性测试剖面实例以一个简单的记事本软件为例如图3 所示,软件在载入文件后得到激活,可进行“剪切”、“复制”等操作,菜单栏中有两个选项:“文件”和“编辑”这两个选项下还包含子选项,如“文件”下的子菜单包含选项“打开”该软件能够实现打开文件和编辑文件功能使用者在软件使用过程中完成“打开”,“剪切”,“复制”和“粘贴”操作假设在进行“剪切”,“复制”和“粘贴”操作时,不能进行“打开”操作各操作是可循环多次进行的综合实际各方面情况,可将“剪切”,“复制”和“粘贴”视为一个操作集合“编辑”基于有限状态图,绘制如下软件操作剞面视图其中图4 为最上层剖面,图5 为操作集合“编辑”下的子剖面根据所绘剖面中的有向边和操作,可生成相图3 记事本软件界面·18 5·应的操作序列如测试序列:上层剖面起始点—竺L 打开—坐一编辑( 子剖面起始点—坚.复制—! L 剪切—型L 子剖面终结点) —型0 上层剖面终结点,该序列的发生概率为o .2 * 0 .4 * 0 .4 * 0 .2 * 0 .6 * 0 .6 * 1 0 0 %= 0 .2 3 0 4 %。
6 小结图4 软件上层剖面图5 软件的子剖面利用有限状态图,并对其机制进行一定的扩展,能够很好的描述图形界面软件可靠性测试过程中各操作之间相互关系,体现图形界面软件的实际使用情况,实现剖面的合理绘制,是一种很适合于图形界面软件操作剖面表示的方法E 1 ][ 2 ][ 3 ]参考文献( 美) J o h nD .M u s a 著,韩柯译.软件可靠性工程.北京;机械工业出版社,2 0 0 3( 美) R .J .T o r r e s 著,张林刚,梁海华译.用户界面设计与开发精解.北京;清华大学出版社,2 0 0 2( 美) S .利普舒尔茨,M .利普森著,周兴和,张志人,张学斌译.离散数学.北京:科学出版社,2 0 0 2·1 8 6·。
