基于AADL的嵌入式软件可靠性建模与评估方法技术

技术编号:15690793 阅读:131 留言:0更新日期:2017-06-24 03:28
本发明专利技术公开了一种基于AADL的嵌入式软件可靠性建模与评估方法,包括以下步骤:1)建立嵌入式软件的AADL可靠性模型;2)提取AADL可靠性模型中的可靠性元素,采用Z语言建立可靠性模型ZAL,包括故障模型、结构模型和行为模型;3)用离散时间马尔可夫链DTMC刻画ZAL模型,并给出描述嵌入式软件可靠性的PCTL公式,采用提出的可靠性评估算法ZARE对PCTL公式进行计算,得出瞬时可用度,完成可靠性的评估。本发明专利技术不仅可将嵌入式软件分层次表示,简洁清晰,并易于理解,而且ZAL作为形式化模型可以采用模型检测等方法对可靠性进行严格地分析与评估。

Embedded software reliability modeling and evaluation method based on AADL

The invention discloses a AADL embedded software reliability modeling and evaluation method based on AADL includes the following steps: 1) an embedded software reliability model; 2) extracting elements AADL reliability model of reliability, the reliability model of ZAL Z language, including fault model, structure model and behavior model; 3) describe ZAL the model with discrete time Markov chain DTMC, and describes the PCTL formula of embedded software reliability, reliability evaluation algorithm proposed by ZARE to the PCTL formula, the instantaneous availability, reliability evaluation. The invention can not only represent the embedded software in a hierarchical manner, be concise and clear, and be easy to understand, but also can be used as a formal model to analyze and evaluate the reliability of the ZAL model.

