基于加权灰色关联分析法的优选软件可靠性增长模型方法

未命名 08-18 阅读:113 评论:0


1.本发明属于软件可靠性增长模型技术领域,具体涉及基于加权灰色关联分析法的优选软件可靠性增长模型方法。


背景技术:

2.为了方便人们的日常需求,人们开发并使用了各种软件。现代社会离不开计算机和人工智能的发展。当计算机中的软件出现故障时,会造成巨大的损失,甚至威胁到人类的生命。在满足软件可靠性运行要求的前提下,不断开发各种软件可靠性增长模型。现代社会中软件实现的功能越来越复杂,代码的规模也越来越大,导致没有一种软件可靠性增长模型能够在所有软件测试环境下准确预测软件中剩余故障的数量,并在所有软件开发和测试环境中有效地估计软件的可靠性程度。
3.考虑到当前的开发和测试环境下,选择最适合当前环境的软件可靠性增长模型是很重要的。研究人员提出了不同的方法来优化软件可靠性模型的选择。例如,ullah等人首先通过比较r2来选择具有最佳拟合性能的模型,然后选择最优软件可靠性增长模型来预测的故障数量和实际检测到的故障数量之间的剩余软件故障数量,该数量小于或等于阈值。sharma等人使用欧几里得复合距离(ecd)来选择最优软件可靠性增长模型。该方法将每个模型的性能指标与最优性能指标进行比较,并计算每个模型与最优备选方案之间的欧几里得复合距离之和。yaghoobi提出使用shannon熵作为srgm的最优选择标准,他还提出使用方差作为标准来优化软件可靠性增长模型的选择。通过比较信息熵、方差和ecd,发现它们之间存在一致性。garg综合熵和距离方法来选择最优软件可靠性增长模型。将该方法与ahp和topsis进行了比较,发现它们的排序方法之间存在相关性。
4.一般来说,统计专业知识是选择最合适的软件可靠性增长模型的首选方法。当已知样本中故障数据集的模式或概率分布时,统计技术在识别最佳软件可靠性增长模型方面是可靠的。然而,在实际的软件测试中,故障检测是不可预测的,并且检测到的故障数量是有限的样本,这在试图发现故障检测的模式和概率分布时带来了很大难度和挑战。因此,使用统计方法选择最佳软件可靠性增长模型受到检测到的故障的实际数量和样本大小的影响。
5.由于软件开发和测试的复杂性和不确定性,开发的软件可靠性增长模型只能在某些环境和条件下有效地预测软件中剩余故障的数量,并评估软件的可靠性。例如,在完美调试(pd)环境下,延迟s形(dss)模型假设故障检测曲线随时间呈s形;拐点s形(iss)模型假设它在故障检测过程中存在学习现象,并且检测到的故障的累积数量是随时间变化的s形曲线;goel-okumoto(g-o)模型假设故障检测率是常数;广义goel(ggo)模型假设故障检测服从威布尔分布;一般拐点s形(giss)模型假设故障检测率服从广义拐点s形分布;基于开源软件的li模型假设故障检测率先增加,然后随着测试时间而下降。
6.此外,在不完美调试(id)环境下,yamada不完美调试模型1(yid1)假设故障引入服从指数分布。yamada不完美调试模型2(yid2)假设故障引入显示出随时间的线性变化。p-z
模型假设故障引入随时间非线性变化。zhang teng pham(z-t-p)模型假设故障引入率是一个常数,并且s形故障检测率函数随时间非递减地变化。p-n-z模型假设故障检测率不仅随时间呈s形曲线,而且故障引入也随时间线性变化。基于开源软件的singhal模型假设在软件调试期间,故障引入率随着时间的推移表现出不规则的波动,并且故障引入服从指数分布。
7.在软件测试过程中,所收集的故障数据是一个小样本,通常很难确定故障数据的概率分布。故障检测的过程和环境是复杂的、不确定的和动态的。很难将软件可靠性增长模型应用于所有的软件测试环境。在实际的故障检测过程中,检测到的故障数据量波动频繁,甚至表现出突变性。很难找到故障检测的概率分布变化。此外,模型的各种评价标准在评估方面可能有所不同。因此,在当前的软件测试环境中,选择最优的软件可靠性增长模型需要综合考虑各种模型性能评价标准。


技术实现要素:

8.本发明针对背景技术中存在的问题,提供了基于加权灰色关联分析法的优选软件可靠性增长模型方法。
9.本发明采用了下列技术方案为:
10.一种基于加权灰色关联分析法的优选软件可靠性增长模型方法,包括以下步骤:
11.步骤1,基于香农熵的权重;
12.利用软件可靠性增长模型的多个评价标准的信息,计算每个软件可靠增长模型评价标准的熵,然后计算权重值,给定具有行m和列n的矩阵z如下:
[0013][0014]
在矩阵z中,每一行表示一个不同的模型,每一列表示用于评估模型的评价标准,矩阵z中有m个软件可靠性增长模型和n个模型的评价标准;z
ij
表示第i个模型和第j个模型评价标准,i=1,2,...,m和j=1,2,...,n;基于香农熵的权重计算步骤具体如下:
[0015]
步骤1.1,矩阵z的标准化;
[0016]
如果模型评价标准的值越小,则模型的性能越好,矩阵z的标准化可以表示如下:
[0017][0018]
相反,如果模型评价标准值越大,则其性能越优越,矩阵z的标准化可以表示如下:
[0019][0020]
其中,公式中q1和q2是常量,q1=0.999999,q2=0.000001,并且q1+q2=1;s
ij
表示矩阵z标准化后第i行和第j列,i=1,2,...,m和j=1,2,...,n;
[0021]
步骤1.2,计算矩阵z中每个模型评价标准的熵值,公式为:
[0022][0023]
其中,ln表示以e为底对数;
[0024]
步骤1.3,矩阵z中每个模型评价标准的权重,公式为:
[0025][0026]
其中,wj表示矩阵z中第j列模型评价标准的权重;
[0027]
步骤2,加权灰色关联分析方法;
[0028]
根据不同序列曲线几何形状的相似性来确定不同序列模型之间的相关性,加权灰色关联分析方法优选软件可靠性增长模型的具体步骤如下:
[0029]
步骤2.1,等式(1)通过等式(2)或等式(3)进行标准化如下:
[0030][0031]
其中,s
mn
表示标准化后,矩阵s
ij
第m行和第n列;
[0032]
步骤2.2,以矩阵中每列的最小值作为最优评价标准值,如下所示:
[0033][0034]
其中,表示矩阵s
ij
中每列的最小值作为最优评价标准值,上标1,2,...,n表示第几列;
[0035]
步骤2.3,在等式(7)中计算s
ij
和之间每列的距离,公式如下所示:
[0036][0037]
其中,表示矩阵s
ij
中第j列的最优评价标准值,表示矩阵δφ
ij
中每列最小值,表示矩阵δφ
ij
中每列最大值;
[0038]
步骤2.4,灰色关联系数如下计算:
[0039][0040]
其中,κ表示区分系数,其值为0.5;
[0041]
步骤2.5,基于shannon熵的具有权重的灰色关联度如下所示:
[0042][0043]
其中,ρi表示灰色关联度,其值越高,模型的性能越好。
[0044]
与现有技术相比本发明具有以下优点:
[0045]
1、当软件测试过程中检测到的故障是小样本、数据少和贫信息时,提出的方法可以选择最适合当前软件测试环境的软件可靠性增长模型。
[0046]
2、在软件中检测到的故障数据分布不清楚、模式不明确的情况下,提出优化选择软件可靠性增长模型的方法可以通过数据序列算子的作用来探索故障数据的实际模式。
[0047]
3、提出的优化选择软件可靠性增长模型的方法可以充分利用模型性能的各种评价信息,通过信息熵计算权重优先级,挖掘模型的潜在信息值,为选择最优软件可靠性增长模型做出重要贡献。
附图说明
[0048]
图1是本发明表示使用故障数据集ds1-1进行的软件可靠性增长模型比较示意图;
[0049]
图2是本发明表示使用故障数据集ds1-2的软件可靠性增长模型比较示意图;
[0050]
图3是本发明表示使用故障数据集ds1-3的软件可靠性增长模型比较示意图;
[0051]
图4是本发明表示使用故障数据集ds2-1的软件可靠性增长模型比较示意图;
[0052]
图5是本发明表示使用故障数据集ds2-2的软件可靠性增长模型比较示意图;
[0053]
图6是本发明表示使用故障数据集ds2-3的软件可靠性增长模型比较示意图;
[0054]
图7是本发明使用故障数据集ds1的十二个软件可靠性增长模型排名比较结果示意图;
[0055]
图8是本发明使用故障数据集ds2的十二个软件可靠性增长模型排名比较结果示意图。。
具体实施方式
[0056]
实施例1
[0057]
为了评估软件可靠性增长模型的性能,软件可靠性增长模型拟合和预测性能评估使用了各种评估标准,如mse、ts和r2等。在所有的软件可靠性增长模型评估标准中,没有一个软件可靠性增长模型的所有评估指标都优于其它的软件可靠性增长模型。也就是,当多个软件可靠性增长模型比较时,每个软件可靠性增长模型可能有至少一个评估指标值优于其它的软件可靠性增长模型。这使得通过使用多个软件可靠性增长模型评价标准来评估软件可靠性增长模型性能,是很难直观地确定哪个软件可靠性增长模型是最优的,最适合当前的软件开发和测试条件。对于模型的多个评估标准,每个软件可靠性增长模型可以具有至少一个最佳评估指标值。针对这种情况,本文提出采用灰色关联分析法对模型的各项评
价指标进行综合研究。用香农熵计算多种模型的评价指标值的内在信息,并作为灰色关联分析的权值选择最优软件可靠性增长模型。
[0058]
一种基于加权灰色关联分析法的优选软件可靠性增长模型,包括以下步骤:
[0059]
(1)基于香农熵的权重;
[0060]
利用软件可靠性增长模型的多个评价标准的信息,计算每个软件可靠增长模型评价标准的熵,然后计算权重值,给定具有行m和列n的矩阵z如下:
[0061][0062]
在矩阵z中,每一行表示一个不同的模型,每一列表示用于评估模型的评价标准,矩阵z中有m个软件可靠性增长模型和n个模型的评价标准;z
ij
表示第i个模型和第j个模型评价标准,i=1,2,...,m和j=1,2,...,n;基于香农熵的权重计算步骤具体如下:
[0063]
a、矩阵z的标准化;
[0064]
如果模型评价标准的值越小,则模型的性能越好,矩阵z的标准化可以表示如下:
[0065][0066]
相反,如果模型评价标准值越大,则其性能越优越,矩阵z的标准化可以表示如下:
[0067][0068]
其中,公式中q1和q2是常量,公式中q1=0.999999,q2=0.000001,并且q1+q2=1;s
ij
表示矩阵z标准化后第i行和第j列,i=1,2,...,m和j=1,2,...,n;
[0069]
b、计算矩阵z中每个模型评价标准的熵值,公式为:
[0070][0071]
其中,ln表示以e为底对数;
[0072]
c、矩阵z中每个模型评价标准的权重,公式为:
[0073][0074]
其中,wj表示矩阵z中第j列模型评价标准的权重;
[0075]
基于香农熵计算权重的算法如下:
[0076][0077][0078]
(2)加权灰色关联分析方法;
[0079]
灰色关联分析是来自deng的灰色理论,根据不同序列曲线几何形状的相似性来确定不同序列模型之间的相关性,用于选择最优软件可靠性增长模型的灰色关联分析具体步骤如下:
[0080]
s1、等式(1)通过等式(2)或等式(3)进行标准化如下:
[0081][0082]
其中,s
mn
表示标准化后,矩阵s
ij
第m行和第n列。
[0083]
s2、以矩阵中每列的最小值作为最优评价标准值,如下所示:
[0084][0085]
其中,表示矩阵s
ij
中每列的最小值作为最优评价标准值,上标1,2,...,n表示第几列;
[0086]
s3、在等式(7)中计算s
ij
和之间每列的距离,公式如下所示:
[0087][0088]
其中,表示矩阵s
ij
中第j列的最优评价标准值,表示矩阵δφ
ij
中每列最小值,表示矩阵δφ
ij
中每列最大值;
[0089]
s4、灰色关联系数如下计算:
[0090][0091]
其中,κ表示区分系数,其值为0.5;
[0092]
s5、基于shannon熵的具有权重的灰色关联度如下所示:
[0093][0094]
其中,ρi表示灰色关联度,其值越高,模型的性能越好。
[0095]
加权灰色关系分析的算法如下,
[0096][0097][0098]
实施例2
[0099]
实验
[0100]
(1)故障数据集
[0101]
为了验证所提出的优化选择方法的有效性,我们使用了两个开源软件项目,一个是来自故障跟踪系统的apache airavata(airavata)(https://issues.apache.org/jira/issues),另一个是来自漏洞跟踪系统的mozilla firefox(https://bugzilla.mozilla.org).我们从两个开源软件项目中获得了六个故障数据集,每个数据集
由三个连续的发布的软件版本组成。
[0102]
第一个故障数据集(ds1)包括airavata0.12jira(ds1-1)、airavata0.13jira(ds1-2)和airavata0.14jira(ds1-3)。从2012年11月到2014年6月,在ds1-1中收集了100个故障。从2012年9月到2014年7月,在ds1-2中获得了48个故障。从2012年6月到2014年12月,ds1-3共收集了50个故障。
[0103]
第二个故障数据集(ds2)来自文献,包括firefox 3.0(ds2-1)、firefox 3.5(ds2-2)和firefox 3.6(ds2-3)。在ds2-1中,53周后共检测到65个故障。在ds2-2中,在28周内发现51个故障。在ds2-3中,50周后共检测到33个故障。
[0104]
(2)软件可靠性增长模型
[0105]
为了验证所提出的优化选择方法的有效性,我们使用了两个开源软件项目,一个是来自故障跟踪系统的apache airavata(airavata)(https://issues.apache.org/jira/issues),另一个是来自漏洞跟踪系统的mozilla firefox(https://bugzilla.mozilla.org).我们从两个开源软件项目中获得了六个故障数据集,每个数据集由三个连续的发布的软件版本组成。
[0106]
我们使用了12种不同的软件可靠性增长模型来验证所提出方法的有效性,包括完全调试和不完全调试软件可靠性增长模型。从表1中可以看出,这些模型是在传统的闭源软件(css)或开源软件(oss)环境下开发的。其中,有六种完全调试软件可靠性增长模型和六种不完全调试软件可靠性增长模型;十个闭源软件可靠性模型和两个开源软件可靠性模型。这些软件可靠性模型是在不同的软件测试环境下建立的,具有不同的特点。12种不同的软件可靠性增长模型可以在不同的软件测试环境下充分地验证了所提出的优化选择方法的有效性和可信度。
[0107]
表1.软件可靠性增长模型
[0108][0109]
(3)模型评价标准
[0110]
我们使用11个模型评价标准来评估模型性能,这些模型评价标准可以从各个方面评估模型性能。这些模型评价标准包括kd、均方误差(mse)、平均绝对误差(mae)、预测平均误差(meop)、估计准确性(ae)、预测比率风险(prr)、方差(variance)、均方根预测误差(rmspe)、r2、误差平方和(sse)和泰尔统计量(ts)。其中,r2的值越大,模型的拟合性能越好。剩余的模型评价标准值越小,模型的性能就越好。表2列出了所有模型的评价标准。在实际的模型性能比较中,很少有模型的所有评价标准都优于其它模型。这使得很难通过模型评价标准直观地选出最优模型。考虑到这一问题,本文提出使用加权灰色关联分析方法对srgm的软件可靠性增长模型评价标准进行综合考察,以选出最优的软件可靠性增长模型。
[0111]
表2.11种模型评价标准
[0112]
[0113][0114]
(4)模型参数估计方法
[0115]
不同的模型参数估计方法会产生略微不同的估计参数值。常用的参数估计方法是最大似然估计(mle)和最小二乘估计(lse)。mle对大样本数据具有更好的参数估计性能,但当使用mle估计参数值时,存在参数值不存在的情况。考虑到使用mle估计模型参数值可能不存在,为了充分验证所提出的优化选择方法的有效性,我们使用lse估计模型参数值。通常,软件故障数据集是一个小样本,使用最大似然估计和最小二乘估计估计模型参数值的有效性没有显著差异。表3列出了分别使用ds1和ds2估计模型参数值的详细信息。
[0116]
表3.分别使用ds1和ds2估计模型参数值
[0117]
[0118][0119]
(5)基于故障数据集(ds1)的最优选择软件可靠性增长模型的实验结果和讨论
[0120]
从表4中可以明显看出,除了kd、ae和prr之外,iss模型的mse、mae、meop、variance、rmspe、r2、sse和ts优于其它模型。除了iss模型外,li模型在mse、mae、meop、variance、rmspe、r2、sse和ts方面优于其它模型。除了ae和prr之外,z-t-p模型的kd、mse、mae、meop、variance、rm spe、r2,sse和ts都比其它模型差。从图1中,我们可以清楚地看到,在所有模型中,iss模型是最好的,其次是li模型,最差的是z-t-p模型。
[0121]
表4.使用ds1-1的十二个软件可靠性增长模型的各种评价标准值
[0122][0123][0124]
在表5中,可以看到,除了ae和prr之外,iss模型、singhal模型和li模型的mse、mae、meop、variance、rmspe、r2、sse和ts都彼此非常接近,它们的性能明显优于其它模型。由于li模型中的ae和prr值较高,其整体性能不如iss模型和singhal模型。singhal模型的性能明显比iss模型差。图2显示了iss模型和singhal模型的发展趋势。
[0125]
表5.使用ds1-2的十二个软件可靠性增长模型的各种评价标准值
[0126] kdmsemaemeopaeprrvariancermsper2ssetsg-o0.5552630.743.6843.395113.2479.30355.34556.7230.554739987053.98dss0.34221127.626.69726.5231079.41560737.61738.9240.809117139035.34iss0.2585142.58.75188.69420.47771872011.82311.8240.9762151812.522ggo0.70524041.655.26854.9053.7621117.9465.65166.5210.320461029066.687giss0.48512209.941.52341.2481.564273.62454.79757.3090.630933148049.147yid10.57382778.745.11344.8160.562481.73756.59957.9830.532841958055.294yid20.43161769.635.60435.372.951362.54847.24748.9580.702526721044.127p-n-z0.2596247.3311.04510.9720.21142803.315.88616.0050.95873710016.442p-z0.2194454.8215.45115.3480.3538500.3222.26622.6760.92456776822.222z-t-p0.6664320.859.08158.6850.3393122.5467.70268.7480.287963948068.263li模型0.1852120.828.61078.55369.081221354011.37711.5460.97981812311.492singhal模型0.2337204.3810.32510.2560.39625776.714.16414.2130.96633024814.847
[0127]
从表6中可以明显看出,除了ae和prr之外,ggo模型的kd、mse、mae、meop、variance、rmspe、r2、sse和ts比其它模型差。li模型的性能是所有模型中最好的。除了iss模型外,singhal模型在kd、mse、mae、meop、variance、rmspe、r2、sse和ts方面都超过了其它模型。从图3可以看出,iss模型最好,其次是singhal,最差的是ggo模型。
[0128]
表6.使用ds1-3的十二个软件可靠性增长模型的各种评价标准值
[0129][0130][0131]
(6)基于故障数据集(ds2)的最优选择软件可靠性增长模型的实验结果和讨论
[0132]
表7显示,除ae和prr外,p-n-z模型的kd、mse、mae、meop、variance、rmspe、r2、sse和ts均优于其它模型。其次是yid2模型,除kd和ae外,p-n-z模型的mse、mae、meop、variance、rmspe、r2、sse和ts均优于其它模型。所有模型中最差的是p-z模型。这些结果可以从图4中看到。
[0133]
表7.使用ds2-1的十二个软件可靠性增长模型的各种评价标准值
[0134] kdmsemaemeopaeprrvariancermsper2ssetsg-o0.1616.4193.68093.60870.08242.55344.10084.14160.9123820.968.2292dss0.260341.4645.72615.61380.157582.946.55716.63460.77842073.213.077iss0.431578.5588.06967.90820.224745.0998.63928.65070.58863849.417.819ggo0.08113.0271.48861.45892.96350.27511.68951.68970.9841148.323.4979giss0.07723.12791.57481.54261.38220.25721.69931.69930.984150.143.5192yid10.04651.12650.87360.85620.45170.10291.03351.03450.994155.1982.1338yid20.04480.96750.79360.77770.5040.08860.9550.95510.994947.4071.9775p-n-z0.03720.92770.77360.75780.52020.12610.92560.92570.995244.5311.9166p-z0.3858116.779.03298.84470.329115.15214.89416.120.41355488.121.277z-t-p0.231614.382.65572.59920.53850.9153.81683.89510.9293661.477.3867li模型0.146813.1053.36473.2960.12011.49943.53393.5520.9328629.047.2034singhal模型0.04181.04220.87290.85430.55830.14620.98590.99420.994947.9411.9886
[0135]
从表8中可以看出,除了iss和z-t-p模型外,其他模型的11个标准非常接近。从图5可以看出,在所有模型中,yid1模型最好,其次是yid2模型,最差的是iss模型。此外,表8显示,没有一个模型具有优于其它模型的所有评价标准值。即使是最差的模型也有比其它模型更好的评价标准值。因此,综合研究评价模型的标准将更有意义。
[0136]
表8.使用ds2-2的十二个软件可靠性增长模型的各种评价标准值
[0137] kdmsemaemeopaeprrvariancermsper2ssetsg-o0.07492.04231.2021.15570.10820.61581.37941.38080.990151.0573.6921dss0.15017.4982.44282.34880.06642.15572.75842.79690.9636187.457.0744iss0.398746.666.11645.87180.156498.9466.49256.50920.78281119.817.291ggo0.07372.12561.25031.20030.11580.6211.37991.38160.990151.0153.6906giss0.08472.34541.38931.33140.09050.63771.41381.41390.989553.9433.795yid10.06642.00981.21661.1680.11390.63171.34821.35190.990648.2343.5886yid20.06642.01621.2211.17220.12820.63121.34961.35310.990648.3883.5943p-n-z0.06851.89071.14551.09780.410.57611.27231.27330.991643.4853.4073p-z0.06542.12871.29431.2380.44710.60961.31851.3190.990946.8333.5361z-t-p0.233837.4465.85275.58670.96081.82317.04487.4980.8475786.3714.49li模型0.07022.16371.29621.24221.2580.62581.3661.36870.990349.7653.6451singhal模型0.0642.30491.38861.32550.27980.61961.33941.33960.990648.4043.5949
[0138]
同样,表9显示,除ae和prr之外,p-n-z模型的kd、mse、mae、meop、variance、rmspe、r2、sse和ts优于的其它模型,其次是yid1模型。相反,除ae和prr之外,z-t-p模型的所有评价指标都比其它模型差。在图6中,我们可以看到p-n-z模型具有最好的拟合性能,其次是yid1,z-t-p模型在所有模型中表现出最差的性能。
[0139]
表9.使用ds2-3的十二个软件可靠性增长模型的各种评价标准值
[0140][0141][0142]
(7)综合比较
[0143]
从表10中,我们可以看到分别使用ds1和ds2的12个软件可靠性增长模型的加权得分和排名。表11显示了十二个软件可靠性增长模型的十一个评价标准的权重值。从图7和图8中,我们可以直观地看到,在所有软件测试环境中,没有一个模型能够优于其它模型。尽管singhal和z-t-p模型具有六个模型参数,但从图7可以看出,具有三个模型参数的iss模型仍然优于它们,排名第一。使用ds1-1,singhal模型排名第六,z-t-p模型排名最后。在图8中,我们可以看到iss模型不如其它模型,分别使用ds2-1、ds2-2和ds2-3后,排名分别是第十一、第十二和第十。
[0144]
表10.分别使用故障数据集ds1和ds2对十二个软件可靠性增长模型进行排名
[0145][0146]
表11.十一个模型评价标准的权重值
[0147][0148][0149]
其次,两个开源软件可靠性增长模型在使用开源故障数据集比较性能时,表现的性能一般。这表明开源软件的测试环境是复杂和不确定的。因此,在开源软件环境中建立软件可靠性增长模型是困难的,需要综合考虑开发和测试环境和因素。
[0150]
最后,通过分析表4-9可以得出结论,只有综合考虑模型的评价标准,才能选出最
优模型。针对不同的软件测试环境采用不同的模型是评估软件可靠性最合理、最有效的方法。没有一个模型能够在所有复杂的软件测试环境中都表现良好。最优软件可靠性增长模型只能在特定的环境中表现出最优的性能。我们提出的方法通过综合考虑评价标准及其关系来选择最优模型,这是一种实用有效的方法。
[0151]
总之,选择最优软件可靠性增长模型是软件可靠性评估中的一项重要任务。所选择的最优软件可靠性增长模型能够适应当前的软件测试环境,有效地评估软件的可靠性。本研究使用了两个开源软件项目中的6个开源故障数据集、11个模型评价标准和12个软件可靠性增长模型来验证所提出的优化选择模型方法的有效性。利用信息熵作为灰色关联分析的权重,选出最优软件可靠性增长模型。实验结果表明,所提出的方法可以有效地确定适合当前软件测试环境的软件可靠性增长模型。此外,没有一个模型能够适应所有的软件测试环境。提出的方法采用加权灰色关联分析法,综合考虑模型的评价标准,选择最优软件可靠性增长模型。实验结果验证了所提出方法的有效性和实用性。
[0152]
在未来的工作中,我们计划整合其他选择最优软件可靠性增长模型的方法,增加多种评估标准和各种软件可靠性增长模型,并提升从不同角度选择最优模型的能力。
[0153]
本发明说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

技术特征:
1.一种基于加权灰色关联分析法的优选软件可靠性增长模型方法,其特征在于,包括以下步骤:步骤1,基于香农熵的权重;利用软件可靠性增长模型的多个评价标准的信息,计算每个软件可靠增长模型评价标准的熵,然后计算权重值,给定具有行m和列n的矩阵z如下:在矩阵z中,每一行表示一个不同的模型,每一列表示用于评估模型的评价标准,矩阵z中有m个软件可靠性增长模型和n个模型的评价标准;z
ij
表示第i个模型和第j个模型评价标准,i=1,2,...,m和j=1,2,...,n;基于香农熵的权重计算步骤具体如下:步骤1.1,矩阵z的标准化;如果模型评价标准的值越小,则模型的性能越好,矩阵z的标准化表示如下:相反,如果模型评价标准值越大,则其性能越优越,矩阵z的标准化表示如下:其中,公式中q1=0.999999,q2=0.000001,并且q1+q2=1;s
ij
表示矩阵z标准化后第i行和第j列,i=1,2,...,m和j=1,2,...,n;步骤1.2,计算矩阵z中每个模型评价标准的熵值,公式为:其中,ln表示以e为底对数;步骤1.3,矩阵z中每个模型评价标准的权重,公式为:其中,w
j
表示矩阵z中第j列模型评价标准的权重;步骤2,加权灰色关联分析方法;根据不同序列曲线几何形状的相似性来确定不同序列模型之间的相关性,加权灰色关联分析方法优选软件可靠性增长模型的具体步骤如下:步骤2.1,等式(1)通过等式(2)或等式(3)进行标准化如下:
其中,s
mn
表示标准化后,矩阵s
ij
第m行和第n列;步骤2.2,以矩阵中每列的最小值作为最优评价标准值,如下所示:其中,表示矩阵s
ij
中每列的最小值作为最优评价标准值;上标1,2,...,n表示第几列;步骤2.3,在等式(7)中计算s
ij
和之间每列的距离,公式如下所示:其中,表示矩阵s
ij
中第j列的最优评价标准值,表示矩阵δφ
ij
中每列最小值,表示矩阵δφ
ij
中每列最大值;步骤2.4,灰色关联系数如下计算:其中,κ表示区分系数,其值为0.5;步骤2.5,基于shannon熵的具有权重的灰色关联度如下所示:其中,ρ
i
表示灰色关联度,其值越高,模型的性能越好。

技术总结
本发明属于软件可靠性增长模型技术领域,涉及基于加权灰色关联分析法的优选软件可靠性增长模型方法。发明中,我们提出了基于加权灰色关系分析方法来选择最优软件可靠性增长模型方法。这些模型包括闭源和开源软件可靠性增长模型,以及完美和不完美的调试软件可靠性增长模型。为了有效验证所提出方法的有效性,我们使用了12个不同的软件可靠性增长模型、11个模型评估标准和两个连续版本的开源软件故障数据集。研究结果表明,该方法可以在当前的软件开发和测试环境中选出最优的软件可靠性增长模型。总之,本研究对实际的软件开发和测试具有重要的现实意义,并帮助开发人员或测试人员选择最优的软件可靠性增长模型进行软件可靠性评估做出了重要贡献。可靠性评估做出了重要贡献。可靠性评估做出了重要贡献。


技术研发人员:王金勇
受保护的技术使用者:山西大学
技术研发日:2023.05.22
技术公布日:2023/8/16
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