CMMI认证

[CMMI知识科普连载七] 度量与分析(MA)

什么是度量

软件度量是对软件开发项目、过程及产品,进行数据定义、收集以及分析的持续性定量化过程,目的在于对此加以理解、评价、预测和改善

度量的四个目的,具体来说就是:

贯穿CMMI体系的一个思想就是过程的持续改善,而度量数据使得改善有据可循,度量与分析过程就是CMMI-2级以上过程的基石。CMMI过程域度量与分析(MA)的目的在于开发并保持用于支持管理信息需要的度量能力。

为什么度量

软件行业面临的危机:

那引入度量分析就能把这些难题一网打尽了么?

嗯,突然感觉信心十足,很有干劲了呢

然而

。

。

。

并不能。

咳咳、那我们为什么还要度量?

那就先自问这些问题:

什么性能对我的组织来说是重要的?为什么?

这些问题\性能的优先级怎么排定?

为了解决问题\提高性能我们做出了怎样的努力,效果如何?

这些问题都有助于度量体系的建立。
 

度量体系的建立就是要帮助组织解决问题或者判断目标的达成状况。

度量数据收集和分析都需要占用组织资源,自然会考虑投资与回报的问题。

如果我们能在度量分析的基础上,采取措施:

 

——减少返工时间

——提高劳动生产率

——提高产品质量

度量活动带来的收益预计将会大于活动固定成本与机会成本,那度量的采集和分析自然是值得的。

当然,度量本身不会改进过程,但度量为我们提供了对计划、控制、管理和改进的可行性。

  • 历史数据帮我们预测并准备计划。

  • 实际数据和计划对比沟通,反馈于预测模型的改进,有助于进一步决策

  • 检查异常数据,发现问题所在

  • 监控过程改进活动,判断改进的效果。

如果我们没有度量,我们就不能:
  • 合理估算

  • 合理计划

  • 确定进度

  • 评价质量

  • 识别改进机会

  • 确定改进效果

没有前进的方向,盲目的行动对组织是浪费更是伤害,其它改进活动都无从谈起。

度量与分析(MA)过程域

度量与分析(MA)的目的在于开发并保持用于支持管理信息需要的度量能力。

MA过程域的特定目标、特定实践的总体关系图如下图所示。

后面将度量分析流程中说明该过程域特定目标和特定实践。

SG1协调度量与分析活动

度量目标和活动与所识别的信息需要和目标协调一致。

通常在专注于度量规格,说明、数据收集或存储的细节之前,重要的是先明确将要进行的分析。

建立度量目标与度量项

对应着SP1.1建立度量目标和 SP1.2明确说明度量项

建立并维护从所识别的信息需要与目标中导出的度量目标,并明确说明应对度量目标的度量项。

首先要目标,度量目标通常来自组织的商业目标和质量目标。

有了目标,我们可以列出达成目标需要问的问题,每个问题对应一系列度量项,通过度量数据的收集和分析就可以帮助我们回答这些问题

举个例子

对于目标“提高软件质量”的问题:

对于每一个问题,就识别出对应的度量项来回答它。

基本度量项的数据通过直接度量得到。衍生度量项通过多项基础数据计算或统计得来。

在信息需要、度量目标、度量类型、基本度量项与衍生度量项之间存在直接关系。这种直接关系在表MA.1中使用一些常用的实例进行了描述。

表MA.1:度量关系实例

项目、组织级或业务目标实例

信息需要

度量目标

度量信息

类型

基本度量项实例

衍生度量项实例

缩短交付时间

成为率先上市的产

品

估算的交付时间是何时?

提供进度波动与

进展的洞察

进度与进

展

任务的估算与实际的开始及结束日期

里程碑绩效

按时完成项目的百分比

进度估算的准确性

通过降低产品与服务的成本来增加市场份额

规模与成本的估算准确性如何?

提供实际规模与成本相对于计划偏差的洞察

