高速列车网络控制系统的软件可靠性检测方法.pdf

上传人:罗明 文档编号:6222725 上传时间:2019-05-22 格式:PDF 页数:13 大小:3.21MB
返回 下载 相关 举报
摘要
申请专利号:

CN201210333675.9

申请日:

2012.09.10

公开号:

CN103678101A

公开日:

2014.03.26

当前法律状态:

驳回

有效性:

无权

法律详情:

发明专利申请公布后的驳回IPC(主分类):G06F 11/36申请公布日:20140326|||实质审查的生效IPC(主分类):G06F 11/36申请日:20120910|||公开

IPC分类号:

G06F11/36

主分类号:

G06F11/36

申请人:

中国科学院软件研究所

发明人:

乔颖; 赵琛; 武斌; 张克铭

地址:

100190 北京市海淀区中关村南四街4号

优先权:

专利代理机构:

北京君尚知识产权代理事务所(普通合伙) 11200

代理人:

余长江

PDF下载: PDF下载
内容摘要

本发明涉及一种检测高速列车网络控制系统的可靠性的方法,通过可靠性测试过程中获取的错误发生时间数据,根据Jelinski-Moranda模型的公式,使用极大似然估计方法获取模型参数,再代入模型公式获得系统的各个可靠性参数的结果来判断系统是否满足可靠性要求。本发明通过测试过程中获取的错误发生时间数据,使用可靠性增长模型推导的公式,可以定量评估软件可靠性的参数,同时可以预计还需要多少测试时间或发现多少问题才能使软件达到可靠性要求,为测试人员或管理人员控制测试进度,把握项目进度提供参考。而且本发明的检测系统与使用的程序设计语言无关。软件系统可靠性的检测与选用什么程序语言来编写软件之间没有直接联系。

权利要求书

权利要求书
1.  一种高速列车网络控制系统的软件可靠性检测方法,其步骤包括:
1)读取列车网络控制系统中的失效数据,所述失效数据包括:当前第几个失效、失效相对时间和用户自定义失效严重级别,并以TXT文本形式保存至本地;
2)对所述失效数据在设定条件下建立可靠性参数的Jelinski-Moranda模型;
3)根据所述模型中任意时刻上单个失效率密度函数和单个失效不可靠度得到该网络控制系统中失效强度函数和失效均值函数;
4)根据极大似然估计法对所述函数中的参数进行估计;
5)将估计值返回所述模型中计算公式,得到可靠性判断参数,检测当前结果是否满足设定的可靠性条件。

2.  如权利要求1所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,所述建立Jelinski-Moranda模型的设定条件为:
2-1)对于软件中未知常数错误总数N 且测试环境与预期的使用环境相同时,该模型构成条件满足:所有失效发生的可能性相同、用户自定义失效的严重性级别相同且相互独立和/或程序的失效率在每个失效间隔时间内是常数;
2-2)若满足步骤2-1)中的设定条件,所述模型构成满足:测试中检测到错误被纠正时排错时间忽略不计且不引入新的错误和/或所述失效率数值正比于程序中残留错误数。

3.  如权利要求1所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,所述Jelinski-Moranda模型中每个失效时间内失效率为:Z(t)=Ф(N-i+1),其中Ф是单个失效的失效率,t是第i-1次失效至第i次失效的时间间隔。

4.  如权利要求3所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,根据所述每个失效时间内失效率Z(t)得到:单个失效的不可靠度Fa(t)=1-exp(-Фt)、单个失效率密度函数fa(t)=Фexp(-Фt)、单个失效率Za(t)=Ф。

5.  如权利要求1所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,所述极大似然估计法中基于失效间隔时间x=(x1,x2,……xn)的给定子样本,建立总错误数N和单个失效率Ф的似然函数。

