CMM介绍与关键过程域说明

合集下载

cmm关键过程域剖析:需求管理[1]

cmm关键过程域剖析:需求管理[1]

CMM关键过程域剖析:需求管理[1]需求管理是CMM二级中列出的第一个关键域,这是因为它实际上是二级引入到开发过程中的所有管理原则的先决条件。

只有在开发的目标被清楚明白地表述和理解的情况下,软件开发才能以一种有计划的有序的方式进行。

实际上,没有文档化的需求,在开发工作完成前后都很有可能发生产品与要求的偏离。

计划、追踪、配置管理以及软件质量保证这些在二级的其他关键过程域中涉及的原则,都是从一个稳定的基础开始的,那就是文档化的需求基线。

什么需求?谁的需求?CMM已经说得很清楚:本关键过程与中所说的需求是指“分配给软件的系统需求“,或者更简洁地说,“分配需求”。

这些需求有可能是技术方面的(比如:功能和性能需求),也有可能是非技术方面的(比如:发布日期,开支限度)。

这里假设被开发的软件是更大的系统中的一部分,这个更大的系统包括了正在开发着的软件和所有其它组件。

更进一步的假设是那个更大的系统就是一位客户,这个客户是所有系统需求的来源。

他不需要负责区分软件所要实现的系统需求和其他的需求。

确切地说,负责选择哪些系统需求必须分配给软件的人是系统工程组。

但是,在执行这个角色的时候,系统工程组并不是独自行事的。

这个观点在本关键过程域的行为1中有明显的证据,原文如下:“软件工程组在分配需求合并入软件项目中之前对其进行复审。

一般的混乱点存在于没有高一级的系统或者正被开发的软件就是整个产品的情况下。

尽管这种情况下没有分配给软件的需求,但为了保持CMM的一致性,仍然使用“分配需求”的概念。

毫无疑问,这个概念在这里是不能直接应用的,但是可以通过所有的产品需求都是分配需求来解释。

区分开需求管理(CMM中的概念)和软件需求分析(软件工程文献中的概念)是很重要的。

一旦分配需求被文档化,并且被所有受影响部门(客户,系统工程,软件工程)通过,需求管理的基本工作就完成了,所剩下的就是管理变更而已。

没有证据证明分配需求本身就可以十分清楚完整的作为软件开发的全部基础。

CMM(CMMI)基础知识介绍

CMM(CMMI)基础知识介绍
1987年9月,发表了关于过程成熟度框架简要说明和成熟度调查问卷。 以此为蓝本,1987——1991,在美国政府的促进下,美国一些大公司
的软件组织进行了软件过程成熟度模型的评估实践。SEI根据这四年 的实践经验,在原过程成熟度框架的基础上开发出了“软件能力成熟 度模型(CMM1.1版)”。 CMM1.1版发表后的两年里先后产生了三十多个草案,于己于1993年 2月发表了“软件能力成熟度模型的关键惯例1.1版”,统称SW— CMM1.1版,简称CMM。
◆ 技术 建立技术支持活动,并有稳定的计划。
◆ 度量 每个项目建立资源计划。主要关心成本、产品和进度。有相应的管理数据。
◆ 改进方向 (1) 不再按项目制定软件过程,而是总结各种项目的成功经验,使之规则 化,具体经验归纳为全组织的标准软件过程。把改进组织的整体软件过程能 力的软件过程活动,作为软件开发组织的责任。 (2) 确定全组织的标准软件过程,把软件工程及管理活动集成到一个稳固 确定的软件过程中。从而可以跨项目改进软件过程效果,也可作为过程剪裁 的基础。 (3) 建立软件工程过程小组(SEPG)长期承担评估与调整软件过程的任务, 以适应未来软件项目的要求。 (4) 积累数据,建立组织的软件过程库及软件过程相关文档库。 (5) 加强培训。
◆ 过程
软件开发和维护的过程是相对稳定的,但过程建立在项目一级。 有规则的软件过程是在一个有效的工程管理系统的控制之下,先前的成功经验
可以被重复。 问题出现时,有能力识别及纠正。承诺是可以实现的。
◆ 人员
项目的成功依赖于个人的能力以及管理层的支持。 理解管理的必要性及对管理的承诺。 注意人员的培训问题。
CMM/CMMI基础知识
1.1什么是CMM
CMM是指“软件能力成熟度模型”,其英文全称 为Capability Maturity Model

第4章 CMM的相关说明

第4章 CMM的相关说明
第4章 CMM的 相关说明





解释关键实践 关键过程域框架 解释共同特性 机构结构和任务 理解软件过程定义 过程的演化 应用专家判断
目的与要求
理解关键实践,熟练掌握关键过程域框 架及共同特性,理解机构结构和任务,熟 练掌握软件过程定义,了解过程的演化和 应用专家判断