规模与工

作量

估算与实际的工作量与规模

生产率

工作量与

成本

估算与实际的成本

成本绩效

成本偏差

交付规定的功能

范围或项目规模增加了吗?

提供实际规模相对于计划的偏差的洞察,识别计划外的增长

规模与稳

定性

需求数

需求易变性

规模估计的准确度

功能点数

估计功能点个数和实际功能点个数对比

代码行数

新增、修改与复用的代码数量

不影响成本的前提下,交付给客户的产品的缺陷降低10%

在交付之前,缺陷在哪里注入以及哪里被发现?

在整个产品生命周期中,评价缺陷检测的有效性

质量

按生命周期阶段注入及发现的缺陷个数

产品规模

生命周期阶段的缺陷检出比率缺陷密度

返工成本有多少?

确定修复缺陷的成本

成本

按生命周期阶段注入及发现的缺陷个数

修复缺陷花费的工时

劳动力成本单价

返工成本

减少信息系统弱点

未解决的系统弱点的量级?

评价缓解系统弱点的有效性

信息保证

已识别的系统弱点

个数与已缓解的系

统弱点个数

已缓解的系统弱点百分比

对于SP1.1目标的实践

1.  为信息需要与目标划分优先级。对所有最初识别的信息需要都进行度量与分析既不可能也无此必要。需要在可用资源限制下,设定优先级。

2.  将度量目标文档化,并对其进行评审与更新。

3.  必要时提供反馈信息,以细化并澄清信息需要与目标。

4.  维护度量目标对所识别的信息需要与目标的可追溯性。度量目标也可以修改,以反映不断发展的信息需要与目标。

对于SP1.2度量项的实践

1.  度量项对度量目标要可追溯。

2.  明确说明度量项的可操作定义。以精确且没有歧义的方式对可操作定义进行陈述。它们满足两个重要的准则:

a)  沟通:已经度量了什么,如何度量的、度量项的单位是什么、以及已经包括或排除了什么?

b)  可重复性:在相同的定义下,度量可以复现得到相同的结果

3.  对度量项进行优先级划分、评审与更新。

制定度量方法

度量方法包含数据的搜集、存储、分析、报告的方法,制定度量方法即对应着SP1.3明确说明数据收集与存储的规程 和 SP 1.4明确说明分析规程

SG2提供度量结果

SP2.1获取度量数据

获得分析所必需的数据,并检查验证其完备性。

1. 获得基本度量数据;

2. 计算衍生度量数据;

3. 尽可能在度量周期早期验证基本和衍生度量,验证的项目包括:遗漏数据、越界值、异常模式和度量项的关系等等;

4. 过程尽量自动化,按照确定的度量方法和规程获取数据,减少人工干预。

SP2.2分析度量数据

1. 初始分析、解释度量结果,得出初步结论;

2. 有时需要额外的度量分析,用于进一步确定结论中提出问题,或是回答异常、未预料的结果;

3. 与相关干系人一起评审初始结果。

4. 为未来的分析细化准则,使之更符合度量目标的需要。

SP2.3存储数据与结果

管理并存储度量数据、度量规格说明与分析结果。保证度量数据和结果能被相关人员及时、有效的取用。

存储的信息通常有:

  • 度量计划

  • 度量项的属性规格(包括人员对度量数据访问的权限)

  • 已收集的数据集

  • 分析报告与介绍资料(报表与数据关联,通过工具实时生成)

  • 数据保存周期

SP2.4沟通结果

与所有相关干系人及时、有效地沟通度量与分析结果。相关干系人包括项目组、最终用户、发起人、数据采集与分析人员。有时为了度量结果被正确解读并运用于支持决策,需要对相关人员进行培训。

– END –

本文是“东航信息部IT百分百”原创,转载需注明出处

转载须保持以上所有内容完整。


版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:[CMMI知识科普连载七] 度量与分析(MA)