一种基于云模型和模糊聚合的软件质量综合评价方法
【技术领域】
[0001] 本发明设及软件评价方法领域,具体是一种基于云模型和模糊聚合的软件质量综 合评价方法。
【背景技术】
[0002] 随着软件产品应用的日益普及,市场对软件产品质量的要求不断提高。如何评价 软件质量的好坏成为用户、软件工程师和软件组织的管理者最为关屯、的问题h'6^。因为软件 质量的评价结果不仅可W指导用户购买和使用软件,而且也可W指导软件开发者开发出高 质量的软件产品。目前对于软件质量评价的研究主要集中在两个方面:
[0003] (1)层次分析法(Anal}ftichierarchyprocess,AHP);其主要思想是根据某种标 准对影响软件质量的各种因素进行分解,形成不同的层次,然后由各专家对同层次的因素 两两比对,得出对比矩阵。
[0004] (2)模糊综合评判方法;其主要思想是采用模糊数学中构造隶属度函数的方法对 指标的评价标准进行模糊处理,W保证依据该评价标准作出的评价更加符合人们的思维方 式。
[000引在AHP方法中,当同一层次的比较因素较多时,专家容易出现矛盾或混乱的判断, 且对比矩阵庞大、复杂度高;在模糊综合评判方法中,隶属度函数的构造是一个比较困难和 复杂的过程。而且,该些方法大都要求各评价专家考虑相同的评价指标集来给出个体的评 价信息。然而,在一些现实的软件质量评价问题中,由于评价专家常常来自不同的领域,或 者来自不同组织和部口,而且每个专家所具有的知识和经验不同,因此,每个评价专家可能 只关注评价指标集中自己感兴趣和熟悉的若干指标,如果仍然要求评价专家对评价指标集 中的所有指标进行评价,很容易导致各评价专家的评价结果之间差异较大,引起误判,从而 不利于决策者的最后决断。
[0006] 例如,对某一办公软件进行评估,评价专家由软件工程师、用户和管理人员构成, 各个专家会优先考虑自己感兴趣的评价指标,如软件工程师对软件本身的功能、可靠性等 进行评价,用户对软件的美观、操作性、效率等进行评价,而管理人员对软件的维护性、可移 植性等进行评价。其次,现有的大多数评价方法中,要求各专家的个人评价指标集之间是不 重叠的,该种假设过于理想化,不符合现实情况,因为某些专家之间的知识和兴趣有可能是 交叉的。
[0007] 合肥工业大学的岳峰,苏兆品,陆阳和张国富,在系统工程与电子技术(2013, 35 (07) : 1460-1466)"基于模糊软集合的软件质量综合评价方法"中,提出了一种基于偏好 和模糊软集合的软件质量综合评价方法。
[0008] 该方法可W利用模糊软集合处理不同专家的不同偏好,并对专家的评价结果进行 信息融合,得到软件质量的综合评价结果。
[0009] 上述评价方法的不足之处在于,评判专家对质量特性的评价是按照下式所示的固 定评价等级进行的。
[0010] H={0, 0. 1,0. 2, 0. 3, 0. 4, 0. 5, 0. 6, 0. 7, 0. 8, 0. 9, 1}
[0011] 在实际软件质量评价中,该种固定的定量值往往很难准确地表达专家的观点,最 好的表达方式应该是自然语言(或者至少是含有语言值的规则表示方法)。用语言方法把 握量的规定性,比精确表达更真实、更具备普遍性,自然语言比数学语言更确切、更直接、 更容易理解。
[0012] 因此,该点不足使得现有的质量评价方法对软件评价的评价结果不够科学、客观、 公正,准确性差。
【发明内容】
[0013] 本发明的目的是提供一种基于云模型和模糊聚合的软件质量综合评价方法,W解 决现有技术存在的问题。
[0014] 为了达到上述目的,本发明所采用的技术方案为:
[0015] 一种基于云模型和模糊聚合的软件质量综合评价方法,其特征在于:包括W下步 骤:
[0016] (1)、用户提供待评价软件集S= {s。S2,…,S。},评价指标集C= {c。C2,…,cj和 评价专家集合Ex= {ex。ex2,…,ex。};
[0017] (2)、每个评价专家exk根据用户的评价指标集,给出个人评价指标集 Q=b4,C2V??為。,并根据个人评价指标集对每个软件St给出自然语言定性评价结果 戸i-=说')<M;
[0018](3)、基于云模型将专家的定性评价结果转换成定量评价结果=(乂、4,其转换 过程包括W下步骤:
[0019] (3. 1)、根据软件质量评估要求,设定各评价指标的评价度空间邸的上下限,W及 选择评价度的离散性或连续性;
[0020] (3. 2)、根据评价度空间设计各评价指标的评价云数字特征值,一般可由各领域专 家根据自身知识并结合实验数据验证得出,也有理论上的取法,即评价云的滴值取云朵有 效论域区间的1/3左右;
[0021] (3. 3)、输入专家eXk对评价指标cf的定性评价值=说、,将利用评价值所对应 的评价云数字特征值产生一个随机正态分布定量值X,产生的方法为:
[0022] x = N0RM巧"En),
[0023] 其中,E,是云滴在论域空间分布的期望;E。是云的滴,代表定性概念不确定性的度 量。
[0024](3. 4)、触发带X条件评价云ECa,并由ECa根据每个评价等级的评价云数字特征值 依次随机产生确定度Ui;
[00巧]
[0026] 其中,Exa,En,为评价云ECa的期望值和滴;
[0027] (3. 5)、选取确定度最大的y作为条件触发带Y条件评价云ECb,并根据:
[0028]
[002引计算在Exb,Erie条件下的值y 1,其中Exb,Erie为EC B的输出云期望值和滴;
[0030] (3. 6)、返回步骤(3.3),循环N次得到N个云滴yi,通常云滴数较少时,误差会较 大,而云滴数较多时,误差会减少,但计算量大、实时性差,具体实施时需要权衡利弊,根据 实验效果综合考虑;
[003。(3. 7)、根据N个云滴心分别计算样本平均值:
[0032]
[0033] 一阶样本绝对中屯、距
[0034] (3.8)、求逆向云的数字特征值,根据Ey的估计值与和E。的估计值 其中,马即为专家exk对评价指标cf的定性 ,
评价的定量转换值,令与;
[00巧](4)、对所有专家的定量评价矩阵进行数据融合,从而得到最终的评估 结果。
[0036] 所述的一种基于云模型和模糊聚合的软件质量综合评价方法,其特征在于:步骤 (4)中数据融合过程包括W下步骤:
[0037](4. 1)、将待评价软件关于每个评价指标的评价信息表示成模糊软集合 化,Ck)的形式:
[0038]
[00測 (4.。、依次对模糊软集合化,Cl)、化,C2)、…、化,Cm)进行"AND"运算,运算 结果用佑巧表不,则;
[0040]佑,巧=佑,C1XC2X…XCn)=(Fl'Ci)八(F2,C2)八…八(Fm'Cm)
[0041]而且对V(<f'|,与,…,。e C|XQX…XC,",有;
[004引G均备...,马,,)=巧(如0巧似作..0巧,(0
[0043]佑巧中的参数由n个评价专家的评价指标集Cl,C2,…,Cm合成得到的。如果佑E) 中共有L个合成后的参数,设E=柄,曰2,…,ej,则佑巧可W表示为:
[0044]
[0045] 其中表示待评价软件St对于合成后的参数6j.(j=1,2,…,L)所描述状态的 符合程度;
[0046] (4.3)、计算对比表押=(別。)。><。,其中:
[0049]显然ctq是非负整数,ctU指的是对于所有的评价参数,软件S,的综合评价值高 于软件Sy的评价参数的个数;
[0050] (4.4)、由CT计算每个待评价
软件的评价得分Score(St):
[0051]Scorekx)二rx_tx,
[0054]Score(St)就表征了St在S的优劣程度,分数越高,st越优。
[00巧]所述的一种基于云模型和模糊聚合的软件质量综合评价方法,其特征在于:步骤 (4.2)中,的取值考虑两种情况:
[005引(1)、如果Cinc2rv'nc"=0,即评价专家的个人评价指标完全不同,该时L = li?I2.....Im,且任意的都可W表示为e;=(矿与,…,苗),即参数皂由Cl中的参数 与、C2中的参数与、…、Cm中的参数這合成得到的,那么Utj.的取值为:
[0057]
[005引(2)、如果G n C; n…n C。, *0,即评价专家的个人评价指标存在相同的情况,该 时L<ll?12.....Im,而兮=货,与,…,或)(& < "!),也就是参数ej分别由C。C2,…,Cm中 &不同的参数合成得到的;设…,中存在共同的评价指标Cp(CpG0,则y。的取 值为:
[0061] 本发明通过引入云模型和模糊软集合对软件质量进行综合评价。对于给定的待评 价软件,首先基于云模型对不同领域专家的评价信息进行定性到定量的转换,然后利用模 糊软集合对所有专家的定量评价信息进行聚合,得到综合评判结果。本发明考虑多位专家 的建议,同时兼顾各领域专家的不同偏好,能够更加科学、公正、客观地指导软件评价。
[0062] 本发明与现有技术相比的优点在于:
[0063] (1)本发明的方法中,每个评判专家只需根据自己的经验和知识对自己熟悉的指 标进行自然语言评价,操作简易方便,更容易理解。
[0064] (2)本发明采用云模型实现自然语言表达到定量表达的自动转换,比固定的定性 与定量转换更加准确和灵活;
[0065] (3)本发明结合云模型和模糊软集合实现了软件质量的综合评价,考虑了专家的 不同偏好,使得评价结果更加科学、客观、公正和准确。
[0066] (4)在对软件质量进行评估时,专家采用自然语音进行评价,带有一定的不确定 性和主观性;而且专家的评价指标集不一致,采用其他信息融合方法(如D-S证据理论、贝 叶斯理论、投票理论等)难W进行评判,而模糊软集合则能较好地、灵活地处理该些问题。
【附图说明】
[0067] 图1为本发明的实现流程图。
[0068] 图2为现有的ISO正式推出的软件质量模型示意图。
【具体实施方式】
[0069] 如图1所示,本发明是云模型和模糊软集合的软件质量综合评价方法,首先用户 提供待评价软件集S= {s。S2,…,S。}和评价指标集C= {Ci,C2,…,C。};然后每个评价专家 给出个人评价指标集Q={却,冷…,<},并给出自然语言描述的定性评价矩阵Ft ; 接着利用云模型将专家定性评价转化为定量评价,再利用模糊软集合对所有评价专家的定 量评价进行信息融合,从而得到最终的评估结果。其具体步骤如下:
[0070] 步骤1 ;用户提供待评价软件集S={s。S2,…,S。},评价指标集C={c。C2,…,C。} 和评价专家集合Ex={exi, ex2,…,ex。};
[0071] 本发明的质量评价体系与现有技术相同,如图2所示。
[0072] 本发明基于国际标准IS0/IEC9126标准给出可定制的软件质量模型,具体内容与 现有技术相同,相应的质量评价体系如图2所示。本发明通过对软件质量模型中质量特性 的评价给出软件质量的综合评价。
[0073] 步骤2 ;每个评价专家exk根据用户的评价指标集,给出个人评价指标集 Q=<[却,4,…,C。,并根据个人评价指标集对每个软件St给出自然语言定性评价结果
[0074] 由于每个专家exk可能来自不同的领域或部n,只对C中的某些指标比较熟悉,例 如,对某一办公软件进行评估,评价专家由软件工程师、用户和管理人员构成,各个专家会 优先考虑自己感兴趣的评价指标,如软件工程师对软件本身的功能、可靠性等进行评价,用 户对软件的美观、操作性、效率等进行评价,而管理人员对软件的维护性、可移植性等进行 评价。
[00巧]因此,本发明允许每个专家只对自己熟悉的评价指标进行评判,W避免专家对不 熟悉的指标产生较大的误判,所W每个eXk可根据自己的知识和经验给出其个人评价指标 巧 集CkG C,满足UG=c,且允许不同专家的个人评价指标集之间有交叉。 k二I
[0076] 本发明允许评判专家用自然语言定性地描述对某个软件质量特性的评价结 果。例如,有四个待评价软件S= {3。32,33,34},专家6而给出的个人评价指标集为〔,= {c^C2,Cs};专家eXk给出的评价结果为
[0077]
[0078] 步骤3 ;基于云模型将专家的定性评价结果转换成定量评价结果F* =W)w,其转 换过程如下:
[0079]Stepl.根据软件质量评估要求,设定各评价指标的评价度空间邸的上下限,W及 选择评价度的离散性或连续性。例如,可设定"可靠性"的邸=[0,1],分值越高,代表"可 靠性"越好。
[0080]Step2.根据评价度空间设计各评价指标的评价云数字特征值,一般可由各领域专 家根据自身知识并结合实验数据验证得出,也有理论上的取法,即评价云的滴值取云朵有 效论域区间的1/3左右。
[0081]St巧3.输入专家eXk对评价指标cf的定性评价值& =(巧:U,将该评价值所对应 的评价云数字特征值代入公式(2)产生一个随机正态分布定量值X。
[0082] x = N0RM巧"En)
[0083] 其中,E,是云滴在论域空间分布的期望;E。是云的滴,代表定性概念不确定性的度 量。
[0084]Step4.触发带X条件评价云ECa,并由ECa根据每个评价等级的评价云数字特征值 依次随机产生确定度Ui;
[0085]
[008引其中,Exa,EriA为评价云ECA的期望值和滴。
[0087] steps.选取确定度最大的y作为条件触发带Y条件评价云ECe,并根据
[0088]
[008引计算在Exb,EriB条件下的值y1,其中Exb,EriB为ECB的输出云期望值和滴。
[0090] St巧6.返回St巧3,循环N次得到N个云滴y;。通常,云滴数较少时,误差会较大, 而云滴数较多时,误差会减少,但计算量大、实时性差,具体实施时需要权衡利弊,根据实验 效果综合考虑。
[0091] Step7.根据N个云滴y;,分别计算样本平均值
[0092]
[0093] 一阶样本绝对中屯、畦
[0094] Steps.求逆向云的数字特征值,根据Ey的估计值
[0095] 里j>=y
[009引和E。的估计值
其中,&即为专家 exk对评价指标cf的定性评价的定量转换值。令,=马。
[0097] 例如,根据基于云模型的定性定量转换步骤,可将专家exk的评价结果?^^转换为
[0098]
[0099] 因此,本发明采用云模型实现自然语言表达到定量表达的自动转换,比固定的定 性与定量转换更加准确和灵活。
[0100] 步骤4 ;对所有专家的定量评价矩阵K=(,《),M进行数据融合,从而得到最终的评 估结果,具体融合过程描述如下;
[0101] stepl.将待评价软件关于每个评价指标的评价信息=的),,4表示成模糊软集合 化,Ck)的形式:
[0102]
[010引St巧2.依次对模糊软集合化,Cl)、化,C2)、…、化,Cm)进行"AND"运算,运算 结果用佑巧表不,贝U
[0104]佑,E)=佑,C1XC2X…XCn)= (Fl'Ci)八(F2,C2)八…八(Fm'Cm)
[0105]而且对,与,…A)EC|XQX…XC。,,有
[010引 G均知...A,)=巧(c;)n巧(c;)n...ni^"(c…)
[0107]佑巧中的参数由n个评价专家的评价指标集Cl,C2,…,Cm合成得到的。如果佑E) 中共有L个合成后的参数,设E=柄,曰2,…,ej,则佑巧可W表示为:
[010引
[0109]其中表示待评价软件St对于合成后的参数6j.(j=1,2,…,L)所描述状态的 符合程度。Uw的取值考虑两种情况:
[0110] (1)如果CifiCsn…nc"=0,即评价专家的个人评价指标完全不同,该时1 = li? 12.....Im,且任意的ej都可W表示为气.=巧,与,…,与),即参数ej是由Cl中的参数 与、C2中的参数每、…、Cm中的参数這合成得到的。那么Utj.的取值为:
[0111]
[0112]例如,如果一个专家对某软件的可靠性评价为0. 7,而另一专家对此软件的效率评 价为0. 9,那么经过信息融合可W得出,此款软件的评价结果为0. 7,也就是"可靠性高,又 效率高"的评价值为0. 7。
[011引似如果Cincsfi-nc,,,,即评价专家的个人评价指标存在相同的情况,该时L < li ? la.....Im,而弓=(句,驾,…,奇)(《<? ),也就是参数ej分别由C^Cg,…,Cm中成 不同的参数合成得到的。设C.vQ:,…,C.,中存在共同的评价指标Cp(CpGC),则yy的取 值为:
[0116] 例如,专家exi对"可靠性"的定量评价值为0. 5,专家ex2对"可靠性"的定量评价 值为0. 7,专家ex3对"易用性"的定量评价值为0. 8,则合成后的评价结果为0. 6,即复合指 标"可靠性、易用性"的评价值为0. 6。
[0117] Step3.计算对比表CT=(ctxy)qXq,其中
[0120] 显然ctq是非负整数,通俗地讲,ctU指的是;对于所有的评价参数,软件S,的综 合评价值高于软件Sy的评价参数的个数。
[0121] St巧4.由CT计算每个待评价软件的评价得分Score(St)。
[0122] Score(Sx) =fx-tx
[01巧]Score(St)就表征了St在S的优劣程度,分数越高,st越优。
【主权项】
1. 一种基于云模型和模糊聚合的软件质量综合评价方法,其特征在于:包括以下步 骤: (1) 、用户提供待评价软件集S = (S1, S2,…,sq},评价指标集C = Ic1, C2,…,cn}和评价 专家集合 Ex = {ex" ex2,…,exj ; (2) 、每个评价专家exk根据用户的评价指标集,给出个人评价指标集 <,···,<;[,并根据个人评价指标集对每个软件St给出自然语言定性评价结果 ? -Oiu ; (3) 、基于云模型将专家的定性评价结果转换成定量评价结果& =Mxm,其转换过程 包括以下步骤: (3. 1)、根据软件质量评估要求,设定各评价指标的评价度空间ED的上下限,以及选择 评价度的离散性或连续性; (3. 2)、根据评价度空间设计各评价指标的评价云数字特征值,一般可由各领域专家根 据自身知识并结合实验数据验证得出,也有理论上的取法,即评价云的熵值取云朵有效论 域区间的1/3左右; (3. 3)、输入专家exk对评价指标4的定性评价值& =(?),M,将利用评价值所对应的评 价云数字特征值产生一个随机正态分布定量值X,产生的方法为: X = NORM (Ex, En) 其中,Ex是云滴在论域空间分布的期望;E "是云的熵,代表定性概念不确定性的度量; (3. 4)、触发带X条件评价云ECa,并由ECdg据每个评价等级的评价云数字特征值依次 随机产生确定度μ i:其中,ExA,EnAS评价云EC 4的期望值和熵; (3. 5)、选取确定度最大的μ作为条件触发带Y条件评价云ECb,并根据:计算在Exb, ΕηΒ条件下的值y i,其中Exb, En1^ EC Β的输出云期望值和j:商; (3. 6)、返回步骤(3. 3),循环N次得到N个云滴yi,通常云滴数较少时,误差会较大,而 云滴数较多时,误差会减少,但计算量大、实时性差,具体实施时需要权衡利弊,根据实验效 果综合考虑; (3. 7)、根据N个云滴yi,分别计算样本平均值:一阶样本绝对中心胜-歹I,样本方差(3.8)、求逆向云的数字特征值,根据匕的估计值& = y和估计值计 算的估计值#其中,4即为专家exk对评价指标?*的定性评价的定量转换 值,令vf =厂;; (4)、对所有专家的定量评价矩阵Fi =(vf)_进行数据融合,从而得到最终的评估结果。2.根据权利要求1所述的一种基于云模型和模糊聚合的软件质量综合评价方法,其特 征在于:步骤(4)中数据融合过程包括以下步骤: (4. 1)、将待评价软件关于每个评价指标的评价信息R = W4表示成模糊软集合 (Fk,Ck)的形式:(4. 2)、依次对模糊软集合(F1, C1)、(F2, C2)(Fm,Cm)进行"AND"运算,运算结果 用(G,E)表示,则: 而且对 ν(?···乂)e&χ(:2χ···χ?",有: Gp1,匕· · 乂)= A (c;) Π F2 (?)门…η (C: J (G,E)中的参数由η个评价专家的评价指标集C1, C2,…,Cm合成得到的。如果(G,E)中 共有L个合成后的参数,设E= Ie1, e2,…,ej,则(G,E)可以表示为:其中ytj表示待评价软件s t对于合成后的参数e j(j = 1,2,…,L)所描述状态的符 合程度; (4. 3)、计算对比表CT= (Ctxy)qxq,其中^显然Ctxy是非负整数,Ct xy指的是对于所有的评价参数,软件S χ的综合评价值高于软 件Sy的评价参数的个数; (4. 4)、由CT计算每个待评价软件的评价得分Score (St): Score (sx) = rx_tx,Score(St)就表征了 st在S的优劣程度,分数越高,s t越优。3.根据权利要求2所述的一种基于云模型和模糊聚合的软件质量综合评价方法,其特 征在于:步骤(4. 2)中,Uu的取值考虑两种情况: (1) 、如果C1HC2H…门Cm=0,即评价专家的个人评价指标完全不同,这时L = I1-I2.....Ini,且任意的e」都可以表示为^ = (<3/,与,···,〇,即参数ej是由C冲的参数存、 C2中的参数^、…、Cm中的参数g合成得到的,那么μ tj的取值为:(2) 、如果C1 HC2门…HCffl # 0 ,即评价专家的个人评价指标存在相同的情况,这时L < I1 · I2.....Ini,而弓=(存…4) ( A W ),也就是参数4分别由c " C2,…,Cni中,?不 同的参数合成得到的;SCvCi2,…,Ciei中存在共同的评价指# Cp(Cpe 〇,则μ 的取值 为:
【专利摘要】本发明公开了一种基于云模型和模糊聚合的软件质量综合评价方法,首先不同领域专家评判专家给出质量特性的自然语言评价,然后基于云模型对评价信息进行定性到定量的转换,最后利用模糊软集合对所有专家的定量评价信息进行聚合,得到综合评判结果。本发明轻松实现自然语言定性评价到定量评价值的转换,且充分考虑不同领域专家的知识和经验,同时兼顾各领域专家的不同偏好。本发明对软件质量评价科学、公正、客观,准确性高。本发明可以运用于指导用户购买和使用软件,也可以指导软件开发者开发出高质量的软件产品。
【IPC分类】G06F11/36
【公开号】CN104881360
【申请号】CN201510320541
【发明人】岳峰, 苏兆品, 张国富, 齐美彬, 蒋建国, 陆阳
【申请人】合肥工业大学
【公开日】2015年9月2日
【申请日】2015年6月10日
转载请注明原文地址:https://www.famiwei.com/read-8138715.html