SEI CMMI - 概述



过程改进是持续改进。我们永远无法达到完美。在本教程中,我们将学习 CMM,这是一个不断发展和改进的模型,其重点始终是做得更好。我们的目标应该始终超出我们的能力范围。

什么是 CMM?

  • CMM 代表Capability Maturity Model(能力成熟度模型)。

  • 专注于来自各个知识体系的基本实践和流程的要素。

  • 描述了做生意的一些常识性、高效且行之有效的方法(您可能已经在实践中),而不是一种激进的新方法。

  • CMM 是一种评估和衡量组织软件开发流程成熟度的方法。

  • CMM 以 1 到 5 的等级衡量软件开发流程的成熟度。

  • CMM v1.0 由美国匹兹堡卡内基梅隆大学软件工程研究所 (SEI) 开发。

  • CMM 最初是为软件开发和维护而开发的,但后来也扩展到以下领域:

    • 系统工程

    • 供应商采购

    • 集成产品和流程开发

    • 人员 CMM

    • 软件采购

CMM 示例

  • 人员 CMM - 开发、激励和留住项目人才。

  • 软件 CMM - 增强以软件为中心的开发和维护能力。

什么是成熟度?

定义各不相同,但成熟的流程通常被认为是:

  • 定义明确的,

  • 可重复的,

  • 可衡量的,

  • 可分析的,

  • 可改进的,以及

  • 有效的。

糟糕但成熟的流程与完全没有成熟度一样糟糕!

CMM 通过定义一组实践并提供一个改进它们的通用框架来帮助解决成熟度问题。CMM 的重点是识别关键过程域以及可能构成规范软件流程的典范实践。

不成熟与成熟组织

不成熟的组织将具有以下特征:

  • 项目期间临时制定流程

  • 忽略已批准的流程

  • 被动反应,而不是主动预防

  • 预算和时间安排不切实际

  • 为了进度牺牲质量

  • 没有客观的质量衡量标准

相反,成熟组织的特征如下:

  • 组间沟通和协调

  • 按照计划完成工作

  • 实践与流程保持一致

  • 根据需要更新流程

  • 明确定义的角色/职责

  • 管理层正式承诺

什么是 CMMI?

CMMI 集成项目是为了解决使用多个 CMM 的问题而成立的。CMMI 产品团队的使命是将三个源模型整合到一个单一的改进框架中,供追求企业范围流程改进的组织使用。这三个源模型是:

  • 软件能力成熟度模型 (SW-CMM) - v2.0 草案 C。

  • 电子工业联盟临时标准 (EIA/IS) - 731 系统工程。

  • 集成产品开发能力成熟度模型 (IPD-CMM) v0.98。

CMMI 集成

  • 构建一组初始的集成模型。

  • 根据经验教训改进源模型中的最佳实践。

  • 建立一个框架,以便将来集成模型。

CMM 和 CMMI 之间的区别

CMM 是特定学科(如系统工程 CMM、软件 CMM、人员 CMM、软件采购 CMM 等)中成熟实践的参考模型,但它们难以根据需要进行集成。

CMMI 是 CMM 的继任者,并发展成为一套更成熟的指南,它结合了 CMM(软件 CMM、人员 CMM 等)各个学科的最佳组成部分。它可以应用于产品制造、人员管理、软件开发等。

CMM 描述了软件工程本身,而 CMM 集成则描述了软件和系统工程。CMMI 还包含了集成流程和产品开发以及供应商采购。

CMMI 和业务目标

CMMI 的目标非常明显。它们如下:

  • 生产优质产品或服务 - CMMI 模型中的流程改进概念源于戴明、朱兰和克劳斯比的质量范式:优质产品是优质流程的结果。CMMI 强化关注与质量相关的活动,包括需求管理、质量保证、验证和确认。

  • 为股东创造价值 - 成熟的组织比成熟度较低的组织更有可能做出更好的成本和收入预测,然后根据这些预测执行。CMMI 支持优质产品、可预测的进度和有效的测量,以支持管理层做出准确且有力的预测。这种流程成熟度可以防止可能削弱组织在投资者眼中的价值的项目绩效问题。

  • 增强客户满意度 - 在满足成本和进度目标的同时,提供经过验证的满足客户需求的高质量产品,这是提高客户满意度的良好方法。CMMI 通过强调计划、监控和衡量以及更强大的流程带来的改进的可预测性,来解决所有这些要素。

  • 增加市场份额 - 市场份额是许多因素的结果,包括优质产品和服务、品牌识别、定价和形象。客户喜欢与信誉良好的供应商合作,这些供应商能够履行其承诺。

  • 获得业界公认的卓越地位 - 培养卓越声誉的最佳方法是在项目中始终如一地表现出色,在成本和进度范围内交付优质产品和服务。拥有符合 CMMI 要求的流程可以增强这种声誉。

广告