1.3.1 定义
是指计算机软件中范围广泛的测度,包括对软件系统、构件或生命周期过程具有的某个给定属性的一个定量测量。
1.3.2 目的
提高软件生产率,缩短产品研发周期,降低研发成本、维护成功。提高软件产品质量,提高用户满意度。为组织持续改进提供量化的指标和反馈。
1.3.3 软件度量的作用
软件度量的作用包含四点:理解、预测、评估、改进。
所谓理解就是通过度量,获得对过程、产品、资源等的理解,确定以后预测的基线和模型。这是评估、预测、改进活动的基础。
我们知道通过度量,可以理解过程、产品、项目各要素之间的关系并建立度量模型,预测就是由这些已知的要素推算、估计其他要素,以便合理分配资源、合理指定计划。
通过度量可以评估:1、开发活动与计划的符合程度。如工作量估计偏差、进度偏差等。2、产品的质量。如软件复杂度、缺陷密度、平均失效时间间隔等。3、新技术的影响。
根据得到的量化信息,可以帮助我们识别要因、查找问题的根源,以及能提高产品质量和过程效率的其他方法;与以前的量化信息比较,可以验证这些方法是否有效。从而进行有效的改进。
1.3.4 软件度量的过程
软件度量的过程,概括地说就是五步法,即识别目前-定义度量过程-数据收集-数据分析与反馈-过程改进。
1、识别目标。根据管理者的不同要求,分析出度量的工作目标,并根据其优先级和可行性,得到度量活动的工作目标列表,并由管理者审核批准。
2、根据度量目标,定义度量过程的如下内容:
收集要素:定义收集活动和分析活动所需数据要素与收集表格的形式。
收集过程:定义数据收集活动的形式、方法、角色及数据的存储、管理。
分析/反馈过程:定义数据的分析方法和分析报告的反馈形式。
IT 支持体系:定义IT支持设备和工具,协助数据收集和存储、质量控制、存取控制、初加工,以及生成分析报告。
3、数据收集。就是从项目中收集数据并存储原始数据,并对数据进行质量检查,生成初步的统计数据;在规定的度量活动完成(或阶段性的度量活动完成)后,输出汇总数据的初步统计结果。
4、数据分析与反馈。根据汇总数据的初步统计结果,按照预定义的分析方法进行数据分析,找到可能的影响质量、进度等属性的原因及可能改进点;完成规定格式的分析报告,向相关的管理者和项目进行反馈。
5、过程改进。包括软件开发过程改进和软件度量过程改进。前者是根据分析报告,管理者作出决策。这些决策可能包括:对于项目,滚动计划等采取纠正活动;对于过程,固化过程变更、修正过程变更等活动;对于后者主要是根据度量活动中所发现的问题。对度量过程做出变更,以提高度量活动的效率,或者更加符合组织的商业目标。
1.3.5 软件度量的类型
过程度量-----过程优化和改进
产品度量-----产品评估和决策
项目度量-----项目控制和评估
1.3.6 基本度量项
常见的度量如下:
规模:软件工作产品的大小。
工作量:完成各软件工作产品和活动所用人时/天。
进度:各软件工作产品和活动开始和结束的时间。
质量:在各软件工作产品和活动中产生的缺陷数。
缺陷密度:基于各个测试活动发现的缺陷数。
生产率:文档生成率、编码阶段生成率、设计用例率。
测试执效率:执行用例数/人天