6.  如权利要求1所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,所述估计值返回所述模型计算公式中可靠性判断参数包括:
可靠度R(t)=exp[-Ф(N-i+1)t;失效率Z(t)=Ф(N-i+1)和平均失效间隔时间其中,t为第i-1次失效至第i次失效之间任一时刻,N为错误总数,i为0到N之间的任意整数,表示当前发现的第几个失效数据。

7.  如权利要求6所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,对所述模型计算公式中失效率Z(t)和R(t)设为已知量,得到检测软件可靠性需要的测试时间t和发现的失效数据i。

8.  如权利要求1所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,所述检测当前结果是否满足可靠性条件的参数为:一类故障,MDBF=400.000km;二类故障,MDBF=100.000km。

9.  如权利要求1所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,所述失效数据的时间单位取分、秒、小时。

10.  如权利要求1所述的高速列车网络控制系统的软件可靠性检测方法,其特征在于,所述失效数据中故障类型分为软件故障和硬件故障。

说明书

说明书高速列车网络控制系统的软件可靠性检测方法
技术领域
本发明涉及软件的可靠性检测技术,特别涉及能够针对高速列车网络控制系统给出定量的可靠性指标来检测高速列车网络控制系统的可靠性的方法。 
背景技术
软件是当今世界发展最为迅速的产业,然而由此也带来了一个十分困难的问题——软件的质量与可靠性问题。软件规模的快速膨胀,使其质量难以保证。20世纪70年代引发的软件危机,促成了软件工程的诞生。 
高速列车网络控制系统是软件密集型系统,软件的质量和可靠性至关重要。随着计算机软硬件技术的飞速发展,为满足现代列车技术发展的需要,高速列车大量使用计算机系统,许多计算机系统对于保证列车运行的可靠性、安全性起着至关重要的作用。而作为其核心部分的计算机软件的质量也日益受到人们的关注。由于计算机软件缺陷导致的系统失效可能导致灾难性后果。 
软件产品的三个重要特性是质量、费用和进度。提出软件工程的目的就是要在一定的费用和进度限制下,开发出高质量的软件产品。对费用、进度的度量十分容易,但是对软件质量的度量却十分困难,但却非常重要。 
软件质量包括六个特性:功能性、可靠性、易用性、效率、维护性和可移植性。其中软件可靠性是最重要的特性,也是最易定量度量的特性。 
软件的可靠程度需用软件可靠性度量来表示,通过量化指标来考核软件可靠性水平,常用参数包括:可靠度、失效率和平均失效间隔时间等。各个参数定义如下: 
(1)可靠度 
软件可靠度R是指软件在规定的条件下,规定的时间段内完成预定的功能的概率。或者说是软件在预定时间内无失效发生的概率。 
设规定的时间段为t0,软件发生失效的时间为ξ,则: 
可靠度         R(t0)=p(ξ>t0) 
不可靠度       F(t0)=1-R(t0)=P(ξ≤t0) 
失效密度函数   f(t)=dF(t)/dt 
(2)失效率和失效强度 
失效率是指在t时刻尚未发生失效的情况下,在t时刻单位时间内发生失效的概率。 
Z(t)=limΔt&RightArrow;0P(t<ξ<t+Δt|ξ>t)Δt=f(t)R(t)]]>
失效强度:假设软件在t时刻发生的失效数为M(t),显然M(t)是一个随机数,且随时间t的变化而不同,即{M(t),t>0}为一随机过程。设μ(t)为随机变量M(t)的均值,即有μ(t)=E[M(t)],则λ(t)=dμ(t)/dt为t时刻的失效强度。 
失效率和失效强度是两个不同的概念,但密切相关。失效率(failure rate)有时也被翻译成故障率,其定义和硬件可靠性中失效率定义一致,是基于寿命的观点给出的,是一个条件概率密度。而失效强度是基于随机过程定义的,是失效数均值的变化率。硬件可靠性中失效率用λ表示,而在软件可靠性中,λ用来表示失效强度。为了区别,失效率用Z表示。有些文献中,也将失效率称为危险率(hazard rate)。 
某些情况下,软件失效率和失效强度相等,可以相互通用。{M(t),t>0}为一泊松过程时,条件失效率函数Z(Δt|ti)和失效强度函数λ(Δt+ti)是相同的;如果在稳定使用软件、且不对软件作任何修改的条件下,软件的失效强度应为一个常值,且:λ=Z=常值,这时{M(t),t>0}为一齐次泊松过程。本发明中,失效率和失效强度不作区别。 
(3)平均失效前时间MTTF/平均失效间隔时间MTBF 
MTTF是指当前时间到下一次失效时间的均值。MTBF是指两次相邻失效时间间隔的均值。在硬件可靠性中,MTTF用于不可修复产品,MTBF用于可修复产品;对于软件不能简单地用同样概念区分,因为软件中不存在不可修复的失效。软件中二者差异在于研究的事件对象是TTF还是TBF。TTF是指从当前时间开始运行软件到出现下次失效的时间,而TBF是指上次失效到下一次失效的时间间隔,该时间间隔严格的说出了包括重新启动系统直到下一次发生失效的时间外,还应包括重新启动系统之前的诸如失效处理等工作时间。但这一部分时间在整个程序运行时间中一般占相当小的比例,如果不考虑这一部分的工作时间的话,TTF和TBF是完全一致的。本发明中不区分两个概念,可以相互通用。 
现有技术中,高速列车网络控制系统明确要求的系统可靠性参数及计算方法有以下几个: 
1.失效率λ(故障率) 
通过故障发生的次数x与所考虑相同单元的数量n和对应观测时间的关系,计算与时间相关的故障率: 
λs=xn*t]]>
即对某一系统进行测试时,可选取n个该系统同时进行测试,记录n个系统总的测试时间t与故障发生次数x,代入上述公式。 
通过故障发生的次数x与所考虑相同单元的数量n和对应观测里程的关系,计算与里程相关的故障率: 
λs=xn*s]]>
2.MTBF/MDBF(平均故障里程) 
假定一种故障情况是对时间的常量,则利用下面公式计算MTBF: 
MTBF=1λs]]>
同理求得MDBF:   MDBF=1λs]]>
通过平均速度VD,可以将时间相关可靠性参数和里程相关可靠性参数相互转换。 
VD=s/t 
其中S为平均运行里程,t为平均运行时间。 
MDBF=MTBF×VD
λs=λtVD]]>
要求的可靠性指标为: 
对于1类故障,MDBF=400.000km;对于2类故障,MDBF=100.000km。 
发明内容
如果使用上述公式的检测方法由于需要完成可靠性完全测试,耗费大量的时间与人力物力,为了解决现有技术中的不足,本方法提供一种新的面向高速列车网络控制系统进行可靠性检测的方法,通过可靠性测试过程中获取的错误发生时间数据,根据Jelinski-Moranda模型的公式,使用极大似然估计方法获取模型参数,再代入模型公式获得系统的各个可靠性参数的结果来判断系统是否满足可靠性要求。 
为了实现上述目的,本发明采用Jelinski-Moranda模型的原因是由于该模型假设条件与 原有要求的假设条件一致,都是假设故障是对时间的常量。此方法可以在某些条件下代替原有公式检测方法,节约大量的时间与人力物力,提高效率。关于Jelinski-Moranda模型的详细介绍,可参考《Handbook of Software Reliability Engineering》第三章或其它相关文献;关于极大似然估计方法的详细介绍,可参考清华大学出版社出版的《概率论与数理统计》第7章或其它关于概率统计的教材。 
本发明面向高速列车网络控制系统的软件可靠性检测方法,其步骤包括: 
1)读取列车网络控制系统中的失效数据,所述失效数据包括:当前第几个失效、失效相对时间和用户自定义失效严重级别,并以TXT文本形式保存至本地; 
2)对所述失效数据在设定条件下建立可靠性参数的Jelinski-Moranda模型; 
3)根据所述模型中任意时刻上单个失效率密度函数和单个失效不可靠度得到该网络控制系统中失效强度函数和失效均值函数; 
4)根据极大似然估计法对所述函数中的参数进行估计; 
5)将估计值返回所述模型中计算公式,得到可靠性判断参数,检测当前结果是否满足设定的可靠性条件。 
所述建立Jelinski-Moranda模型的设定条件为: 
2-1)对于软件中未知常数错误总数N且测试环境与预期的使用环境相同时,该模型构成条件满足:所有失效发生的可能性相同、用户自定义失效的严重性级别相同且相互独立和/或程序的失效率在每个失效间隔时间内是常数; 
2-2)若满足步骤2-1)中的设定条件,所述模型构成满足:测试中检测到错误被纠正时排错时间忽略不计且不引入新的错误和/或所述失效率数值正比于程序中残留错误数。 
所述Jelinski-Moranda模型中每个失效时间内失效率为:Z(t)=Ф(N-i+1),其中Ф是单个失效的失效率,t是第i-1次失效至第i次失效的时间间隔。 
根据所述每个失效时间内失效率Z(t)得到:单个失效的不可靠度Fa(t)=1-exp(-Фt)、单个失效率密度函数fa(t)=Фexp(-Фt)、单个失效率Za(t)=Ф。 
所述极大似然估计法中基于失效间隔时间x=(x1,x2,……xn)的给定子样本,建立总错误数N和单个失效率Ф的似然函数。 
所述估计值返回所述模型计算公式中可靠性判断参数包括: 
可靠度R(t)=exp[-Ф(N-i+1)t];失效率Z(t)=Ф(N-i+1)和平均失效间隔时间 其中,t为第i-1次失效至第i次失效之间任一时刻,N为错误总数,i为0到N之间的任意整数,表示当前发现的第几个失效数据。 
更进一步,对所述模型计算公式中失效率Z(t)和R(t)设为已知量,得到检测软件可靠性需要的测试时间t和发现的失效数据i。 
更进一步,所述检测当前结果是否满足可靠性条件的参数为:一类故障,MDBF=400.000km;二类故障,MDBF=100.000km。 
更进一步,所述失效数据的时间单位取分、秒、小时; 
更进一步,所述失效数据中故障类型分为软件故障和硬件故障。 
本发明的技术效果如下: 
本发明通过测试过程中获取的错误发生时间数据,使用可靠性增长模型推导的公式,可以定量评估软件可靠性的参数。 
可以预计还需要多少测试时间或发现多少问题才能使软件达到可靠性要求,为测试人员或管理人员控制测试进度,把握项目进度提供参考。 
可以图形化展示软件可靠性随时间变化的曲线。 
本发明所述检测系统与使用的程序设计语言无关。软件系统可靠性的检测与选用什么程序语言来编写软件之间没有直接联系。同时,也与具体用到的软件开发方法无关。 
附图说明
图1是本发明高速列车网络控制系统的软件可靠性检测方法流程图。 
图2是本发明中一实施例操作步骤流程图。 
图3是本发明一实施例中明软件可靠性检测方法中软件可靠性变化趋势的错误—时间曲线关系图。 
具体实施方式
发明原理 
如图1所示高速列车网络控制系统的软件可靠性检测方法流程图,包括如下步骤: 
读取失效数据文本文件,将失效数据导入到系统中,为模型分析提供数据。本方法中,失效数据文件以txt文本形式保存在硬盘中,本方法提供文本读取程序来读取文件。失效数据内容包括失效为当前第几个失效,失效相对时间以及失效的严重级别。其中前两项数据内 容为软件可靠性工程中定义的必要输入数据,第三项为本发明中根据需求自己定义的数据内容,失效级别定义方法如下: 
1类故障:由严重的技术问题引起,列车在到达目的站前必须停车,或出于同样的原因不能按计划发车,需要备用列车或拖车。如不能牵引、压缩空气供应完全故障或空气制动完全故障等; 
2类故障:列车不可能再按目的地时间表继续运行且类车过早的不能正常运营,需要考虑动车组的受限运行,但不需要拖动车辆。如牵引性能降到50%、火警系统完全故障、一个转向架的车轮防滑装置故障等; 
3类故障:车辆在最小受限限度下运营,但最高运营速度至少高于100km/h。如供热、通风和空调部分故障; 
4类故障:车辆在不降低最高运营速度的条件下运营。该类故障在预定运营结束后即可修正,对预定运营没有实质性影响。 
根据Jelinski-Moranda模型,建立失效率、可靠度、平均失效间隔时间等可靠性参数的计算公式。 
此模型假设条件如下: 
1)观测开始后软件中的错误总数为N,是一个未知常数; 
2)所有失效发生的可能性相同,相互独立,且失效的严重性级别相同; 
3)测试中检测到的错误立刻被纠正,排错时间忽略不计,且不引入新的错误; 
4)程序的失效率在每个失效间隔时间内是常数,其数值正比于程序中残留的错误数,在第i个测试区间内,失效率为:Z(Xi)=Ф(N-i+1),其中Ф是一比例常数,为单个失效的失效率,Xi为第i-1次失效至第i次失效的时间间隔,是一个随机变量; 
5)软件的测试环境与预期的使用环境相同。 
在本发明中由于并不能确认软件是否满足如上条件,所以先假设软件满足以上所有条件,然后进行推导计算,将模型计算结果与测试获取的真实结果比较,如果比较结果接近则可认为软件基本满足假设条件,可以使用本方法的检测结果。 
设t为第i-1次失效至第i次失效之间的任一时刻,由失效率: 
Z(t)=f(t)R(t)=F(t)R(t)=-R(t)R(t)=Φ(N-i+1)]]>
其中,f(t)为失效密度函数,R(t)为可靠度。 
&Integral;0tZ(x)dx=&Integral;0t-R(x)R(x)dx=&Integral;0t-d[lnR(x)]=-lnR(t)]]>
其中,t为第i-1次失效至第i次失效之间的任一时刻, 
通过对z(x)积分推导出其与可靠度R(t)的关系式,从而获取下面可靠度的公式。N为假设第一条中提到的错误总数,i为0到N之间的任意整数,表示当前发现的第几个失效。 
可得 
R(t)=exp[-&Integral;0tZ(x)dx]=exp[-Φ(N-i+1)t]]]>
F(t)=1-exp[-Ф(N-i-1)t] 
f(t)=Ф(N-i+1)exp [-Ф(N-i-1)t] 
MTTF=&Integral;0&Proportional;R(t)dt=-1Φ(N-i+1)exp[-Φ(N-i+1)t]|0&Proportional;=1Φ(N-i+1)]]>
由上面推导可知失效率为常数时,失效时间服从指数分布,MTTB(或MTBF)与失效率为倒数关系,此种假设与项目中指标假设是一致的。 
对此模型,单个失效的不可靠度Fa(t)=1-exp (-Фt)、失效率密度函数fa(t)=Фexp(-Фt)、失效率Za(t)=Ф对所有失效都相同。由单独的失效率密度可以得到累积失效强度: 
λ(t)=Nfa(t)=NФexp(-Фt)
同理可得累积失效数的均值函数: 
μ(t)=NFa(t)=N[1-exp(-Фt)] 
由以上公式可知,如果我们能知道N和Ф的值,就可以得到我们关心的可靠性参数值。而实际中我们无法得到总错误数N和比例常数Ф的真实值,因此需要选用一定的方法得到它们的估计值。本发明中选用极大似然估计法来获得估计值。 
极大似然估计法的步骤如下: 
1)写出似然函数。设密度函数为f(x;θ),且x=(x1,x2,......xn)是一个给定的子样本,则似然函数为: 
L(θ;x)=Πi=1nf(xi;θ)]]>
2)对似然函数取对数后求导,得到似然方程: 
&PartialD;lnL(θ;x)&PartialD;θ=0]]>
在此模型中如果测试得到失效间隔时间为x1,X2,......xn,则N和Ф的似然函数为: 
L(N,Φ)=Πi=1nΦ(N-i+1)exp[-Φ(N-i+1)xi]]]>
求解 
&PartialD;lnL(N,Φ)&PartialD;N=0]]>&PartialD;lnL(N,Φ)&PartialD;Φ=0]]>
得 
Φ^=nN^(Σi=1nxi)-Σi=1n(i-1)xi]]>
Σi=1n1N^-(i-1)=nN^(1/Σi=1nxi)(Σi=1n(i-1)xi)]]>
当    时似然方程无合理解,    时有唯一合理解。 
将得到的估计值代入Z(t)、R(t)、MTTF等参数的计算公式,即可求得这些参数的估计值。 
如果当前计算结果没有达到要求的指标,(如前文提到一类故障要求MDBF为400.000)当前结果不能满足可靠性要求,本发明可以对还需多少测试时间或发现多少问题才能达到要求可靠性水平等进行预测,并图形化展示可靠性随测试时间的变化趋势。即在前面公式中将失效率、可靠性指标作为已知量代入公式,反过来计算公式中的i和t。 
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,所用实例可使用C#、JAVA、C++等开发的程序进行模拟。 
如图2所示是本发明高速列车网络控制系统的软件可靠性检测方法操作步骤流程图下面举例具体说明本系统技术方案。下表所示为某系统测试结果,共记录测试得到的8个故障的 信息。第一列表示故障间隔时间,即本故障发生时距上一故障发生的时间,时间单位可以根据实际情况取分、秒、小时等;第二列表示故障类型,“0”表示故障为软件故障,“1”表示故障为硬件故障,由于本系统专门进行软件系统的可靠性检测,因此无特殊情况,第二列数据应全部为“0”;第三列表示故障的严重级别,具体分级根据需求划定。 
表1 
  列1   列2   列3   1.00000   0   1   1.50000   0   2   2.00000   0   3   2.50000   0   1   2.50000   0   1   3.00000   0   1   4.00000   0   2   6.00000   0   1
