APP下载

基于直觉模糊集的构件质量评价模型研究

2013-12-07赖晓燕宁正元王长缨颜桂梅

河北科技大学学报 2013年4期
关键词:模糊集直觉构件

赖晓燕,宁正元,王长缨,颜桂梅

(1.福建农林大学金山学院,福建福州 350002; 2.福建农林大学计算机与信息学院,福建福州 350002)

基于直觉模糊集的构件质量评价模型研究

赖晓燕1,宁正元2,王长缨2,颜桂梅1

(1.福建农林大学金山学院,福建福州 350002; 2.福建农林大学计算机与信息学院,福建福州 350002)

为了客观地反映构件指标的模糊性并增强决策的柔性,建立了一种基于直觉模糊集的构件质量评价模型。首先,在ISO/IEC 9126软件质量度量模型基础上,通过增加、删除质量特性和质量子特性,建立了构件质量评价指标体系;其次,将直觉模糊集引入构件质量评价模型并给出了构件质量评价的具体步骤;最后,利用基于直觉模糊集的评价模型给出了待评价构件的优劣排序。实例验证了该方法的合理性与有效性,为构件评价工作提供一定参考。

ISO/IEC 9126模型;直觉模糊集;构件质量;评价

随着软件构件技术的发展与普及,软件构件质量的重要性越来越受到业界的关注,构件生产者关心如何评测构件质量以改进构件产品的质量,构件复用者关心如何从众多的备选构件中选择出质量好的构件进行组装应用系统,这些都涉及到对构件质量进行评价。现有的研究中,学者们主要探讨了评价模型的确定。文献[1]和文献[2]直接采用ISO/IEC 9126模型作为构件质量评价模型。文献[3]和文献[4]基于ISO/IEC 9126模型增加了一个可复用性及其相关子特性作为构件质量评价模型。文献[5]兼顾白盒构件和黑盒构件的特点,在ISO/IEC 9126模型的基础上增加了安全性、易测试性、可复用性3个质量特性,并增加或删除部分子特性得到构件质量评价模型。上述研究提出了不同的构件质量评价模型,但也存在一些不足,如:有些模型在评价过程中未考虑到构件指标的模糊性;有些模型在评价过程中只考虑评价者赞成方面的信息,而忽略了评价者的反对和犹豫方面的信息;多数模型没有给出构件质量的定量评价结果等。为了解决上述问题,本文引入直觉模糊集,它能同时表示评价者的支持、反对和犹豫的信息,更接近人类思维判断。提出基于直觉模糊集的构件质量评价方法,为构件生产者和构件复用者评价构件时提供参考。

1 构件质量的评价指标体系

软件构件是指对外提供明确接口、功能相对独立、用于构建软件系统且可替换的程序模块。构件质量是指软件构件产品满足规定的和隐含的需求能力有关的所有特征和所有特性的总和。软件构件是一种软件但并不是完整的软件系统, 在设计、开发、生命周期和使用等方面与软件有着较大的不同[6-8]。因此,可以参考软件的质量模型,从中删除和甄选合适的质量特性和质量子特性,使之可以度量软件构件的质量。

ISO/IEC 9126是目前使用较为广泛的软件质量标准,该模型以要素-准则-度量模型为基础,按照影响软件质量的各特性之间覆盖最小的原则,ISO/IEC 9126规定了功能性、可靠性、易用性、效率、可维护性和可移植性6个质量特性,每个质量特性可进一步细分为若干子特性。通过分析ISO/IEC 9126模型的特性和子特性,发现需要对模型增加特性、甄选和裁剪子特性操作后才可以使之适合度量软件构件质量。例如,增加对构件质量影响很大的复用性质量特性;删除与构件无关的子特性,如:可维护性中的易分析性、如可移植性中的易安装性等。

依据ISO/IEC 9126标准,按上述原则并参考文献[4]和文献[5],经过分析后构造了一个构件的质量评价体系,见表1。

表1 构件质量模型

2 基于直觉模糊集的构件质量评价

2.1直觉模糊集与加权平均算子

定义1[9]设X是一个非空集合,则称

A={|x∈X}

(1)

为直觉模糊集。

其中隶属函数μA(x)∈[0,1]和非隶属函数vA(x)∈[0,1],满足条件0≤μA(xi)+vA(xi)≤1,xi∈X。

πA(xi)=1-μA(xi)-vA(xi),

(2)

表示X中元素xi对于A的犹豫度。

为了方便起见[9],称α=(μα,vα)为直觉模糊数,则称sα=μα-vα为α的得分值,hα=μα+vα为α的精确度,其中μα(x)∈[0,1],vα(x)∈[0,1],(μα+vα)≤1。且设θ为全体直觉模糊数的集合。

如有一直觉模糊数α=(0.7,0.2),表示的含义是:假设有10人进行投票,那么其中7人同意,2人反对,1人弃权;该直觉模糊数的得分值和精确度分别是0.5,0.9。

定义2[9-11]设αi=(μi,vi)(i=1,2,…,n)为一组直觉模糊数,且设IFWA:θn→0,若

IFWAω(α1,α2,…,αn)=ω1α1⊕ω2α2⊕…⊕ωnαn,

(3)

定理1[9-11]设αi=(μi,vi)(i=1,2,…,n)为一组直觉模糊数,则由IFWA算子得到的集成值也是直觉模糊数,

(4)

2.2直觉模糊数排序

定义3[9]设有2个直觉模糊数α1=(μ1,v1)和α2=(μ2,v2),α1和α2的得分值分别为sα1和sα2,α1和α2的精确度分别为hα1和hα2,

1)sα1

2)sα1=sα2,①若hα1=hα2,则α1=α2;②若hα1hα2,则α1>α2。

2.3构件质量直觉模糊综合评价

构件质量的评价是一个多指标综合评价问题,各指标之间有层次关系。为了避免一级模型评判过于片面,采用二级直觉模糊综合评价的数学模型。该模型的7个构件质量特性为第1级评价指标集;构件质量子特性为第2级评价指标集。按层次和隶属关系由下往上逐级进行直觉综合评判。

设Y={Y1,Y2,…,Ym}表示m个具有相同功能的构件,B={B1,B2,…,B7}为构件质量特性集,Bj={Bj1,Bj2,…,Bjp}为构件质量7个一层级构件特性对应的二层级构件的p个子特性集。根据上述评价指标体系,用直觉模糊评价方法对构件质量进行评价并给出构件优劣排序,具体步骤如下。

步骤1:组织具有丰富实际经验的软件专家多人组成评价小组,分别对二级评价指标进行评价,其中一级指标Bj关于二级指标Bjp的特征用直觉模糊数dik=(μik,vik)表示,评价结果实际为所有构件Yi(i=1,2,…,m)的一层级质量特性Bj(j=1,2,…,7)的直觉模糊评价的决策矩阵DBj=(dik)m×p;

步骤2:进行二级直觉模糊综合评判。对某个构件质量特性,如功能性,按式(4)计算,求得功能性指标的综合属性值:diB1=(μiB1,viB1)(i=1,2,…,m),同理可得可靠性、易用性、效率、可维护性、可移植性和可复用性的综合属性值diBj=(μiBj,viBj)(j=2,3,…,7);

步骤3:进行一级直觉模糊综合评判。二级直觉模糊综合评判得到的7个质量特性的综合属性值构成一级直觉模糊综合评判的决策矩阵,按式(4)计算求得构件Yi的综合直觉模糊值di=(μi,vi)(i=1,2,…,m);

步骤4:按定义3给出各个构件质量的优劣排序。

3 实例分析

假设有3个构件开发商提供了3个报表打印构件,这3个构件都实现了报表和打印功能,用户在选择构件时出现了困惑,运用上述提到的直觉模糊综合评价法给出3个构件质量的优劣排序,为用户提供一个决策依据,同时开发商可以以评价值为依据看是否需要改进自己的构件质量。

3.1确定权重系数

本文采用权重分析系统法获得两级指标的权重系数。该方法是根据集值统计的原理,基于集值统计和投影空间理论的一种权重确定方法[12-14]。运用权重分析系统法确定7个一级评价指标体系的权重向量:

w=(w1,w2,…,w7)=(0.25,0.2,0.1,0.2,0.05,0.05,0.15)。

二级评价指标体系的权重向量:

w1i=(w11,w12,…,w14)=(0.4,0.3,0.2,0.1) ,

w2i=(0.3,0.4,0.3),w3i=(0.4,0.6),w4i=(0.5,0.5),

w5i=(0.4,0.4,0.2),w6i=(0.2,0.5,0.3),w7i=(0.3,0.3,0.2,0.2)。

3.2构造质量特性指标的决策矩阵

以易用性B3为例,聘请相关领域的10位专家组成评价小组,评价采用投票的方式进行。分别对易用性的下级指标易理解性B31和易操作性B32进行评价。B31是指通过相关资料构件容易被用户理解的程度。认为该构件容易理解的投支持票,认为构件难于理解的投反对票,若无法下结论的则归为犹豫票。B32是指该构件用于组装新系统时的容易程度。认为该构件组装时容易操作的投支持票,认为该构件用于组装新系统时不易操作的则投反对票,难以下结论的归为犹豫票。经过专家投票后统计得出B3的决策矩阵:

对于易理解性B31:第1个构件有7人支持、1人反对、2人犹豫;第2个构件有6人支持、1人反对、3人犹豫;第3个构件有7人支持、2人反对、1人犹豫。

同理可以得出功能性B1、可靠性B2、效率B4、可维护性B5、可移植性B6和可复用性B7的直觉模糊评价的决策矩阵DBi(i=1,2,4,5,6,7):

3.3进行二级直觉模糊综合评价

按式(4)计算,求得3个构件的7个质量特性指标的综合属性值:

3.4进行一级直觉模糊综合评价

二级直觉模糊综合评判得到的7个构件质量特性的综合属性值构成一级直觉模糊综合评判的决策矩阵,利用式(4)计算3个构件的综合直觉模糊值:

d1=(0.75,0.12),d2=(0.66,0.19),d3=(0.70,0.15)。

3个构件的得分分别为S1=0.63,S2=0.47,S3=0.55。

按照定义3,3个构件质量的优劣排序:第1个构件>第3个构件>第2个构件。

通过以上评价可以得出,第1个构件为用户首选软件。其他2个构件开发商可以根据两级直觉模糊评价值有针对性地改进构件质量。例如,第2个构件的可复用性指标评价值偏低,但是可复用性是构件的一个非常重要的指标,该构件开发商可以通过改进硬件独立性来达到提高构件独立性的目的,例如,让该构件产品不依赖于某个特定的处理器或特定的计算机。

实例表明,通过二级直觉模糊综合评判法不仅可得到同类构件的质量优劣排序,同时可以获得构件各指标的具体得分情况。而传统的模糊综合评价法只能给出“优、良、中、差”等的笼统评价,当同类构件都获得同一等级的评价时,构件的选择仍然是个难题,同时也不能给出哪些指标需改进的信息。如,采用文献[15]提到的模糊综合评价法对本文的3个构件质量进行评价,可以得出第1个构件和第3个构件的质量为“良好”,第2个构件的质量为“中等”。该方法存在2个问题:第一,由于没有考虑到反对和不确定的因素,构件质量的评价偏高,与实际不符合;第二,第1个和第3个构件评价结果都为“良好”,仍然不能轻易做出构件选择的决定。

4 结 语

提出的基于直觉模糊集的构件评价模型,既考虑了指标的模糊性,又考虑了评价过程中存在反对和不确定性的情况。通过直觉模糊综合评判法能给出同类构件的质量优劣排序,评价结果客观合理,从而为构件的改进和选择提供有力的依据。今后需要对以下问题做进一步的研究:构建适合面向领域构件的构件质量指标体系;如何实现直觉模糊综合评价法在构件质量评价中的自动化。

/

[1] 梁军涛,蒋晓原.基于模糊物元的构件质量评价模型[J].电子质量,2007(7):36-39.

LIANG Juntao,JIANG Xiaoyuan. Evaluation model of component quality based on fuzzy matter-element[J]. Electronics Quality, 2007(7):36-39.

[2] 朱 青,刘宇辉.一种面向领域的组件质量度量算法[J].北京工业大学学报,2007, 33(1): 83-86.

ZHU Qing, LIU Yuhui. A component quality metrics algorithm facing to field[J]. Journal of Beijing University of Technology, 2007, 33(1): 83-86.

[3] 毛国蓓,李雪静,葛孝堃,等.基于软件构件质量模型的度量及应用[J].计算机应用与软件, 2005, 22(5): 1-5.

MAO Guobei, LI Xuejing, GE Xiaokun,et al. The metrics and application of software-based component quality model[J]. Computer Applications and Software, 2005, 22(5): 1-5.

[4] 杨春河,晏海华,金茂忠,等.软件构件质量度量[J].计算机工程与设计,2006, 27(3): 411-414.

YANG Chunhe,YAN Haihua,JIN Maozhong,et al. Software component quality metrics[J]. Computer Engineering and Design, 2006, 27(3): 411-414.

[5] 杜 云,姜 瑛.构件质量模型研究[J].云南大学学报(自然科学版), 2011, 33(3): 281-288.

DU Yun,JIANG Ying. Research on component quality model[J]. Journal of Yunnan University(Natural Sciences Edition), 2011, 33(3): 281-288.

[6] 贺海波,陈立潮,张英俊,等.基于群体决策的软件构件质量评价模型研究[J].计算机工程与设计, 2010,31 (21):4 639-4 642.

HE Haibo,CHEN Lichao,ZHANG Yingjun,et al. Research on evaluation model of software component quality based on group decision-making[J]. Computer Engineering and Design, 2010,31 (21):4 639-4 642.

[7] 欧阳红军.软件质量度量研究[J].国防科技,2012, 33(5):7-10.

OUYANG Hongjun.Measurement of the software quality[J].National Defense Science & Technology,2012,33(5):7-10.

[8] 梅 宏,谢 涛,袁望洪, 等.青鸟构件库的构件度量[J].软件学报, 2000,11(5):634-641.

MEI Hong,XIE Tao, YUAN Wanghong,et al. Component metrics in jade bird component library system[J]. Journal of Software, 2000,11(5):634-641.

[9] 徐泽水.直觉模糊信息集成理论及应用[M].北京:科学出版社,2008.

XU Zeshui.Intuitionistic Fuzzy Information Aggregation:Theory and Applications[M].Beijing:Science Press,2008.

[10] ATANASSOV K. Intuitionistic fuzzy sets[J].Fuzzy Sets and Systems,1986, 20(1): 87-96.

[11] XU Z S,YAGER R R.Intuitionistic fuzzy aggregation operators[J].IEEE Transactions on Fuzzy Systems,2007,15:1 179-1 187.

[12] 邢桂芬,成科扬.基于集对分析的软件质量评价系统的构建[J].江苏大学学报(自然科学版),2004,25(1):73-76.

XING Guifen, CHENG Keyang. Founding of a software quality estimation system based on set pair analysis[J]. Journal of Jiangsu University (National Science Edition), 2004,25(1):73-76.

[13] 郑 鹏,郑德祥.基于模糊集对分析的软件质量综合评价[J].计算机工程与设计,2008,29(16):4 238-4 242.

ZHENG Peng,ZHENG Dexiang. Comprehensive evaluation of software quality based on fuzzy set pair analysis[J].Computer Engineering and Design, 2008,29(16):4 238-4 242.

[14] 李金铭,郑 鹏.基于Vague集的软件质量综合评价[J].计算机应用与软件,2009,26(1):281-284.

LI Jinming, ZHENG Peng. Comprehensive evaluation for software quality based on Vague set[J]. Computer Applications and Software, 2009,26(1):281-284.

[15] 杨 磊.软件构件质量评价模型研究[J].计算机与现代化,2011(5):48-51.

YANG Lei. Research on evaluation model of software component quality[J].Computer and Modernization, 2011(5):48-51.

Research on evaluation model of component quality based on intuitionistic fuzzy sets

LAI Xiaoyan1, NING Zhengyuan2, WANG Changying2, YAN Guimei1

(1. Jinshan College, Fujian Agriculture and Forestry University, Fuzhou Fujian 350002, China; 2. College of Computer and Information, Fujian Agriculture and Forestry University, Fuzhou Fujian 350002, China)

An evaluation model of component quality is presented in this paper. The proposed model can reflect the influence of fuzzy factors and enhance the decision flexibility. First, based on ISO/IEC 9126 software quality model, a component quality index system is established by adding or dislodging some quality characteristic and sub-characteristics. Then, intuitionistic fuzzy set is introduced into the evaluation model, and the relevant steps on component quality evaluation are proposed. Finally, the evaluation model is able to rank the components. The experimental results and the analysis show the feasible of the approach. It can provide feasible reference for component evaluation.

ISO/IEC 9126 model; intuitionistic fuzzy sets; component quality; evaluation

1008-1542(2013)04-0325-05

10.7535/hbkd.2013yx04013

TP311.5

A

2013-03-20;

2013-04-10;责任编辑:陈书欣

福建省教育厅科研项目(JB12287,JB11099S)

赖晓燕(1983-),女,福建龙岩人,讲师,硕士,主要从事软件工程方面的研究。

E-mail:lxyfj@163.com

猜你喜欢

模糊集直觉构件
“好一个装不下”直觉引起的创新解法
基于上下截集的粗糙模糊集的运算性质
复图片模糊集及其在信号处理中的应用
林文月 “人生是一场直觉”
一个“数学直觉”结论的思考
建筑构件
建筑构件
数学直觉诌议
建筑构件
建筑构件