APP下载

基于GJB5000A的软件测量与分析方法研究

2020-06-23刘皓洁焦永强

价值工程 2020年15期

刘皓洁 焦永强

摘要:软件测量与分析为组织监控和评估软件开发项目提供有效支撑,它作用于软件研制的全生命周期,能够帮助组织提高对软件过程和产品的深入了解,使组织更好地进行决策,并实现组织目标。本文以软件测量与分析方法研究为目的,从GJB5000A的模型结构出发,介绍了软件测量与分析过程的目的与要求,对基于GJB5000A的软件测量与分析方法进行了研究,形成了测量分析模型,并对模型进行剖析。

Abstract: Software measurement and analysis provides effective support for the organization to monitor and evaluate software development projects. It acts on the whole life cycle of software development, helps the organization to improve the in-depth understanding of software process and products, makes the organization make better decisions, and realizes the organization goals. For the purpose of research on software measurement and analysis method, this paper introduces the purpose and requirements of software measurement and analysis process from the model structure of GJB5000A, studies the software measurement and analysis method based on GJB5000A, forms and analyzes the measurement analysis model.

关键词:GJB5000A模型;能力成熟度等级;测量与分析模型

Key words: GJB5000A model;capability maturity level;measurement and analysis model

中图分类号:TP311.5                                     文献标识码:A                                  文章编号:1006-4311(2020)15-0237-02

0  引言

随着武器装备信息化和数字化程度越来越高,软件在高新武器系统中的核心地位和灵魂作用越来越大,越来越多的军用软件研制单位希望通过推进实施GJB5000A军用软件能力成熟度模型来提高软件研制能力,提升软件产品质量。但是,在推进实施GJB5000A的过程中,研制单位普遍存在对标准理解不足、体系定义与实际脱节的问题,特别在软件测量与分析方面遇到了实施的瓶颈。由于研制单位从未有过相关工作的经验,如何确定测量目标、选择测量项;如何收集和分析测量数据;如何运用测量与分析为软件进展實施监控、为管理决策提供有效地量化指标等都成为推进工作的难题。很多单位盲目的为了测量而测量,不但消耗了很大的人力物力,而且也没有真正建立起测量的能力。因此,建立起一套有效的测量分析方法,帮助研制单位树立软件测量的系统观念,指导研制单位建立软件测量能力,推进GJB5000A在单位内的实施,从而快速提高软件研制水平是本文研究的主要目的。

1  GJB5000A概述

GJB5000A-2008《军用软件研制能力成熟度模型》是中国人民解放军总装备部提出并批准发布的,它是在GJB5000-2003《军用软件能力成熟度模型》基础上修订的。标准中融合了优秀企业软件研制和维护活动中最佳的实践,定义了军用软件研制能力成熟度模型。模型既适用于对组织的软件研制能力进行评价,同时也为组织自身过程评估与改进提供方法依据。GJB5000A共有22个过程域,根据过程域的相关性划分为4个类别,分别为过程管理类、项目管理类、工程类、支持类,将过程域按成熟度等级和所属类别划分,测量与分析过程域是GJB5000A模型中22过程域中的一个。测量与分析的目的是支持管理信息的需要,开发和保持组织测量能力。通过数据采集和偏差分析,客观了解组织各部门的过程和产品的实施现状,为组织提供产品和服务各个环节的监控指标,为组织管理决策提供定量信息;识别组织的薄弱环节,为组织过程改进和产品改进提供定量信息。

2  软件测量与分析方法研究

软件测量活动,一般分为组织级测量活动和项目级测量活动两个层次,组织级测量活动由组织测量分析小组负责,项目级测量活动由项目测量分析员负责。根据GJB5000A标准中测量与分析过程域的要求,结合软件研制项目生存周期中测量与分析工作的开展流程,以及软件测量活动不同层面的执行特点建立了基于GJB5000A的测量与分析模型。模型分为组织级和项目级两个层次,包括策划测量项、采集存储测量数据、分析测量数据、交流测量结果、评价和改进五个部分,如图1。

2.1 策划测量项

策划测量项分为两个层次的策划,一是组织层面的策划。即由组织测量分析小组根据以往项目的实施结果、用户和组织管理层对软件实施的信息需要等,进行总结提炼出组织层的测量目标,然后分解出细化的测量项(基本测量项、导出测量项),并对每一个测量项定义属性,包括名称、目标、单位、计算公式等,最终组织层面的策划结果会形成一份详尽的测量与分析规格说明。二是项目层面的策划。即项目启动后,项目组根据项目的目标和信息需要确定项目测量目标(可以来源于组织提供的测量与分析规格说明中),并将测量目标所对应的测量项规格说明纳入项目的测量分析计划中,作为项目实施测量与分析工作的依据。

2.1.1 确定测量目标

根据组织或项目管理的信息需要,确定测量目标并将测量目标以文档形式记录下来。测量目标的来源可以是管理、技术、项目、产品评价或过程实现等需要,测量目标是测量与分析活动开展的依据。

2.1.2 构造测量项

