本发明涉及软件可靠性技术领域,更具体的说是涉及一种基于多维分层准则的软件可靠性验收风险评估方法。
背景技术:
软件可靠性的验收是软件验收阶段重点关注的内容,是对软件的可靠性进行考核、评价并做出相应的验收决策的关键环节。众所周知,对于任何软件项目而言,风险是客观存在的。因此在软件可靠性验收阶段不仅要考虑软件产品的可靠性目标是否实现,而且还需要对软件可靠性验收的风险进行合理评估,确保该风险是处于可接受水平,以有效保障验收工作开展的意义。但目前针对软件可靠性验收的研究还存在如下问题:验收时通常只考虑软件产品而忽略了软件过程的可靠性存在忽略影响软件可靠性的过程因素;现有的软件可靠性验收准则覆盖不全面、准则不够细化导致可操作性不强;仍缺少有效的针对软件可靠性验收风险进行评估的方法。
因此,如何有效地对软件的可靠性进行验收以及评估出验收存在的风险是本领域技术人员亟需解决的问题。
技术实现要素:
有鉴于此,本发明建立了软件可靠性多维分层验收准则,并提供了一种基于多维分层准则的软件可靠性验收风险评估方法。首先主要参考ieeestd1633-2016标准,综合考虑了软件产品和软件过程两个维度,建立软件可靠性验收准则分类层和准则层,在此基础上进行细则层扩展,将验收准则细化为两项以上的细则,增加评分的可操作性。并通过对细则层的分析将各项细则分为定量和定性两种评分类型,分别构建定量指标型和定性分级型细则的评分标准。然后提出了基于准则的软件可靠性验收风险评估方法,该方法由定量指标计算、定性指标量化和归一化、加权综合计算三部分构成。评估流程为:首先对已建立的验收准则中的细则层进行评分,根据不同的评分类型分别进行处理:对于定量指标,参考ieeestd1633-2016和gb/t29832-2013标准已有的计算公式进行计算和评分;对于定性指标,采取中介逻辑理论进行量化并进行中值归一化处理。然后采用基于群体决策理论改进的bwm方法自底向上进行加权综合评估,给出定量的计算结果,根据评估结果给出评估建议。
为了实现上述目的,本发明采用如下技术方案:
一种基于多维分层准则的软件可靠性验收风险评估方法,具体步骤如下:
步骤1:基于ieee1633-2016标准确定软件可靠性验收准则分类,综合考虑软件产品可靠性和软件过程可靠性两个维度,建立软件可靠性验收准则;
步骤2:在准则分类层和准则层的基础上进行细则层的扩展,将验收准则细化为两项以上的细则;
步骤3:划分各项细则的评分类型,分别构建定量指标型和定性分级型细则的评分标准;
步骤4:进行定量指标评估,通过参考ieeestd1633-2016和gb/t29832-2013标准,确定定量指标及其计算方法,并给出参数的数据来源参考;
步骤5:进行定性指标评估,通过中介逻辑系统实现定性指标的量化,并利用中值归一化的方法进行数据归一化处理;
步骤6:采用基于群体决策的bwm方法进行自底向上综合加权评估;
步骤7:综合计算出软件可靠性验收风险评估结果,并根据结果给出验收建议。
优选的,所述步骤1具体实现过程如下:
步骤11:主要参考ieeestd1633-2016标准中给出的验收准则,该验收准则共包含足够的缺陷移除、可靠性估计置信度、足够的代码测试覆盖、白足够的盒测试覆盖和足够的强度测试覆盖五个分类,将其作为软件可靠性验收的五个评判角度,由此确立软件可靠性验收准则的五个分类;
步骤12:主要参考ieeestd1633-2016标准,综合考虑软件产品可靠性评估和不同软件过程阶段的软件可靠性工作的开展,对缺陷移除、可靠性评估置信度以及各种测试过程的覆盖制定相关的验收要求。
优选的,所述步骤2具体实现过程如下:进行细则层扩展将验收准则细化,为每条验收准则配套两项以上的细则,增加评分的可操作性。
优选的,所述步骤3具体实现过程如下:划分各项细则的评分类型,分别构建定量指标型和定性分级型细则的评分标准。
优选的,所述步骤4具体实现过程如下:通过参考ieeestd1633-2016和gb/t29832-2013标准,确定定量指标及其计算方法,并给出参数的数据来源参考。
优选的,所述步骤5具体实现过程如下:
步骤51:通过中介逻辑的思想,确定每项细则的谓词描述,并通过数值化映射将定性指标转化为定量指标;
步骤52:将通过上述量化方法转化的数值,采用中值归一化方法进行等比例的扩大,进行数据的归一化处理。
优选的,所述步骤6具体实现过程如下:
步骤61:采用基于群体决策方法对bwm方法进行改进,首先通过求解拟优一致矩阵和权重向量,确定单个专家对各个细则/准则/准则分类的判断权重;
步骤62:通过求解一致性比率、计算专家权重和权重归一化,确定群体决策情况下专家的相对权重;
步骤63:最终求解出群体决策情况下的细则/准则/准则分类的综合权重。
优选的,所述步骤7具体实现过程如下:综合计算出软件可靠性验收风险评估结果,并根据结果给出验收建议。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于多维分层准则的软件可靠性验收风险评估方法,解决了难以针对软件可靠性验收风险进行定量评估的难题,建立了综合考虑软件产品可靠性和软件过程可靠性两个维度、由准则分类层、准则层和细则层构成的软件可靠性多维分层验收准则,并给出了具有参考意义的评分标准。提出了软件可靠性验收风险评估方法,该方法由定量指标计算、定性指标量化和归一化、加权综合计算三部分构成。评估流程为:首先对已建立的验收准则中的细则层进行评分,根据不同的评分类型分别进行处理,对于定量指标,根据标准给出软件可靠性定量指标计算方法,并给出参数的数据来源参考;对于定性指标,采取中介逻辑理论进行量化并进行中值归一化处理,然后采用基于群体决策理论改进的bwm方法自底向上进行加权综合评估,给出定量的计算结果,根据结果给出评估建议,从而实现对软件可靠性验收风险的定量评估。
附图说明
为了更清楚地说明本发明中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1附图为本发明提供的基于多维分层准则的软件可靠性验收风险评估方法流程图;
图2附图为本发明提供的基于多维分层准则的软件可靠性验收风险评估方法原理图;
图3附图为本发明提供的基于群体决策的bwm方法的权重计算原理图;
具体实施方式
下面将对本发明中的技术方案进行清楚、完整地描述,基于本发明中的方法,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有实施例,都属于本发明保护的范围。
本发明公开了一种基于多维分层准则的软件可靠性验收风险评估方法,为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作详细描述:
本发明是一种基于多维分层准则的软件可靠性验收风险评估方法,如图1所示为实施时的具体步骤,如图2所示为图1的补充示出了方案实施步骤中软件可靠性验收风险评估方法的计算思路。本发明的具体步骤如下:
s1:基于ieee1633-2016标准确定软件可靠性验收准则分类层和准则层;
s11:主要参考ieeestd1633-2016标准中给出的验收准则,该验收准则共包含足够的缺陷移除、可靠性估计置信度、足够的代码测试覆盖、白足够的盒测试覆盖和足够的强度测试覆盖五个分类,将其作为软件可靠性验收的五个评判角度,由此确立软件可靠性验收准则的五个分类;
s12:主要参考ieeestd1633-2016标准,综合考虑软件产品可靠性评估和不同软件过程阶段的软件可靠性工作的开展,对缺陷移除、可靠性评估置信度以及各种测试过程的覆盖制定相关的验收要求;
s2:进行细则层扩展将验收准则细化,为每条验收准则配套两项以上的细则,增加评分的可操作性;
s3:根据各验收细则的评分特点,进行评分类型的划分,分为定量指标型和定性分级型,分别构建定量指标型和定性分级型细则的评分标准;
软件可靠性定量指标型细则的评分标准制定思路如下:提取出能满足该细则所需衡量的定量指标,根据标准中给出的指标的计算公式进行计算,将计算结果的百分比数作为评分。
软件可靠性定性分级型细则的评分标准制定思路如下:根据满足的程度可以进行区分,给出较为具体的区分标准,并且为了增加评分的灵活性,将满足程度划分为三级,每一级别中划分一定的分数范围,最低分为1分,满分为10分。软件可靠性验收准则内容和评分标准如表1所示;
表1软件可靠性验收准则内容和评分标准
s4:进行定量指标评估,通过参考ieeestd1633-2016和gb/t29832-2013标准,确定定量指标及其计算方法,并给出参数的数据来源参考;
参考ieeestd1633-2016标准确定了5个定量指标:剩余测试时间、剩余缺陷数、缺陷密度、需求的可追踪性、缺陷引入率的计算公式;参考gb/t29832-2013标准中的测试覆盖率计算公式,确定了6个定量指标:语句覆盖率、分支/判定覆盖率、mc/dc覆盖率、操作剖面测试覆盖率、需求测试覆盖率和失效模式测试覆盖率的计算公式。
s5:进行定性指标评估,通过中介逻辑系统实现定性指标的量化,并利用中值归一化的方法进行数据归一化处理;
s51:通过中介逻辑的思想,确定每项细则的谓词描述,并通过数值化映射将定性指标转化为定量指标;
通过中介逻辑的思想有效的将定性指标转化为定量指标的思路如下:首先确定每项细则的谓词描述。通过对谓词逻辑进行描述从而分别确定真数值区域和假数值区域。然后选取映射函数进行数值化映射;
s52:将通过上述量化方法转化的数值,采用中值归一化方法进行等比例的扩大,进行数据的归一化处理;
中值归一化方法以原始数据的中值xmid为标准,把最大值和最小值的差作为比例因子,将数据转换到某个指定区间。由于本准则的评分数据中没有需要清理的数据,只是将数据进行等比例的扩大,因此选用中值归一化方法进行数据的归一化处理,函数公式如公式(1)所示:
x′=(x-xmid)/(xmax-xmin)(1)
s6:采用基于群体决策的bwm方法进行自底向上综合加权评估,评估计算的思路如图3所示;
s61:采用基于群体决策方法对bwm方法进行改进,首先通过求解拟优一致矩阵和权重向量,确定单个专家对各个细则/准则/准则分类的判断权重,具体步骤如下:
1)求第k个专家的拟优一致矩阵:
a)构造第k个专家的成对比较矩阵ak=(aij)n×n;
b)求反对称矩阵bk=(bij)n×n,其中bij=logaij;
c)求矩阵bk的最优传递矩阵ck=(cij)n×n,其中cij用公式(2)求解:
d)求解ak的拟优一致矩阵
2)对矩阵
3)求权重向量
s62:通过求解一致性比率、计算专家权重和权重归一化,确定群体决策情况下专家的相对权重,具体步骤如下:
1)对第k个专家拟优一致矩阵
2)再根据公式(6)计算专家的权重。
3)根据公式(7)进行权重归一化,得权重pk*:
s63:最终求解出群体决策情况下的细则/准则/准则分类的综合权重,具体步骤如下:
1)利用公式(8)得到各细则/准则/准则分类的组合权重。故第i个细则/准则/准则分类的权重为:
2)由公式(9)进行归一化处理后即得该细则/准则/准则分类的综合权重为:
s7:综合计算出软件可靠性验收风险评估结果,并根据结果给出验收建议。
通过本发明中的基于多维分层准则的软件可靠性验收风险评估方法,计算出定量的软件可靠性验收风险评估值(分数值范围:0≥评分≤100),软件可靠性验收风险评估值及其相应的验收建议如表2所示。
表2软件可靠性验收风险评估结果及建议表
通过查看对照表得到基于验收准则的软件可靠性验收风险的评估建议。
对上述说明,使本领域专业技术人员能够实现或使用本发明。本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在实施例中实现,只要符合与本文所公开的原理和新颖特点相一致的最宽的范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,包括如下步骤:
步骤1:基于ieee1633-2016标准确定软件可靠性验收准则分类,综合考虑软件产品可靠性和软件过程可靠性两个维度,建立软件可靠性验收准则;
步骤2:在准则分类层和准则层的基础上进行细则层的扩展,将验收准则细化为两项以上的细则;
步骤3:划分各项细则的评分类型,分别构建定量指标型和定性分级型细则的评分标准;
步骤4:进行定量指标评估,通过参考ieeestd1633-2016和gb/t29832-2013标准,确定定量指标及其计算方法,并给出参数的数据来源参考;
步骤5:进行定性指标评估,通过中介逻辑系统实现定性指标的量化,并利用中值归一化的方法进行数据归一化处理;
步骤6:采用基于群体决策的bwm方法进行自底向上综合加权评估;
步骤7:综合计算出软件可靠性验收风险评估结果,并根据结果给出验收建议。
2.根据权利要求1所述的一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,所述步骤1具体实现过程如下:
步骤11:主要参考ieeestd1633-2016标准中给出的验收准则,该验收准则共包含足够的缺陷移除、可靠性估计置信度、足够的代码测试覆盖、白足够的盒测试覆盖和足够的强度测试覆盖五个分类,将其作为软件可靠性验收的五个评判角度,由此确立软件可靠性验收准则的五个分类;
步骤12:主要参考ieeestd1633-2016标准,综合考虑软件产品可靠性评估和不同软件过程阶段的软件可靠性工作的开展,对缺陷移除、可靠性评估置信度以及各种测试过程的覆盖制定相关的验收要求。
3.根据权利要求1所述的一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,所述步骤2具体实现过程如下:进行细则层扩展将验收准则细化,为每条验收准则配套两项以上的细则,增加评分的可操作性。
4.根据权利要求1所述的一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,所述步骤3具体实现过程如下:根据各验收细则的评分特点,进行评分类型的划分,分为定量指标型和定性分级型,分别构建定量指标型和定性分级型细则的评分标准。
5.根据权利要求1所述的一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,所述步骤4具体实现过程如下:通过参考ieeestd1633-2016和gb/t29832-2013标准,确定定量指标及其计算方法,并给出参数的数据来源参考。
6.根据权利要求1所述的一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,所述步骤5具体实现过程如下:
步骤51:通过中介逻辑的思想,确定每项细则的谓词描述,并通过数值化映射将定性指标转化为定量指标;
步骤52:将通过上述量化方法转化的数值,采用中值归一化方法进行等比例的扩大,进行数据的归一化处理。
7.根据权利要求1所述的一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,所述步骤6具体实现过程如下:
步骤61:采用基于群体决策方法对bwm方法进行改进,首先通过求解拟优一致矩阵和权重向量,确定单个专家对各个细则/准则/准则分类的判断权重;
步骤62:通过求解一致性比率、计算专家权重和权重归一化,确定群体决策情况下专家的相对权重;
步骤63:最终求解出群体决策情况下的细则/准则/准则分类的综合权重。
8.根据权利要求1所述的一种基于多维分层准则的软件可靠性验收风险评估方法,其特征在于,所述步骤7具体实现过程如下:综合计算出软件可靠性验收风险评估结果,并根据结果给出验收建议。
技术总结