将上表1测试数据作为输入,根据本发明中提到的方法,首先通过极大似然估计法估算出比例常数Ф和总失效数N,如下表2模型分析结果所示,Ф的值0.0898,N的值为9,再将Ф和N的值代入Jelinski-Moranda模型所推导出的公式中,即可得到各个可靠性指标参数值。具体结果可见下表2。 
表2 
  可靠性参数   计算结果   比例常数   0.08098   初始失效强度函数   0.72986   当前失效强度函数   0.11801   当前平均故障间隔时间   12.19185   当前平均故障间隔里程   2438.36980   总失效数   9   剩余失效数   1
给定预测目标值,同样根据模型公式可以得到相关指标数据,具体结果见下表3预测结果。 
表3 

如图3所示,带*号的曲线为真实测试数据拟合的曲线,不带*号的曲线为模型预测的曲线。曲线横坐标为检测出的失效个数,纵坐标为总的测试时间。第i个失效与第i+1个失效之间的时间差可以认为是在检测到第i个失效后系统当前的平均故障时间。如果两条曲线比较接近,说明模型模拟的效果较好,可以认为被测系统符合模型假设,可以使用模型的检测结果。 

高速列车网络控制系统的软件可靠性检测方法.pdf_第1页
第1页 / 共13页
高速列车网络控制系统的软件可靠性检测方法.pdf_第2页
第2页 / 共13页
高速列车网络控制系统的软件可靠性检测方法.pdf_第3页
第3页 / 共13页
点击查看更多>>
资源描述