CMM是软件开发和维护中有关过程管理和 质量改进的一般应用,代表软件界对好的 工程和管理实践的广泛一致的认同。 尽管项目实施时要结合具体实际环境对关 键实践具体说明,但CMM中有90%以上的 关键实践得到应用。
5、验证执行 该共同特性中的关键实践描述了为保证与所建立的软件过程 一致,执行活动应采取的步骤。关键实践包括:由上级负 责人和管理部门进行监督,质量保证组和其他人员实施验 证活动,验证软件过程是否正确执行。 上级管理部门定期审查 目的:适当地、及时地掌握软件过程活动 评审的范围和内容取决于负责人—负责机构所有软件活动的 负责人PS高层执行人员,所进行的评审应制定不同的进度 计划、不同的主题。上级管理部门PS项目管理监督,评审 会针对不同主题,或同一主题抽象地从更高角度评审。 不包括该实践的关键过程域有:机构过程定义、同行评审

机构结构
是对专为支持一些关键过程域而建立的机构结构的描述。 建立这些机构的根本原因,如软件质量保证组—独立性的要 求;软件配置管理组和软件工程过程组—保证大型机构有 能力完成合同要求。 涉及机构结构的关键过程域: 软件质量保证、软件配置管理、机构过程焦点、培训大 纲、定量过程管理、缺陷预防、技术更新管理

非正规计划
由一个关键实践对非正规计划进行描述。各实践包 括有关计划的内容以及开发和修订计划的规程。
涉及到的关键过程域:机构过程焦点、组间协调、 同行评审、缺陷预防、技术更新管理

cmmi整体框架和重点过程域解释

cmmi整体框架和重点过程域解释

组织级过程定义(OPD)
成熟度3级过程管理类过程域
• 组织级过程定义(Organizational Process Definition, OPD)的目的在于建立并维护一套可用的组织级过程资产、 工作环境标准以及团队规则与指南。
• 组织级过程资产使得整个组织具有一致的过程执行,并且为组织提供 一个累积的、长期收益的基础。 • 组织的过程资产库通过让整个组织内共享最佳实践与经验教训来支持 组织级学习与过程改进。 • 组织的标准过程集也描述与供方之间标准的交互。供方交互由下面典 型的事项所描述:期望供方提供的交付物、适用于那些交付物的验收 准则、标准(例如,架构与技术标准),以及标准里程碑与进展评审。
“度量与分析”过程域涉及以下活动: • 明确说明度量与分析的目标,使其与所识别的信息需要及项目、 组织级或业务目标协调一致 • 明确说明度量项、分析技术以及数据收集、数据存储、报告与反 馈的机制 • 实施分析技术以及数据收集、数据报告与反馈的机制 • 提供客观的结果,这些结果可用于做出有根据的决策以及采取适 当的纠正措施
组织级培训(OT)
成熟度3级过程管理类过程域
• 组织级培训(Organizational Training,OT)的目的在于发展 人员的技能与知识,使其能够有效且高效地执行他们的角色。
• “组织级培训”涉及用于支持组织战略业务目标的培训,并满足跨项目、 跨支持组的通用战术培训需要。由个别项目与支持组识别的、用以满足 其特定需要的培训在项目与支持组层面进行处理,处于“组织级培训” 过程域的范围之外。 组织级培训项目包括以下活动: • 识别组织所需要的培训 • 获得并提供培训,以解决已识别的培训需要 • 建立并维护培训能力 • 建立并维护培训记录 • 评估培训有效性

3 CMM的内部结构

3 CMM的内部结构
按照一个文档化的规程对 软件工作产品规模进行估计
描述
基本设施或活动 活动
28
练习3 练习3
CMM的每个等级都被分解为哪 个层次? CMM的每个等级都被分解为哪3个层次? 的每个等级都被分解为哪3 什么是关键过程域? 什么是关键过程域? CMM共有多少个关键过程域 CMM共有多少个关键过程域? 共有多少个关键过程域? CMM2包含哪些关键过程域? CMM2包含哪些关键过程域? 包含哪些关键过程域 CMM3包含哪些关键过程域? 包含哪些关键过程域 CMM3包含哪些关键过程域? CMM4包含哪些关键过程域? 包含哪些关键过程域 CMM4包含哪些关键过程域? CMM5包含哪些关键过程域? 包含哪些关键过程域 CMM5包含哪些关键过程域? CMM的关键实践涉及哪5个共同特征? CMM的关键实践涉及哪5个共同特征?
18
每个关键过程域按5 每个关键过程域按5个关键实 践类加以组织, 践类加以组织,每个关键过程 域通过相应的关键实践类实现 一些特定的目标。 一些特定的目标。
19
成熟度等级为顶层, 成熟度等级为顶层,反映软件组织的过 为顶层 程能力和可能实现的预期结果和程度。 程能力和可能实现的预期结果和程度。 每个级别中包含了实现该等级目标的若 干个关键过程域 关键过程域; 干个关键过程域; 每一等级的每一个关键过程域中包含若 干个关键实践 关键实践; 干个关键实践; KPA的KP都统一按 个共同特征进行组 KPA的KP都统一按5个共同特征进行组 都统一按5 即每个KPA都包含 都包含5 KP; 织,即每个KPA都包含5类KP;
需求管理:在客户和实现客户需求之间达到共识; 需求管理:在客户和实现客户需求之间达到共识;控 制需求,建立基准线;保持计划、产品、 制需求,建立基准线;保持计划、产品、 活动与软件的一致性。 活动与软件的一致性。 项目策划:制定工程及其管理的合理计划。 项目策划:制定工程及其管理的合理计划。 跟踪监控:对实际运作建立透明机制,偏离计划时, 跟踪监控:对实际运作建立透明机制,偏离计划时, 采取措施。 采取措施。 合同管理:选择合格的子承包商, 合同管理:选择合格的子承包商,对合同进行有效管 理。 质量保证:对产品质量进行监督控制。 质量保证:对产品质量进行监督控制。 配置管理:建立和维护软件产品的完整性和一致性。 配置管理:建立和维护软件产品的完整性和一致性。

