软件质量的量化方法及系统与流程

文档序号:16327808发布日期:2018-12-19 06:01阅读:294来源:国知局
软件质量的量化方法及系统与流程
本发明涉及互联网领域,尤其涉及一种软件质量的量化方法及系统。
背景技术
随着软件和信息技术能力的提升与互联网的日益普及,人们对软件产品的使用越来越频繁。软件产品已深入影响着社会生产与日常生活,对其质量的要求与把控已变得越来越重要。以iso/iec25000为代表的系列标准给出了规范软件产品质量度量和评价活动的基本规范,但iso/iec25000标准体系建立的方法体系中,由于缺少指标加权方法,软件产品质量评价的技术实现过程尚未完全贯通。针对指标加权方法的研究,目前主要分为主客观赋值法两类。其中,主观赋值法,又称基于“功能驱动”原理的赋权方法,是根据个人经验、知识和偏好,由决策者和专家主观地给出的权重系数,主要有专家调查法、循环评分法、层次分析法等;基于专家的个人经验进行评价,具有一定的主观随意性,评价结果的理论性不强,且变动较大。而客观赋值法是根据的实际数据,利用数学模型求得权重系数,主要有最大离差法、信息熵法、变异系数法等;该方法中,数学模型抽象且缺乏通用性,评价结果对所选对象的依赖性较强,不易推广。应该注意,上面对技术背景的介绍只是为了方便对本发明的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本发明的
背景技术
部分进行了阐述而认为上述技术方案为本领域技术人员所公知。技术实现要素:本发明目的在于解决现有质量度量标准体系中缺失的质量特性、子特性和度量指标的加权技术指导,完善软件产品质量评价的技术体系。本发明实施例提供一种软件质量的量化方法,所述量化方法包括:获得待评价软件中各预定指标的两两重要性比值,根据所述重要性比值建立质量指标重要性矩阵,根据所述质量指标重要性矩阵计算获得待评价软件的第一质量指标权重系数;通过信息熵方法计算与所述待评价软件类型相同的软件的基准数据中各预定指标的区分度,根据所述区分度获得所述待评价软件的第二质量指标权重系数;根据所述第一质量指标权重系数和所述第二质量指标权重系数计算获得所述待评价软件与对应基准软件的相似度,根据所述相似度获得所述待评价软件的量化结果。在本发明一实施例中,所述获得待评价软件中各预定指标的评价权重,根据所述评价权重建立质量指标矩阵包含:将所述待评价软件中各预定指标进行两两比较,获得各预定指标的指标重要性矩阵;根据所述指标重要性矩阵通过矩阵变换获得质量指标矩阵。在本发明一实施例中,将所述待评价软件中各预定指标进行两两比较包含:通过择优比较法、相比比较法、对比平均法中一个或多个的组合将所述待评价软件中各预定指标进行两两比较。在本发明一实施例中,通过信息熵方法计算与所述待评价软件类型相同的软件的基准数据中各预定指标的区分度包含:通过以下公式计算获得各预定指标的区分度:在上式中,hk为第k个质量指标的信息熵,即为该指标的区分度,i为基准数据中软件产品的序号,rik为第i个软件产品在第k个质量指标的测量结果;m为与所述待评价软件类型相同的历史软件的历史基准数据;k为预定指标的数量。在本发明一实施例中,根据所述区分度获得所述待评价软件的第二质量指标权重系数包含:通过以下公式计算获得各预定指标的权重系数,根据所述预定指标的权重系数获得第二质量指标权重系数;在上式中,为第k个质量指标的第二权重系数,k为质量指标的序号,b是第二质量权重的标识;hk为第k个质量指标的信息熵;且在本发明一实施例中,根据所述第一质量指标权重系数和所述第二质量指标权重系数计算获得所述待评价软件与对应基准软件的相似度包含:通过以下公式计算获得所述待评价软件与对应基准软件的相似度:在上式中,m为基准集中软件产品历史测量结果的数量;d(ri,r′)为待评软件产品测量结果与基准集中某一数据的欧几里德距离;为基准数据集内部欧几里德距离平均值;s为待评价软件与对应基准软件的相似度。在本发明一实施例中,所述基准数据集内部欧几里德距离平均值通过以下公式计算获得:上式中,rik为第i个基准软件产品在第k个预定指标的测量结果;r′k为待评价软件在第k个预定指标的测量结果;d(ri,rj)为两个基准软件中测量结果的欧几里德距离;为基准数据集内部欧几里德距离平均值。在本发明一实施例中,根据所述相似度获得所述待评价软件的量化结果包含:通过以下公式计算获得所述待评价软件的综合权重值,根据所述综合权重值量化所述待评价软件获得所述待评价软件的量化结果:在上式中,ωp为第一质量指标权重系数;ωb为第二质量指标权重系数;s为待评价软件与对应基准软件的相似度。本发明另一实施例还提供一种软件质量的量化系统,所述量化系统包括基于偏好加权模块、基于基准数据加权模块和计算模块;所述基于偏好加权模块用于获得待评价软件中各预定指标的两两重要性比值,根据所述重要性比值建立质量指标重要性矩阵,根据所述质量指标重要性矩阵计算获得待评价软件的第一质量指标权重系数;所述基于基准数据加权模块用于通过信息熵方法计算与所述待评价软件类型相同的软件的基准数据中各预定指标的区分度,根据所述区分度获得所述待评价软件的第二质量指标权重系数;所述计算模块分别与所述基于偏好加权模块和基于基准数据加权模块相连,用于根据所述第一质量指标权重系数和所述第二质量指标权重系数计算获得所述待评价软件与对应基准软件的相似度,根据所述相似度获得所述待评价软件的量化结果在本发明一实施例中,所述基于偏好加权模块还包含比较模块,所述比较模块用于将所述待评价软件中各预定指标进行两两比较,获得各预定指标的指标重要性矩阵;根据所述指标重要性矩阵通过矩阵变换获得质量指标矩阵。在本发明一实施例中,所述比较模块通过择优比较法、相比比较法、对比平均法中一个或多个的组合将所述待评价软件中各预定指标进行两两比较。在本发明一实施例中,所述基于基准数据加权模块还用于通过以下公式计算获得各预定指标的区分度:在上式中,hk为第k个质量指标的信息熵,即为该指标的区分度,i为基准数据中软件产品的序号,rik为第i个软件产品在第k个质量指标的测量结果;m为与所述待评价软件类型相同的历史软件的历史基准数据;k为预定指标的数量。在本发明一实施例中,所述基于基准数据加权模块还用于通过以下公式计算获得各预定指标的权重系数,根据所述预定指标的权重系数获得第二质量指标权重系数;在上式中,为第k个质量指标的第二权重系数,k为质量指标的序号,b是第二质量权重的标识;hk为第k个质量指标的信息熵;且本发明提供了一种基于偏好和基于基准数据的软件质量量化方法及系统的综合加权法,从主观和客观两个方面分别提出加权方法,然后结合数据相似度分析,将两种方法得到的权重系数进行综合。以此,既能根据实际的历史基准数据客观地表达各指标的重要程度,又能兼顾决策者对各个指标的偏好。参照后文的说明和附图,详细公开了本发明的特定实施方式,指明了本发明的原理可以被采用的方式。应该理解,本发明的实施方式在范围上并不因而受到限制。在所附权利要求的精神和条款的范围内,本发明的实施方式包括许多改变、修改和等同。针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。应该强调,术语“包括/包含”在本文使用时指特征、整件、步骤或组件的存在,但并不排除一个或更多个其它特征、整件、步骤或组件的存在或附加。附图说明所包括的附图用来提供对本发明实施例的进一步的理解,其构成了说明书的一部分,用于例示本发明的实施方式,并与文字描述一起来阐释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:图1是本发明实施例的软件质量的量化方法的一流程示意图;图2是本发明实施例的软件质量的量化系统的一结构示意图。具体实施方式参照附图,通过下面的说明书,本发明的前述以及其它特征将变得明显。在说明书和附图中,具体公开了本发明的特定实施方式,其表明了其中可以采用本发明的原则的部分实施方式,应了解的是,本发明不限于所描述的实施方式,相反,本发明包括落入所附权利要求的范围内的全部修改、变型以及等同物。请参考图1所示,本发明实施例提供一种软件质量的量化方法,所述量化方法包括:s101获得待评价软件中各预定指标的两两重要性比值,根据所述重要性比值建立质量指标重要性矩阵,根据所述质量指标重要性矩阵计算获得待评价软件的第一质量指标权重系数;s102通过信息熵方法计算与所述待评价软件类型相同的软件的基准数据中各预定指标的区分度,根据所述区分度获得所述待评价软件的第二质量指标权重系数;s103根据所述第一质量指标权重系数和所述第二质量指标权重系数计算获得所述待评价软件与对应基准软件的相似度,根据所述相似度获得所述待评价软件的量化结果。在上述实施例中,获得待评价软件中各预定指标的评价权重主要是由专家或经验较丰富的人士基于经验和偏好,对各指标的重要程度经过分析后所给出的评价权重;其中在分析所述预定指标时,可采用两两比较法确定该些预定指标的重要性,再根据确定的重要性计算获得该待评价软件的各预定指标的权重系数;例如在该实施例中,所述获得待评价软件中各预定指标的评价权重,根据所述评价权重建立质量指标矩阵可包含:将所述待评价软件中各预定指标进行两两比较,获得各预定指标的指标重要性矩阵;根据所述指标重要性矩阵通过矩阵变换获得质量指标矩阵;其中,所述两两比较法可包含:通过择优比较法、相比比较法、对比平均法中一个或多个的组合将所述待评价软件中各预定指标进行两两比较。为更清楚的解释上述实施例中各步骤的实施细节,以下以一实施例对上述方案做整体说明,本领域相关技术人员当可知,该说明目的在于帮助理解本发明所提供的上述软件质量的量化方法,并不构成任何技术限定;本领域相关技术人员可在本发明提供的原理基础上,根据实际需要选择替换该方案中部分具体应用方式,本发明在此并不对其做任何限制。首先,在本发明所提供的上述实施例的步骤s101中,可基于偏好的赋值方法进行待评价软件赋值;可通过设对于某一软件产品,定义其预定指标集为:c=(c1,c2,…,cn);区别于传统主观赋值法,基于偏好的赋值方法不直接给出权重系数,而是由专家基于经验和偏好,对指标的重要程度进行两两比较,形成预定指标重要性矩阵,然后通过矩阵变换,得出指标权重系数;以此,相较于直接给出准确的权重系数,专家更容易对某两个指标的重要性差距做出清晰的判断。对于某一待评价软件,可构造预定指标重要性矩阵:上式中,πij意为指标i相比于指标j的重要程度,πii=1,πij=1/πji。设基于偏好的预定指标权重系数为:将预定指标权重(ωp)t右乘m,则有:由矩阵理论可知,θ是m的唯一非零的最大的特征根,记为λmax,而(ω′)t是θ所对应的特征矢量。因为本文对预定指标权重系数不做任何数值的假设,故(ωp)t是未知的。而m可通过两两比较的方法得到估计矩阵m′,即可根据矩阵理论求出最大特征根λmax和对应特征矢量(ωp)t,ωp即为基于偏好求得的第一质量指标权重系数。单独比较某两个指标,较为容易排出重要性次序,但由于这种方式不满足传递性,往往出现循环,如a>b,b>c,c>a,可采用择优比较法、相比比较法、对比平均法等两两比较的方法进一步进行比较排序。然后,在本发明所提供的上述实施例的步骤s102中,可基于基准数据的指标加权方法进行待评价软件赋值;相对于基于偏好的权重加权方法注重指标重要性的考虑,基于基准数据的指标加权方法注重体现同类型软件产品在某一指标上的竞争激烈程度的差异。针对某一指标,所有软件产品的表现都很优秀,说明该指标的区分度较低,不宜被赋予高权重系数;相反,如果某一指标的评价结果良莠不齐,说明具有较好的区分度,应适当提高其权重。在此,本申请可采用信息熵的方法分析各指标的区分度,并据此给出指标加权方法。假定有m个同类型软件产品的历史基准数据,定义第k个预定指标的信息熵为:上式中,rik为第i个软件产品在第k个预定指标的测量结果;m为与所述待评价软件类型相同的历史软件的历史基准数据;k为预定指标的数量。假定,当ωik=0时,ωikln(ωik)=0。第k个预定指标的权重系数为:显然,为第k个质量指标的第二权重系数,k为质量指标的序号,b是第二质量权重的标识;hk为第k个质量指标的信息熵;且步骤s101中提出的基于偏好的权重加权方法属于主观赋值法,侧重于反映各指标的重要程度;步骤s102中提出的基于基准数据的权重加权方法属于客观赋值方法,侧重于根据历史情况,提高指标集的区分度和评价能力;为了兼顾主客观权重系数赋值方法的优缺点,既减少主观随意性,又能反映决策者偏好,还可进一步进行综合加权,其基本思路是根据上述两种加权方法分别求出对应的指标权重系数,然后利用数学模型得出综合权重系数。基于此,在本发明所提供的上述实施例的步骤s103中,则可采用综合加权法将上述第一质量指标权重系数和第二质量指标权重系数进行结合,所采用的综合加权公式可为:上式中,ωp为基于偏好加权方法求得的权重系数,ωb为基于基准数据加权方法求得的权重系数,s为待评软件产品与基准软件产品集的相似度。上式中,m为基准集中软件产品历史测量结果的数量;d(ri,r′)为待评软件产品测量结果与基准集中某一数据的欧几里德距离;为基准数据集内部欧几里德距离平均值;s为待评价软件与对应基准软件的相似度。上式中,rik为第i个软件产品在第k个预定指标的测量结果;r′k为待评软件产品在第k个预定指标的测量结果,由上述分析可知,r′k可依据iso/iec25000求得客观数值。上式中,d(ri,rj)为基准集中两软件产品测量结果的欧几里德距离。由此,利用所述相似度得到更为准确有效的权重系数,其后根据该权重系数即可完成对待评价软件的量化分析。请参考图2所示,本发明另一实施例还提供一种软件质量的量化系统,所述量化系统包括基于偏好加权模块、基于基准数据加权模块和计算模块;所述基于偏好加权模块用于获得待评价软件中各预定指标的两两重要性比值,根据所述重要性比值建立质量指标重要性矩阵,根据所述质量指标重要性矩阵计算获得待评价软件的第一质量指标权重系数;所述基于基准数据加权模块用于通过信息熵方法计算与所述待评价软件类型相同的软件的基准数据中各预定指标的区分度,根据所述区分度获得所述待评价软件的第二质量指标权重系数;所述计算模块分别与所述基于偏好加权模块和基于基准数据加权模块相连,用于根据所述第一质量指标权重系数和所述第二质量指标权重系数计算获得所述待评价软件与对应基准软件的相似度,根据所述相似度获得所述待评价软件的量化结果。在上述实施例中,所述基于偏好加权模块还包含比较模块,所述比较模块用于将所述待评价软件中各预定指标进行两两比较,获得各预定指标的指标重要性矩阵;根据所述指标重要性矩阵通过矩阵变换获得质量指标矩阵。其中,所述比较模块通过择优比较法、相比比较法、对比平均法中一个或多个的组合将所述待评价软件中各预定指标进行两两比较。在本发明一实施例中,所述基于基准数据加权模块还可用于通过以下公式计算获得各预定指标的区分度:在上式中,rik为第i个软件产品在第k个质量指标的测量结果;m为与所述待评价软件类型相同的历史软件的历史基准数据;k为预定指标的数量。在上述实施例中,所述加权模块还可用于通过以下公式计算获得各预定指标的权重系数,根据所述预定指标的权重系数获得第二质量指标权重系数;在上式中,且k为预定指标的数量。以下以实际工作中一待评价软件为例,对上述软件质量量化方法及系统做验证说明:以某软件的效率特性的资源利用性作为试验对象,根据iso/iec25000相关标准进行指标剪裁和测量,指标包括:处理器占用率满足度、内存占用率满足度、外存空间占用率满足度、堆栈使用满足度、传输带宽负载满足度、i/o设备占用率满足度、i/o等待时间满足度,对应测量结果如下表。处理器占用率满足度0.57内存占用率满足度0.86外存空间占用率满足度0.76堆栈使用满足度0.89传输带宽负载满足度0.71i/o设备占用率满足度0.73i/o等待时间满足度0.52即,r′=(0.57,0.86,0.76,0.89,0.71,0.73,0.52);通过赋值模块的专家法构建质量指标重要性矩阵:根据上述公式(1)和公式(2)可得基于偏好的权重系数即第一质量指标权重系数:ωp=(0.2,0.2,0.1,0.2,0.15,0.1,0.05);从基准库中选取10个同类型软件产品的历史基准数据,如下表。根据上述公式(3)和公式(4)可得基于基准数据的权重系数即第二质量指标权重系数:ωb=(0.14,0.15,0.18,0.11,0.18,0.10,0.14);根据公式(6)(7)(8),计算待评软件产品与基准软件产品集的相似度:s=0.7;根据公式(5),综合两种加权方法得出的权重系数:ω=(0.18,0.18,0.13,0.16,0.16,0.10,0.09);则待评软件的资源利用率为:ω×r′=0.732本发明提供了一种基于偏好和基于基准数据的软件质量量化方法及系统的综合加权法,从主观和客观两个方面分别提出加权方法,然后结合数据相似度分析,将两种方法得到的权重系数进行综合。以此,既能根据实际的历史基准数据客观地表达各指标的重要程度,又能兼顾决策者对各个指标的偏好。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1