软件工程中的能力成熟度模型(CMM)
什么是三坐标测量机?
能力成熟度模型 被用作衡量组织软件流程成熟度的基准。
CMM(计算机质量管理)是软件工程研究所在 20 世纪 80 年代末开发的。它的开发源于美国空军资助的一项研究,旨在评估分包商的工作。trac躯干。 LaterCMM-I 是在 1991 年创建的用于评估软件开发成熟度的 CMM-SW 模型的基础上,将其他多个模型集成到 CMM-I 中。
什么是能力成熟度模型 (CMM) 级别?
该模型定义了五个递进的成熟度级别:
- 初始
- 可重复/托管
- 自定义
- 量化管理
- 优化
不同级别的 CMM 会发生什么?
下表列出了每个级别的活动和福利。
| 楼层 | 游戏及活动 | 优点 |
|---|---|---|
| 1级初始 |
|
没有。项目一片混乱。 |
| 2 级管理 |
|
|
| 3 级定义 |
|
|
| 四级量化管理 |
|
|
| 5 级优化 |
|
|
下图以图形方式展示了三坐标测量机在不同高度层发生的情况:
实施CMM需要多长时间?
CMM 是任何软件开发公司保持产品质量最理想的流程,但它的实施所需时间比预期要长一些。
- CMM的实施并非一朝一夕就能完成。
- 这不仅仅是“文书工作”。
- 典型的实施时间如下:
- 3-6个月 -> 准备用
- 6-12个月 -> 为实施
- 3个月 -> 用于评估准备
- 12个月 -> 对于每个新级别
三坐标测量机内部结构
CMM 中的每个级别都定义为 关键过程域或KPA除了级别 1 之外,每个 KPA 都定义了一组相关的活动,这些活动共同执行时可以实现一组被认为对提高软件能力至关重要的目标。
针对不同的CMM级别,有一系列关键绩效指标(KPA)。例如,对于CMM模型2,其KPA如下:
- REQM – 需求管理
- PP – 项目规划
- PMC – 项目监控与控制
- SAM – 供应商协议管理
- PPQA – 过程和质量保证
- CM – 配置管理
同样,对于其他CMM模型,也有特定的关键绩效指标(KPA)。为了了解KPA的实施是否有效、持久且可重复,需要根据以下标准进行评估:
- 履行承诺
- 执行能力
- 所执行的活动
- 测量与分析
- 验证实施情况
CMM 模型的局限性
该模型也存在一些局限性:
- CMM 确定的是流程应该解决什么问题,而不是应该如何实施。
- 它并没有解释软件流程改进的所有可能性。
- 它专注于软件问题,但不考虑战略业务规划、技术采用、产品线建立和人力资源管理。
- 它并没有规定一个组织应该从事哪种类型的业务。
- CMM 在目前正处于危机中的项目中将无法发挥作用。
为什么使用坐标测量机?
如今,CMM在软件行业中扮演着“认证标志”的角色。它能以多种方式帮助提高软件质量。
- 它引导人们走向可重复的标准流程,从而减少学习如何完成工作所需的时间。
- 实践 CMM 意味着实践一套标准的开发流程,这不仅有助于团队节省时间,还能清晰地展现要做什么以及预期结果。
- 这些高质量的活动与项目完美融合,而不是被视为一个独立的活动。
- 它充当项目与团队之间的沟通桥梁。
- CMM 的努力始终致力于改进工艺流程。




