一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种活动图到状态图的转换算法的制作方法

2022-12-13 23:33:50 来源:中国专利 TAG:

技术特征:
1.一种活动图到状态图的转换算法,其特征在于,包括如下步骤:一.定义活动图和状态图活动图描述一组对象在协作完成某一个任务的过程中,各个对象所执行的活动以及活动的顺序,展现从一个活动到另一个活动的控制流;活动图数学表达:一个活动图为一个四元组g=<a,r,i,f>,其中:1)a=an∪on∪cn∪i∪f,其中an是活动节点的集合,on是对象节点的集合,cn=ch∪me∪fo∪jo,ch是分支节点的集合,me是合并节点的集合,fo是分叉节点的集合,jo是汇合节点的集合;2)r是节点间的关系;3)i是初始节点的集合;4)f是终止节点的集合;状态图描述对象在其生命周期中响应事件所经历的状态序列,以及引发响应的激励或事件;构成要素包括状态、转移和事件;状态图数学表达:令sd=(s,λ,e)表示一个状态转换图,其中s是起始状态的集合,e是终止状态的集合,λ=∑λ
i
=∑(s
i
,c
i
,s
i 1
)是状态转移的集合,c
i
是相邻两个状态之间触发转换的事件;二.活动图到状态图的转换过程:1)将活动图中被测对象的活动转换为状态图中的状态;2)将活动图中表示活动间执行顺序的动作流转换成状态图中的转移;3)将活动图中表示执行动作流需要判断的条件转换成状态图中的转移需满足事件条件;4)忽略由被测对象出发到达其他泳道对象的出边;5)对被测对象活动的来自其他泳道对象的特定活动的入边,将该入边所关联的输入活动以及其对象转换为状态转移上的触发事件;6)在进行转换时,当没有来自其他对象的活动的输入,而状态的转换只跟某一个值的变化或者系统状态的变化相关时,则可将这种变化转换成触发状态转移的变化事件;7)在进行转换时,当没有来自其他对象的活动的输入,而活动的执行只跟自身的状态以及时间有关,此时可将时间的变化作为触发状态转移的时间事件;8)在活动图中,指定某一泳道为被测对象,多个顺序执行且中间无判断条件的多个活动合并为同一个状态;9)在活动图中,指定某一泳道为被测对象,分支判断省去,将分支所表示的由当前活动到其他活动的有条件的执行流程,转换为当前活动所表示的状态到其他活动所表示状态的有条件转移;10)对于活动图中表示并发开始的分叉节点,如果分叉节点的出边中有去往其他对象的出边,则直接去除该出边;对于剩余的n条出边,则将前面已经转换得到的状态图复制n份,每个状态图对应一条出边,然后继续沿着每个出边代表的路径执行活动图到状态图的转换;如果后续继续遇到表示并发开始的分叉节点,则根据上述策略,同样通过复制得到多个状态图。2.根据权利要求1所述的一种活动图到状态图的转换算法,其特征在于,所述活动图到
状态图的转化过程具体包括,首先输入活动图,用于存储各节点和边的活动图结构,然后进行如下步骤:第一步,初始化一个状态图对象z第二步,寻找起始节点,创建状态图开始状态节点判断当前节点是否为起始节点,且不属于被测系统,遍历起始节点后续各节点,若后续节点不属于被测系统,则删除节点和相关边,直到遇见被测系统的节点判断当前节点是起始节点,且属于被测系统;第三步,寻找终止节点,创建状态图终止状态节点判断当前节点是否为终止节点,且不属于被测系统,遍历终止节点前向各节点,若前向节点不属于被测系统,则删除节点和相关边,直到遇见被测系统的节点;第四步,寻找普通节点,创建状态图中的普通状态节点;第五步,增加转移和事件条件信息将判断节点相连的边转换为状态转移,将边相连的活动也转为状态图中的状态,将边上的条件转为状态转移上的监护条件,添加到已经得到的各个状态图对象中去;第六步,重复循环执行第二步~第五步,执行遍历活动图中所有节点。3.根据权利要求2所述的一种活动图到状态图的转换算法,其特征在于,第四步具体包括如下步骤:1)判断当前节点是否为普通活动节点,且不属于被测系统,标记该节点以及相关边为删除状态;2)判断当前节点属于被测系统且为并发节点,首先从各后续节点开始遍历,直到遇见并发结束节点,生成从并发开始节点到并发结束节点之间的k条路径,然后,将状态图对象z复制k份,将k条路径分别加入到k个状态图对象中;3)判断当前节点是属于被测系统的一个普通节点,其前序节点为其他对象的节点、且后续不是判断节点时,创建一个状态图的状态节点,并记录状态节点对应的活动节点,将该状态节点加入到各个状态图对象中;4)判断当前节点是属于被测系统的一个普通节点,其属于被测系统的前序节点存在且也是一个普通节点,且后续不是判断节点时,将节点内容合并到各个状态图对象该节点前序节点对应的状态中去,并记录下该活动节点;5)判断当前节点是属于被测系统的一个普通节点,其属于被测系统的前序节点存在且也是一个普通节点,且后续是判断节点时,将节点内容合并到各个状态图对象该节点前序节点对应的状态中去,记录下该活动节点,并判断该节点前序节点中是否存在属于其他对象的节点,如果有则将来自于其他对象的节点作为接下来判断中条件的触发事件。

技术总结
本文提出了一种活动图到状态图的转换算法,通过该算法将活动图转换成状态图,对于活动图中的并发节点采用了多场景复制的方法,从而保证转换后的状态图路径无遗漏。测试人员通过该算法将活动图转换成状态图后,可以利用状态图的覆盖准则指导测试用例的自动生成,该方法能够满足弹载交互式软件测试需求的充分性覆盖性要求,同时提高软件测试的有效性和效率。率。率。


技术研发人员:董冬梅 吴武华 李凌 侯月
受保护的技术使用者:北京机电工程研究所
技术研发日:2022.08.16
技术公布日:2022/12/12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献