CMM改进指南-第2章软件过程成熟度框架课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《CMM改进指南-第2章软件过程成熟度框架课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CMM 改进 指南 软件 过程 成熟度 框架 课件
- 资源描述:
-
1、能力成熟度模型(能力成熟度模型(CMM)软件过程改进指南软件过程改进指南 Watts S.Humphrey The Capability Maturity ModelGuidelines for Improving the Software Process第第2章章 软件过程成熟度框架软件过程成熟度框架n2.0 概述概述n2.1 成熟度级别的行为特征成熟度级别的行为特征n2.2 成熟度级别的跳跃成熟度级别的跳跃n2.3 软件过程的可视性软件过程的可视性n2.4 效能预测效能预测2.0 概述概述n持续过程改进是基于许多小的、演化的步持续过程改进是基于许多小的、演化的步骤,而不是革命性的革新。骤,
2、而不是革命性的革新。CMM提出的框提出的框架中,将这些步骤分为架中,将这些步骤分为5个成熟度级别,为个成熟度级别,为持续过程改进提供了成功的基础。持续过程改进提供了成功的基础。n这这5个成熟度级别为度量一个组织的软件过个成熟度级别为度量一个组织的软件过程成熟度以及评价其软件过程能力定义了程成熟度以及评价其软件过程能力定义了有序级别,同时也帮助一个组织在安排其有序级别,同时也帮助一个组织在安排其改进工作时分清轻重缓急。改进工作时分清轻重缓急。n一个成熟度级别是一个严格定义的、在一个成熟度级别是一个严格定义的、在向成熟软件组织前进途中的一种平稳状向成熟软件组织前进途中的一种平稳状态。态。n每个成熟
3、度级别由一组过程目标组成,每个成熟度级别由一组过程目标组成,一旦满足了这些目标,就能稳定软件过一旦满足了这些目标,就能稳定软件过程的一个重要组成部分。程的一个重要组成部分。在达到了每个在达到了每个成熟度级别的同时,就建立起软件过程成熟度级别的同时,就建立起软件过程的不同组成部分,结果是提高了组织的的不同组成部分,结果是提高了组织的过程成熟度。过程成熟度。n如图如图2.1所示,将所示,将CMM组织成组织成5个级别,个级别,对提高软件过程成熟度的改进措施按优对提高软件过程成熟度的改进措施按优先次序进行了排序。带标示的箭头指明先次序进行了排序。带标示的箭头指明由处在成熟度框架各层次的组织制度化由处在
4、成熟度框架各层次的组织制度化了的过程成熟度的类型。了的过程成熟度的类型。图2.1 CMM 的五级成熟度 初 始 级 可 重 复 级 已 管 理 级 已 定 义 级 优 化 级 成成 熟熟 度度 持续改进过程可预测的过程标准一致过程有纪律的过程无序混乱过程5个级别简单描述如下:个级别简单描述如下:n1初始级初始级 软件过程的特点是无秩序的,甚至是软件过程的特点是无秩序的,甚至是混乱的。几乎没有什么过程是经过定义的,成功混乱的。几乎没有什么过程是经过定义的,成功往往依赖于个人或小组的努力。往往依赖于个人或小组的努力。n2.可重复级可重复级 已建立基本的项目管理过程去跟踪已建立基本的项目管理过程去跟
5、踪项目的成本、进度和功能。有了必要的过程纪律,项目的成本、进度和功能。有了必要的过程纪律,使得能重复在早先类似应用项目的成功。使得能重复在早先类似应用项目的成功。n3已定义级已定义级 已将管理活动和工程活动两方面的已将管理活动和工程活动两方面的软件过程文档化和标准化,并已集成为该组织的软件过程文档化和标准化,并已集成为该组织的标准软件过程。所有项目均采用该组织的标准软标准软件过程。所有项目均采用该组织的标准软件过程的一个经剪裁和批准的版本,来开发和维件过程的一个经剪裁和批准的版本,来开发和维护软件。护软件。n4定量管理级定量管理级 软件过程和产品质量的详软件过程和产品质量的详细度量数据被收集。
6、软件过程和产品得到细度量数据被收集。软件过程和产品得到定量地理解和控制。定量地理解和控制。n5优化级优化级 能利用来自过程和来自新思想、能利用来自过程和来自新思想、新技术先导性试点的定量反馈信息,持续新技术先导性试点的定量反馈信息,持续不断地改进组织的标准软件过程。不断地改进组织的标准软件过程。n这这5个级别反映了这样一个事实:个级别反映了这样一个事实:CMM是改进软件组织能力的模型。是改进软件组织能力的模型。CMM中级中级别所表达的排列次序,并不指向单个项目。别所表达的排列次序,并不指向单个项目。一个遇到麻烦的项目对其问题排序时很可一个遇到麻烦的项目对其问题排序时很可能不同于能不同于CMM的
7、分类法,它的解决办法的分类法,它的解决办法对组织其它项目的参考价值不大,因为其对组织其它项目的参考价值不大,因为其它项目可能有其它问题,或者因为缺少这它项目可能有其它问题,或者因为缺少这种解决问题的必要基础而不能从它的解决种解决问题的必要基础而不能从它的解决办法中得益。办法中得益。CMM关注的是对整个组织关注的是对整个组织有价值的过程。有价值的过程。2.1 成熟度级别的行为特征成熟度级别的行为特征 n成熟度成熟度2至至5级的特征可通过级的特征可通过组织建立和组织建立和改进软件过程所执行的活动、每个项目改进软件过程所执行的活动、每个项目所执行的活动和对项目最终的表现出来所执行的活动和对项目最终的
8、表现出来的过程能力的过程能力来刻画。来刻画。2.1.1 第第1级级 初始级初始级 n在初始级上,软件开发组织一般不能为软在初始级上,软件开发组织一般不能为软件的开发和维护提供一个稳定环境。处于件的开发和维护提供一个稳定环境。处于级别级别1的组织的特征是不能兑现约定。这的组织的特征是不能兑现约定。这样的组织一般很难保证员工能够获得有序样的组织一般很难保证员工能够获得有序的工程过程,从而导致一系列的危机。在的工程过程,从而导致一系列的危机。在遇到危机时,项目一般是抛弃所计划的规遇到危机时,项目一般是抛弃所计划的规程,回复到编码和测试的老一套。程,回复到编码和测试的老一套。n软件项目的成功完全依赖于
9、一个杰出的管理软件项目的成功完全依赖于一个杰出的管理者或一个熟练和有效的软件开发队伍。偶尔,者或一个熟练和有效的软件开发队伍。偶尔,有能力的、强有力的软件管理人员能够顶住有能力的、强有力的软件管理人员能够顶住压力在软件过程中取得捷径。但是,当他们压力在软件过程中取得捷径。但是,当他们离开该项目后,他们的这种能使过程稳定的离开该项目后,他们的这种能使过程稳定的影响力也就随之消失。一个很好的软件工程影响力也就随之消失。一个很好的软件工程过程并不能克服由于缺乏健全的管理实践所过程并不能克服由于缺乏健全的管理实践所造成的不稳定性。造成的不稳定性。n尽管过程无序甚至混乱,处于级别尽管过程无序甚至混乱,处
10、于级别1的组织的组织也常常开发出能工作的产品,虽然他们可也常常开发出能工作的产品,虽然他们可能超出预算和进度计划。处于级别能超出预算和进度计划。处于级别1的组织的组织的成功依赖于组织中个人能力和精神的成功依赖于组织中个人能力和精神1,是不能重复的,除非派有同样能力的人去是不能重复的,除非派有同样能力的人去开发下一个工程项目。在级别开发下一个工程项目。在级别1的软件组织的软件组织中,能力是个人特征而非组织特征。中,能力是个人特征而非组织特征。n1 在成熟度的各个等级上,挑选、雇佣、培养和保留有能力的人员对一个组织来说是非常重要的问题,但是,这些问题大大超出了CMM的范围。2.1.2 级别级别2
11、可重复级可重复级 n在可重复级上,建立了管理软件项目的策略在可重复级上,建立了管理软件项目的策略和实施这些策略的规程。计划和管理新项目和实施这些策略的规程。计划和管理新项目是基于类似项目的经验。是基于类似项目的经验。以项目为基础,以项目为基础,针针对项目建立基本的过程管理纪律,使过程能对项目建立基本的过程管理纪律,使过程能力获得提高。项目执行有效的过程,它是有力获得提高。项目执行有效的过程,它是有定义的、文档化的、实施过的、人员经培训定义的、文档化的、实施过的、人员经培训的、可测量的、强制的和可改进的。的、可测量的、强制的和可改进的。n处于处于2级组织中的项目引入了基本的软件级组织中的项目引入
12、了基本的软件管理控制。对实际项目已有约定,其根据管理控制。对实际项目已有约定,其根据是对以前项目观察的结果和当前项目的需是对以前项目观察的结果和当前项目的需求。项目的软件负责人跟踪软件成本、进求。项目的软件负责人跟踪软件成本、进度和功能,能识别出不能满足约定的问题。度和功能,能识别出不能满足约定的问题。对软件需求和为满足需求而开发的工作产对软件需求和为满足需求而开发的工作产品建立了基线,并且其完整性受到控制。品建立了基线,并且其完整性受到控制。项目的软件标准已定义,并且组织确保能项目的软件标准已定义,并且组织确保能忠实地履行。如果有分承包方的话,建立忠实地履行。如果有分承包方的话,建立起一种有
13、效的客户起一种有效的客户-供应商关系。供应商关系。n处于级别处于级别2的组织中的项目,其过程可以的组织中的项目,其过程可以不相同。对于达到不相同。对于达到2级的组织的要求,是级的组织的要求,是有组织级的策略去指导项目建立适当的有组织级的策略去指导项目建立适当的管理过程。管理过程。n处于级别处于级别2的软件开发组织的过程能力,的软件开发组织的过程能力,可概括为有纪律的,因为软件项目的计可概括为有纪律的,因为软件项目的计划和跟踪是稳定的,并能重复以前的成划和跟踪是稳定的,并能重复以前的成功。项目的过程处于一个项目管理系统功。项目的过程处于一个项目管理系统的有效控制之下,遵循的是基于以前项的有效控制
14、之下,遵循的是基于以前项目的效能所制定的实际计划。目的效能所制定的实际计划。2.1.3 级别级别3 已定义级已定义级 n在已定义级上,一个开发和维护软件的标准在已定义级上,一个开发和维护软件的标准过程(或过程组)已文档化,并在全组织范过程(或过程组)已文档化,并在全组织范围内使用,这个在围内使用,这个在CMM中称为中称为组织的标准组织的标准软件过程软件过程,它包括软件工程过程和软件管理,它包括软件工程过程和软件管理过程两方面,而且集成为一个有机的整体。过程两方面,而且集成为一个有机的整体。级别级别3上所建立的标准软件过程(必要时,上所建立的标准软件过程(必要时,可以改变)被用来帮助软件管理人员
15、和技术可以改变)被用来帮助软件管理人员和技术人员更有效地工作。人员更有效地工作。n该组织在将它的软件过程标准化的同时该组织在将它的软件过程标准化的同时开发有效的软件工程实践。在该组织内开发有效的软件工程实践。在该组织内指派一个小组负责软件过程活动(例如,指派一个小组负责软件过程活动(例如,软件工程过程组或软件工程过程组或SEPGFowler90)。)。实施全组织范围内的培训程序(大纲),实施全组织范围内的培训程序(大纲),以保证全体职工和管理人员都具有履行以保证全体职工和管理人员都具有履行其职责所必需的知识和技能。其职责所必需的知识和技能。n软件项目通过剪裁组织的标准软件过程来建软件项目通过剪
16、裁组织的标准软件过程来建立自身定义的软件过程,这考虑到项目的独立自身定义的软件过程,这考虑到项目的独有的特征。这种剪裁后的过程,在有的特征。这种剪裁后的过程,在CMM 中中称为称为“项目定义的软件过程项目定义的软件过程”。这是在执行。这是在执行该项目的活动中使用的过程。一个定义的软该项目的活动中使用的过程。一个定义的软件过程包含一组严格定义的、协调一致的、件过程包含一组严格定义的、协调一致的、被集成的软件工程过程和管理过程。一个严被集成的软件工程过程和管理过程。一个严格定义的过程可以表征为包含执行该工作的格定义的过程可以表征为包含执行该工作的就绪准则、输入、标准和规程,以及验证机就绪准则、输入
17、、标准和规程,以及验证机制制(例如同行评审例如同行评审)、输出和完成准则等。因、输出和完成准则等。因为软件过程被严格定义,管理部门可以很好为软件过程被严格定义,管理部门可以很好地洞察到软件项目的技术进展。地洞察到软件项目的技术进展。n处于处于3级的组织的软件过程能力,可概括为级的组织的软件过程能力,可概括为标准化和一致性,因为软件工程活动和管理标准化和一致性,因为软件工程活动和管理活动都是稳定的和可重复的。在所建立的产活动都是稳定的和可重复的。在所建立的产品基线内,成本、进度和功能均已受控制,品基线内,成本、进度和功能均已受控制,软件质量被跟踪。这种过程能力是建立在全软件质量被跟踪。这种过程能
18、力是建立在全组织范围内对所定义的软件过程中的活动、组织范围内对所定义的软件过程中的活动、角色和职责的共同理解之上。角色和职责的共同理解之上。2.1.4 级别级别4 已管理级已管理级 n在已管理级上,软件开发组织对软件产在已管理级上,软件开发组织对软件产品和过程都设置了定量的质量目标。作品和过程都设置了定量的质量目标。作为组织的测量大纲的一部分,对于所有为组织的测量大纲的一部分,对于所有项目重要的软件过程活动的生产率和质项目重要的软件过程活动的生产率和质量都进行测量。用一个组织级的软件过量都进行测量。用一个组织级的软件过程数据库,来收集和分析从项目定义的程数据库,来收集和分析从项目定义的软件过程
19、获得的数据。软件过程具有严软件过程获得的数据。软件过程具有严格定义的、一致的测量方法和手段。格定义的、一致的测量方法和手段。这这些测量,为定量地评价项目的软件过程些测量,为定量地评价项目的软件过程和产品建立了基础。和产品建立了基础。n 通过把过程效能的变化限制在可接受通过把过程效能的变化限制在可接受的定量范围之内,达到项目对其产品和的定量范围之内,达到项目对其产品和过程进行控制。可以在过程效能方面,过程进行控制。可以在过程效能方面,将有意义的变化与一些随机性变化将有意义的变化与一些随机性变化(噪声噪声)区别开来,区别开来,特别是在建立的产品基线内。特别是在建立的产品基线内。进入新应用领域所包含
20、的风险是知道的,进入新应用领域所包含的风险是知道的,并小心地控制它们。并小心地控制它们。n处于处于4级的组织的软件过程能力,可概级的组织的软件过程能力,可概括为可量化的和可预测的。因为,过程括为可量化的和可预测的。因为,过程被测量,并在定量的范围内运行。这一被测量,并在定量的范围内运行。这一级的过程能力使得组织能在定量限制的级的过程能力使得组织能在定量限制的范围内预测过程和产品质量的趋势。因范围内预测过程和产品质量的趋势。因为过程是稳定的和可度量的,一旦出现为过程是稳定的和可度量的,一旦出现某种例外情况,变化的某种例外情况,变化的“具体原因具体原因”是是可以识别和定位的。当发现超过预先设可以识
21、别和定位的。当发现超过预先设定的限制范围,能采取措施予以解释和定的限制范围,能采取措施予以解释和纠正,因此,预先知道软件产品将是高纠正,因此,预先知道软件产品将是高质量的。质量的。2.1.5 级别级别5 优化级优化级 n在优化级上,整个软件开发组织集中精在优化级上,整个软件开发组织集中精力进行不断的过程改进。组织具有识别力进行不断的过程改进。组织具有识别软件过程的弱点和强项的手段,以便达软件过程的弱点和强项的手段,以便达到预防缺陷出现的目的。采用新技术和到预防缺陷出现的目的。采用新技术和建议对组织的软件过程的更改时,使用建议对组织的软件过程的更改时,使用软件过程的有效性数据进行费效分析。软件过
22、程的有效性数据进行费效分析。能识别开发最好的软件工程实践的革新能识别开发最好的软件工程实践的革新方法,并在整个组织内推广。方法,并在整个组织内推广。n处于处于5级的软件小组(级的软件小组(teams)分析缺陷分析缺陷以便确定它们的原因;对软件过程进以便确定它们的原因;对软件过程进行评价以便防止已知类型的缺陷再次行评价以便防止已知类型的缺陷再次出现,并在全组织内宣传教育。出现,并在全组织内宣传教育。n任何系统中,可以发现由于随机变动任何系统中,可以发现由于随机变动而导致的以返工形式表现的经常性消而导致的以返工形式表现的经常性消耗。耗。有组织地消除这种消耗的工作是有组织地消除这种消耗的工作是更改系
23、统,也就是说,通过改变导致更改系统,也就是说,通过改变导致无效的无效的“公共原因公共原因”,以防止这种消,以防止这种消耗出现。尽管对所有成熟度级别来说耗出现。尽管对所有成熟度级别来说都是如此,但是,它是级别都是如此,但是,它是级别5组织的焦组织的焦点。点。n处于级别处于级别5的软件开发组织的过程能力的软件开发组织的过程能力可概括为过程不断改进。该级组织为提可概括为过程不断改进。该级组织为提高其软件过程能力进行着不懈的努力,高其软件过程能力进行着不懈的努力,从而不断改善组织内项目的过程效能。从而不断改善组织内项目的过程效能。既可通过在现有过程的基础上增量式改既可通过在现有过程的基础上增量式改进的
展开阅读全文