CMM简介(软件能力成熟度模型)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件能力成熟度模型CMM简介
开发符合预算和进度要求的高可靠性和可用性软件难
以实现。 美国国防部的 17 个重要软件,进度计划平均 28 个月, 推迟了20个月才完成。 B1轰炸机的部署,因软件问题被推迟。 耗资 580 亿美元的 A12 飞机计划因软件问题被部分取 消。 美国统计局结论:把软件看成一个产品,把软件开发 看成一个过程,这种理解没有与已有的和刚刚形成的 飞行关键系统不断增加的复杂性及其对软件的依赖性 要求同步发展。
等级4的关键过程域
定量过程管理的目标是:定量地控制项目的
过程效能。软件过程效能描述了遵循一个软 件过程所达到的实际结果。任何过程都有随 机变化。稳定过程的效能一般在已知范围 (定量过程能力)内。当其超出界限时,就 需要明确产生变化的原因,并清除产生该变 化的环境。 软件质量管理的目标是,定量地评价软件产 品的质量,并实现具体的质量目标。
基础设施活动。 每个关键实践的组成:一个单独的句子,常常跟有 详细的描述,其中可能包括例子和细节。 目的:沟通那些在大多数项目和组织中使用的原理, 沟通那些在典型的软件应用系统中发挥了作用并且 能够长期发挥作用的原理。沟通的方法是详细描述 这些原理,并依据每个组织的背景及管理人员和技 术人员的技术水平应用这些原理。 目标:概括一个关键过程域中的关键实践,并能用 于确定一个组织或项目是否已有效地实施关键过程 域。
等级3的关键过程域
组织过程的目标是,为改进组织的整体软件过程能力,建立负责
软件过程活动的机制。 组织过程定义的目标是,开发和维护一组可用的能提高项目软件 过程整体效能的软件过程资源集合,并为在定量过程管理中确定 有意义的数据提供基础,这些资源提供了一组稳定的准则,并通 过诸如培训等机制使其制度化。 培训大纲的目标是,提高个人的技能和知识,使其能更有效地、 更好地完成工作。培训是组织的责任,但软件项目应该识别出他 们所需培训的技能 集成软件管理的目标是,将软件工程和管理活动结合成密切相关 定义完整的软件过程。该软件过程从组织标准软件过程和相关过 程资源剪裁得来。这种剪裁基于项目的业务环境和技术需要。 软件产品工程的目标是,始终执行经过严格定义,并综合了所有 软件工程活动的工程过程。从而高效生产出稳定的软件产品。软 件产品工程描述了项目的技术活动。 组间协调的目标是,使软件工程组与其它小组能积极协作,从而 使项目能更好、更有效地满足用户需求。 同行评审的目标是,尽早地、有效地排除产品中的缺陷。
软件过程的改进(Software Process Improvement)。
CMM的五个等级
1. 初始级:软件过程的特点是无序的,甚至是混乱的。
2.
3.
4.百度文库
5.
几乎没有什么过程是经过妥善定义的,成功往往依 赖于个人或小组的能力。 可重复级:建立了基本的项目管理过程来跟踪成本、 进度和功能特性。制定了必要的过程纪律,能重复 早先类似应用项目取得的成功。 已定义级:已将管理和工程活动两方面的软件过程 文档化、标准化,并综合成该机构的标准软件过程。 所有项目均使用经批准、剪裁的标准软件过程来开 发和维护软件。 已管理级:收集对软件过程和成品质量的详细度量 值,对软件过程和产品都有定量的理解和控制。 优化级:过程的量化反馈和先进的新思想、新技术 促使过程不断改进。
软件能力成熟度模型CMM简介
SEI 的任务:领导改进软件工程实践的当前状况,以
提高以软件为主的系统的质量。 软件能力成熟度模型 (Capability Maturity Model for Software) :描述了有效的软件过程单元的框架。为 软件机构描述了从混乱的、不成熟的软件过程向成熟 的、有纪律的软件过程改进的一条途径。 CMM 定义:对于软件杂志在定义、实习、度量、控 制和改善其软件过程中各个发展阶段的描述。这个模 型暴雨强度软件组织的校友过程的能力和查找软件质 量及过程改进方面最关键的问题,从而为选择过程改 进战略提供指南。
SEI:美国卡耐基梅隆大学的软件工程研究
院产品 SEI:为美国联邦政府评估软件供应商能力,于 1986年开始研究的模型,于1993 年推出CMM 1.1版。 CMM 1.1版:是目前世界上比较流行和通用的CMM 版本。 新研究:
CMMI ( Integration )
P-CMM ( People ) SACMM ( 软件获取CMM )
关键过程域框架
目标和共同特性按标题分界,例如,目标和执行
约定。 关键实践的标识由表明其共同特性的名词和数字 组成,例如,约定1和能力2。 关键实践用粗体字表示例如,有负责〈X〉的小组。 在各实践前面,常有一段序言;例如,这些关键 实践的各实践都有这样的话:“依据书面规程”, 接着是“该规程一般规定:” 实践下面是加上方框的文字,其中包括细节部分、 相互参照或者实例。
软件能力成熟度模型CMM简介
SEI 的任务:领导改进软件工程实践的当前状况,以
提高以软件为主的系统的质量。 软件能力成熟度模型 (Capability Maturity Model for Software) :描述了有效的软件过程单元的框架。为 软件机构描述了从混乱的、不成熟的软件过程向成熟 的、有纪律的软件过程改进的一条途径。 CMM 定义:对于软件组织在定义、实现、度量、控 制和改善其软件过程中各个发展阶段的描述。这个模 型便于确定软件组织的现有过程的能力和查找软件质 量及过程改进方面最关键的问题,从而为选择过程改 进战略提供指南。
1. 初始级:软件过程的特点是无序的,甚至是混乱的。
2.
3.
4.
5.
几乎没有什么过程是经过妥善定义的,成功往往依 赖于个人或小组的能力。 可重复级:建立了基本的项目管理过程来跟踪成本、 进度和功能特性。制定了必要的过程纪律,能重复 早先类似应用项目取得的成功。 已定义级:已将管理和工程活动两方面的软件过程 文档化、标准化,并综合成该机构的标准软件过程。 所有项目均使用经批准、剪裁的标准软件过程来开 发和维护软件。 已管理级:收集对软件过程和成品质量的详细度量 值,对软件过程和产品都有定量的理解和控制。 优化级:过程的量化反馈和先进的新思想、新技术 促使过程不断改进。
CMMI ( Integration )
P-CMM ( People ) SACMM ( 软件获取CMM )
软件能力成熟度模型CMM简介
CMM的主要作用:
软件过程评估(Software Process Assessment)。
软件能力评估(Software Capability Evaluation)。
关键过程域
指明为了改进其软件过程组织应重点关注的区
域。识别出为了达到某个成熟度等级所必须着 手解决的问题。 每个关键过程域识别一串相关活动,当这些活 动全部完成时,能达到一组对增强过程能力至 关重要的目标。 要实现某个关键过程域,必须达到该关键过程 域的全部目标。目标概括一个关键过程域的关 键实践。目标表明每个关键过程域的范围、边 界和意图。
关键过程域
指明为了改进其软件过程组织应重点关注的区
域。识别出为了达到某个成熟度等级所必须着 手解决的问题。 每个关键过程域识别一串相关活动,当这些活 动全部完成时,能达到一组对增强过程能力至 关重要的目标。 要实现某个关键过程域,必须达到该关键过程 域的全部目标。目标概括一个关键过程域的关 键实践。目标表明每个关键过程域的范围、边 界和意图。
SEI:Software Engineering Institute
SEI:美国卡耐基梅隆大学的软件工程研究
院产品 SEI:为美国联邦政府评估软件供应商能力,于 1986年开始研究的模型,于1993 年推出CMM 1.1版。 CMM 1.1版:是目前世界上比较流行和通用的CMM 版本。 新研究:
实施CMM的方法——IDEAL模型
I :初始化 (Intiating) ,为成功地改进工作奠
定基础。 D :诊断 (Diagnosing) ,确定现状与目标之 间的差距。 E :建立 (Establishing) ,计划如何达到目标。 A:行动(Acting),根据计划开展工作。 L:学习(Learning),从经验中学习,以提高 在将来采用新技术的能力。
共同特性
执行约定:描述组织为确保过程的建立和持续而必须
采取的一些措施,一般包括制定组织的方针和建立高 级管理者的支持。 执行能力:描述为了能设施软件过程,项目或组织中 必须存在的先决条件,一般包括资源、组织和培训。 执行活动:描述为实现一个关键过程域所必须的职责 和活动,一般包括制定计划和规程、执行工作、跟踪 过程并在需要时采取纠正措施。 度量和分析:描述对过程进行度量和对度量结果进行 分析的需要,一般包括为了确定所执行活动的状态和 有效性所采用的度量活动。 验证实施:描述那些能保证遵照已建立的过程进行活 动的措施,一般包括管理者和软件质量保证部门所作 的评审和审计。
软件能力成熟度模型CMM简介
开发符合预算和进度要求的高可靠性和可用性软件难
以实现。 美国国防部的 17 个重要软件,进度计划平均 28 个月, 推迟了20个月才完成。 B1轰炸机的部署,因软件问题被推迟。 耗资 580 亿美元的 A12 飞机计划因软件问题被部分取 消。 美国统计局结论:把软件看成一个产品,把软件开发 看成一个过程,这种理解没有与已有的和刚刚形成的 飞行关键系统不断增加的复杂性及其对软件的依赖性 要求同步发展。
可重复级
初始级
等级2的关键过程域
需求管理的目标是,在客户和解决客户需求的软件项目
之间,建立对客户需求的共同理解。这种与客户间的一 致是计划和管理软件项目的基础。 软件项目计划的目标是,制定实施软件工程与管理软件 项目的合理计划。 软件项目跟踪和监督的目标是,能够随时掌握软件项目 的实际开发过程,使得当软件项目的执行活动与软件计 划相背离时,管理部门能采取有效的措施。 软件分包合同管理的目标是,选择高质量的软件分承制 方,并进行有效的管理。 软件质量标准的目标是,为管理者提供有关软件项目的 过程和产品的适度可见性。 软件配置管理的目标是,保证软件项目生成的产品在软 件生命周期中的完整性。
等级5的关键过程域
缺陷预防的目标是,明确产生缺陷的原因并
预防它们再次发生。 技术更新管理的目标是,确定新技术(如工 具、方法和过程),并有序地将这些技术引 入组织内。 过程更改管理的目标是,不断改进组织中所 使用的软件过程,从而提高软件质量和生产 率,缩短产品开发生命周期。
关键实践
描述对关键过程域的有效实施和规范化贡献最大的
软件能力成熟度模型CMM简介
CMM的主要作用:
软件过程评估(Software Process Assessment)。
软件能力评估(Software Capability Evaluation)。
软件过程的改进(Software Process Improvement)。
CMM的五个等级
关 键 过 程 域
不断改进的过程
过程更改管理 技术更新管理 缺陷预防 软件质量管理
优化级
可预测的过程
定量过程管理 同行评审 组间协调 软件产品工程 集成软件管理 培训大纲 组织过程定义 组织过程焦点
已管理级
已定义级
标准、一致的过程
有纪律的过程
软件配置管理 软件质量保证 软件子合同管理 软件项目跟踪与监督 软件项目计划 需求管理
IDEAL模型
修订组 织的方 法
推进
记录并分析 经验教训 定义过程 与度量 规划并执 行行动指 南
行动
改进的激 明确范围 励条件 获取支持 初始化
建立改进 基础结构 评估明确 当前实践 编制报告 诊断 确立方针 和优先级
计划、执行 和跟踪安装 建立过程行 动小组,规 划行动
以CMM为基础
建立
SEI:Software Engineering Institute