APP下载

软件度量分析工具的研究与实现

2023-07-17林赣秀

计算机应用文摘 2023年13期
关键词:量化

摘要:度量分析是软件质量管理中的重要组成部分,是实现软件数据管理的基础,可作为体现企业软件项目管理水平的关键指标。文章详细介绍了软件度量分析的流程、模型,研制了适合企业应用的软件度量工具,实现数据收集、度量实施及度量分析等活动,以及使企业快速提升度量分析能力。软件度量分析工具将项目实施过程中的进度、资源、过程稳定性等参数量化,让项目管理人员通过数据把控项目质量。

关键词:度量分析;软件管理;量化

中图法分类号:TP311 文献标识码:A

1 引言

度量分析是一种分析和测量数据的方法,旨在帮助人们更好地了解数据并从中获取有用信息。随着计算机技术的发展,数据复杂性的增加使得传统的统计方法不再足够有效,度量分析变得越来越重要。度量分析提供了一种更高效、更精确和更可靠的方法来处理数据,并从中获得有用的信息。随着软件规模的不断扩大,伴随而来的软件质量问题也越来越多。为解决这些问题,提高软件的质量,软件质量管理也越来越受到软件企业的关注。如何科学合理地开展质量管理,利用数据事实辅助决策,这就需要依赖度量分析。度量始于度量项的数据积累,量化展示项目运行过程,用数据辅助分析控制项目的进度,从而合理地分配资源,提高软件质量和项目的成功率。为了更加合理地实践应用度量分析,本文对度量分析进行了理论研究及应用实践。

2 度量分析定义

度量分析包含度量和分析2 个部分,是从项目开始到结束的一个持续性数据采集和量化分析的过程,包括项目过程管理数据、开发数据、测试数据等,覆盖整个项目生命周期。其目的在于对项目的开发和过程加以理解、评估、预测、控制,最终实现持续改进的能力。

3 度量分析流程

度量分析流程由选择和定义度量、制定度量计划、数据采集、分析等活动组成,通过过程的稳定性分析识别数据稳定和不稳定的原因,并制定措施、执行改进,落实到研制过程,以提升软件能力。度量分析流程[1] 如图1 所示。

4 软件度量分析主要活动

4.1 度量计划

软件度量分析从制定计划出发。编制度量计划分为4 个步骤:确认目标目的、确定过程问题、选择与定义度量以及集成到软件过程中。其具体如图2所示。

度量计划的编制需要按照步骤进行,先从确认目标和范围出发,梳理目标与软件过程之间的关联,以确保度量结果能够为决策提供有用信息;再找出过程问题,整理出各个过程和目标中可能发现问题的区域,对可能存在的问题进行分组,定位过程问题;在确认问题后,选择与目标实现相关联的数据,并对数据进行定义,保证定义后的度量项可以被量化、收集和分析;最终,将已定义度量活动与软件过程结合[2] 。

常用的度量分类有质量、成本、进度。质量方面度量项通常包括评审问题率、代码走查问题率、测试缺陷率、需求变更率等。成本方面度量项包括毛利率、外协占比率、采购占比率、人工成本占比率等。进度方面有里程碑性能、工作进度、工作偏差等。

度量数据收集是开展度量分析工作的前提,数据分析和在分析结果上采取的措施都是以数据为基础。

在确定度量项、制定度量计划以及实施措施计划后,就开始执行收集数据。

在数据收集前,需约定统一采集人员、采集时间和频率、数据记录规范等[3] 。

4.2 实施度量

在全面部署实施度量项前,需要对度量项选择项目进行一段时间的试点,并且总结试点效果,采取试点有效的度量项。分析度量计算数据是否符合实际、度量要求是否明确,其中最重要的是要主观判断数据说明是否满足需求,收集试点度量的成本数据,分析试点情况,验证收集准确度,度量单位是否合适等,以及试点项目的关联性、相似性、样本范围是否覆盖全部项目类型等[4] 。

4.3 度量分析

在度量数据分析时,需结合度量目的、过程基线以及期望值。分析应从2 方面进行,一方面是支持软件过程活动的设施;另一方面是保证软件组织拥有执行和支持过程所需的能力。针对度量结果及时做出有效的决策,度量结果只有在被有效利用时才能产生价值。因此,在实施度量后,需要确保度量结果能够被合理解释和使用,以做出有益的决策。

