软件测试Python专家之路程序员

软件工程快速入门教程7-能力成熟度模型CMM

2019-07-20  本文已影响7人  python测试开发

什么是CMM?

能力成熟度模型(Capability Maturity Model)用作衡量组织软件过程成熟度的基准。

CMM是在80年代后期在软件工程研究所开发的。 它是由美国空军资助的一项研究的结果,作为评估分包商工作的一种方式。 后来基于1991年创建的CMM-SW模型来评估软件开发的成熟度,其他多个模型与CMM-I集成在一起

Capability Maturity Model (CMM) & CMM Levels: A Fool’s Guide

什么是能力成熟度模型(CMM)级别?

  1. 初始
  2. 重复/管理
  3. 定义
  4. 量化管理
  5. 优化

Capability Maturity Model (CMM) & CMM Levels: A Fool’s Guide

不同级别的CMM会发生什么?

水平 活动 优点
1级初始 在第1级,该过程通常是混乱和临时的;能力的特征是基于个人而非组织; 未衡量进展;开发的产品通常是计划和超出预算;计划,成本,功能和质量目标的差异很大 没有
2级管理 需求管理; 估算项目参数,如成本,进度和功能;衡量实际进度;制定计划和流程; 定义了软件项目标准;识别和控制产品,问题报告的变化等;项目之间的流程可能不同 流程变得更容易理解;管理人员和团队成员花费更少的时间来解释事情的完成方式以及执行事务的时间;项目得到更好的估计,更好的计划和更灵活;质量已融入项目中;成本可能最初很高,但加班时间会下降;更多文书工作和文件
Level-3定义 澄清客户要求;解决设计要求,制定实施流程;确保产品符合要求和预期用途;系统地分析决策'纠正和控制潜在的问题 流程改进成为标准;解决方案从“编码”发展到“工程化”;在整个项目工作中出现质量门,整个团队参与该过程;风险得到缓解,不会让团队感到意外
4级定量管理 统计管理项目的流程和子流程;了解流程绩效,定量管理组织的项目; 优化整个组织的流程绩效;促进组织中的定量项目管理。
5级优化 及早发现并消除缺陷的原因;确定并部署新工具和流程改进,以满足需求和业务目标 促进组织创新和部署;推动因果分析和解决方案

下图给出了在不同CMM级别发生的情况的图示

Capability Maturity Model (CMM) & CMM Levels: A Fool’s Guide

实施CMM需要多长时间?

CMM是维护任何软件开发公司产品质量的最理想的流程,但其实施所需的时间比预期的要长。

参考资料

CMM的内部结构

CMM中的每个级别都定义为关键过程域或KPA (key process area) ,级别1除外。 每个KPA都定义了一组相关活动,这些活动在共同执行时实现了一组对提高软件能力至关重要的目标

对于不同的CMM级别,有一组KPA,例如对于CMM模型-2,KPA是

同样,对于其他CMM模型,您有特定的KPA。 要了解KPA的实施是否有效,持久和可重复,它将根据以下基础进行绘图

  1. 承诺执行
  2. 能够执行
  3. 活动执行
  4. 测量和分析
  5. 验证实施

CMM模型的局限性

为何使用CMM?

今天,CMM充当软件行业的“批准印章”。 它有助于以各种方式提高软件质量。

摘要

CMM于80年代末首次在美国空军引入,用于评估分包商的工作。 后来,通过改进版本,它被实现为跟踪软件开发系统的质量。

整个CMM级别分为五个级别。

上一篇 下一篇

猜你喜欢

热点阅读