摘 要:分析G-O、DelayedS-shaped、Ohba-Chou及P-N-Z等4个软件可靠性增长模型的特点及适用场景,研究软件失效数据集的可靠性增长趋势分析方法和评价指标,提出一种可靠性增长模型参数计算的优化算法,在理论研究的基础上设计并实现了一款软件可靠性增长模型分析工具(SRGMTool)。以铁路联锁软件记录的失效数据集为例,研究铁路软件可靠性增长模型应用方法,借助SRGMTool,运用4种模型对铁路联锁软件进行可靠性评估,根据实验结果,分析并确定了一种适合该软件的可靠性增长模型,验证了方法的有效性,可为铁路软件可靠性分析和故障预测提供参考。
关键词:软件可靠性增长模型;软件可靠性分析;软件生效数据集;参数计算;铁路运输安全
列车在运营过程中高度依赖软件的可靠性,如果软件瘫痪甚至出现一个小故障,造成的后果可能都是灾难性的[1]。目前,我国列车主要采用按运行里程计划维护的策略,运营和维护费用较高[2],对于突发性或紧急事件的响应效果也比较差,严重时会造成重大经济损失和人员伤亡。
软件可靠性增长模型(SRGM,SoftwareReliabilityGrowthModel)用于软件可靠性的评估和预测[3]。利用SRGM对铁路软件进行可靠性预测,能提前预知故障的发生时间,不但能有效帮助铁路企业控制成本,还能更好地保证行车安全。目前,公开发表的SRGM有100多种,它们的基本假设条件不同、考虑的因素不同,适用性也不同,因此,用它们估测同一款软件,所得结果可能差异较大。选择或设计合适的评估模型、有效进行铁路软件可靠性评估是目前亟需研究的问题。
邢颖[4]等人讨论了铁路软件可靠性测试关键技术及软件可靠性模型,但未针对铁路软件失效数据集进行实验。潘浪涛[5]建立了一个铁路自动售票系统的可靠性分析模型,总结了系统可靠性与系统模块失效概率之间的关系,但是,对模型的普适性未进行说明。廖亮[6]等人基于非齐次泊松过程(NHPP)对处于开发后期阶段的铁路信号计算机联锁软件进行可靠性评估,但未用NHPP模型与其它SRGM作对比。
本文选取G-O模型、DelayedS-shaped模型、Ohba-Chou模型及P-N-Z模型[7]4个较经典的SRGM,分析它们的特点及适用场景,提出一种可靠性模型参数计算的优化算法,在此研究基础上开发了一款软件可靠性增长模型分析工具(SRGMTool)。以铁路联锁软件为例,研究软件可靠性增长模型应用方法,确定了适合被测软件的可靠性增长模型,验证了方法的有效性。
1SRGM简介
SRGM是在软件失效数据集的基础上,采用统计学方法,用数学方程式来表达软件错误数量与不同因素(时间、测试工作量、不完美排错及错误检测率等)之间的关系。一般而言,随着软件中错误的排除,软件中累计错误数量增长速度变慢,即软件的可靠性逐渐增强。SRGM是对软件可靠性增长趋势进行建模,该趋势可用随机变量分布描述,建模过程中提出基本假设,同时,引入与该趋势相关的参数。设m(t)表示t时刻累计错误数量的函数,a(t)为软件总错误量,b(t)为错误检测率,t>0。
1.1排除错误类型
针对SRGM,假设发现错误,在排除错误时,如果错误可以完全被改正,且不会引入新的错误,称为完美排错;如果在排除一个错误时引起其它错误,则称为不完美排错。
4参数计算及算法优化
4.1参数计算
计算SRGM中的参数(即a、b、r、α、β),需要在软件失效数据集的数据上进行参数计算,将得到的参数值代入模型,计算出拟合数据,与软件失效数据集进行拟合。
4.2算法优化
本文参数计算采用极大似然估计法,将软件失效数据集代入模型,给出参数值的初始化值和范围,通过设定的步长逐个枚举参数值,求MSE值,输出得到最优MSE值时的参数值。为减少计算时间,在实验过程中将范围和步长设置大一些,以快速获知参数的最优值所在的范围,然后逐步缩小范围和步长,计算出精确的参数值。
相关期刊推荐:《铁路计算机应用》(月刊)创刊于1992年,期刊致力于全面、迅速、准确地刊登反映国内外铁路计算机应用的最新科技成果、计算机技术在铁路各专业领域的学术与理论探索、工程实践和发展综述及动态的论文,沟通国内外铁路计算机应用技术领域的信息交流,服务铁路信息化事业,倡导市场导向,汇集综合IT业界信息,促进铁路计算机应用,发布政府权威信息及方针政策,交流轨道交通信息,研究管理理念和方法,坚持学术与普及相结合,沟通政府与企业的交流。
在实验过程中发现,用软件失效数据集全部数据得到的模型参数,生成的拟合数据与真实值的误差较大。在几个软件失效数据集中进行大量实验,使用数据集的前一部分数据进行参数计算,后一部分数据用于验证,结果表明,使用部分数据进行参数计算和MSE值计算,所得的MSE值优于使用全部数据进行相关计算得到的MSE值。因此,改进了参数计算算法,使用前i(n/2
5可靠性分析工具及实验分析
在上述理论研究和优化算法的基础上,基于Java语言,设计并开发了一款SRGMTool,该工具可在个人计算机Web端使用:导入软件失效数据集,计算得到模型参数,进行可靠性分析,辅助完成可靠性模型的选择。
5.1SRGMToolSRGMTool
的功能模块包括:软件失效数据集导入,可靠性趋势分析,可靠性拟合和预测,不同模型的效果对比,如图2所示。
(1)软件失效数据集导入模块:选择一个数据集导入SRGMTool中,为趋势分析和模型的拟合做准备。
(2)趋势分析模块:分析失效数据集趋势,利用图形法和拉普拉斯法对可靠性增长趋势进行刻画,得到所选数据集的可靠性增长趋势。
(3)模型拟合模块:在所选软件失效数据集的基础上,根据模型的均值函数和参数值,计算得出拟合值,将它们与软件失效数据集的数据进行拟合,在同一坐标系中展示结果,并计算相应的评价指标值(MSE值、R-Square值、RE值)。
(4)模型效果对比模块:支持同数据集不同模型的对比、同模型不同数据集的对比。其中,同数据集不同模型的对比,在同个数据集上进行拟合,绘制所有模型的曲线;同模型不同数据集的对比,在3个数据集上进行拟合,展示3个拟合图形。
5.2铁路软件失效数据集
为了对铁路软件进行准确估计,需要真实的铁路软件失效数据集,保证数据的真实性、准确性及完整性。本文在进行模型对比实验验证时选取了铁路计算机联锁软件的失效数据集,该数据集以《计算机联锁技术条件》为标准判断软件是否出错,软件运行半年,共采集了17组失效数据,每组数据记录了测试的时间和累计错误数量。
5.3实验
在SRGMTool上,以铁路计算机联锁软件的失效数据集为例开展实验。
(1)导入软件失效数据集,进行可靠性趋势分析,将计算得到的结果绘制成图形。
(2)计算模型参数,得到参数后,利用可视化方法展示各模型与铁路软件失效数据集的拟合效果,同时,计算、展示可靠性评估的指标值。
5.3.1软件可靠性增长趋势分析
运用图形法得到的结果如图3所示,运用拉普拉斯法得到的结果如图4所示,两种方法所展现的效果基本一致,曲线斜率总体上随时间变化逐渐减小。拉普拉斯法中,总体上数值在减小。第9~第78天期间出现了波动,局部可靠性下降,但该软件失效数据集总体上呈可靠性增长趋势。
对于铁路软件失效数据集进行初步的可靠性增长趋势分析后,可根据该数据集的趋势特点选择合适的模型进行验证,本文利用4个模型进行对比验证。
5.3.2模型拟合对比
利用改进的参数计算方法,多次试验发现,运用前14组数据计算参数,得到的MSE值最小,即拟合效果最好,因此,选择前14组数据得到的参数组合作为最终采用的参数数值,以达到更好的拟合效果,同时,选择第15~第17组数据作为验证数据。
将铁路联锁软件失效数据集运用于G-O模型、DelayedS-shaped模型、Ohba-Chou模型及P-N-Z模型上,进行拟合测试,计算各模型引入参数的数值,绘制相应的拟合曲线,4种模型的拟合结果在同一图形中进行对比,如图5所示,图6为相对误差曲线,表2列出各模型的拟合效果评价指标值。
5.4结果分析
结合实验结果,可以得到以下结论:
(1)图5中,第1~第14组数据作为拟合数据第15~第17组数据作为验证数据。从图中可以看出,拟合数据中,P-N-Z模型与数据集数据的拟合优度最好;而验证数据中,G-O模型的拟合效果则更好一些,但是总体上P-N-Z模型的效果最优。从图6的相对误差曲线也可以得到同样的结论;
(2)从图5中可以明显地发现,DelayedS-shaped模型在初始时增长缓慢,反映了模型的延迟效应,但是对于本文的铁路软件失效数据集,总体拟合效果较差,说明此数据集可能不存在排除错误延迟问题;
(3)G-O模型拟合和预测效果均为4个模型中最差的,Ohba-Chou模型在该数据集上拟合较好,从量化指标来看差距较小,原因为Ohba-Chou模型是在G-O模型基础上考虑新引入的错误数与纠正的错误数成正比,比较理想化,所以Ohba-Chou模型较G-O模型有改进,但是改进不大;
(4)从表2中可以看出,对于该联锁软件的失效数据集来说,P-N-Z模型的拟合优度最好,若用于实际生产中,该模型是最佳选择。
6结束语
本文对铁路软件可靠性模型应用方法进行了研究,利用4种可靠性增长模型,对铁路软件进行可靠性增长趋势分析和可靠性评估预测,提出了一种可靠性模型参数计算的优化算法,并通过实例给出铁路联锁软件可靠性模型分析和预测的方法,可为铁路领域其它软件的可靠性分析和预测提供参考。
每个可靠性模型都有其适用的失效数据集和场景,具体情况应结合实际应用进行分析。对于本文实验中的铁路联锁软件失效数据集而言,P-N-Z拟合效果最优。
在铁路领域其它软件的实际使用中,可结合收集到的软件失效数据集,与各个模型相结合,考察模型的拟合优度和预测效果,结合MSE和R-Square等指标,进行综合比较,最终选择更适合其失效过程的模型,预测下次失效的时间或发生错误的频率,提前做好排除错误计划和相关措施,从而保障铁路运营和维护安全,最大限度地减小因软件失效带来的经济损失。——论文作者:李红辉1,赵 森1,管军霖2,江周娴1
转载请注明来自:http://www.lunwencheng.com/lunwen/dzi/19901.html