《高速列车网络控制系统的软件可靠性检测方法.pdf》由会员分享,可在线阅读,更多相关《高速列车网络控制系统的软件可靠性检测方法.pdf(13页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103678101 A (43)申请公布日 2014.03.26 CN 103678101 A (21)申请号 201210333675.9 (22)申请日 2012.09.10 G06F 11/36(2006.01) (71)申请人 中国科学院软件研究所 地址 100190 北京市海淀区中关村南四街 4 号 (72)发明人 乔颖 赵琛 武斌 张克铭 (74)专利代理机构 北京君尚知识产权代理事务 所 ( 普通合伙 ) 11200 代理人 余长江 (54) 发明名称 高速列车网络控制系统的软件可靠性检测方 法 (57) 摘要 本发明涉及一种检测高速列车网络控制系统 的。

2、可靠性的方法, 通过可靠性测试过程中获取的 错误发生时间数据, 根据 Jelinski-Moranda 模型 的公式, 使用极大似然估计方法获取模型参数, 再 代入模型公式获得系统的各个可靠性参数的结果 来判断系统是否满足可靠性要求。本发明通过测 试过程中获取的错误发生时间数据, 使用可靠性 增长模型推导的公式, 可以定量评估软件可靠性 的参数, 同时可以预计还需要多少测试时间或发 现多少问题才能使软件达到可靠性要求, 为测试 人员或管理人员控制测试进度, 把握项目进度提 供参考。而且本发明的检测系统与使用的程序设 计语言无关。软件系统可靠性的检测与选用什么 程序语言来编写软件之间没有直接联系。

3、。 (51)Int.Cl. 权利要求书 2 页 说明书 8 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书8页 附图2页 (10)申请公布号 CN 103678101 A CN 103678101 A 1/2 页 2 1. 一种高速列车网络控制系统的软件可靠性检测方法, 其步骤包括 : 1) 读取列车网络控制系统中的失效数据, 所述失效数据包括 : 当前第几个失效、 失效相 对时间和用户自定义失效严重级别, 并以 TXT 文本形式保存至本地 ; 2) 对所述失效数据在设定条件下建立可靠性参数的 Jelinski-Moranda 模型 ; 3。