cmm能力成熟度模型的关键过程领域

cmm能力成熟度模型的关键过程领域

cmm能力成熟度模型的关键过程领域【题目】cmm能力成熟度模型的关键过程领域【导言】在软件开发和项目管理领域中,CMM(Capability Maturity Model,能力成熟度模型)是一种评估组织能力和优化过程的工具。

它帮助组织了解自己在软件开发过程中的强项和薄弱点,并提供一种逐步提高成熟度和质量的方法。

CMM包括5个级别,每个级别都对应着特定的过程和实践。

本文将聚焦在CMM中的关键过程领域,深入探讨其内涵和重要性,并分享一些个人观点。

【正文】一、CMM能力成熟度模型简介1.1 什么是CMM?CMM(Capability Maturity Model)是美国国防部软件工程研究所(SEI)于1986年提出的一个框架模型,用于评估和改进组织的软件开发能力。

它将软件开发划分为5个级别,从初始级别到最高级别依次为初始级(Level 1)、被管理级(Level 2)、定义级(Level 3)、量化管理级(Level 4)和优化级(Level 5)。

随着级别的提升,组织的过程能力和质量也相应提高。

1.2 CMM的关键过程领域CMM的关键过程领域是指在软件开发过程中,对于组织而言十分重要的核心领域。

这些过程领域涵盖了软件开发过程中的关键点和关键活动,包括需求管理、配置管理、项目计划和追踪、过程监控和控制、合同管理等。

CMM将这些过程领域归类为几个指标和要素,并为每个过程领域提供了一套最佳实践和规范,以帮助组织提高其软件开发过程的稳定性和质量。

二、关键过程领域的内涵和重要性2.1 关键过程领域的内涵关键过程领域代表了软件开发过程中最重要的部分。

它们是支撑整个软件开发过程的基石,因为它们直接关系到软件开发过程的成功与否。

需求管理是确保软件开发过程满足用户需求的关键过程之一,配置管理是确保软件版本和变更管理的关键过程之一。

2.2 关键过程领域的重要性关键过程领域的重要性在于其对整个软件开发过程和项目管理的影响。

cmm能力成熟度模型的关键过程领域

cmm能力成熟度模型的关键过程领域

CMM能力成熟度模型的关键过程领域1. 引言CMM(Capability Maturity Model),即能力成熟度模型,是一种用于评估和提升组织软件开发能力的模型。

CMM最初由美国国防部软件工程研究所(SEI)在1986年提出,被广泛应用于软件工程领域。

CMM的关键过程领域是指在软件开发过程中,对于能力成熟度的提升起到重要作用的关键过程。

本文将对CMM能力成熟度模型的关键过程领域进行全面详细、完整且深入的介绍,包括关键过程的定义、作用、实施步骤等方面的内容。

2. 关键过程的定义在CMM能力成熟度模型中,关键过程是指在软件开发过程中,对于提升组织的软件开发能力起到重要作用的关键环节。

关键过程包括需求管理、项目计划、项目跟踪与监控、软件质量保证、配置管理、风险管理等多个方面,每个方面都有其独特的特点和作用。

关键过程的目标是确保软件开发过程的可控性和可预测性,提高软件产品的质量和效率,降低开发过程中的风险和成本。

3. 关键过程的作用关键过程在CMM能力成熟度模型中起到至关重要的作用。

通过实施关键过程,组织可以有效管理软件开发过程,提高软件开发的质量和效率,降低开发过程中的风险和成本。

具体来说,关键过程的作用包括以下几个方面:3.1 确保需求管理的有效性需求管理是软件开发过程中的一个重要环节。

通过关键过程,组织可以确保对需求的准确理解和有效管理,避免需求变更导致的开发延误和成本增加。

3.2 优化项目计划和资源分配项目计划和资源分配是软件开发过程中的关键环节。