常见的度量分析工具包括Excel, SPSS,MATLAB,R 等。本文度量分析工具的优点是直接导入软件项目开发过程积累的数据,直接生成统计报表,易学易用,便于用户进行高级分析。设定统计分析周期自行执行并可邮件通知,缺点是前期需要基于开发工具做二次开发接入数据源。考虑后续长期使用及节约成本,度量分析工具的研究与实现是非常有必要且可行的。

5 度量分析工具实现及应用

基于IBM 公司的协作开发平台RTC(RationalTeam Concert)和Gitlab 开发平台,结合软件公司度量分析现状开发设计一款度量分析工具。

度量分析工具使用“ eclipse 工具+ java 语言+SpringMVC 框架”进行实现和开发,实现用户登录验证、用户权限管理、新项目信息导入、已有项目基本信息展示、以周为周期存储项目信息、按照计算公式处理项目数据衍生出派生度量项,以及项目信息导出到Excel。

数据采集:目前RTC/ Gitlab 是作为度量分析工具的数据来源。使用javacsv 读取RTC 中csv 文件,以表单的形式导入Sqlite 数据库。将csv 文件的表头转换成英文,并加入时间属性,以便MySQL 数据库的操作(服务器的数据库为MySQL)和使用。该数据再经过度量数据采集工具的处理,存储在服务器中,以做进一步的分析。

通过对数据的分析,得出进度、资源、产品规模和稳定性、产品质量、过程性能5 类统计结果,以便度量分析人员有针对地选择方向并进行深入分析。度量分析人员可以对不同的度量指標之间的关系进行分析,以帮助用户找出影响软件质量的因素。

分析过程行为:在使用度量数据采集工具对某项目的数据进行导出后,经过质量管理人员的整理分析,最终形成对应项目的度量分析报告。度量分析工具可以根据用户需求定制报表,以便用户查看所关心的度量指标。该报告由项目负责人和相关领导进行审阅,并针对对应项目制定相应的举措,从而合理控制项目进度。

定期对项目数据进行采集分析,通过使用度量分析工具,大大减少了度量分析人员数据采集、整理的时间,提高了过程分析效率。度量分析工具可以对历史数据进行趋势分析,预测后续发展趋势,提示风险;可设置预警值,提示异常;也可设置邮件发送范围,定期以度量分析报告形式将度量分析结果反馈给相关人员,帮助项目管理人员及时发现项目异常,及时识别项目风险,做好应对措施,提高软件开发效率和质量,减少开发风险。

常见的度量异常包括数据异常、精度异常、逻辑异常、稳定性异常。度量工具可以处理简单的数据异常和精度遗产,规避逻辑异常,但是对于稳定性异常需要度量分析人员开展针对性分析。这些异常可能会影响软件度量的准确性和有效性,因此需要对异常数据进行分析和处理,以确保软件度量数据的可靠性。

6 结束语

实施度量分析能够合理控制项目的进度、成本、规模和质量,监控项目稳定性、提高过程性能等,节约了人工处理度量数据的时间成本,可直接生成度量分析报告。其有效提高了项目的效益,也使得项目的整个过程是可视可控的,便于客户理解和交流,保证了项目按时完成,提高了软件质量。目前,基于RTC 和Gitlab 的度量分析工具可以直觀展示项目研制过程中存在的问题,但项目售后过程数据未完全覆盖,可以以此为基础,合理优化度量分析,不断改进,以实现提高软件质量的目标。

参考文献:

[1] 孙垂云.基于CMMI 的软件质量度量研究[D].北京:北京交通大学,2009.

[2] 孙晶.基于CMMI 的软件质量度量模型及工具原型研究[D].大连:大连海事大学,2006.

[3] 周晓莹.基于软件过程的度量方法设计与研究[D].上海:上海师范大学,2013.

[4] 李国峰.基于CMMI 的软件开发项目质量管理研究[D].北京:北京邮电大学,2014.

作者简介:林赣秀(1991—),本科,工程师,研究方向:项目管理、智慧城市、信息化与信息安全。

猜你喜欢

量化
关于对思想道德教育量化实施的研究
试论小学生道德量化
从覆判案件看北京政府时期基层司法的状况与特征:以江苏为例
量化词语的隐喻分析
危化企业提高现场应急处置能力的对策措施研究
警察院校量化考核制度
让“量化”更加的“亮化”
小学班级管理之我“心”我“数”
高校贫困生认定评分体系研究与构建
大学物理实验考核模式探索