发明名称 一种验证AADL模型运行状态与需求一致性的方法
摘要 一种验证AADL模型运行状态与需求一致性的方法,步骤包括:(1)根据需求中的状态和状态迁移构建AADL模型,AADL模型中模式和模式迁移分别对应需求中的状态和状态迁移;(2)将AADL模型中模式和模式迁移转化为Petri网模型;(3)计算Petri网模型的关联矩阵C;(4)利用Petri网模型的状态方程判断构建的AADL模型运行状态与需求是否一致。本发明提出将AADL模型中的“模式”及“模式迁移”映射为Petri网模型中的库所及变迁,并将此Petri网模型作为被测模型,结合Petri网模型性质和AADL模型的特点计算AADL模型可达的状态集合,从而达到判断建立的AADL模型运行状态是否与需求一致的目的,提高了所建AADL模型的正确性,缩短了系统建立时间,节省了系统建立成本。
申请公布号 CN102184136A 申请公布日期 2011.09.14
申请号 CN201110109292.9 申请日期 2011.04.29
申请人 中国航天科技集团公司第七一〇研究所 发明人 王崑声;张辉;经小川;张刚;谢伟华
分类号 G06F11/36(2006.01)I 主分类号 G06F11/36(2006.01)I
代理机构 中国航天科技专利中心 11009 代理人 臧春喜
主权项 1.一种验证AADL模型运行状态与需求一致性的方法,其特征在于步骤如下:(1)根据需求中的状态和状态迁移构建AADL模型,AADL模型中模式和模式迁移分别对应需求中的状态和状态迁移;(2)将AADL模型中模式和模式迁移转化为Petri网模型,AADL模型与Petri网模型的转换关系为:AADL模型中的模式映射为Petri网模型中的库所s<sub>i</sub>,库所s<sub>i</sub>的集合形成库所集S,i∈[0,n],初始库所s<sub>0</sub>的token为1,AADL模型中的模式迁移映射为Petri网模型中的变迁t<sub>j</sub>,变迁t<sub>j</sub>的集合形成变迁集T,j∈[1,m];(3)计算Petri网模型的关联矩阵C,关联矩阵C以库所集S<sub>x</sub>变迁集T为序标集,其关联矩阵C的元素C(s<sub>i</sub>,t<sub>j</sub>)=W(t<sub>j</sub>,s<sub>i</sub>)-W(s<sub>i</sub>,t<sub>j</sub>),W(s,t)为(s,t)上的权,W(t,s)为(t,s)上的权;(4)利用Petri网模型的状态方程判断构建的AADL模型运行状态与需求是否一致,具体判断过程如下:1)将需求中的所有状态根据其对应的Petri网模型中库所进行标识,需求中的状态st<sub>i</sub>对应于Petri网模型中库所s<sub>i</sub>,需求中的所有状态迁移根据其对应的Petri网模型中变迁进行标识,需求中的状态迁移tr<sub>j</sub>对应于Petri网模型中变迁t<sub>j</sub>,根据需求列出将st<sub>0</sub>变为st<sub>i</sub>的q个变迁序列T,q≥1;2)对于每一个变迁序列,通过Petri网模型的状态方程M<sub>0</sub>+CU=M计算得到目标状态标识M,根据M中M(st<sub>i</sub>)的值判断AADL模型运行状态与需求是否一致;所述Petri网模型的状态方程为M<sub>0</sub>+CU=M,M<sub>0</sub>为根据需求中的状态确定的初始状态标识向量,<img file="FSA00000484444400021.GIF" wi="368" he="366" />向量元素M<sub>0</sub>(st<sub>i</sub>)为该标识下st<sub>i</sub>处的token值;C为关联矩阵;U为根据需求中的状态迁移确定的变迁标识向量,<img file="FSA00000484444400022.GIF" wi="297" he="379" />其状态元素U(tr<sub>j</sub>)为具体变迁序列中变迁tr<sub>j</sub>对应的标识,当变迁tr<sub>j</sub>发生时U(tr<sub>j</sub>)为1,变迁tr<sub>j</sub>不发生时U(tr<sub>j</sub>)为0;M为Petri网模型的目标状态标识向量,<img file="FSA00000484444400023.GIF" wi="346" he="368" />向量元素M(st<sub>i</sub>)为该标识下st<sub>i</sub>处的token值;根据M中M(st<sub>i</sub>)的值判断AADL模型运行状态与需求是否一致的过程为:设f<sub>p</sub>为第p个变迁序列T<sub>p</sub>转化后的AADL模型运行状态与需求是否一致的标识,p∈[1,q],若第p个变迁序列T<sub>p</sub>中含有导致状态st<sub>i</sub>出现的直接变迁个数与M(st<sub>i</sub>)的值相同,则在第p个变迁序列T<sub>p</sub>下所构建的AADL模型运行状态与需求相一致,置f<sub>p</sub>=1;若第p个变迁序列T<sub>p</sub>中含有导致状态st<sub>i</sub>出现的直接变迁个数与M(st<sub>i</sub>)的值不相同,则在第p个变迁序列T<sub>p</sub>下所构建的AADL模型运行状态与需求不一致,置f<sub>p</sub>=0;设F<sub>i</sub>=f<sub>1</sub>×f<sub>2</sub>×…×f<sub>p</sub>×…×f<sub>q</sub>,若F<sub>i</sub>=1,则从st<sub>0</sub>变为st<sub>i</sub>的q个可行变迁序列T下所构建的AADL模型运行状态与需求相一致;若F<sub>i</sub>=0,则从st<sub>0</sub>变为st<sub>i</sub>的q个可行变迁序列T下所构建的AADL模型运行状态与需求不一致。
地址 100048 北京市海淀区阜成路14号