4、) 根据所述模型中任意时刻上单个失效率密度函数和单个失效不可靠度得到该网络 控制系统中失效强度函数和失效均值函数 ; 4) 根据极大似然估计法对所述函数中的参数进行估计 ; 5) 将估计值返回所述模型中计算公式, 得到可靠性判断参数, 检测当前结果是否满足 设定的可靠性条件。 2. 如权利要求 1 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 所述建立 Jelinski-Moranda 模型的设定条件为 : 2-1) 对于软件中未知常数错误总数 N 且测试环境与预期的使用环境相同时, 该模型构 成条件满足 : 所有失效发生的可能性相同、 用户自定义失效的严重性级别相同且相互独。

5、立 和 / 或程序的失效率在每个失效间隔时间内是常数 ; 2-2) 若满足步骤 2-1) 中的设定条件, 所述模型构成满足 : 测试中检测到错误被纠正时 排错时间忽略不计且不引入新的错误和 / 或所述失效率数值正比于程序中残留错误数。 3. 如权利要求 1 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 所述Jelinski-Moranda模型中每个失效时间内失效率为 : Z(t)=(N-i+1), 其中是单个 失效的失效率, t 是第 i-1 次失效至第 i 次失效的时间间隔。 4. 如权利要求 3 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 根据所述每个。

6、失效时间内失效率Z(t)得到 : 单个失效的不可靠度Fa(t)1-exp(-t)、 单 个失效率密度函数 fa(t)=exp(-t)、 单个失效率 Za(t)=。 5. 如权利要求 1 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 所述极大似然估计法中基于失效间隔时间 x (x1,x2,xn) 的给定子样本, 建立总错误 数 N 和单个失效率 的似然函数。 6. 如权利要求 1 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 所述估计值返回所述模型计算公式中可靠性判断参数包括 : 可 靠 度 R(t)=exp-(N-i+1)t ; 失 效 率 Z(t)=(N-。

7、i+1) 和 平 均 失 效 间 隔 时 间 其中, t 为第 i-1 次失效至第 i 次失效之间任一时刻, N 为错误总数, i 为 0 到 N 之间的任意整数, 表示当前发现的第几个失效数据。 7. 如权利要求 6 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 对所述模型计算公式中失效率 Z(t) 和 R(t) 设为已知量, 得到检测软件可靠性需要的测试 时间 t 和发现的失效数据 i。 8. 如权利要求 1 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 所述检测当前结果是否满足可靠性条件的参数为 : 一类故障, MDBF=400.000km ; 二类故。

8、障, MDBF=100.000km。 9. 如权利要求 1 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 所述失效数据的时间单位取分、 秒、 小时。 权 利 要 求 书 CN 103678101 A 2 2/2 页 3 10. 如权利要求 1 所述的高速列车网络控制系统的软件可靠性检测方法, 其特征在于, 所述失效数据中故障类型分为软件故障和硬件故障。 权 利 要 求 书 CN 103678101 A 3 1/8 页 4 高速列车网络控制系统的软件可靠性检测方法 技术领域 0001 本发明涉及软件的可靠性检测技术, 特别涉及能够针对高速列车网络控制系统给 出定量的可靠性指标来。

9、检测高速列车网络控制系统的可靠性的方法。 背景技术 0002 软件是当今世界发展最为迅速的产业, 然而由此也带来了一个十分困难的问 题软件的质量与可靠性问题。软件规模的快速膨胀, 使其质量难以保证。20 世纪 70 年 代引发的软件危机, 促成了软件工程的诞生。 0003 高速列车网络控制系统是软件密集型系统, 软件的质量和可靠性至关重要。随着 计算机软硬件技术的飞速发展, 为满足现代列车技术发展的需要, 高速列车大量使用计算 机系统, 许多计算机系统对于保证列车运行的可靠性、 安全性起着至关重要的作用。 而作为 其核心部分的计算机软件的质量也日益受到人们的关注。 由于计算机软件缺陷导致的系统。

10、 失效可能导致灾难性后果。 0004 软件产品的三个重要特性是质量、 费用和进度。提出软件工程的目的就是要在一 定的费用和进度限制下, 开发出高质量的软件产品。对费用、 进度的度量十分容易, 但是对 软件质量的度量却十分困难, 但却非常重要。 0005 软件质量包括六个特性 : 功能性、 可靠性、 易用性、 效率、 维护性和可移植性。其中 软件可靠性是最重要的特性, 也是最易定量度量的特性。 0006 软件的可靠程度需用软件可靠性度量来表示, 通过量化指标来考核软件可靠性水 平, 常用参数包括 : 可靠度、 失效率和平均失效间隔时间等。各个参数定义如下 : 0007 (1) 可靠度 0008 。