构造测量项是根据确定的测量目标进一步细化出满足目标要求的测量项。测量项按测量数据获得方式分为“基本测量项”和“导出测量项”,基本测量项的数据可以直接测量获得,导出测量项一般通过公式计算获得。这里需要了解的是测量目标与测量项并不是一对一的关系,有时同一个测量目标可以细化出多个测量项,以便从不同的方面帮助测量目标的达成。在构造测量项时应明确基本测量项的单位、导出测量项的计算方法,对于已经构造的测量项根据该测量项对目标达成的重要程度的不同,可以确定出优先顺序以及裁剪的原则,当满足裁剪原则时可以对测量项进行适当的裁剪。

2.1.3 制定测量项的采集和分析规程

为了确保采集到正确的数据、保证数据在未来某个时间也能够可用,需要为每个测量项制定明确的采集方法和数据存储方法。主要的描述项应该包括数据来源、采集数据的时机、采集人、存储位置和是否有工具支持。同时在策划测量项时指明测量项的监控阈值和分析汇报规程,其中监控阈值是测量数据发生异常程度的警戒线,帮助组织将有限的资源、精力投入在必要的事件上;分析汇报规程明确数据发生异常时的几种情况以及分析和汇报的原则,帮助确保项目实施中能按文档化的测量目标进行有效的分析和报告,也是对是否采集了必要数据的一种检验。

2.2 采集存储测量数据

数据采集工作要依据计划执行,与软件开发的过程活动相结合,遵循简便、客观、准确的原则。数据采集时,首先采集基本测量项,采集时应尽可能靠近数据源即数据生成的最初位置,进行数据采集并检查和纠正遗漏、越界数据,以及由于人为判断而造成的分类不一致数据。得到基本测量项后,根据计算公式得出导出测量项。数据存储所使用的方法和渠道可以是多种多样的,最简单的方法是利用表格形式进行填写,但这种方法存在统计、管理和保存问题等。管理工具的使用往往会解决上述问题,并使数据的采集和统计更加规范和简单。

2.3 分析测量数据

信息需要仅仅通过收集当前的实际数据几乎无法准确判断,通常用实际数据与期望值进行比较,期望数据可能是用计划值、历史平均值、导出的界限或阈值来表达的。测量数据分析时可以利用各种分析工具,紧密围绕测量目标进行数据分析,以直观的形式呈现软件过程的各种性能,为项目的监控提供量化指标。测量中常用的绘图技术有饼图、条形图、直方图、线性图,帮助从测量数据中提取相关信息。测量项定义时,根据监控需要可以设置监控阈值和制定分析规程,帮助判断实际数据和期望数据间的差距是否过大,以及如何依据测量目标进行异常分析,最终按照测量与分析结果的汇报要求在计划汇报时机到达时形成测量与分析报告。

2.4 交流测量结果

项目实施过程中在项目周例会、阶段会以及里程碑评审会上向利益相关方通报测量与分析过程的结果,利益相关方重点关注测量数据中实际数据超出决策准则要求的测量项以及当前的分析结果,依据测量目标讨论确定纠正措施,并将纠正措施落实在分析报告或会议纪要中。项目的利益相关方一般包括项目组成员、质量保证人员、研发部门领导、用户/用户代表。

2.5 评价与改进

测量与分析评价是针对测量数据质量、测量项构建合理性及测量与分析活动流程的分析。一般分为项目层的评价和组织层的评价。项目层的评价在项目结项时,对项目的所有测量数据、新构建的测量目标和测量项进行收集和评价,评价通过的纳入组织测量库管理。评价时需要关注数据的有效性、完整性,新构建的测量目标和测量项是否使用组织其他类型的项目,同时也要关注测量与分析的执行过程。组织层面的评价,可以在管理层定期的过程评审时完成。随着组织能力成熟度的逐渐增强、组织战略计划的调整以及用户要求的提高,组织的测量需要也随之发生变化。根据评价结果制定改进方案,在评价方案时要充分考虑改进方案的可行性,以及实施的成本和效益的平衡,然后选择一个最优的解决方案。测量与分析过程的改进,是一个持续的过程,改进后的效果通过再次实施测量进行评价,这样就形成了测量与分析过程持续改进的循环。

3  结语

基于GJB5000A的软件测量能够为组织深入洞察软件过程和产品与目标的差距,使组织更好地进行决策,实现组织目标。测量与分析模型将测量分解为策划测量项、采集存储测量数据、分析测量数据、交流测量结果和评价与改进几个看似独立实质相互关联的步骤,同时明确了组织级和项目级不同层次测量的分工,使抽象的测量与分析概念更为系统和直观。为初步接触GJB5000A的人员深入学习、掌握测量与分析的标准要求提供了有效途径。

参考文献:

[1]闫于华,王黎明,宋太亮,等.GJB5000A-2008军用软件研制能力成熟度模型,中国人民解放军总装备部,2008.

[2]裘婉卿,叶枫.基于CMMI的软件缺陷度量[J].计算机系统应用,2010,19(3).

[3]侯红,郝克刚.CMMI的软件测量[J].计算机科学,2006(11):293-296.

[4]肖丽娟.基于CMM框架的过程改进方法的研究与实现[D]. 电子科技大学.

[5]卡內基梅隆大学软件工程学院.能力成熟度模型集成 CMMI-DEV V1.2.

[6]瓦茨.S,汉弗莱.软件过程管理[M].北京:清华大学出版社,2003.

作者简介:刘皓洁(1978-),女,黑龙江哈尔滨人,工程师,硕士,研究方向为软件质量管理。