通过关键过程,组织可以对项目进行合理的计划和资源分配,提高项目的执行效率和资源利用率。

3.3 实现项目跟踪与监控项目跟踪与监控是确保项目按计划进行的关键环节。

通过关键过程,组织可以及时了解项目的进展情况,及时发现和解决项目中的问题,确保项目按时交付。

3.4 提高软件质量保证能力软件质量保证是软件开发过程中的一个重要环节。

通过关键过程,组织可以建立有效的质量保证体系,确保软件产品的质量和可靠性。

CMM介绍与关键过程域说明

CMM介绍与关键过程域说明

CMM介绍与关键过程域说明CMM(Capability Maturity Model)是一种用于管理和评估组织软件开发能力的框架,旨在帮助组织提高其软件开发过程的成熟度,从而提高软件质量和效率。

CMM通过一系列定义明确的关键过程域来描述一个成熟的软件开发组织的特征和实践。

以下是关于CMM和关键过程域的详细介绍。

CMM是由美国软件工程研究所(SEI)于1980年代末开发的。

它最初是为了衡量美国国防部软件供应商的能力而设计的。

CMM在软件工程领域的可行性和实用性被广泛认可,并在全球范围内被广泛采用。

CMM的主要目标是帮助组织改进其软件开发过程的效率和质量,并推动软件工程实践的采用。

CMM采用了一个阶梯式模型,包括五个不同的成熟度级别,从初始级别到最高级别分别是:初始级别、可重复级别、已定义级别、已管理级别和优化级别。

每个级别都有一组关键过程域,这些关键过程域是用于衡量和评估组织软件开发能力的基础。

下面是对每个成熟度级别和相关关键过程域的详细说明:1. 初始级别(Level 1 - Initial)在初始级别,组织的软件开发过程是不可预测的,不受控制的。

该级别缺乏组织和过程的可见性和管理。

没有明确的目标和计划,开发活动主要靠个别开发人员的技能和经验来完成。

2. 可重复级别(Level 2 - Repeatable)在可重复级别,组织开始建立一些基本的项目管理和过程管理能力。

关键过程域包括需求管理、配置管理、项目计划和追踪、软件质量保证等。

目标是确保软件开发过程的可重复性和可控性。

3. 已定义级别(Level 3 - Defined)在已定义级别,组织建立了一套标准化的软件开发过程,并且这些过程已经在组织范围内得到了共享和理解。

关键过程域包括需求开发、软件设计、软件构建、软件测试等。

目标是确保软件开发过程的一致性和稳定性。

4. 已管理级别(Level 4 - Managed)在已管理级别,组织通过定量的管理和度量,对软件开发过程进行管理和优化。

cmmi整体框架和过程域解释讲解

cmmi整体框架和过程域解释讲解

• 2. 阶段式:
• 把CMMI 中的若干个过程区域分成了5 个成熟度级别,帮 助实施CMMI 的组织建议一条比较容易实现的过程改进发 展道路。
连续式与阶段式表现形式
CMMI模型(连续式表达)
• 成熟度等级
CMMI(连续式表达) - 过程能力
• • • • • • 5 4 3 2 1 0 优化级 已定量管理级 已定义级 已管理级 已执行级 不完整级
能力等级 成熟度等级1
2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 4 4 5 5
成熟度等级2
成熟度等级3
目标概览2
目标概览3
目标概览4 目标概览5
CMMI重点过程域解释
配置管理(CM)
成熟度2级支持类过程域
• 配置管理(Configuration Management,CM)的目 的在于使用配置识别、配置控制、配置状态记录与报告以 及配置审计,来建立并维护工作产品的完整性。
“度量与分析”过程域涉及以下活动: • 明确说明度量与分析的目标,使其与所识别的信息需要及项目、 组织级或业务目标协调一致 • 明确说明度量项、分析技术以及数据收集、数据存储、报告与反 馈的机制 • 实施分析技术以及数据收集、数据报告与反馈的机制 • 提供客观的结果,这些结果可用于做出有根据的决策以及采取适 当的纠正措施
CMMI-软件能力成熟度集成 模型 整体框架和重点过程域解释
CMMI是什么?
• CMMI: Capability Maturity Model Integration(能力 成熟度模型集成)
CMMI的关注点
CMMI三要素:人、技术、过程 CMMI关注的是过程,也就是管理
三要素相互影响,过程的改进会持续会持续从正面影响人和资 源,人的士气和能力持续提高,资源被最合理最优化的配置。

CMM简介(软件能力成熟度模型)

CMM简介(软件能力成熟度模型)

