基于AHP的APP软件使用质量度量方法研究∗

2017-09-12 08:49赵宏石华杰
计算机与数字工程 2017年8期
关键词:度量特性矩阵

赵宏石华杰

基于AHP的APP软件使用质量度量方法研究∗

赵宏1石华杰2

(1.昆明理工大学信息工程与自动化学院云南省重点实验室昆明650500)
(2.中国科学院深圳先进技术研究院深圳518055)

近年来,随着人们的生活不断进步,软件产业迅猛发展,APP软件的开发规模日渐增大,复杂性也不断提高,人们对APP软件质量提出了更高的要求。由于APP软件使用质量的好坏会直接影响着人们生活的进步,因此对APP软件使用质量的研究是亟待解决的问题。论文主要在ISO/IEC 25010中规定的普通软件使用质量的基础上,从用户评论的角度提出了针对APP软件的使用质量模型;并结合层次分析法(AHP)和三角模糊数层次分析法对所提出的模型进行度量。

APP软件;ISO/IEC 25010模型;AHP;三角模糊数;使用质量

Class NumberTP391

1引言

我国政府非常重视软件产业的发展,出台了一批有利于软件产业发展的产业政策;建立了保护软件知识产权的法律体系;并投资建立了一批软件基地和软件园;形成了若干产值过亿元的软件企业;培养造就了一支高素质的软件研究开发人才队伍;形成了一批在市场占有一定份额的软件产品。我国软件产值从1995年开始,就有了长足的进展。因此,软件质量的研究对我们来说也是一项重大的课题。

根据历年来出台的软件标准可知,软件质量一般分为产品质量和使用质量,使用质量是衡量软件质量标准的一个重要指标,根据ISO/IEC25010中提出的规定,使用质量分为五个特性,分别是满意度,效率,有效性,风险规避和语境覆盖;然而这些都是针对普通软件的指标,由于APP软件的特殊性,它除了拥有普通软件具有的特性之外,还有自己独特的指标。

由于市场上现有的APP软件种类比较繁多,通过调研各大APPSTORE发现,根据不同的功能和用途大致分了18个类别,大概有1680多个APP软件。那么如何从众多APP软件中找到自己需要并且实用高效的应用对用户来说非常重要;对用户来说这样不仅可以节约时间而且还可以更有效地达到自己想要的效果;对开发者来说,可以很据用户需求开发出更满足市场要求的APP软件;因此,这就需要我们对APP软件的使用质量做出进一步研究。

为了保证对APP软件使用质量研究的可靠性与真实性,本文从用户评论的角度出发,通过提取用户评论来研究APP软件的使用质量,用户评论是APP软件使用质量的直观体现;本文使用网络爬虫工具实时爬取得到23680条用户评论,通过自然语言处理的方法得到有效的用户评论,从而可以得到针对APP软件的使用质量模型。

2相关研究

在现有的研究中,文献[1]从软件分析技术的角度介绍了软件使用质量的重要性以及提高软件使用质量的必要性,但针对使用质量度量以及评价的部分没有涉及到;文献[2]从软件质量保证和管理的角度介绍了软件产品质量和使用质量的重要性,但APP软件使用质量特性没有涉及;文献[3]从抽取网络上用户评论内容的角度来说明软件使用质量对用户的重要影响,同样也没有给出具体的度量和评价方法;文献[4]主要研究了使用质量是在一定程度上系统性地满足用户的需求,在许多组织中,用户满意度被忽视是因为在开发软件的时候,它没有被作为衡量使用质量的指标;文献[5~6]颁布的相关质量标准把使用质量跟内部和外部质量统一称为产品质量;文献[7]从一致性的角度来评估软件使用质量;文献[8]以一个实例介绍了Web2.0应用的使用质量属性。

以上文献都从不同的角度介绍了软件使用质量的重要性,但都没有给出具体的针对APP软件的度量方法,那么APP软件作为一个新型的软件类别,研究其相关的使用质量也是极其重要的。

但是,目前对APP软件研究的文献不多,对APP软件使用质量模型研究的文献更是少见,文献[9]参考了ISO/IEC 9126模型,运用层次分析法进行外部质量度量分析,为第三方测试机构进行软件质量量化评估提供新的思路;文献[10]建立了基于ISO/IEC 9126标准的软件质量指标体系模型,运用指标体系模型和模糊数学方法对软件质量评价;文献[11]指出了软件综合质量评价中需要解决的一致性与稳定性问题,提出了基于前向单隐层神经网络的软件质量评价方法;文献[12]提出基于LM-BP神经网络的软件质量综合评价方法,并以ISO/IEC 9126为软件质量度量标准,解决了标准BP算法存在的问题,建立了LM-BP神经网络软件质量综合评价模型。

以上几种方法都存在主观性较强、判断不精确的问题,本文从实际的用户评论出发,使用人工标注的方法逐一进行分析,再结合层次分析法和三角模糊数相结合的方法给出具体的测量值,从而使得评论结果更加真实可靠。

综合国内外研究现状,现阶段大部分软件使用质量模型都是基于ISO/IEC 9126软件质量模型进行调整,使其符合软件的特性,能够满足软件使用质量评估要求。但是ISO/IEC发布新的ISO/IEC 25010标准后,ISO/IEC 25010软件使用质量模型将逐渐取代ISO/IEC 9126软件使用质量模型,APP软件使用质量模型也需要进一步研究与调整。

3权重值设定技术

3.1层次分析法

层次分析法(Analytic Hierarchy Process,AHP)[9]是将与决策总是有关的元素分解成目标、准则、方案等层次,在此基础之上进行定性和定量分析的决策方法。该方法是美国运筹学家匹茨堡大学教授萨蒂于20世纪70年代初,在为美国国防部研究,根据各个工业部门对国家福利的贡献大小而进行电力分配课题时,应用网络系统理论和多目标综合评价方法,提出的一种层次权重决策分析方法。运用AHP方法,大体可分为以下四个步骤:

第一步:构造判断矩阵

层次分析法的一个重要特点就是用两两重要性程度之比的形式表示出两个方案的相应重要性程度等级。如对某一准则,对其下的各方案进行两两对比,并按其重要性程度评定等级。表1列出Saaty给出的9个重要性等级及其赋值。

表1 比例标度表

按两两比较结果构成的矩阵称作判断矩阵,其形式如下:

其中aij表示相对于上一层同属的某指标,第i个指标与第j个指标相对重要性的结果。

判断矩阵具有如下特点:1)主对角线上的元素为1,即aii=1;2)矩阵中的元素aij=1/aij;3)该矩阵为方阵,且是正反矩阵。

第二步:计算权重向量

为了从判断矩阵中提炼出有用信息,达到对事物的规律性的认识,为决策提供出科学依据,就需要计算判断矩阵的权重向量。用特征向量法求解最大特征值λmax,在具体求解过程中,当判断矩阵的维数大于3时,计算就会很繁琐,针对该问题Saaty给出了一种求解λmax近似算法,这种近似算法的误差在10-3数量级,具体算法如下[13]:

1)对判断矩阵中的每行元素连乘并开n次方。

2)求特征向量W={w1,w2,…,wn}。

3)矩阵中每列元素求和。

4)计算λmax的值。

第三步:一致性检验。满足一致性检验的条件:

1)最大特征值λmax小于同阶临界特征值λ'

max,各临界特征值如表2所示。

2)随机一致性比率CR<0.1。

一致性指标的公式:

n为判断矩阵的行列数。

随机一致性比率公式:

RI为平均随机一致性指标,具体见表2。

如果以上两个条件均满足,则认为此矩阵满足一致性检验,继续执行下面的步骤。如果有一个条件不满足则需要调整判断矩阵。

表2 n阶矩阵的随机一致性指标RI和对应的临界特征值

第四步:求各指标的权重值。将式(2)求得的特征向量利用式(7)进行归一化处理,得到权重向量Wj'=W1',W2',…,Wn',其中:

3.2三角模糊数层次分析法

三角模糊数层次分析法是针对AHP方法在构造判断矩阵时没有考虑参与人员意见不一致及在做出判断时的模糊性等情况而提出,该方法仍然沿用AHP的主要思想,只是在确定判断矩阵过程中,两两比较结果不再是某一确定的数值,而是以三角模糊数的形式给出。

定义1[14]:三角模糊数P=(l,m,u)(l,m,u均为实数),l和u分别表示P的下界,上界值,而m则表示P的中值,当l,m,u相同时三角模糊数变为精确数据。

设P1=(l1,m1,u1),P2=(l2,m2,u2),则三角模糊数的运算规则如下

定义2[14]:三角模糊数P=(l,m,u)的期望值E(P)是实数,计算公式如下

其中μ为乐观一悲观系数。μ<0.5时表示决策人是乐观的;当μ>0.5时表示决策人是悲观的;当μ= 0.5时表示决策人处于中立状态,具体步骤如下:

第一步:由专家对指标进行两两比较,并用三角模糊数(l,m,u)表示比较的结果,其中l表示最乐观情况下的取值,u表示最悲观情况下的取值,m表示最有可能的取值,进而得到三角模糊判断矩阵A=(aij)m×n,其中aij=(aijl,aijm,aiju),aji=(1/aiju,1/aijm,1/aijl)。

第二步:采用近似算法求得最大特征值向量λmax和其对应的特征向量W,并利用式(8)求出最大特征值向量λmax所对应的期望值。

第三步:一致性检验。如果不满足一致性检验,则需调整判断矩阵,否则继续往下执行。

第四步:求特征向量中每一元素的期望值并归一化,即为各指标的权重值Wj'=W1',W2',…,Wn'。

4建立APP软件使用质量模型

4.1软件使用质量特性

ISO/IEC 25010中的软件使用质量模型是基于ISO/IEC 9126中的软件使用质量模型进行修改与完善而形成,旨在以其替换旧的软件使用质量标准。该标准中沿用了ISO/IEC9126中软件使用质量模型中的部分质量特性以及子特性,在软件使用质量上提出了满意度,效率,有效性,上下文,风险规避5个质量特性以及9个子特性,如图1所示。

图1 ISO/IEC 25010中使用质量的质量模型

4.2 APP软件使用质量特性

通过对用户评论的分析,可以总结出关于APP软件的使用质量特点;同时结合ISO/IEC 25010提出的软件使用质量模型可以得到针对APP软件的使用质量模型。为了便于量化和分析,把有效性和效率这两个质量特性进一步划分为多个子特性,其中有效性属性可以分为准确性和完整性两个子特性;效率可以分为时间特性和资源利用率两个子特性。根据APP软件用户评论的特点可以定义这些子特性以及度量指标:

1)有效性:用户能够准确和完整地实现具体目标的能力;在具体的APP软件中指的是具体的功能是否能够实现,比如影音播放类的软件中播放器的功能是否正常,还有里面的快进,后退等功能是否正常;

(1)准确性:用户在使用APP软件的过程中,需要访问的功能是否能够准确无误地实现;也就是APP软件提供所需精度内的正确结果的程度;度量指标为需要访问的合格结果数/总访问数;

(2)完整性:用户在使用APP软件的过程中,所访问的功能是否能够完整地实现;也就是APP软件功能覆盖特定任务以及用户目标的程度;度量指标为重要功能覆盖度*重要功能权重+次级功能覆盖度*次级功能权重。

2)效率:用户在准确和完整地实现具体目标时所花费的相关资源;这些相关资源包括完成任务需要的时间,空间资源;比如APP软件在运行时占用的内存空间以及所消耗的流量,还有所花费的时间等;

(1)时间特性:是指在规定条件下,APP软件执行其功能时,提供适当的响应时间和处理时间以及吞吐率的能力;度量指标为功能响应后与用户交流产生的数据量/APP软件被访问直至获得相应的总时间;

(2)资源利用率:是指在规定条件下,APP软件执行其功能时所占用的手机空间资源的大小;度量指标为APP软件使用时的内存占用量/手机的总内存量。

另外,APP软件区别于普通软件的另一个重要特性就是领域性,APP软件用户使用的多少,领域性能力如何是评价APP软件受欢迎度的一个关键指标。所以APP软件使用质量度量,必须要增加一个领域性的质量特性。下面定义领域性的子特性以及度量指标:

3)领域性,领域性指的是同一个APP软件在不同的领域中可能会被归到不同的类别;同时APP软件的使用也应该区别对待;领域[17]是指一组具有相似和相近软件需求的应用系统所覆盖的功能区域;

(1)共性:同一领域中APP软件的需求必然具有显著的共性,它们的功能实现也常常具有共性。在使用质量中要识别这些共同性并开发出反映这些共同性的APP软件。例如在社交领域中的APP软件一般都具有聊天交友的功能,在影音领域中的APP软件一般都具有播放的功能等等;度量指标为同一领域中APP软件的共有特性/同一领域中APP软件的所有特性;

(2)差异性:当在整个领域而不是单个系统的范围内考虑问题时,会发现从用户需求到分析过程直到实际使用APP软件都存在差异性。同一领域中的APP软件所具有的功能都存在差异性,例如社交软件中的微信和QQ之间存在差异。度量指标为同一领域中APP软件的不同功能/APP软件的所有功能。

4)满意度:当APP软件被用于特定的使用环境中,用户对此的满意程度;用户可能不是直接地使用一个APP软件,而仅仅是使用和信任它的相关部分功能;满意度是用户对APP软件的直接反映,它包括用户对使用APP软件的态度;

(1)可使用性:用户感知实现具体目标的满意程度,包括使用结果和使用影响;

(2)信任度:用户或其他利益相关者对APP软件将要实现目标所具有的信心;

(3)受欢迎度:用户完成他们的个人需要所获得的快乐程度;个人需要包括对知识和技能的需求,传达个人的身份和使得自己有快乐的记忆;

(4)舒适度:用户使用该APP软件之后,自己身体的舒适程度。

5)上下文:因手机操作系统(IOS,android,黑莓,Windows Phone)的不同以及APP软件本身版本的不同,对APP软件使用的影响;

(1)语境完整性:APP软件在不同的手机操作系统中使用或者同一个APP软件的不同版本被使用时,能够满足用户需求的具体程度;

(2)灵活性:灵活性可以通过调整一个APP软件的用户组,任务来获得;灵活度使APP软件能够考虑到环境,机会和个人偏好等这些预先没有期望的指标。

6)风险规避:主要指APP软件是否存在安全漏洞,是否会由于人为攻击,造成信息泄露(保密性)、数据损失或者手机不能正常工作(可用性)等不良后果。

(1)经济风险规避:在目标环境中使用APP软件时,是否会读取支付宝以及手机银行等金融软件的信息,从而造成经济损失;

(2)安全风险规避:在目标使用环境中,APP软件的使用是否会造成手机内资料的丢失或者泄露(如通讯录以及信息的泄露等);

(3)环境风险规避:在使用环境中,目标APP软件的使用是否会影响其他APP软件以及造成手机不能正常工作(如死机,重启,关机等)。

在ISO/IEC 25010提出的软件使用质量模型中,风险规避性包括三个子特性,分别是经济风险规避,健康和安全风险规避,环境风险规避;针对APP软件的特殊性,可以把健康风险规避去掉。由此,可以确立APP软件使用质量特性及其子特性如图2所示。

图2 APP软件使用质量模型

5实验及其分析

在各级指标确立和划分完成后,为使模型评价结果可以量化,需根据各个指标对上一级指标的影响程度逐级给出其合理的权重系数。由于本模型的建立是成递阶层次结构,使用层次模型比较适合,同时又考虑到对各指标进行两两比较时很难用一个准确的数字来表示它们相互之间的重要性即存在模糊性,因此本文使用三角模糊数与层次分析法相结合的方法来逐级确定各指标的权重。限于篇幅,在此仅给出质量特性确定权重的过程。

模型所属的质量特性有:满意度(U1),领域性(U2),有效性(U3),效率(U4),上下文(U5),风险规避(U6)。

第一步:建立三角模糊判断矩阵。经专家讨论,对APP软件的使用质量来说,六个质量特性的重要程度依次为:U1>U3>U4>U5>U2>U6,得到如表3所示的判断矩阵。

表3 三角模糊判断矩阵

第二步:利用Saaty给出的近似算法及三角模糊数的运算规则求得最大特征值向量λmax和其对应的特征向量W,并通过式(8)求得E() λmax。

根据式(1~2)得到三角模糊向量W*和特征向量W:

根据式(3~4)得到最大特征值向量λmax。

由式(8)计算λmax的期望值,为保持客观中立,本文取偏好因子为0.5。

第三步:一致性检验,由式(5~6)得到:

所以该矩阵满足一致性检验。

第四步:由式(8)求出特征向量W的期望值并进行归一。

即得到各质量特性的权重如表6所示。

表6 质量特性的权重

由上表可知0.4015>0.3165>0.1339>0.0644>0.0502>0.0335,满足上面的专家意见,即是U1>U3>U4>U5>U2>U6。该评估结果同研究人员预估结果相吻合,给出的APP软件使用质量度量模型各质量特性和子特性均取自ISO/IEC25010,使得评价模型具有通用性。将度量指标数值化,给出层级描述,采用三角模糊层次分析法,建立三角模糊矩阵,逐层加工各项信息,得出综合评价,使得因为拥有诸多评价指标而呈现模糊性的APP软件综合使用质量评估的结果更科学合理。

6结语

本文通过对ISO/IEC25010软件质量标准中软件质量模型的研究,在其基础上新增了APP软件区别于普通软件的重要特性:领域性,并确立了各质量特性与子特性以及度量指标,建立了一个APP软件使用质量度量模型;给出了运用三角模糊层次分析法来对APP软件使用质量等级进行评估的过程。进一步研究的内容:APP软件使用质量度量模型中其它质量特性,子特性或者度量指标的引入;利用三角模糊层次分析法评价APP软件使用质量时,如何运用科学方法分配各评估项的权重值;采用何种方法能够在现有层级模型下取到更加准确的度量值;如何更优地建立层级描述区间使得根据模型计算的结果更能准确反应APP软件的使用质量。

[1]梅宏,王千祥,张路.软件分析技术进展[J].计算机学报,2009,32(9):1697-1714.

MEI Hong,WANG Qianxiang,ZHANG Lu.Progress of software analysis technology[J].Journal of Computer Sci⁃ence,2009,32(9):1697-1714.

[2]王青.基于ISO9000的软件质量保证模型[J].软件学报,2001,12(12):1837-1842.

WANG Qing.A software quality assurance modelbased on ISO9000[J].Journal of Software,2001,12(12):1837-1842.

[3]李实,叶强,李一军,等.挖掘中文网络客户评论的产品特征及情感倾向[J].计算机应用研究,2010,27(8):3016-3020.

LI Shi,YE Qiang,LI Yijun,et al.Study on the product characteristics and effective tendency of Chinese Internet customer reviews[J].Computer Application Research,2010,27(8):3016-3020.

[4]林煜明,王晓玲,朱涛.用户评论的质量检测与控制研究综述[J].软件学报,2014,25(3):506-527.

LIN Yuming,WANG Xiaoling,ZHU Tao.Quality inspec⁃tion and controlofuser comments[J].Journal Of Software,2014,25(3):506-527.

[5]ISO/IEC 14598-1-1999,信息技术软件产品评价第1部分:综述[S].

ISO/IEC 14598-1-1999,First parts of information tech⁃nology software productevaluation:a review[S].

[6]DIN 66272-1994,信息技术.软件产品评价.质量特性和使用指南;等同采用ISO/IEC 9126:1991[S].

DIN 66272-1994,Information technology-software prod⁃uct evaluation-quality characteristics and the use of guides,equivalentto the use of ISO/IEC9126:1991[S].

[7]Guillermo Covella,Luis Olsina.Assessing Quality in Use in a Consistent Way.ACM,2006,5(1):1-8.

[8]Tihomir Orehovacki,Dragutin Kermek.Examining the Quality in Use of Web 2.0 Applications:A Three-Dimen⁃sionalframework.Springer-Verlag,2013(6):149-153.

[9]胡晓冉.基于层次分析法的软件质量量化研究[J].计算机应用与软件,2013(11):138-141.

HU Xiaoran.The study of software quality quantitative based on AHP[J].Computer application and research,2013(11):138-141.

[10]廖锦舜,何锫.基于模糊神经网络的软件质量评价方法[J].计算机技术与发展,2006(2):194-196.

LIAO Jinshun,HE Pei.The Method Software quality eval⁃uation based on the fuzzy neural network[J].Computer Technology And Development,2006(2):194-196.

[11]杨宗奎.基于综合评价方法的软件质量评价系统研究[D].西安:西安电子科技大学,2004.

YANG Zongkui.Research on software quality evaluation system based on comprehensive evaluation method[D]. Xi'an:Xi'an Electronic and Science University,2004.

[12]杨根兴,宋国新.基于神经网络的软件质量综合评价方法[J].华东理工大学学报,2004(3):292-295.

YANG Genxing,SONG Guoxin.A comprehensive evalu⁃ation method of software quality based on neural network[J].Journal of East China University of Science and Technology,2004(3):292-295.

[13]孟凡永,张强,唐婕.T一模糊联盟间相互影响的度量[J].系统工程理论与实践,2010,30(1):73-83.

MENG Fanyong,ZHANG Qiang,TANG Jie.Measure of interaction T fuzzy coalition[J].System engineering theo⁃ry and practice,2010,30(1):73-83.

[14]P.J.M.Van Laarhoven,W.Pedryez.A fuzzy extension of Saaty Priority theory[J].Fuzzy Sets and Systems,1983,11(1-3):229-241.

Research on Quality in Use Measure for App Software Based on AHP

ZHAO Hong1SHI Huajie2
(1.Institute of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650500)
(2.Shenzhen Institute of Advanced Technology,Chinese Academy of Sciences,Shenzhen 518055)

In recent years,with the progress of people's lives and the rapid development of software industry,the complexity of APP software is increasing,people put forward higher requirements on the quality of APP software.Because the quality in use of APP software will directly affect the progress of people's lives.Therefore,the research on the quality of APP software is an urgent problem to be solved.This paper is based on the quality in use ofcommon software that proposed in ISO/IEC 25010,which put for⁃ward the quality modelof APP software from the pointof user comments.And combined with the analytic hierarchy process(AHP)and triangular fuzzy number to measure the proposed model.

APP software,ISO/IEC25010 model,AHP,triangular fuzzy number,quality in use

TP391

10.3969/j.issn.1672-9722.2017.08.008

2017年3月15日,

2017年4月21日

云南省应用基础研究计划项目(编号:2013FZ020);基于动态检测的Android平台应用程序恶意行为分析研究(编号:1405178332)资助。

赵宏,女,硕士研究生,研究方向:软件工程、软件质量保证。石华杰,男,硕士研究生,研究方向:机器学习。

猜你喜欢
度量特性矩阵
鲍文慧《度量空间之一》
谷稗的生物学特性和栽培技术
色彩特性
代数群上由模糊(拟)伪度量诱导的拓扑
突出知识本质 关注知识结构提升思维能力
度 量
进一步凸显定制安装特性的优势 Integra DRX-5.2
多项式理论在矩阵求逆中的应用
Quick Charge 4:什么是新的?
矩阵