【技术实现步骤摘要】
基于AADL的嵌入式软件可靠性建模与评估方法
本专利技术属于可信计算、软件工程、形式化建模与验证领域,具体为提出了一种基于AADL的嵌入式软件可靠性建模与评估方法。
技术介绍
在软件可靠性研究领域中,软件可靠性模型的研究一直占据重要地位,也是成果最丰富的领域。如何尽早建立软件可靠性模型,降低建模的复杂度,使模型能准确的刻画出故障在组件之间的传播关系,是软件可靠性研究工作中的一个重要内容。软件的建模方法主要分为半形式化与形式化两类方法。软件工程中一般使用半形式化的规格说明进行软件结构与行为的描述,具有易于理解和使用等优点。AADL(ArichitectureAnalysisandDesignLanguage,体系结构分析与设计语言)由美国汽车工程师协会SAE(societyofautomotiveengineers)在MetaH、UML的基础上提出。AADL采用单一模型支持多种分析的方式,将系统设计、分析、验证、自动代码生成等关键环节融合于统一框架之下。西北工业大学基于AADL的错误模型附件和危害模型附件建立了安全模型,并转换到GSPN模型对软件的安全性进行分析。NASA喷气推进实验室的MUNOZM建立AADL信息流模型并进行延迟分析,以证明AADL可应用于太空系统的潜力。然而AADL作为一种半形式化语言,不利于对可靠性进行严格的分析与验证。因此,要对AADL形式语义进行拓展研究。对此,一些学者研究总结出两种AADL形式语义描述方法。AADL形式语义描述主要采用转换的方式(translationalsemantics),大致可以分为两类:一是采用一种具有精确语义的形式语言来定义AADL语义,再依据语义进行转换;二是直接将AADL模型转换到另一种形式化模型。我们称前者为显式描述(explicit),可以将不精确的AADL语义形式化,能够更完整地描述语义;称后者一为隐式描述(implicit),目的是为了直接使用语义模型的现有形式化分析工具。现在流行的AADL可靠性建模与验证一般均采用隐式描述。爱荷华州立大学的SunH等人提出将故障树与AADL模型相结合,进行可靠性和安全性分析。荷兰特温特大学的BOUDALIH等人提出了一个可扩展的可靠性评价框架Arcade(architecturaldependabilityevaluation),能够支持包括AADL、UML在内的多种建模语言,将输入模型自动转换到IO-IMC(input/outputinteractiveMarkovchains)模型,然后基于CADP工具进行可靠性分析,并可以进行组合可靠性分析(compositionalanalysis),以支持复杂系统的可靠性需求。但是现有的隐式描述存在着不足:一般现有的方法均假设转换的语义是一致的,但语义描述不可能一致因而不够精确;现有的模型转换技术均是依据AADL已有语义,而AADL中一些语义是用自然语言和例子进行解释的,给出的语义不够精确,可能导致语义转换不够准确与完整。另一方面,现有的模型转换方法也有各自的不足之处:Petri网虽然可以很好地描述大多数异步、并发系统中的动态特性,但其模型容易变得很庞大;故障树的特点是可以全面、形象地描述故障的因果关系,但为其中故障事件添加发生概率来进行定量分析存在较大困难。因此,为了使模型简洁并且可以描述其中的概率因素,本专利技术采用可以严格描述数据约束的Z语言给AADL中可靠性元素作形式化定义,分故障模型、结构模型和行为模型三个层次建模可靠性,使模型变得简洁清晰,易于理解。在Z语言基础上验证软件的性质主要采用模型检测方法。通过对Z语言进行动态语义的扩展,将其与软件行为建模方法相结合,建立软件静态/动态视角相耦合的软件模型,并通过将现有的模型检测方法进行相应的改进,可直接实现Z语言的自动化验证。德国奥尔登堡大学的Hoenicke等人研究了CSP-OZ-DC模型的模型检测方法,提出了一种时间自动机作为中间语言描述了模型的事件与数据约束,并采用一个基于约束的模型检测器ARMC,对模型的通信、数据约束与实时约束进行了验证。巴西伯南布哥州联邦大学的Mota等人将Z语言转换为CSPM模型,采用FDR模型检测器进行了死锁分析。南京航空航天大学的曹子宁提出了有限域ZIA模型上的一种时序逻辑及其模型检测算法,能够针对软件状态和操作规约中的数据约束进行验证。本专利技术在ZAL模型的基础上,考虑到ZAL模型中多种元素存在概率分布属性,提出了一种基于概率模型检测技术的嵌入式软件可靠性评估算法ZARE(ReliabilityEvaluateonZ-AADL),可以严格地分析评估嵌入式软件的可靠性。由于ZAL模型中故障的产生与传播基于概率发生的特性,基于ZAL模型的模型检测方法应当考虑概率因素,而现有的针对Z语言的模型检测方法研究中还未有与概率模型检测相关的研究成果。
技术实现思路
本专利技术的目的在于提供基于AADL的嵌入式软件可靠性建模与评估方法,从而能够以谓词约束的形式对嵌入式软件的可靠性进行描述,便于形式化验证,且具有很好的可扩展性。实现本专利技术目的的技术解决方案为:一种基于AADL的嵌入式软件可靠性建模与评估方法,包括以下步骤:步骤1、建立半形式化模型,具体是建立AADL可靠性模型,包括结构模型与故障模型;其中结构模型包括组件名称、组件属性、连接、流,故障模型包括故障类型、故障行为、故障传播;步骤2、提取AADL可靠性模型中的可靠性建模元素,包括组件名称、连接、流、故障行为、故障传播;步骤3、建立嵌入式软件可靠性模型ZAL,具体是将半形式化模型转换为形式化模型,并对模型进行扩展,补充其操作规约和可靠性约束,包括如下步骤:步骤3-1、将AADL可靠性模型所定义的组件状态、故障行为事件、故障传播点映射至ZAL故障模型ZAerror中的ErrorState、Ebe与Epp集合元素,所述ErrorState集合元素的属性包括一个组件所有可能处于的状态和状态对应的概率分布类型,Ebe集合元素的属性包括事件类型与事件发生的概率分布类型,Epp集合元素的属性包括故障传播的类型与故障传播成功的概率分布类型;步骤3-2、将AADL可靠性模型所定义的组件名称、连接、流映射至ZAL结构模型ZAstructure中的Component、Connection与Flow集合元素,所述Component集合元素的属性包括组件所处状态、组件当前发生的故障行为事件、当前发生的故障传播点,Connection集合元素的属性包括组件之间的连接关系,Flow集合元素的属性包括故障传播所经过的故障传播点;步骤3-3、将AADL可靠性模型所定义的故障传播、状态转移映射至ZAL行为模型ZAbehavior中的OutPropagation、InPropagation与Transition集合元素,所述OutPropagation集合元素的属性包括产生故障的组件名称、故障传播点,InPropagation集合元素的属性包括传入故障的组件名称、组件间的连接、故障传播点,Transition集合元素的属性包括发生状态转移的组件名称、故障行为事件、故障传播点,上述3个元素的发生条件以及条件发生的概率分布在谓词约束中描述;步骤4、在ZAL模型的基础上对可本文档来自技高网
...
基于AADL的嵌入式软件可靠性建模与评估方法

【技术保护点】
一种基于AADL的嵌入式软件可靠性建模与评估方法,其特征在于,包括以下步骤:步骤1、建立半形式化模型,具体是建立AADL可靠性模型,包括结构模型与故障模型;其中结构模型包括组件名称、组件属性、连接、流,故障模型包括故障类型、故障行为、故障传播;步骤2、提取AADL可靠性模型中的可靠性建模元素,包括组件名称、连接、流、故障行为、故障传播;步骤3、建立嵌入式软件可靠性模型ZAL,具体是将半形式化模型转换为形式化模型,并对模型进行扩展,补充其操作规约和可靠性约束,包括如下步骤:步骤3‑1、将AADL可靠性模型所定义的组件状态、故障行为事件、故障传播点映射至ZAL故障模型ZA