11、软件可靠度 R 是指软件在规定的条件下, 规定的时间段内完成预定的功能的概 率。或者说是软件在预定时间内无失效发生的概率。 0009 设规定的时间段为 t0, 软件发生失效的时间为 , 则 : 0010 可靠度 R(t0)=p( t0) 0011 不可靠度 F(t0) 1-R(t0) P( t0) 0012 失效密度函数 f(t) dF(t)/dt 0013 (2) 失效率和失效强度 0014 失效率是指在 t 时刻尚未发生失效的情况下, 在 t 时刻单位时间内发生失效的概 率。 0015 0016 失效强度 : 假设软件在 t 时刻发生的失效数为 M(t) , 显然 M(t) 是一个随机数,。

12、 且随时间 t 的变化而不同, 即 M(t) , t 0 为一随机过程。设 (t) 为随机变量 M(t) 的均值, 即有 (t)=EM(t) , 则 (t)=d(t)/dt 为 t 时刻的失效强度。 0017 失效率和失效强度是两个不同的概念, 但密切相关。失效率 (failure rate) 有时 说 明 书 CN 103678101 A 4 2/8 页 5 也被翻译成故障率, 其定义和硬件可靠性中失效率定义一致, 是基于寿命的观点给出的, 是 一个条件概率密度。而失效强度是基于随机过程定义的, 是失效数均值的变化率。硬件可 靠性中失效率用 表示, 而在软件可靠性中, 用来表示失效强度。为了。

13、区别, 失效率用 Z 表示。有些文献中, 也将失效率称为危险率 (hazard rate) 。 0018 某些情况下, 软件失效率和失效强度相等, 可以相互通用。M(t) , t 0 为一泊 松过程时, 条件失效率函数Z(t|ti)和失效强度函数(t+ti)是相同的 ; 如果在稳定使 用软件、 且不对软件作任何修改的条件下, 软件的失效强度应为一个常值, 且 : =Z= 常值, 这时 M(t) , t 0 为一齐次泊松过程。本发明中, 失效率和失效强度不作区别。 0019 (3) 平均失效前时间 MTTF/ 平均失效间隔时间 MTBF 0020 MTTF 是指当前时间到下一次失效时间的均值。M。

14、TBF 是指两次相邻失效时间间隔 的均值。 在硬件可靠性中, MTTF用于不可修复产品, MTBF用于可修复产品 ; 对于软件不能简 单地用同样概念区分, 因为软件中不存在不可修复的失效。软件中二者差异在于研究的事 件对象是 TTF 还是 TBF。TTF 是指从当前时间开始运行软件到出现下次失效的时间, 而 TBF 是指上次失效到下一次失效的时间间隔, 该时间间隔严格的说出了包括重新启动系统直到 下一次发生失效的时间外, 还应包括重新启动系统之前的诸如失效处理等工作时间。但这 一部分时间在整个程序运行时间中一般占相当小的比例, 如果不考虑这一部分的工作时间 的话, TTF 和 TBF 是完全一。

15、致的。本发明中不区分两个概念, 可以相互通用。 0021 现有技术中, 高速列车网络控制系统明确要求的系统可靠性参数及计算方法有以 下几个 : 0022 1. 失效率 (故障率) 0023 通过故障发生的次数 x 与所考虑相同单元的数量 n 和对应观测时间的关系, 计算 与时间相关的故障率 : 0024 0025 即对某一系统进行测试时, 可选取n个该系统同时进行测试, 记录n个系统总的测 试时间 t 与故障发生次数 x, 代入上述公式。 0026 通过故障发生的次数 x 与所考虑相同单元的数量 n 和对应观测里程的关系, 计算 与里程相关的故障率 : 0027 0028 2.MTBF/MDB。

16、F(平均故障里程) 0029 假定一种故障情况是对时间的常量, 则利用下面公式计算 MTBF : 0030 0031 同理求得 MDBF : 0032 通过平均速度 VD, 可以将时间相关可靠性参数和里程相关可靠性参数相互转换。 0033 VD s/t 0034 其中 S 为平均运行里程, t 为平均运行时间。 0035 MDBF MTBFVD 说 明 书 CN 103678101 A 5 3/8 页 6 0036 0037 要求的可靠性指标为 : 0038 对于 1 类故障, MDBF=400.000km ; 对于 2 类故障, MDBF=100.000km。 发明内容 0039 如果使用上。

17、述公式的检测方法由于需要完成可靠性完全测试, 耗费大量的时 间与人力物力, 为了解决现有技术中的不足, 本方法提供一种新的面向高速列车网络控 制系统进行可靠性检测的方法, 通过可靠性测试过程中获取的错误发生时间数据, 根据 Jelinski-Moranda 模型的公式, 使用极大似然估计方法获取模型参数, 再代入模型公式获 得系统的各个可靠性参数的结果来判断系统是否满足可靠性要求。 0040 为了实现上述目的, 本发明采用 Jelinski-Moranda 模型的原因是由于该模 型假设条件与 原有要求的假设条件一致, 都是假设故障是对时间的常量。此方法可 以在某些条件下代替原有公式检测方法, 。

18、节约大量的时间与人力物力, 提高效率。关 于 Jelinski-Moranda 模型的详细介绍, 可参考 Handbook of Software Reliability Engineering 第三章或其它相关文献 ; 关于极大似然估计方法的详细介绍, 可参考清华大 学出版社出版的 概率论与数理统计 第 7 章或其它关于概率统计的教材。 0041 本发明面向高速列车网络控制系统的软件可靠性检测方法, 其步骤包括 : 0042 1) 读取列车网络控制系统中的失效数据, 所述失效数据包括 : 当前第几个失效、 失 效相对时间和用户自定义失效严重级别, 并以 TXT 文本形式保存至本地 ; 004。