关 键 过 程 域
不断改进的过程
过程更改管理 技术更新管理 缺陷预防 软件质量管理
优化级
可预测的过程
定量过程管理 同行评审 组间协调 软件产品工程 集成软件管理 培训大纲 组织过程定义 组织过程焦点
已管理级
已定义级
标准、一致的过程
有纪律的过程
软件配置管理 软件质量保证 软件子合同管理 软件项目跟踪与监督 软件项目计划 需求管理
IDEAL模型
修订组 织的方 法
推进
记录并分析 经验教训 定义过程 与度量 规划并执 行行动指 南
行动
改进的激 明确范围 励条件 获取支持 初始化
建立改进 基础结构 评估明确 当前实践 编制报告 诊断 确立方针 和优先级
计划、执行 和跟踪安装 建立过程行 动小组,规 划行动
以CMM为基础
建立
SEI:Software Engineering Institute
SEI:美国卡耐基梅隆大学的软件工程研究
院产品 SEI:为美国联邦政府评估软件供应商能力,于 1986年开始研究的模型,于1993 年推出CMM 1.1版。 CMM 1.1版:是目前世界上比较流行和通用的CMM 版本。 新研究:
CMMI ( Integration )
P-CMM ( People ) SACMM ( 软件获取CMM )
等级5的关键过程域
缺陷预防的目标是,明确产生缺陷的原因并
预防它们再次发生。 技术更新管理的目标是,确定新技术(如工 具、方法和过程),并有序地将这些技术引 入组织内。 过程更改管理的目标是,不断改进组织中所 使用的软件过程,从而提高软件质量和生产 率,缩短产品开发生命周期。
关键实践

CMM的结构和基本内容

CMM的结构和基本内容