【技术特征摘要】
1.一种基于AADL的嵌入式软件可靠性建模与评估方法,其特征在于,包括以下步骤:步骤1、建立半形式化模型,具体是建立AADL可靠性模型,包括结构模型与故障模型;其中结构模型包括组件名称、组件属性、连接、流,故障模型包括故障类型、故障行为、故障传播;步骤2、提取AADL可靠性模型中的可靠性建模元素,包括组件名称、连接、流、故障行为、故障传播;步骤3、建立嵌入式软件可靠性模型ZAL,具体是将半形式化模型转换为形式化模型,并对模型进行扩展,补充其操作规约和可靠性约束,包括如下步骤:步骤3-1、将AADL可靠性模型所定义的组件状态、故障行为事件、故障传播点映射至ZAL故障模型ZAerror中的ErrorState、Ebe与Epp集合元素,所述ErrorState集合元素的属性包括一个组件所有可能处于的状态和状态对应的概率分布类型,Ebe集合元素的属性包括事件类型与事件发生的概率分布类型,Epp集合元素的属性包括故障传播的类型与故障传播成功的概率分布类型;步骤3-2、将AADL可靠性模型所定义的组件名称、连接、流映射至ZAL结构模型ZAstructure中的Component、Connection与Flow集合元素,所述Component集合元素的属性包括组件所处状态、组件当前发生的故障行为事件、当前发生的故障传播点,Connection集合元素的属性包括组件之间的连接关系,Flow集合元素的属性包括故障传播所经过的故障传播点;步骤3-3、将AADL可靠性模型所定义的故障传播、状态转移映射至ZAL行为模型ZAbehavior中的OutPropagation、InPropagation与Transition集合元素,所述OutPropagation集合元素的属性包括产生故障的组件名称、故障传播点,InPropagation集合元素的属性包括传入故障的组件名称、组件间的连接、故障传播点,Transition集合元素的属性包括发生状态转移的组件名称、故障行为事件、故障传播点,上述3个元素的发生条件以及条件发生的概率分布在谓词约束中描述;步骤4、在ZAL模型的基础上对可靠性进行评估,得到可靠性评估结果。2.根据权利要求书1所述的基于AADL的嵌入式软件可靠性建模与评估方法,其特征在于,步骤1中:组件名称是指嵌入式软件中的具体设备、进程、线程与端口的名称;组件属性是指嵌入式软件中的具体设备、进程、线程与端口的属性;连接指组件与组件之间的连接,表示组件间存在控制流或者数据流;流指组件之间信息流传输的路径;故障类型指组件中发生的故障所属的类型,包括服务相关的故障、值相关的故障和时间相关的故障,也可以自己定义故障类型;故障行为定义了故障行为事件、组件状态以及状态转移,组件状态包括正常状态和故障状态;故障传播指故障的发生与向其它组件的传播,定义了故障传播点表示故障传播发生的方向,故障传播点包含传出outgoing、传入incoming两种类型。3.根据权利要求书1所述的基于AADL的嵌入式软件可靠性建模与评估方法,其特征在于,步骤3中嵌入式软件可靠性模型ZAL分为故障模型、结构模型与传播模型三部分,用于对嵌入式软件的结构、行为及其可靠性约束进行描述,其中:(a)ZAL故障模型ZAerror包括故障状态、故障行为事件、故障传播点建模元素,所述元素的概率分布类型包含定值Fixed、泊松分布Poisson与高斯分布Gauss;(b)ZAL结构模型ZAstructure包括组件、连接、流建模元素;(c)ZAL传播模型ZAbehavior包括传出故障、传入故障、状态转移建模元素,以及这些建模元素分别与ZAerror和ZAstructure中各类元素之间的二元关系。4.根据权利要求书1所述的基于AADL的嵌入式软件可靠性建模与评估方法,其特征在于,步骤4在ZAL模型的基础上对可靠性进行评估,具体是对有界域上的ZAL模型中的瞬时可用度进行计算,具体包括以下步骤:步骤4-1、将ZAL模型刻画为一个四元组其中:(1)ST所表示的是系统中有关状态的集合,即ZAL故障模型中的组件状态;(2)表示系统的初始状态,即Z-AADL故障模型中组件状态包含的正常状态;(3)概率函数prob:ST×ST→[0,1],表示状态转移时加诸的概率约束,即ZAL行为模型中的状态转移发生条件的概率分布,概率的值是一个实数值,并且对任意状态s有公式成立,其中s’是s的后继状态,表示状态s到其所有后继状态s’的转移概率之和为1;(4)TRT表示系统中的状态转移的集合,即ZAL行为模型中的状态转移;步骤4-2、将四元组T转换为离散时间马尔可夫链DTMC,所述DTMC为一个六元组M=(SM,Sin,Ap,L,pb,TM),其中:(1)SM是有限状态集合;(2)Sin∈SM是初始状态;(3)Ap是有限的原子命题集合;(4)L:SM→2Ap是标记函数;(5)pb:SM×SM→[0...

【专利技术属性】
技术研发人员:庄毅刘维维顾晶晶李蜜胡镡文张倩雯叶彤
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1