发明名称 一种复杂软件系统可信性评估集成方法
摘要 一种复杂软件系统可信性评估集成方法,包括以下步骤:A.分析复杂软件系统结构并建立结构相依性图;B.确定先验指标和评估指标;C.计算底层基础软件单元可信性并修正;D.计算中间软件单元可信性并修正;E.迭代步骤D中方法,按照结构相依性图自底向上进行计算,最终获得复杂软件系统整体集成可信性。该方法在对复杂软件系统各个软件单元的可信性进行集成时,利用贝叶斯网络和系统结构相依性图,充分考虑各种因素对可信性集成时的影响,对集成的可信效果进行多重修正,使最终获得的复杂软件系统可信性的评估结果更加客观、精确、合理。
申请公布号 CN104933369A 申请公布日期 2015.09.23
申请号 CN201510289452.0 申请日期 2015.05.29
申请人 中国石油大学(华东) 发明人 李克文;王义龙
分类号 G06F21/57(2013.01)I 主分类号 G06F21/57(2013.01)I
代理机构 代理人
主权项 一种复杂软件系统可信性评估集成方法其特征在于,主要包括以下步骤:A.分析系统结构并建立结构相依性图根据复杂性软件系统各个软件单元之间的功能需求和结构依赖关系,采用自底向上的分析方法对待评估的复杂软件系统的各个软件单元进行结构、功能分析,建立层次结构的系统结构相依性图;B.确定先验指标和评估指标根据待评估的复杂软件系统的实际情况,确定复杂软件系统软件单元可信性评估的先验指标和评估指标:先验指标是一些由功能性、可用性、可靠性、安全性、可维护性、可复用性、实时性等传统可信指标构成,可采用传统的计算方法计算确定,各先验指标可表示为:P(M<sub>p</sub>)={P(M<sub>pi</sub>)|i=1,2,…,n};评估指标主要是通过对软件的可信性相关的开发方式、软件管理和配置因素等进行评估,用于对先验指标进行修正,即软件单元在开发、测试、部署等过程中按照标准要求执行后所提供的功能服务可信概率对自身可信性的影响,通过评估指标的修正,使软件单元可信性度量更加精确、客观,各评估指标可表示为:P(M<sub>e</sub>)={P(M<sub>ei</sub>)|i=1,2,…,n};C.计算底层基础软件单元可信性根据步骤A所建立的系统结构相依性图,利用贝叶斯网络和贝叶斯推理,计算结构相依性图中底层软件单元的可信性,计算方法如下:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>P</mi><mrow><mo>(</mo><mi>D</mi><mo>|</mo><mi>M</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><mi>P</mi><mrow><mo>(</mo><msub><mi>M</mi><mi>e</mi></msub><mo>|</mo><mi>D</mi><mo>)</mo></mrow><mi>P</mi><mrow><mo>(</mo><msub><mi>M</mi><mi>p</mi></msub><mo>)</mo></mrow></mrow><mrow><mi>P</mi><mrow><mo>(</mo><msub><mi>M</mi><mi>e</mi></msub><mo>)</mo></mrow></mrow></mfrac><mi></mi></mrow>]]></math><img file="FDA0000727708750000011.GIF" wi="706" he="169" /></maths>其中,P(D|M)即为修正后的软件单元可信性;P(M<sub>e</sub>)为评估指标满足给定条件的概率;P(M<sub>e</sub>|D)为软件单元可信条件下满足给定条件的概率;P(M<sub>p</sub>)为各个先验指标综合可信值,由于各个先验指标相互独立,因此综合可信值即为各个先验指标可信值的乘积;D.计算中间软件单元可信性根据步骤A所建立的系统结构相依性图,计算中间软件单元的可信性,中间软件单元的可信性除了通过自身的软件单元可信性外,还需要通过其依赖的下层软件单元的条件概率进行修正,以及其他动态因素(网络环境可信性、硬件可信性、资源可信性)进行修正,通过二次修正后,得到中间软件单元可信性,计算方法如下:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>P</mi><mrow><mo>(</mo><mi>D</mi><mo>|</mo><mi>M</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><mi>P</mi><mrow><mo>(</mo><msub><mi>M</mi><mi>e</mi></msub><mo>|</mo><mi>D</mi><mo>)</mo></mrow><mi>P</mi><mrow><mo>(</mo><msub><mi>M</mi><mi>p</mi></msub><mo>)</mo></mrow></mrow><mrow><mi>P</mi><mrow><mo>(</mo><msub><mi>M</mi><mi>e</mi></msub><mo>)</mo></mrow></mrow></mfrac><mi>P</mi><mrow><mo>(</mo><mi>D</mi><mo>|</mo><msub><mi>D</mi><mi>LA</mi></msub><mo>)</mo></mrow><mi>P</mi><mrow><mo>(</mo><mi>D</mi><mo>|</mo><msub><mi>D</mi><mi>TA</mi></msub><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000727708750000021.GIF" wi="1200" he="170" /></maths>其中,P(D|M)即为修正后的中间软件单元可信性;<img file="FDA0000727708750000022.GIF" wi="368" he="137" />为修正前的软件单元自身可信性;P(D|D<sub>LA</sub>)为所依赖的下层基础软件单元可信时该软件单元的可信值,取下层基础软件单元可信值的均值;P(D|D<sub>TA</sub>)为该软件单元该时刻动态因素可信时的可信值,取网络环境可信值D<sub>N</sub>、硬件可信值D<sub>H</sub>和资源可信值D<sub>R</sub>的均值;E.计算复杂软件系统整体集成可信性迭代步骤D中的方法,沿着步骤A中所建立的结构相依性图自底向上进行计算,最终可得到复杂软件系统的整体可信性。
地址 266580 山东省青岛市青岛经济技术开发区长江西路66号