CMM的结构和基本内容来源:北京联高软件CMM描述了五个级别的软件过程成熟度(初始级可重复级已定义级已管理级优化级,成熟度反映了软件过程能力(Software Process Capability)的大小,任何一个软件机构的软件过程必定属于其中某个级别。

除了第一级以外,每级成熟度又由若干关键过程域(Key Process Area)构成。

五个成熟度及其关键过程领域如图所示:图中的每个关键过程域分别针对软件过程的某一方面,具体描述了某级成熟度下软件过程在该方面所应达到的的一组目标和实现这些目标的一组关键活动(Key Practice)。

所有关键活动被划分为五类,分别为完成该组目标所需的承诺(Commitment to Perform)、前提条件(Ability to Perform)、实际动作(Activities performed)、度量分析(Measurement and Analysis)以及验证(Verifying Implementation)。

上述五方面被称为五个Common Features。

CMM的结构如图所示:需要提出的是,任何一个成熟度级别的关键过程域集都是本级描述的关键过程域集和所有下级的关键过程域集的并集。

如3级的关键过程域就应有13个不同的域,其中7个是3级自己包含的,6个属于2级成熟度,而4级应有15个域。

第一级:初始级(The Initial Level)初始级的软件机构缺乏对软件过程的有效管理,其软件项目的成功来源于个人英雄主义而非机构行为,因此它不是可重复的。

第二级:可重复级(The Repeatable Level)概述:第二级软件机构的主要特点是:项目计划和跟踪的稳定性,项目过程的可控性和以往成功的可重复性。

更具体的说:机构建立了管理软件项目的策略和实现这些策略的过程。

新项目的计划和管理基于类似项目的经验。

过程能力的增强基于以各个项目为基础的有纪律的基本过程管理。

CMM关键过程域剖析缺陷预防

CMM关键过程域剖析缺陷预防

CMM关键过程域剖析缺陷预防CMM(Capability Maturity Model)是一种软件工程模型,旨在帮助组织评估和改进其软件开发过程的成熟度水平。

CMM概念最早由美国国防部提出,其模型被广泛应用于软件开发领域,包括缺陷预防。

缺陷预防是CMM中的一个关键过程域,它强调通过预防措施减少缺陷的引入,并提高软件开发过程的稳定性和质量。

在CMM中,缺陷预防被视为一个持续的活动,通过分析过去的经验教训,识别常见的缺陷模式和原因,并采取相应的措施来预防缺陷的重复出现。

缺陷预防的主要目标是降低软件开发过程中的错误率,并提高开发团队的效率和生产率。

下面将详细探讨缺陷预防的关键步骤和实施方法。

1.缺陷收集和分析:在软件开发过程中,收集和分析缺陷是缺陷预防的第一步。

这可以通过建立一个缺陷追踪系统来实现,开发团队可以将发现的缺陷记录在系统中,并进行分类和分析。

通过对缺陷的分析,可以识别出常见的缺陷模式和原因,并为缺陷预防措施提供依据。

2.缺陷定位和修复:一旦发现缺陷,开发团队应该迅速定位并修复这些缺陷。

及时处理缺陷可以帮助减少缺陷对项目进度和质量的影响。

在修复缺陷的过程中,开发团队可以分析缺陷引入的原因,并采取相应的纠正措施,从而避免相同类型的缺陷再次出现。

3.缺陷预防措施的制定:基于缺陷分析的结果,开发团队可以制定相应的缺陷预防措施。

这些措施可以包括更新开发过程文档、加强团队培训、引入自动化测试工具等。

制定缺陷预防措施需要考虑到项目的具体情况和开发团队的实际能力,确保预防措施的实施可行性和效果。

4.缺陷预防措施的实施和监控:制定好缺陷预防措施后,开发团队应该积极实施并监控这些措施的效果。

通过评估实施措施后的缺陷率和缺陷引入的原因,开发团队可以了解措施是否达到了预期效果,并及时调整和改进措施。

5.经验总结和分享:缺陷预防是一个持续的活动,需要不断总结和分享经验教训。

开发团队可以定期组织经验分享会议,让团队成员交流彼此的缺陷预防实践和经验。

CMM关键过程域

CMM关键过程域

CMM关键过程域CMM(Capability Maturity Model)是一个软件工程目标模型,用于评估和改进组织的软件开发过程的能力。

它将软件开发过程分为五个层次,从初始(Level 1)到最优化(Level 5),每个层次都代表着一定的过程成熟度。

CMM的五个层次称为“关键过程域”,每个关键过程域都代表了一个关键的软件开发活动。

1.软件需求管理软件需求管理是指通过适当的技术和工具,对软件需求进行识别、分析、规划和管理的过程。

在这个关键过程域中,组织应明确定义需求,制定合适的需求开发计划,并确保需求管理过程与其他项目管理过程有效地整合。

2.软件项目计划与管理软件项目计划与管理是指通过合适的技术和工具,对软件开发项目的范围、任务、资源、进度和风险进行计划和管理的过程。

在这个关键过程域中,组织应制定一个合适的项目计划,明确项目的目标、范围和约束条件,并建立一个有效的项目管理过程来确保项目按时、按质量地完成。

3.软件工程与迭代开发软件工程与迭代开发是指通过适当的技术和工具,设计、开发和验证高质量的软件的过程。

在这个关键过程域中,组织应建立一个适当的软件开发方法,确保软件开发过程的可控性和迭代性,并建立一个有效的软件工程过程来确保软件的质量。

4.软件产品集成与测试软件产品集成与测试是指通过适当的技术和工具,将各个软件组件整合在一起,并进行验证和确认的过程。

在这个关键过程域中,组织应确保软件组件集成的有效性和可靠性,并建立一个有效的软件测试过程来确保软件在各个集成阶段的质量。

5.软件配置管理软件配置管理是指通过适当的技术和工具,对软件产品的配置项进行控制和管理的过程。

在这个关键过程域中,组织应建立一个适当的配置管理策略,确保软件配置项的完整性和一致性,并建立一个有效的配置管理过程来确保软件配置的可追溯性和可控性。

这些关键过程域是CMM模型的基础,组织可以通过评估它们的成熟度来确定自己的软件开发能力,并制定相应的改进措施。

CMM(软件成熟度)

CMM(软件成熟度)

基本概念:软件过程(Software Process):过程即人们为实现某一既定目标所执行的一系列步骤(IEEE--STD--610)。

软件过程则可定义为企业设计,研制和维护软件产品及相关资料文档的全部生产活动和工程管理活动。

理解包括SEI在内的美国过程学派的一个核心概念就是--只要过程正确及构成过程的解决方法正确,产品就会正确。

软件过程能力(Software Process Capability):企业实施软件过程所能实现预期目标的程度。

它可用于预测企业的软件过程水平。

软件过程行为(Software Process Performance):企业在项目开发中遵循其软件过程所能得到的实际结果。

软件过程成熟度(Software Process Maturity):软件过程行为可被定义,预测和控制并被持续性提高的程度。

它主要用来表明不同项目所遵循的软件过程的一致性。

软件能力成熟度等级(Software Capability Maturity Ievels):企业的软件开发在由低到高成熟化演进过程中所普遍面临的具有一定成熟度标志特征的平台。

成熟与不成熟(Mature and Immature):不成熟的标志有--没有明确的软件过程体系可以依据;无法对生产进行预测;不严格执行生产过程;质量无法保证;无健全的过程控制及质量控制体系;项目开发没有准则可遵循;开发结果主要依据项目小组及个人的带有主观因素的能力发挥。

成熟的标志有--项目开发是依据企业早已明确的过程准则来实施;开发结果较少依赖个人能力和自然因素;项目由过程控制并可对整个生产作出预测;产品质量得到有效监控(借助客观定量化的数据);过去的开发项目中所获经验得以积累并可系统地用于现行和未来的项目之中。

配置管理(Configuration Management):包括以下管理行为:对某个配置项的功能和物理特性进行识别和编档;对这些特征的变动进行控制;对变动和事实进行记录、汇报;验证需求计划的实现。

CMM关键过程域

CMM关键过程域

CMM关键过程域在CMM 中每个成熟度等级(第1 级除外)规定了不同的关键过程域(KPA),一个软件组织如果希望达到某一个成熟度等级,就必须完全满足关键过程域所规定的不同要求,即满足每个关键过程域的目标。

所谓关键过程域是指一系列相互关联的操作活动,这些活动反映了一个软件组织改进过程时必须集中精力改进的几个方面。

换句话说,关键过程域标识了达到某个成熟度等级时所必须满足的条件。

在CMM 中一共有18 个关键过程域,分布在2~5 级中。

第2 级(可重复级)有6 个关键过程域,主要涉及建立软件项目管理控制方面的内容。

需求管理(Requirements Management ,RM )软件项目计划(Software Project Planning ,SPP )软件项目跟踪与监控(Software Project Tracking and Oversight ,SPTO )软件子合同管理(Software Subcontract Management ,SSM )软件质量保证(Software Quality Assurance ,SQA )软件配置管理(Software Configuration Management ,SCM )第3 级(定义级)有7 个关键过程域,主要涉及项目和组织的策略。

使软件组织建立起对项目中的有效计划和管理过程的内部细节。

组织过程焦点(Organization Process Focus ,OPF )组织过程定义(Organization Process Definition ,OPD )培训程序(Training Program ,TP )集成软件管理(Integrated Software Management ,ISM )软件产品工程(Software Product Engineering ,SPE )组间协调(Intergroup Coordination ,IC )同级评审(Peer Reviews ,PR )第4 级(管理级)有2 个关键过程域,主要的任务是为软件过程和软件产品建立一种可以理解的定量的方式。

CMM 简介

CMM 简介
回目录
CMM简介 三、CMM的成熟度
图 4 各 级 组 织 管 理 者 对 过 程 的 可 视 性
回目录
CMM简介 三、CMM的成熟度
3. 过程能力 (1) 什么是过程能力 --高的过程成熟度,其过程能力也较强。 过程不成熟意味着:过程不稳定、无章可循。 -- Paulk等1994定义过程能力为: 遵循某一过程,可能达到预期结果的限度 -- Trillium,1994定义过程能力: 开发机构以最低成本,在最短时间内,稳定 地提交最少缺陷产品,以满足顾客期望的能 力。
回目录
CMM简介 三、CMM的成熟度
4. 过程成熟度
-- 过程成熟度对软件开发进度、成本和质量有着很大影响。 -- 图5给出了不同过程成熟度等级的机构在完成各种项目中达到
预期时间指标的概率分布情况。 图中横座标为时间,纵座标为概率可从图中看出,随着成熟度 的提高:
• 项目实际完成时间与预期指标时间的时差渐小,即 t1>t2>t3 …. 指标时间右,曲线下的面积渐小 • 项目实际完成时间距指标时间渐近,即 1 > 2 > 3 …. • 指标时间缩短,即项目完成的时间缩短,即T1>T2>T3 …. • 有更多的项目在接近指标时间完成,即P1<P5
回目录
CMM简介
二、概述 1986
1987
1991
1993
1997
SEI与Mitre 过程成熟度框架 公司承担项目 成熟度提问单
CMM V1.0
CMM V1.1
CMM V2.0
图1 CMM的发展过程
4. CMM族
Konrad.M于1996描述了SEI开发的5种CMM-based模型, 初始的CMM是针对软件过程的,后发展到其它相关领域。 -- SW-CMM 软件(Software) -- SA-CMM 软件获取( Software Acquisition) -- SE-CMM 系统工程(System Engineering) -- IPM-CMM 集成产品管理(Integrated Product Management) -- P-CMM 人员(People)

CMM说明与关键过程域

CMM说明与关键过程域

CMM介绍及关键过程域的分析一、cmm介绍CMM它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。

CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。

CMM是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。

CMM 分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。

CMM它是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了众多国家以及国际软件产业界的认可,成为当今企业从事规模软件生产不可缺少的一项内容。

CMM有助于组织建立一个有规律的、成熟的软件过程。

改进的过程将会生产出质量更好的软件,使更多的软件项目免受时间和费用的超支之苦。

软件过程包括各种活动、技术和用来生产软件的工具。

因此,它实际上包括了软件生产的技术方面和管理方面。

CMM明确地定义了5个不同的“成熟度”等级,一个组织可按一系列小的改良性步骤向更高的成熟度等级前进。

成熟度等级1:初始级(Initial)。

处于这个最低级的组织,基本上没有健全的软件工程管理制度。

每件事情都以特殊的方法来做。

如果一个特定的工程碰巧由一个有能力的管理员和一个优秀的软件开发组来做,则这个工程可能是成功的。

然而通常的情况是,由于缺乏健全的总体管理和详细计划,时间和费用经常超支。

结果,大多数的行动只是应付危机,而非事先计划好的任务。

处于成熟度等级1的组织,由于软件过程完全取决于当前的人员配备,所以具有不可预测性,人员变化了,过程也跟着变化。

结果,要精确地预测产品的开发时间和费用之类重要的项目,是不可能的。

成熟度等级2:可重复级(Repeatable)。

在这一级,有些基本的软件项目的管理行为、设计和管理技术是基于相似产品中的经验,故称为“可重复”。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CMM它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。

CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。

CMM是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。

CMM分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。

CMM它是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了众多国家以及国际软件产业界的认可,成为当今企业从事规模软件生产不可缺少的一项内容。

CMM 有助于组织建立一个有规律的、成熟的软件过程。

改进的过程将会生产出质量更好的软件,使更多的软件项目免受时间和费用的超支之苦。

软件过程包括各种活动、技术和用来生产软件的工具。

因此,它实际上包括了软件生产的技术方面和管理方面。

CMM明确地定义了5个不同的“成熟度”等级,一个组织可按一系列小的改良性步骤向更高的成熟度等级前进。

成熟度等级1:初始级(Initial)。

处于这个最低级的组织,基本上没有健全的软件工程管理制度。

每件事情都以特殊的方法来做。

如果一个特定的工程碰巧由一个有能力的管理员和一个优秀的软件开发组来做,则这个工程可能是成功的。

然而通常的情况是,由于缺乏健全的总体管理和详细计划,时间和费用经常超支。

结果,大多数的行动只是应付危机,而非事先计划好的任务。

处于成熟度等级1的组织,由于软件过程完全取决于当前的人员配备,所以具有不可预测性,人员变化了,过程也跟着变化。

结果,要精确地预测产品的开发时间和费用之类重要的项目,是不可能的。

成熟度等级2:可重复级(Repeatable)。

在这一级,有些基本的软件项目的管理行为、设计和管理技术是基于相似产品中的经验,故称为“可重复”。

在这一级采取了一定措施,这些措施是实现一个完备过程所必不可缺少的第一步。

典型的措施包括仔细地跟踪费用和进度。

不像在第一级那样,在危机状态下方行动,管理人员在问题出现时便可发现,并立即采取修正行动,以防它们变成危机。

关键的一点是,如没有这些措施,要在问题变得无法收拾前发现它们是不可能的。

在一个项目中采取的措施也可用来为未来的项目拟定实现的期限和费用计划。

成熟度等级3:已定义级(Defined)。

在第3级,已为软件生产的过程编制了完整的文档。

软件过程的管理方面和技术方面都明确地做了定义,并按需要不断地改进过程,而且采用评审的办法来保证软件的质量。

在这一级,可引用CASE环境来进一步提高质量和产生率。

而在第—级过程中,“高技术”只会使这一危机驱动的过程更混乱。

成熟度等级4:已管理级(Managed)。

一个处于第4级的公司对每个项目都设定质量和生产目标。

这两个量将被不断地测量,当偏离目标太多时,就采取行动来修正。

利用统计质量控制,管理部门能区分出随机偏离和有深刻含义的质量或生产目标的偏离(统计质量控制措施的一个简单例子是每千行代码的错误率。

相应的目标就是随时间推移减少这个量)。

成熟度等级5:优化级(Optimizing)。

—个第5级组织的目标是连续地改进软件过程。

这样的组织使用统计质量和过程控制技术作为指导。

从各个方面中获得的知识将被运用在以后的项目中,从而使软件过程融入了正反馈循环,使生产率和质量得到稳步的改进。

整个企业将会把重点放在对过程进行不断的优化,采取主动的措施去找出过程的弱点与长处,以达到预防缺陷的目标。

同时,分析各有关过程的有效性资料,作出对新技术的成本与效益的分析,并提出对过程进行修改的建议。

达到该级的公司可自发的不断改进,防止同类缺陷二次出现。

Cmm2的关键过程是:需求管理、软件项目计划、软件项目跟踪和监控、软件转包合同、软件质量保证、软件配置管理。

这六个关键过程域主要涉及建立基本项目管理和控制方
面的内容。

需求管理:在顾客和顾客要求的软件项目之间建立一种一致的、共同的理解,控制系统对软件的需求,为软件工程和管理建立基线,保持软件计划、产品和活动与分配需求的一致性。

共同理解是计划和管理软件项目的基础,所以需求管理要求需求文档化,并对需求进行评审。

在整个软件生命周期中,当用户需求改变时,记录全部改变,并进行评审。

软件项目计划:为实施软件工程和管理软件项目制订合理计划。

估计软件产品的规模和所需资源,制定开发进度计划,确定并评估风险,协商有关约定。

软件项目跟踪与监控:对软件项目的执行进行跟踪、监督与控制,以便随时掌握软件项目的实际开发过程。

当项目的执行活动与软件项目计划偏离时,项目经理能够采取有效的措施进行处理。

软件转包合同:选择高质量的软件子项目承包者,并对子合同的执行进行有效的管理,并对其进行过程监督。

软件质量保证:对软件项目和产品质量进行监督和控制,为管理者监控软件项目的过程和产品质量提供适度的可视性。

通过评审和审核软件产品和活动,验证是其否与应用的标准和规程一致。

出现的问题尽可能在软件项目组内部解决。

内部不能解决的问题,由质量保证组进行适当的解决。

相关文档
最新文档