【技术实现步骤摘要】
本专利技术涉及软件开发领域,具体地说,涉及软件开发领域的详细设计和程序测试领域,更具体地,涉及详细设计和程序测试领域的程序逻辑结构图示方法,以及程序测试领域的程序路径统计方法。
技术介绍
详细设计和程序测试是软件开发过程的两个重要阶段。详细设计针对目标系统进行比较详细的说明;程序测试一般分为黑盒测试和白盒测试,其中白盒测试依据程序的内部逻辑结构设计测试用例进行测试。虽然目前很多软件从总体上来说是面向对象的,但其局部代码还是结构化的,详细设计和白盒测试常常需要画出局部程序的逻辑结构的图示。目前常用的程序逻辑结构图示方法是利用绘图工具软件,使用逻辑结构图的图形符号,画出程序逻辑结构图。常用的逻辑结构图有三种,程序流程图、盒图(N-S图)、PAD图,它们常用的部分图形符号如图2所示,其中图2A是程序流程图的部分图形符号,201为选择(分支),202为处理,203为开始或停止,204为预先定义的处理,205为输入输出,206为控制流;图2B是盒图的部分图形符号,211为顺序,212为条件,213为循环,214为调用子程序A;图2C是PAD图的部分图形符号,221为顺序,222为循环(WHILE C DO P),223为选择(IFC THEN P1 ELSE P2),224为定义。图3是对应于图1A所示的示例代码的程序流程图。程序流程图是历史最悠久、使用最广泛的描述程序过程的工具,具有不利于逐步求精、不利于遵循结构程序设计的精神、不易表示数据结构等缺点。图4是对应于图1A所示的示例代码的盒图。盒图具有功能域明确、不可能任意转移控制、容易确定局部和全部数据的作用域 ...
【技术保护点】
一种程序逻辑结构图示方法,其特征在于,包括步骤: A.生成一个顶层分支对象; B.在任意层次的分支对象中嵌套分支树对象和/或语句块对象; C.计算上述各对象的尺寸及位置并画出其图示。
【技术特征摘要】
1.一种程序逻辑结构图示方法,其特征在于,包括步骤A.生成一个顶层分支对象;B.在任意层次的分支对象中嵌套分支树对象和/或语句块对象;C.计算上述各对象的尺寸及位置并画出其图示。2.根据权利要求1所述的程序逻辑结构图示方法,其特征在于,将程序逻辑结构分为顺序结构和分支结构;所述语句块对象用于描述顺序结构,所述分支树对象用于描述分支结构,所述分支对象用于描述顶层分支或分支结构的一个分支;每一所述分支树对象至少嵌套了两个分支对象。3.根据权利要求1所述的程序逻辑结构图示方法,其特征在于,所述嵌套包括被嵌套的对象的范围至少在一个方向上落在嵌套它的对象的范围之内。4.根据权利要求1所述的程序逻辑结构图示方法,其特征在于,用细化的分支树对象描述不同的分支结构。5.根据权利要求1所述的程序逻辑结构图示方法,其特征在于,所述步骤B所述分支树对象和/或语句块对象由用户指定。6.根据权利要求5所述的程序逻辑结构图示方法,其特征在于,嵌套所述分支树对象和/或语句块对象的分支对象由用户指定。7.根据权利要求1所述的程序逻辑结构图示方法,其特征在于,所述步骤B所述分支树对象和/或语句块对象依据程序代码生成。8.根据权利要求7所述的程序逻辑结构图示方法,其特征在于,所述步骤B具体包括解析程序代码的逻辑结构,依据程序代码的分支结构生成对应的分支树对象及对应的分支对象,依据程序代码的顺序结构生成对应的语句块对象,并将所述分支树对象和所述语句块对象嵌套于对应层次的分支对象中。9.根据权利要求1至8任一权利要求所述的程序逻辑结构图示方法,其特征在于,所述各对象的尺寸包括各对象的宽度和高度。10.根据权利要求9所述的程序逻辑结构图示方法,其特征在于,所述步骤C包括步骤C1.从顶层分支对象开始,针对每一对象,先递归计算各子对象的宽度和高度,再根据子对象的宽度和高度计算该对象的宽度和高度,进一步包括依下述公式计算语句块对象的宽度和高度宽度=S1;高度=S2;其中,S1为语句块对象的宽度,S2为语句块对象的高度;依下述公式计算分支对象的宽度和高度宽度=S1+2*S6 (N=0);宽度=∑W+(N+1)*S6 (N>0);高度=S3+S4(N=0);高度=Hm+S3+S4 (N>0);其中,N为该分支对象的子对象数量,S1为语句块对象的宽度,S6为左右方向连接的两个对象之间的距离,∑W为所有子对象的宽度之和,S3为分支标注的高度,S4为分支标注与分支的距离,Hm为高度最大的子对象的高度;依下述公式计算分支树对象的宽度和高度宽度=Wm;高度=∑H+(N-1)*S5;其中,Wm为最宽子对象的宽度,∑H为所有子对象的高度之和,N为子对象数量,S5为两条分支之间的距离。11.根据权利要求10所述的程序逻辑结构图示方法,其特征在于,所述各对象的尺寸进一步包括各分支树对象的入口线高度。12.根据权利要求11所述的程序逻辑结构图示方法,其特征在于,所述步骤C1进一步包括计算各对象的底座高度;依下述公式计算分支树对象入口线高度入口线高度=B1+(Hn-Bn)+∑(H2...Hn-1)+(N-1)*S5;其中,B1为第一子对象底座高度,Hn为最末子对象高度,Bn为最末子对象底座高度,∑(H2...Hn-1)为除第一子对象和最末子对象以外的其他子对象的高度之和,N为子对象数量,S5为两条分支之间的距离。13.根据权利要求12所述的程序逻辑结构图示方法,其特征在于,所述计算各对象的底座高度具体包括从顶层分支对象开始,针对每一对象,先递归计算各子对象的底座高度,再根据各子对象的底座高度计算该对象的底座高度,进一步包括依下述公式计算语句块对象的底座高度底座高度=S2/2;其中S2为语句块对象的高度;依下述公式计算分支对象的底座高度底座高度=0(N=0);底座高度=Bm (N>0);其中,N为子对象数量,Bm为底座高度最大的子对象的底座高度;依下述公式计算分支树对象的底座高度底座高度=[B1+(Hn-Bn)+∑(H2...Hn-1)+(N-1)*S5]/2+Bn;其中,B1为第一子对象底座高度,Hn为最末子对象高度,Bn为最末子对象底座高度,∑(H2...Hn-1)为除第一子对象和最末子对象以外的其他子对象的高度之和,N为子对象数量,S5为两条分支之间的距离。14.根据权利要求1至8任一权利要求所述的程序逻辑结构图示方法,其特征在于,所述各对象的位置包括各对象的入口点坐标。15.根据权利要求14所述的程序逻辑结构图示方法,其特征在于,所述步骤C包括步骤C2.从顶层分支对象开始,针对每一对象,先计算该对象的入口点坐标,再根据该对象的位置递归计算各子对象的入口点坐标,进一步包括依下述公式计算顶层分支对象的入口点坐标X=0;Y=H-B;其中,X为入口点横坐标,向右为正,Y为入口...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。