19、3 2) 对所述失效数据在设定条件下建立可靠性参数的 Jelinski-Moranda 模型 ; 0044 3) 根据所述模型中任意时刻上单个失效率密度函数和单个失效不可靠度得到该 网络控制系统中失效强度函数和失效均值函数 ; 0045 4) 根据极大似然估计法对所述函数中的参数进行估计 ; 0046 5) 将估计值返回所述模型中计算公式, 得到可靠性判断参数, 检测当前结果是否 满足设定的可靠性条件。 0047 所述建立 Jelinski-Moranda 模型的设定条件为 : 0048 2-1) 对于软件中未知常数错误总数 N 且测试环境与预期的使用环境相同时, 该模 型构成条件满足 : 所。

20、有失效发生的可能性相同、 用户自定义失效的严重性级别相同且相互 独立和 / 或程序的失效率在每个失效间隔时间内是常数 ; 0049 2-2) 若满足步骤 2-1) 中的设定条件, 所述模型构成满足 : 测试中检测到错误被纠 正时排错时间忽略不计且不引入新的错误和 / 或所述失效率数值正比于程序中残留错误 数。 0050 所述 Jelinski-Moranda 模型中每个失效时间内失效率为 : Z(t)=(N-i+1), 其中 是单个失效的失效率, t 是第 i-1 次失效至第 i 次失效的时间间隔。 0051 根据所述每个失效时间内失效率 Z(t) 得到 : 单个失效的不可靠度 Fa(t) 1。

21、-exp(-t)、 单个失效率密度函数 fa(t)=exp(-t)、 单个失效率 Za(t)=。 0052 所述极大似然估计法中基于失效间隔时间 x (x1,x2,xn) 的给定子样本, 建 立总错误数 N 和单个失效率 的似然函数。 说 明 书 CN 103678101 A 6 4/8 页 7 0053 所述估计值返回所述模型计算公式中可靠性判断参数包括 : 0054 可靠度 R(t)=exp-(N-i+1)t ; 失效率 Z(t)=(N-i+1) 和平均失效间隔时间 其中, t 为第 i-1 次失效至第 i 次失效之间任一时刻, N 为错误总数, i 为 0 到 N 之间的任意整数, 表示。

22、当前发现的第几个失效数据。 0055 更进一步, 对所述模型计算公式中失效率Z(t)和R(t)设为已知量, 得到检测软件 可靠性需要的测试时间 t 和发现的失效数据 i。 0056 更进一步, 所述检测当前结果是否满足可靠性条件的参数为 : 一类故障, MDBF=400.000km ; 二类故障, MDBF=100.000km。 0057 更进一步, 所述失效数据的时间单位取分、 秒、 小时 ; 0058 更进一步, 所述失效数据中故障类型分为软件故障和硬件故障。 0059 本发明的技术效果如下 : 0060 本发明通过测试过程中获取的错误发生时间数据, 使用可靠性增长模型推导的公 式, 可以。

23、定量评估软件可靠性的参数。 0061 可以预计还需要多少测试时间或发现多少问题才能使软件达到可靠性要求, 为测 试人员或管理人员控制测试进度, 把握项目进度提供参考。 0062 可以图形化展示软件可靠性随时间变化的曲线。 0063 本发明所述检测系统与使用的程序设计语言无关。 软件系统可靠性的检测与选用 什么程序语言来编写软件之间没有直接联系。同时, 也与具体用到的软件开发方法无关。 附图说明 0064 图 1 是本发明高速列车网络控制系统的软件可靠性检测方法流程图。 0065 图 2 是本发明中一实施例操作步骤流程图。 0066 图 3 是本发明一实施例中明软件可靠性检测方法中软件可靠性变化。

24、趋势的错 误时间曲线关系图。 具体实施方式 0067 发明原理 0068 如图 1 所示高速列车网络控制系统的软件可靠性检测方法流程图, 包括如下步 骤 : 0069 读取失效数据文本文件, 将失效数据导入到系统中, 为模型分析提供数据。 本方法 中, 失效数据文件以 txt 文本形式保存在硬盘中, 本方法提供文本读取程序来读取文件。失 效数据内容包括失效为当前第几个失效, 失效相对时间以及失效的严重级别。其中前两项 数据内 容为软件可靠性工程中定义的必要输入数据, 第三项为本发明中根据需求自己定 义的数据内容, 失效级别定义方法如下 : 0070 1 类故障 : 由严重的技术问题引起, 列车。

25、在到达目的站前必须停车, 或出于同样的 原因不能按计划发车, 需要备用列车或拖车。 如不能牵引、 压缩空气供应完全故障或空气制 动完全故障等 ; 0071 2 类故障 : 列车不可能再按目的地时间表继续运行且类车过早的不能正常运营, 说 明 书 CN 103678101 A 7 5/8 页 8 需要考虑动车组的受限运行, 但不需要拖动车辆。 如牵引性能降到50%、 火警系统完全故障、 一个转向架的车轮防滑装置故障等 ; 0072 3 类故障 : 车辆在最小受限限度下运营, 但最高运营速度至少高于 100km/h。如供 热、 通风和空调部分故障 ; 0073 4 类故障 : 车辆在不降低最高运营。

26、速度的条件下运营。该类故障在预定运营结束 后即可修正, 对预定运营没有实质性影响。 0074 根据 Jelinski-Moranda 模型, 建立失效率、 可靠度、 平均失效间隔时间等可靠性 参数的计算公式。 0075 此模型假设条件如下 : 0076 1) 观测开始后软件中的错误总数为 N, 是一个未知常数 ; 0077 2) 所有失效发生的可能性相同, 相互独立, 且失效的严重性级别相同 ; 0078 3) 测试中检测到的错误立刻被纠正, 排错时间忽略不计, 且不引入新的错误 ; 0079 4) 程序的失效率在每个失效间隔时间内是常数, 其数值正比于程序中残留的错误 数, 在第 i 个测试。

