CN112783772B - 软件可靠性分析方法、系统、介质、设备、终端及应用 - Google Patents

软件可靠性分析方法、系统、介质、设备、终端及应用 Download PDF

Info

Publication number
CN112783772B
CN112783772B CN202110089560.9A CN202110089560A CN112783772B CN 112783772 B CN112783772 B CN 112783772B CN 202110089560 A CN202110089560 A CN 202110089560A CN 112783772 B CN112783772 B CN 112783772B
Authority
CN
China
Prior art keywords
model
faults
imperfect
software
total number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110089560.9A
Other languages
English (en)
Other versions
CN112783772A (zh
Inventor
张策
王金勇
袁雨飞
江文倩
孙智超
盛晟
丁烨
范苗苗
李文毓
温雅菲
宋雯
刘凯卫
吕为工
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology Weihai
Original Assignee
Harbin Institute of Technology Weihai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology Weihai filed Critical Harbin Institute of Technology Weihai
Priority to CN202110089560.9A priority Critical patent/CN112783772B/zh
Publication of CN112783772A publication Critical patent/CN112783772A/zh
Application granted granted Critical
Publication of CN112783772B publication Critical patent/CN112783772B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明属于软件分析技术领域,公开了一种软件可靠性分析方法、系统、介质、设备、终端及应用,所述软件可靠性分析方法包括:对故障总数进行分类分析,建立覆盖故障检测与修复的一般化的不完美排错模型;向排错中引入新故障现象,从故障总数增加性变化的角度建立具体化的不完美排错模型;利用4组失效数据集,验证构建的具体化不完美排错模型的性能;并利用验证后的不完美排错模型对故障总数进行分析。系统包括:分析模块;一般模型构建模块;具体模型构建模块;验证模块;软件分析模块。本发明提供了一种不完美排错下故障总数相关的软件可靠性增长模型。本发明提供的模型具有较好的性能,在拟合与预测上较为优秀,能够准确地描述软件测试过程。

Description

软件可靠性分析方法、系统、介质、设备、终端及应用
技术领域
本发明属于软件分析技术领域,尤其涉及一种软件可靠性分析方法、系统、介质、设备、终端及应用。
背景技术
目前:由于在设计与编码阶段的缺陷,软件中的故障成为可靠性的重要威胁。为此,软件测试成为软件制品开发过程中的重要环节。软件测试的目的是不断检测与排除故障,持续提高可靠性,进而达到发布的标准。采用可靠性理论定量地指导与提高软件可靠性,已成为软件测试过程中与发布运行后的重要手段,软件可靠性增长模型SRGM(SoftwareReliability Growth Model)是应用较为广泛的数学理论工具与技术。
SRGM通过定量的数学模型来描述测试过程,采用微分方程等数学方法来建立测试阶段中故障检测数量与修复数量等变量之间的关系,进而求解得到能够用于分析软件可靠性的重要评价指标。目前,已有很多SRGMs被提出,主要集中在非齐次泊松分布过程NHPP(Non-Homogeneous Poisson Process)类型的范畴,包括最早提出的以Geol-Okumoto模型为代表的一些列指数型和以Yamada模型为代表的一系列S型模型。这些被提出的模型丰富了软件可靠性理论,其研究工作推动了可靠性研究在软件测试过程中的应用,为定量研究软件可靠性提高、测试资源与成本管控、软件发布等带来重要指导。
当前研究特别是所建立的模型主要集中在如何更加精准的建模描述测试过程,建立更加有效的数学模型来阐述故障从检测至修复完成的过程,对软件中总的故障个数(这里用a(t)来表示软件中故障总数)这一重要因素的研究十分匮乏,现有涉及到的研究也是主观设定软件中的故障总数为定量或某一函数形式,缺乏深入的定量研究。
软件测试过程会受到多种复杂随机因素的影响,具有较强的不确定性,呈现出不完美情况,因此以不完美排错为代表的可靠性研究得到重视。不完美排错包括软件修复过程中引入新故障现象,这使得软件中故障总数得到增加。这样,从a(t)变化的视角研究不完美排错成为一个重要的方向。
通过上述分析,现有技术存在的问题及缺陷为:当前软件可靠性模型研究中对故障总数重视不够,没有充分考虑不完美排错与故障总数的相关性。
解决以上问题及缺陷的难度为:建立了考虑故障检测与修复的一般化的不完美排错模型,进一步考虑排错中引入新故障现象,从故障总数增加性变化的角度建立了具体化的不完美排错模型,使得分析故障总数对模型的影响带来可能,具有一定的解决问题难度。
解决以上问题及缺陷的意义为:建立覆盖故障检测至修复与新故障引入的框架模型,以故障总数作为不完美排错的重要线索建立系列可靠性模型,使得从故障检测至修复的完整过程得以通过对不完美排错现象的充分考虑进行完整描述,具有重要的理论意义与实践价值。
发明内容
针对现有技术存在的问题,本发明提供了一种软件可靠性分析方法、系统、介质、设备、终端及应用。
本发明是这样实现的,一种软件可靠性分析方法,所述软件可靠性分析方法包括:
步骤一,对故障总数进行分类分析,建立覆盖故障检测与修复的一般化的不完美排错模型,为提出方案提供了根本性的理论支撑。
步骤二,向排错中引入新故障现象,从故障总数增加性变化的角度建立具体化的不完美排错模型,为得到具体的不完美排错下故障总数相关的可靠性模型带来保障;
步骤三,利用4组失效数据集,验证构建的具体化不完美排错模型的性能;并利用验证后的不完美排错模型对故障总数进行分析,实现对本方案有效性的验证。
进一步,步骤二中,所述具体化的不完美排错模型包括:
所述具体化的不完美排错模型包括P1、P2、P3、P4、P5;
所述P1为a1(t)=c+a(1-e-αt);
此时,a(t)为有限个数增长,a(t→∞)=c+a;
所述P2为a2(t)=aeαt
此时,a(t)为无限个数增长,a(t→∞)→∞;
所述P3为a3(t)=a(1+αt);
此时,a(t)为无限个数增长,a(t→∞)→∞;
所述P4为a4(t)=a(1+rt)2
a(t)为无限个数增长,a(t→∞)→∞;
所述P5为a5(t)=a+αm(t);
a(t)为无限个数增长,a(t→∞)→∞;
其中,a(t)表示软件中故障总数;(t,t+Δt)表示时间区间;b表示(t,t+Δt)内最多发生一个故障,且所检测到的故障数量与当前剩余的故障总数成比例的比例系数;p表示在时间区间(t,t+Δt)内,被修复的故障数量与被检测的故障数量成比例的比例系数。
本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
对故障总数进行分类分析,建立覆盖故障检测与修复的一般化的不完美排错模型;
向排错中引入新故障现象,从故障总数增加性变化的角度建立具体化的不完美排错模型;
利用4组失效数据集,验证构建的具体化不完美排错模型的性能;并利用验证后的不完美排错模型对故障总数进行分析。
本发明的另一目的在于提供一种信息数据处理终端,所述信息数据处理终端用于实现所述的软件可靠性分析方法。
本发明的另一目的在于提供一种实施所述软件可靠性分析方法的不完美排错下故障总数相关的软件可靠性分析系统,所述不完美排错下故障总数相关的软件可靠性分析系统包括:
分析模块,用于对故障总数进行分类分析;
一般模型构建模块,用于建立覆盖故障检测与修复的一般化的不完美排错模型;
具体模型构建模块,用于向排错中引入新故障现象,基于构建的一般化不完美排错模型从故障总数增加性变化的角度建立具体化的不完美排错模型;
验证模块,用于利用4组失效数据集,验证构建的具体化不完美排错模型的性能;
软件分析模块,用于利用验证后的不完美排错模型对故障总数进行分析。
本发明的另一目的在于提供一种软件测试站点,所述软件测试终端用于实现所述的软件可靠性分析方法。
本发明的另一目的在于提供一种定量软件可靠性测试终端,所述定量软件可靠性测试终端用于实现所述的软件可靠性分析方法。
本发明的另一目的在于提供一种测试资源与成本管控终端,所述测试资源与成本管控终端用于实现所述的软件可靠性分析方法。
本发明的另一目的在于提供一种软件发布终端,所述软件发布终端用于实现所述的软件可靠性分析方法。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明提供了一种不完美排错下故障总数相关的软件可靠性增长模型。本发明提供的模型具有较好的性能,在拟合与预测上较为优秀,能够准确地描述软件测试过程。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的软件可靠性分析方法流程图。
图2是本发明实施例提供的不完美排错下故障总数相关的软件可靠性分析系统结构示意图;
图中:1、分析模块;2、一般模型构建模块;3、具体模型构建模块;4、验证模块;5、软件分析模块。
图3(a)是本发明实施例提供的模型M1在DS9上的拟合曲线示意图。
图3(b)是本发明实施例提供的模型M2在DS9上的拟合曲线示意图。
图3(c)是本发明实施例提供的模型M3在DS9上的拟合曲线示意图。
图3(d)是本发明实施例提供的模型M4在DS9上的拟合曲线示意图。
图3(e)是本发明实施例提供的模型M5在DS9上的拟合曲线示意图。
图3(f)是本发明实施例提供的模型M6在DS9上的拟合曲线示意图。
图3(g)是本发明实施例提供的模型M7在DS9上的拟合曲线示意图。
图3(h)是本发明实施例提供的模型P1在DS9上的拟合曲线示意图。
图3(i)是本发明实施例提供的模型P2在DS9上的拟合曲线示意图。
图3(j)是本发明实施例提供的模型P3在DS9上的拟合曲线示意图。
图3(k)是本发明实施例提供的模型P4在DS9上的拟合曲线示意图。
图3(l)是本发明实施例提供的模型P5在DS9上的拟合曲线示意图。
图4(a)是本发明实施例提供的模型M1在DS9上的预测曲线示意图。
图4(b)是本发明实施例提供的模型M2在DS9上的预测曲线示意图。
图4(c)是本发明实施例提供的模型M3在DS9上的预测曲线示意图。
图4(d)是本发明实施例提供的模型M4在DS9上的预测曲线示意图。
图4(e)是本发明实施例提供的模型M5在DS9上的预测曲线示意图。
图4(f)是本发明实施例提供的模型M6在DS9上的预测曲线示意图。
图4(g)是本发明实施例提供的模型M7在DS9上的预测曲线示意图。
图4(h)是本发明实施例提供的模型P1在DS9上的预测曲线示意图。
图4(i)是本发明实施例提供的模型P2在DS9上的预测曲线示意图。
图4(j)是本发明实施例提供的模型P3在DS9上的预测曲线示意图。
图4(k)是本发明实施例提供的模型P4在DS9上的预测曲线示意图。
图4(l)是本发明实施例提供的模型P5在DS9上的预测曲线示意图。
图5(a)是本发明实施例提供的在DS9上的拟合曲线示意图。
图5(b)是本发明实施例提供的在DS12上的拟合曲线示意图。
图5(c)是本发明实施例提供的在DS14上的拟合曲线示意图。
图6(a)是本发明实施例提供的在DS9上的预测曲线示意图。
图6(b)是本发明实施例提供的在DS12上的预测曲线示意图。
图6(c)是本发明实施例提供的在DS14上的预测曲线示意图。
图7是本发明实施例提供的模型的a(t)曲线比较示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种软件可靠性分析方法、系统、介质、设备、终端及应用,下面结合附图对本发明作详细的描述。
如图1所示,本发明实施例提供的软件可靠性分析方法包括:
S101,对故障总数进行分类分析,建立覆盖故障检测与修复的一般化的不完美排错模型;
S102,向排错中引入新故障现象,从故障总数增加性变化的角度建立具体化的不完美排错模型;
S103,利用4组失效数据集,验证构建的具体化不完美排错模型的性能;并利用验证后的不完美排错模型对故障总数进行分析。
本发明提供的软件可靠性分析方法业内的普通技术人员还可以采用其他的步骤实施,图1的本发明提供的软件可靠性分析方法仅仅是一个具体实施例而已。
步骤S102中,本发明实施例提供的具体化的不完美排错模型包括:
具体化的不完美排错模型包括P1、P2、P3、P4、P5;
P1为a1(t)=c+a(1-e-αt);
此时,a(t)为有限个数增长,a(t→∞)=c+a;
P2为a2(t)=aeαt
此时,a(t)为无限个数增长,a(t→∞)→∞;
P3为a3(t)=a(1+αt);
此时,a(t)为无限个数增长,a(t→∞)→∞;
P4为a4(t)=a(1+rt)2
a(t)为无限个数增长,a(t→∞)→∞;
P5为a5(t)=a+αm(t);
a(t)为无限个数增长,a(t→∞)→∞;
其中,a(t)表示软件中故障总数;(t,t+Δt)表示时间区间;b表示(t,t+Δt)内最多发生一个故障,且所检测到的故障数量与当前剩余的故障总数成比例的比例系数;p表示在时间区间(t,t+Δt)内,被修复的故障数量与被检测的故障数量成比例的比例系数。
如图2所示,本发明实施例提供的不完美排错下故障总数相关的软件可靠性分析系统包括:
分析模块1,用于对故障总数进行分类分析;
一般模型构建模块2,用于建立覆盖故障检测与修复的一般化的不完美排错模型;
具体模型构建模块3,用于向排错中引入新故障现象,基于构建的一般化不完美排错模型从故障总数增加性变化的角度建立具体化的不完美排错模型;
验证模块4,用于利用4组失效数据集,验证构建的具体化不完美排错模型的性能;
软件分析模块5,用于利用验证后的不完美排错模型对故障总数进行分析。
下面结合具体实施例对本发明的技术方案作进一步说明。
1、本发明通过对软件中故障总数的深入分类分析,建立覆盖故障检测至修复与新故障引入的框架模型,以故障总数作为不完美排错的重要线索建立系列可靠性模型,使得从故障检测至修复的完整过程得以通过对不完美排错现象的充分考虑进行完整描述。通过公开发表的多个不同应用场景的失效数据集,验证了所提出模型的性能,并对软件中故障总数进行了有价值的分析。
2不完美排错下软件中故障总数相关的可靠性模型建模
2.1基本假设
基于对测试环境的认知,当前研究通常做如下假设:
故障检测与修复过程服从非齐次泊松分布NHPP过程;
软件失效由软件中剩余的故障引发,软件中故障总数为a(t);
在时间区间(t,t+Δt)内,最多发生一个故障,且所检测到的故障数量与当前剩余的故障总数成比例,比例系数为常量b;
在时间区间(t,t+Δt)内,被修复的故障数量与被检测的故障数量成比例,比例系数为p;
设软件在测试过程中t时累积检测到的故障数量为m(t),则在假设(1)至(4)的基础上,可以得到式(1)的方程组:
在m(0)=0的初始条件下,可求得m(t)的表达式如下:
至此,得到了测试阶段截止某时刻t时累积检测到的故障数量m(t)表达式,其构成包括三个要素——软件中故障总数a(t)、故障检测率和故障修复概率p。同时,(2)式定量地描述了m(t)与a(t)之间的数值关系,为分析二者的变化带来可能。显然,该模型是一类框架模型,具有较强的柔韧性,能够支持不同a(t)用以衍生出具体的模型。
不完美排错的表现之一是排错中引入新故障,使得总故障个数a(t)发生增加性变化,这也为可靠性研究增加了新方法。为此,在(1)式建模中考虑故障检测与修复的基础上,进一步考虑引入新故障不完美排错现象,建立更加完整和富有更多测试信息的可靠性模型。当前a(t)主要被设定为如下五种形式,在m(0)=0的初始条件下,可以求得m(t)的表达式如下面五种情况所示:
(1)若a1(t)=c+a(1-e-αt),则可求得此时的m1(t)如下:
此时,a(t)为有限个数增长,a(t→∞)=c+a。
(2)若a2(t)=aeαt,则可求得此时的m2(t)如下:
(3)若a3(t)=a(1+αt),则可求得此时的m3(t)如下:
此时,a(t)为无限个数增长,a(t→∞)→∞。
(4)若a4(t)=a(1+rt)2,则可求得此时的m4(t)如下:
此时,a(t)为无限个数增长,a(t→∞)→∞。
(5)若a5(t)=a+αm(t),则可求得此时的m5(t)如下:
此时,a(t)为无限个数增长,a(t→∞)→∞。
至此,在一般性不完美排错模型的基础上,从a(t)增长性变化描述新故障引入情况的角度,本发明得到了考虑故障检测、修复与新故障引入的具体的不完美排错可靠性模型,并且为a(t)对可靠性的影响研究带来新方法。这里将从本发明统一框架模型衍生出的5个模型分别记作P1、P2、P3、P4、P5
3 数值算例
3.1 参与比较的模型
考虑到存在新故障引入现象,软件中总故障个数a(t)应该随测试与修改的进行发生增加性变化。由于无法确切知道软件中故障总数,因此a(t)的有效性难以直接验证。不过,当前提出的众多SRGMs中均包含累积检测到的故障数量m(t)这一参变量,因此,可以基于(1)式的框架中研究不同m(t)的性能差异,从而间接分析出不同a(t)的差异性,继而为软件中故障总数的变化规律提供参考。为了增加研究与分析的深入性,本发明在4个真实的失效数据集DS9,DS12,DS14和DS18上进行实验,以此来剖析出软件中故障总数的演变情况。同时,为了观测本发明所提出框架模型的效果,将其与其他考虑a(t)变化的可靠性模型进行比较,如表2所示。
表2a(t)视角下典型不完美排错相关的SRGMs
3.2比较标准
采用均方误差值(Mean Square Error,MSE),Variation,RMS-PE和回归曲线方程的相关指数(R-square)度量曲线拟合效果,利用相对误差(Relative Error,RE)度量模型的预测能力。
其中,yi表示到ti时累积失效个数,m(ti)表示到ti时利用模型得到的估算值,k表示失效数据样本数量。显然,MSE,Variance,RMS-PE和BMMRE的值越小,R-square值越接近于1,拟合效果越好。RE越趋近于0,模型预测效果越好。
3.3性能验证
基于对表2中各个模型进行参数估计的结果(限于篇幅,这里仅以模型在DS9失效数据集上的结果为例,更多信息可联系作者),本发明计算出各个模型的m(t)在每个失效数据集上的拟合数值,并其将其与真实的失效数据曲线进行比较,如图3所示。
从图3可以看出,有些模型在某些数据集上与真实的失效数据曲线发生严重偏离,表明其拟合性能不理想;大部分模型的曲线增长趋势符合实际,表明模型具有良好的拟合能力。本发明所提出的框架模型,与真实的失效数据曲线之间比较接近,重合度较高,因而性能良好。为了进一步区分相互间性能,表3给出了模型在4个失效数据集在评价标准上的数值列表。
表3模型的性能比较
从表3可以看出,本发明所提出的模型在绝大部分的标准上处于最优或次优,表明具有良好的性能。
(1)在DS9上:本发明所提出的模型(P类模型)表现均优于除M7外其他参与比较的模型(M类模型)。
(2)在DS12上:P类模型中,P4模型偏差较大,P2模型表现一般;而M类模型中,M6、M7模型表现较好;总体而言P类模型仍然优于M类模型。
(3)在DS14上:P类模型(除P5外)与真实数据非常接近,性能显著优于在该数据集上表现不佳的M类模型(除M7外)。
(4)在DS18上:P类模型与M类模型表现相近,略优于M类模型。
在预测性能上,图4绘制了模型的RE预测曲线。
综上,本发明所提出的不完美排错框架模型展示了良好的拟合与预测性能,优于其他模型,能够更加准确和细致的建模与描述测试过程。
同时,为了分析故障总数a(t)对模型的影响,从便于分析的角度,这里给出了本发明所提出的框架模型在失效数据集上的拟合曲线、评价指标和预测曲线,分别如图5、表4和图6所示。由于框架模型的建模统一性,不同模型在性能上的差异主要受到不同a(t)的影响,因此可以用来观测不同a(t)的性能情况。
表4本发明提出的系列不完美排错模型性能比较
结合图5和表4,可以看到和分析得到,衍生自同一框架模型的5个具体模型在拟合与预测曲线上保持了基本一致的变化态势,这反应出模型的统一性;但相互之间依然存在着明显的差异,这反应出不同a(t)带来的影响。
这样,可以得到5个模型的性能排序为P3>P1>P2>P4>P5(其中A>B表示模型A的性能优于模型B)。这样,基本大量的实验结果与分析,可以认为在此4个数据集上的性能排序为a3(t)>a1(t)>a2(t)>a4(t)>a5(t)。特别指出,其中a5(t)=a+αm(t)与具体的m(t)紧密相关,这里将其与其他a(t)同样看待,即考虑a5(t)所对应的m(t)。
3.4故障总数分析
经典的完美排错模型认为a(t)=a,为常量,这并不合理,因为测试与排错的过程中存在引入新故障的可能,因而a(t)应随t有所增加。这里,本发明绘制了不同模型中的a(t)变化情况,如图7所示。
图7是在DS9上基于所估计的参数画出的a(t)曲线。可以看出,由于人为设定a(t)的差异,使得曲线走势既有线性增加变化,又有指数以及更加复杂的增加变化趋势。
当前绝大多数研究自行设定a(t)形式,但实际上软件中总故障个数是未知的。由于FDS发布方是测试过程的主导者,因而其具备能够获得a(t)更为准确信息的能力,但当前的FDS中均没有此方面的信息。
这样,对a(t)的验证最终是通过验证其对应的m(t)来间接实现的。结果表明,通过这样的间接方式,一定程度上确实可以利用不含有故障总数的数据集来测试不同a(t)的性能,这样就可以实现对不同a(t)的性能对比,从而选择更适合当前数据集的软件中故障总数模型及软件可靠性模型。值得注意的是,由于采用这样的间接方式,在进行参数估计或者是使用拟合后的模型参数时,a(t)的参数应当始终与其对应的m(t)参数在值上保持一致。
另一方面,易知,随着测试的不断进行,累积检测到的故障数量m(t)会更加趋近于a(t),这样二者在曲线形式上也会趋于相似,理论上甚至存在相交的可能。但在测试初期,累积检测到的故障数量应当不大于软件中故障总数。如果某个a(t)模型并不具有这样的基本性质,可能表明该模型的设计并不十分合理,或者说该模型至少不适合当前所使用的数据集。
4软件中故障总数不仅是可靠性建模研究中的重要因素,也对软件测试过程不断提高可靠性具有重要的现实意义。为定量描述故障总数对可靠性模型的影响,本发明提出了不完美排错下故障总数相关的软件可靠性增长模型。模型对测试过程中的故障检测、修复与引入新故障进行了建模,特别是从软件中故障总数的角度建立了不完美排错的可靠性模型,为研究故障总数对模型的影响带来可能,并在4个真实发表的失效数据集上进行了验证。实验结果表明,所提出的模型具有较好的性能,在拟合与预测上较为优秀,能够准确地描述软件测试过程。显然,软件中确定的故障总数是个未知解,但通过建立准确的可靠性模型能够帮助分析其变化趋势以及对模型的影响。后续研究中,要进一步考虑故障产生的机理、故障检测至排除全链条的有效方法、新故障引入规律等问题,不断探索软件中故障总数有关的更多内容,丰富软件可靠性提高方面研究的新成果。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。

Claims (9)

1.一种软件可靠性分析方法,其特征在于,所述软件可靠性分析方法包括:
对故障总数进行分类分析,建立覆盖故障检测与修复的一般化的不完美排错模型;
向排错中引入新故障现象,从故障总数增加性变化的角度建立具体化的不完美排错模型;
利用4组失效数据集,验证构建的具体化不完美排错模型的性能;并利用验证后的不完美排错模型对故障总数进行分析;
所述具体化的不完美排错模型包括:
所述具体化的不完美排错模型包括P1、P2、P3、P4、P5;
所述P1为a1(t)=c+a(1-e-αt);
此时,a(t)为有限个数增长,a(t→∞)=c+a;
所述P2为a2(t)=aeαt
此时,a(t)为无限个数增长,a(t→∞)→∞;
所述P3为a3(t)=a(1+αt);
此时,a(t)为无限个数增长,a(t→∞)→∞;
所述P4为a4(t)=a(1+rt)2
a(t)为无限个数增长,a(t→∞)→∞;
所述P5为a5(t)=a+αm(t);
a(t)为无限个数增长,a(t→∞)→∞;
其中,a(t)表示软件中故障总数;(t,t+Δt)表示时间区间;b表示(t,t+Δt)内最多发生一个故障,且所检测到的故障数量与当前剩余的故障总数成比例的比例系数;p表示在时间区间(t,t+Δt)内,被修复的故障数量与被检测的故障数量成比例的比例系数。
2.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1所述的软件可靠性分析方法。
3.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1所述的软件可靠性分析方法。
4.一种信息数据处理终端,其特征在于,所述信息数据处理终端用于实现权利要求1所述的软件可靠性分析方法。
5.一种实施如权利要求1所述软件可靠性分析方法的不完美排错下故障总数相关的软件可靠性分析系统,其特征在于,所述不完美排错下故障总数相关的软件可靠性分析系统包括:
分析模块,用于对故障总数进行分类分析;
一般模型构建模块,用于建立覆盖故障检测与修复的一般化的不完美排错模型;
具体模型构建模块,用于向排错中引入新故障现象,基于构建的一般化不完美排错模型从故障总数增加性变化的角度建立具体化的不完美排错模型;
验证模块,用于利用4组失效数据集,验证构建的具体化不完美排错模型的性能;
软件分析模块,用于利用验证后的不完美排错模型对故障总数进行分析。
6.一种软件测试终端,其特征在于,所述软件测试终端用于实现权利要求1所述的软件可靠性分析方法。
7.一种定量软件可靠性测试终端,其特征在于,所述定量软件可靠性测试终端用于实现权利要求1所述的软件可靠性分析方法。
8.一种测试资源与成本管控终端,其特征在于,所述测试资源与成本管控终端用于实现权利要求1所述的软件可靠性分析方法。
9.一种软件发布终端,其特征在于,所述软件发布终端用于实现权利要求1所述的软件可靠性分析方法。
CN202110089560.9A 2021-01-22 2021-01-22 软件可靠性分析方法、系统、介质、设备、终端及应用 Active CN112783772B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110089560.9A CN112783772B (zh) 2021-01-22 2021-01-22 软件可靠性分析方法、系统、介质、设备、终端及应用

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110089560.9A CN112783772B (zh) 2021-01-22 2021-01-22 软件可靠性分析方法、系统、介质、设备、终端及应用

Publications (2)

Publication Number Publication Date
CN112783772A CN112783772A (zh) 2021-05-11
CN112783772B true CN112783772B (zh) 2023-09-15

Family

ID=75758659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110089560.9A Active CN112783772B (zh) 2021-01-22 2021-01-22 软件可靠性分析方法、系统、介质、设备、终端及应用

Country Status (1)

Country Link
CN (1) CN112783772B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1420344A2 (en) * 2002-11-13 2004-05-19 Imbus Ag Method and device for prediction of the reliability of software programs
CN102360333A (zh) * 2011-10-17 2012-02-22 哈尔滨工业大学 基于hisqm排队模型考虑故障排除过程的构件软件可靠性分析方法
CN110008122A (zh) * 2019-03-22 2019-07-12 哈尔滨工业大学(威海) 一种考虑te与cp下的一般性不完美排错模型
CN111538655A (zh) * 2020-04-09 2020-08-14 哈尔滨工业大学(威海) 软件故障检测方法、系统、存储介质、计算机程序、终端
CN111538654A (zh) * 2020-04-09 2020-08-14 哈尔滨工业大学(威海) 一种软件可靠性测试方法、系统、存储介质、计算机程序

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1420344A2 (en) * 2002-11-13 2004-05-19 Imbus Ag Method and device for prediction of the reliability of software programs
CN102360333A (zh) * 2011-10-17 2012-02-22 哈尔滨工业大学 基于hisqm排队模型考虑故障排除过程的构件软件可靠性分析方法
CN110008122A (zh) * 2019-03-22 2019-07-12 哈尔滨工业大学(威海) 一种考虑te与cp下的一般性不完美排错模型
CN111538655A (zh) * 2020-04-09 2020-08-14 哈尔滨工业大学(威海) 软件故障检测方法、系统、存储介质、计算机程序、终端
CN111538654A (zh) * 2020-04-09 2020-08-14 哈尔滨工业大学(威海) 一种软件可靠性测试方法、系统、存储介质、计算机程序

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
可靠性模型中故障检测率研究述评;张策;刘宏伟;白睿;王瞰宇;王金勇;吕为工;孟凡超;;软件学报(第09期);全文 *

Also Published As

Publication number Publication date
CN112783772A (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
Felix et al. Integrated approach to software defect prediction
JP6297855B2 (ja) 動的外れ値偏り低減システム及び方法
CN111538655B (zh) 软件故障检测方法、系统、存储介质、终端
Levin et al. The co-evolution of test maintenance and code maintenance through the lens of fine-grained semantic changes
Najafi et al. Bisecting commits and modeling commit risk during testing
Verna et al. Inspection planning by defect prediction models and inspection strategy maps
Xiang et al. Fault classification for high‐dimensional data streams: A directional diagnostic framework based on multiple hypothesis testing
US20070180411A1 (en) Method and apparatus for comparing semiconductor-related technical systems characterized by statistical data
CN114356859A (zh) 数据导入方法及装置、设备、计算机可读存储介质
CN112783772B (zh) 软件可靠性分析方法、系统、介质、设备、终端及应用
CN111538654B (zh) 一种软件可靠性测试方法、系统、存储介质
Pradhan et al. Testing coverage‐based software reliability growth model considering uncertainty of operating environment
CN108399284A (zh) 一种基于偏差约减的大数据交易模型分析与修复方法
CN111128775A (zh) 集成电路制程异常的定位方法和装置
Zhang et al. Software reliability model related to total number of faults under imperfect debugging
Liu et al. Planning accelerated life tests under scheduled inspections for log-location-scale distributions
JP7190246B2 (ja) ソフトウェア不具合予測装置
CN113742248A (zh) 一种基于项目测量数据进行组织过程预测的方法及系统
CN113646714A (zh) 生产设备的加工参数设置方法、装置和计算机可读介质
Zhi-bo et al. Analysis of software process effectiveness based on orthogonal defect classification
Handani et al. Relationship between features volatility and software architecture design stability in object-oriented software: Preliminary analysis
Baltayev et al. Model and Methods for Detecting Undetected Errors Using a Signature Analyzer
Bretones Cassoli et al. Challenges for Predictive Quality in Multi-stage Manufacturing: Insights from Literature Review
CN107315684A (zh) 一种基于基本块的软件可靠性评估方法
TWI815123B (zh) 運用人工智慧之巨量資料分析平台及其運作方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant