网站地图 原创论文网,覆盖经济,法律,医学,建筑,艺术等800余专业,提供60万篇论文资料免费参考
主要服务:论文发表、论文修改服务,覆盖专业有:经济、法律、体育、建筑、土木、管理、英语、艺术、计算机、生物、通讯、社会、文学、农业、企业

软件项目质量影响因素和层次分析法的运用

来源:原创论文网 添加时间:2021-09-18

  摘    要: 软件质量是决定软件项目成功的重要指标,对软件质量的管理也是软件项目管理的工作重点。在软件项目质量影响因素分析方面,现有研究大多聚焦于影响因素识别和定性分析,较少有定量分析方面的研究成果。通过引入层次分析法,从定性分析和定量分析结合的角度,识别和分析软件项目质量关键影响因素。以实例验证层次分析法在具体软件项目分析中的可行性,为软件项目质量管理提供参考。

  关键词 :     层次分析法;软件质量;影响因素;项目质量管理;

  0 、引言

  随着科学技术的快速发展,软件项目数量日益增多,社会对于软件质量的要求也逐步提高。软件企业在面临多样化的需求及软件变更的同时,只有做好软件项目的质量管理,才能在软件市场中立于不败之地[1]。对于软件企业来说,软件产品质量是企业的竞争力和生命力所在,是软件行业持续发展的重要影响因素[2]。

  我国软件行业较国外软件行业起步较晚,在软件质量和评估方法等方面的研究不够成熟。在软件质量评估方面,通过将软件质量要素分层,利用层次分析法可实现软件评估模型的构建[3]。在分层指标中,可使用GB/T 16260系列标准中提及的软件外部质量特性,即功能性、可靠性、易用性、效率、维护性和可移植性,进行分项研究和评价打分[4],从而构建一套完整可用的软件质量评价体系。

  在软件质量影响因素分析方面,现有研究主要聚焦于定性分析和综合评价。研究表明,软件开发商与用户之间需求沟通不畅,会导致软件设计缺乏针对性[5];组织结构的复杂度也对软件质量和软件产品的成败有重要影响[6];在软件开发过程中,软件基础架构不规范、软件代码编写误差等各种因素会导致软件交互、运行质量出现问题[7];技术人员的流动性、专业程度对软件质量的影响也不可忽视[8];软件企业应更加注重于改善软件开发人员对测试工作的态度,以此提升测试工作的有效性,从而产生更好质量的软件[9]。

  通过研究层次分析法的相关理论,将层次分析法的步骤应用于软件质量影响因素分析,构建层次总排序表格识别影响软件质量的关键因素,从而为软件项目质量管理提供具有针对性的改进方向。

  1 、软件项目质量影响因素分析

  层次分析法是一种实用的多总则决策方法,使用一个有序的层次结构表示复杂的决策问题,并通过专家客观判断和数学模型计算得出各层次因素的重要性排序结果,用于决策和解决问题[10,11]。

  运用层次分析法进行决策分析时,主要经过4个步骤[10]:①构建层次结构,通过分析各因素之间的关系,建立层次结构图;②构造判断矩阵,对每一层因素构建判断矩阵,多因素分析时可两两构造判断矩阵;③计算各矩阵权重值,对每一个判断矩阵分别计算权重值;④构造层次总排序,合并各判断矩阵的结算结果,得出层次总排序表。
 

软件项目质量影响因素和层次分析法的运用
 

  1.1 、构建层次结构

  在软件项目质量影响因素分析中,可基于软件过程的角度构建层次分析图,也可综合使用相关方法。在确定影响因素的过程中,需考虑的主要因素有:

  (1)项目的组织结构。

  组织结构对项目开展具有特定的影响作用,相关研究表明,组织结构对软件产品成败具有较大影响[6]。

  (2)项目需求管理。

  需求分析和管理决定了软件是否能够满足用户使用需要,软件需求的变动将直接影响项目计划,导致项目计划可靠性不足[12],从而导致项目在规定时间内难以产生符合质量要求的软件。

  (3)项目计划管理。

  科学的项目计划为提升软件质量提供了基础支持,在有序的开发和测试工作下,软件质量能够获得相应的保障。

  (4)项目设计。

  软件的概要设计、详细设计的粒度、与需求的匹配程度等,决定了软件成果是否满足客户需求、能否达到客户满意的质量。

  (5)软件测试管理。

  软件测试能够帮助项目团队及时发现软件中存在的问题,并及时加以改正,防止缺陷软件进入客户使用环节。软件测试是质量保证的关键步骤和手段,是验证用户需求满足程度、发现缺陷、改进软件开发过程的重要质量活动[13]。

  (6)项目过程的质量管理。

  项目各个过程中的质量管理工作,对软件质量的最终表现起决定性作用。

  (7)其他需要考虑的因素。

  根据项目团队情况、人员配置、软件类型等各类因素,综合考虑具体项目的特定影响因素。

  1.2 、构造判断矩阵

  层次分析法中一般使用专家调查法确定判断矩阵,基于层次结构对每项影响因素的重要性进行打分,构造出各层次的判断矩阵。采用1~9标度法[10]打分,具体见表1。

  表1 打分标度含义
表1 打分标度含义

  1.3、 单排序权重计算

  在构建判断矩阵之后,需要通过计算得出判断矩阵的单排序权重向量。本文利用方根法求解1.2中每个判断矩阵的特征向量和最大特征值(权重值),求解的主要步骤如下[10]:

  计算判断矩阵中每行要素的乘积,如式(1)

  mi=∏j=1naij(i=1,2,?,n) (1)

  计算mi的n次方根,如式(2)

  w???=mi???√n(i=1,2,?,n) (2)

  将特征向量进行归一化处理,如式(3)

  wi=w???i/∑k=1nw???k(i=1,2,?,n) (3)

  计算最大特征值,如式(4)

  λmax=1n∑i=1n(Aw)iwi (4)

  式中,(Aw)i表示向量Aw的第i个分量。

  各层次的判断矩阵均由专家打分而来,不同因素间的分值主要依据专家个人经验或主观判断得出,可能会产生一定的误差,导致判断矩阵存在整体不一致的情况。在权重值的计算过程中,为了减小专家打分时的主观误差对判断矩阵的影响,需要对判断矩阵进行一致性检验,以检查打分误差是否处于可允许的范围内[14]。

  一致性指标CI的定义如式(5)[15]

  CI=λmax?nn?1 (5)

  式中,λmax是判断矩阵的最大特征值;n是判断矩阵的阶。

  对于n≥3的判断矩阵,一致性比率CR定义如式(6)

  CR=CIRI (6)

  式中,RI表示平均随机一致性指标,其标准值见表2[10]。

  表2 RI标准值
表2 RI标准值

  1.4 、层次总排序

  计算出各层次因素的单排序权重值以后,通过合成各子特征层计算数据,即可得出层次总排序表。按照同样的方式对层次总排序表进行一致性检验,通过检验后才能应用于后续的分析过程。

  在层次总排序表中,各项影响因素的权重值均得到了汇总排序,在软件项目质量改进的过程中,应重点关注权重值较高的影响因素。通过优化改进重要影响因素,能够有效提升软件质量,做到有的放矢。

  2、 应用实例

  以某公司软件外包项目为例,阐述如何通过层次分析法识别和分析各影响因素的权重值,根据权重值确立软件项目质量管理的改进方向。

  2.1、 构建质量影响因素层次结构

  结合软件外包项目管理现状,通过专家调查法确立层次结构,如图1所示。

  该层次分析结构分为三级指标,分别为:目标层A——质量影响因素,特征层B1~B6——质量影响因素,子特征层C1~C16——质量影响子因素。建立层次分析结构后,即可针对评估指标建立判断矩阵。

  2.2 、构造判断矩阵与计算单排序权重

  对层次结构图(图1)中的各层次进行分解,得出A-B、B1-C、B2-C、B3-C、B4-C、B5-C、B6-C的判断矩阵,并分别计算单排序权重值,同时进行一致性检验。以A-B判断矩阵为例,判断矩阵的构造和数据计算见表3。

  表3 A-B判断矩阵的构造和数据计算
表3 A-B判断矩阵的构造和数据计算

  其中,最大特征值λmax为6.246 2,一致性比率CRAB为0.039 7,满足一致性检验要求。

  使用同样计算方法,计算各子特征层判断矩阵,得出一致性检验结果,见表4。

  表4 一致性检验结果表
表4 一致性检验结果表

  由一致性检验结果表可以得知,各层的判断矩阵都通过了一致性检验的要求,整体结果可靠。

  2.3、 质量影响因素总排序

  汇总2.2中的各特征层权重值数据,得出质量影响因素总排序表,见表5。

  图1 层次结构图
图1 层次结构图

  表5 质量影响因素总排序表
表5 质量影响因素总排序表

  (续)
表5 质量影响因素总排序表

  通过表5的层次总排序结果可以发现,组织结构、客户对接、需求管理、质量控制等因素具有相对较高的权重,对软件项目质量影响更大,因此,需要优先对这些影响因素进行改进。

  3 、结语

  基于层次分析法对软件项目的众多质量影响因素进行量化分析,为软件项目质量管理改进工作提供了重点改进方向。虽然在分析过程中存在诸多难题可能会影响整体分析结果,如影响因素的识别和归类、专家打分的客观性和一致性检验等,但是根据此方法对各影响因素的评价相比于常用的各种定性分析方法,其定量分析的结果更具有参考性和实用价值,相对提高了分析结果的客观性。

  软件项目质量管理涉及面较广,在提高软件质量的过程中,要想有针对性地做好改进工作,对各类影响因素进行分析、识别和重要性排序尤为重要。层次分析法的可实施性较强,可以应用于不同类型的软件项目,为识别和改进软件项目的质量管理工作提供有效方法。软件企业可以根据自身情况客观分析各类影响因素,找出关键要素进行改进,有效提高软件产品质量。

  参考文献

  [1]王永超浅析软件项目质量管理一基于 “多媒体资源整合系统"项目[J].项目管理技术, 2019,17(1):113-116.
  [2]CONDORI-FERNANDEZ N,LAGO P.Characterizing the contribution of quality requirements to software sustainability[J].The Journal of Systems & Software ,2017(137):289-305.
  [3]王峰.基于层次分析法的软件质量评估模型分析与研究[J]现代电子技术, 2012,35(24):21-23.
  [4]胡晓冉, 左家平,王坤基于层次分析法的软件质量量化研究[J].计算机应用与软件, 2013,30(11):138-141.
  [5]韩禄.计算机软件开发中影响软件质量的因素[J].信息与电脑(理论版),2020.32(18)114-116.
  [6]NAGAPPAN N,MURPHY B,BASILI V.The infuence of organiz ational structure on software quality: an empirical case study[C] 30th International Conference on Software Engineering(ICSE 2008),2008.
  [7]杨骁软件开发中影响软件质量的因素研究[J]现代工业经济和信息化, 2019,09(1);11-116.118.
  [8]江雷计算机软件开发中影响软件质量的因素分析[J]科技与创新, 2018,107(11):57-58.
  [9]GILL N S.Factors affecting effective software quality management revisited[J] Acm Sigsoft Sofware Engineering Notes ,2005,30(2):1- 4.
  [10]佟笑基于层次分析法的刊物影响因子的关键影响因素研究[J]沈阳工程学院学报(社会科学版),2018,14(1):82- 87.
  [11]陈路萍层次分析法在建设监理质量影响因素研究中的应用[J]苏州大学学报(工科版),2011,31(6):59- 64.
  [12]MELLIS W.Software quality management in turbulent times- -are there alternatives to process oriented software quality management?[J] Software Quality Journal,1998.7(3):277- 295.
  [13]杨琳中小型软件项目质量管理方法与应用探讨[J]软件产业与工程, 2012(2):43- 45,50.
  [14]蔡俊雄,龚启慧,罗枫基于层次分析法的科研项目绩效评价体系研究[J]生产力研究, 2020.339(10):99-104.
  [15]史传勇L公司敏捷软件开发中的质量管理改进研究[D].北京:中国科学院大学(中国科学院人工智能学院),2018.

重要提示:转载本站信息须注明来源:原创论文网,具体权责及声明请参阅网站声明。
阅读提示:请自行判断信息的真实性及观点的正误,本站概不负责。