27、区间内, 失效率为 : Z(Xi) (N-i+1), 其中 是一比例常数, 为单个失 效的失效率, Xi为第 i-1 次失效至第 i 次失效的时间间隔, 是一个随机变量 ; 0080 5) 软件的测试环境与预期的使用环境相同。 0081 在本发明中由于并不能确认软件是否满足如上条件, 所以先假设软件满足以上所 有条件, 然后进行推导计算, 将模型计算结果与测试获取的真实结果比较, 如果比较结果接 近则可认为软件基本满足假设条件, 可以使用本方法的检测结果。 0082 设 t 为第 i-1 次失效至第 i 次失效之间的任一时刻, 由失效率 : 0083 0084 其中, f(t) 为失效密度函数。

28、, R(t) 为可靠度。 0085 0086 其中, t 为第 i-1 次失效至第 i 次失效之间的任一时刻, 0087 通过对 z(x) 积分推导出其与可靠度 R(t) 的关系式, 从而获取下面可靠度的公 式。N 为假设第一条中提到的错误总数, i 为 0 到 N 之间的任意整数, 表示当前发现的第几 个失效。 0088 可得 0089 0090 F(t) 1-exp-(N-i-1)t 0091 f(t) (N-i+1)exp -(N-i-1)t 0092 0093 由上面推导可知失效率为常数时, 失效时间服从指数分布, MTTB(或 MTBF) 与失效 率为倒数关系, 此种假设与项目中指标。

29、假设是一致的。 0094 对此模型, 单个失效的不可靠度 Fa(t) 1-exp (-t)、 失效率密度函数 fa(t) exp(-t)、 失效率 Za(t) 对所有失效都相同。由单独的失效率密度可以得到累积 说 明 书 CN 103678101 A 8 6/8 页 9 失效强度 : 0095 (t) Nfa(t) Nexp(-t) 0096 同理可得累积失效数的均值函数 : 0097 (t) NFa(t) N1-exp(-t) 0098 由以上公式可知, 如果我们能知道 N 和 的值, 就可以得到我们关心的可靠性参 数值。而实际中我们无法得到总错误数 N 和比例常数 的真实值, 因此需要选用。

30、一定的方 法得到它们的估计值。本发明中选用极大似然估计法来获得估计值。 0099 极大似然估计法的步骤如下 : 0100 1) 写出似然函数。设密度函数为 f(x ; ), 且 x (x1, x2, xn) 是一个给定 的子样本, 则似然函数为 : 0101 0102 2) 对似然函数取对数后求导, 得到似然方程 : 0103 0104 在此模型中如果测试得到失效间隔时间为 x1, X2, xn, 则 N 和 的似然函数 为 : 0105 0106 求解 0107 0108 得 0109 0110 0111 当 时似然方程无合理解, 时有唯一合理 解。 0112 将得到的估计值代入 Z(t)、。

31、 R(t)、 MTTF 等参数的计算公式, 即可求得这些参数的 估计值。 0113 如果当前计算结果没有达到要求的指标,(如前文提到一类故障要求 MDBF 为 400.000) 当前结果不能满足可靠性要求, 本发明可以对还需多少测试时间或发现多少问题 才能达到要求可靠性水平等进行预测, 并图形化展示可靠性随测试时间的变化趋势。即在 前面公式中将失效率、 可靠性指标作为已知量代入公式, 反过来计算公式中的 i 和 t。 0114 为了使本发明的目的、 技术方案及优点更加清楚明白, 以下结合附图及实施例, 对 本发明进行进一步详细说明。此处所描述的具体实施例仅用以解释本发明, 并不用于限定 本发明。

32、, 所用实例可使用 C#、 JAVA、 C+ 等开发的程序进行模拟。 说 明 书 CN 103678101 A 9 7/8 页 10 0115 如图 2 所示是本发明高速列车网络控制系统的软件可靠性检测方法操作步骤流 程图下面举例具体说明本系统技术方案。 下表所示为某系统测试结果, 共记录测试得到的8 个故障的 信息。第一列表示故障间隔时间, 即本故障发生时距上一故障发生的时间, 时间 单位可以根据实际情况取分、 秒、 小时等 ; 第二列表示故障类型,“0” 表示故障为软件故障, “1” 表示故障为硬件故障, 由于本系统专门进行软件系统的可靠性检测, 因此无特殊情况, 第二列数据应全部为 “0。

33、” ; 第三列表示故障的严重级别, 具体分级根据需求划定。 0116 表 1 0117 列 1 列 2 列 3 1.00000 0 1 1.50000 0 2 2.00000 0 3 2.50000 0 1 2.50000 0 1 3.00000 0 1 4.00000 0 2 6.00000 0 1 0118 将上表 1 测试数据作为输入, 根据本发明中提到的方法, 首先通过极大似然估计 法估算出比例常数 和总失效数 N, 如下表 2 模型分析结果所示, 的值 0.0898, N 的值为 9, 再将 和 N 的值代入 Jelinski-Moranda 模型所推导出的公式中, 即可得到各个可靠。

34、性 指标参数值。具体结果可见下表 2。 0119 表 2 0120 可靠性参数 计算结果 比例常数 0.08098 初始失效强度函数 0.72986 当前失效强度函数 0.11801 当前平均故障间隔时间 12.19185 当前平均故障间隔里程 2438.36980 总失效数 9 剩余失效数 1 0121 给定预测目标值, 同样根据模型公式可以得到相关指标数据, 具体结果见下表 3 预测结果。 0122 表 3 0123 说 明 书 CN 103678101 A 10 8/8 页 11 0124 如图 3 所示, 带 * 号的曲线为真实测试数据拟合的曲线, 不带 * 号的曲线为模型预 测的曲线。曲线横坐标为检测出的失效个数, 纵坐标为总的测试时间。第 i 个失效与第 i+1 个失效之间的时间差可以认为是在检测到第 i 个失效后系统当前的平均故障时间。如果两 条曲线比较接近, 说明模型模拟的效果较好, 可以认为被测系统符合模型假设, 可以使用模 型的检测结果。 说 明 书 CN 103678101 A 11 1/2 页 12 图 1 说 明 书 附 图 CN 103678101 A 12 2/2 页 13 图 2 图 3 说 明 书 附 图 CN 103678101 A 13 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1