软件能力成熟度模型CMII
- 格式:ppt
- 大小:1.14 MB
- 文档页数:120
软件能力成熟度模型的五个等级软件能力成熟度模型的五个等级导语:在软件开发和管理领域,软件能力成熟度模型(Capability Maturity Model,简称CMM)是一个被广泛应用的评估和改进软件开发能力的框架。
CMM根据不同的组织在软件开发过程中的能力水平,将其分为五个等级,逐步提升组织的软件开发能力。
本文将详细介绍软件能力成熟度模型的五个等级,并对每个等级所代表的特点和优势进行分析。
一、初始级(Level 1 - Initial)初始级是软件能力成熟度模型中最低的等级。
在这个等级中,组织没有明确的软件开发过程,开发工作往往是以临时和非结构化的方式进行的。
在这种情况下,项目的成功往往依赖于个别的开发人员的经验和个人技能。
缺乏标准化的开发流程、文档化的要求和质量控制,容易导致开发过程中的混乱和错误。
二、重复级(Level 2 - Repeatable)重复级是软件能力成熟度模型中的第二个等级。
在这个等级中,组织开始意识到软件开发过程的重要性,并开始建立一些基本的规范、流程和工具来规范开发过程。
组织能够重复地执行一些已经被证明是成功的软件开发实践。
这些实践可以帮助组织在不同的项目中保持一定的一致性,提高软件质量和生产效率。
三、定义级(Level 3 - Defined)定义级是软件能力成熟度模型中的第三个等级。
在这个等级中,组织进一步明确了软件开发过程,并进行了规范化和文档化。
组织能够定义一套标准的开发流程和过程,并将其应用于所有的软件开发项目。
组织还会建立一些针对不同项目要求的指南和标准,以确保开发过程的一致性和高质量。
四、管理级(Level 4 - Managed)管理级是软件能力成熟度模型中的第四个等级。
在这个等级中,组织开始对软件开发过程进行量化和度量,以便对项目进行更加准确和全面的管理。
组织会使用一些度量指标来评估和监控软件开发过程的质量和效率,以及在开发过程中发现和解决问题的能力。
CMMI软件成熟度模型在软件项目管理中的应用摘要:CMMI(Capability Maturity Model Integration)软件能力成熟度模型是一种为了解决软件开发过程管理问题产生的一种软件开发模型,是一种国际公认的标准化管理体系,本文主要介绍CMMI3级软件开发类模型体系(DEV)在项目中的应用。
关键词:CMMI,软件工程,过程管理1 CMMI标准化体系介绍CMMI是一套融合多学科的、可扩充的产品集合,其研制的初步动机是为了利用两个或多个单一学科的模型实现一个组织的集成化过程改进。
CMMI的本质是软件管理工程的一个部分。
基于模型的过程改进是指采用能力模型来指导组织的过程改进,使过程能力稳定的进行改善,该组织也能变得更加成熟。
CMMI分为初始级、可重复级、已定义级、量化管理级、优化管理级5个级别。
按由低到高的级别排序。
到CMMI3级已经比较复杂,对软件项目管理工作涵盖的非常全面,已有很多家公司用CMMI3级标准来管理软件项目。
2 CMMI体系对项目生命周期的划分CMMI按过程域对整个软件项目过程进行划分。
过程域Process Area(PA)简单的说就是做好一个事情的某一个方面。
对应软件开发来说,就是做好软件开发的某一个方面。
CMMI3级涵盖了18个过程域,可以分为过程管理、项目管理、工程管理和支持管理四个部分,除涉及组织级过程管理的三个过程域外,其他过程域均与项目内部管理直接相关图2-1 CMMI3过程域划分项目管理包括5个过程域:项目策划(PP)、项目监督和控制(PMC)、集成项目管理(IPM)、风险管理(RSKM)、供应商协议管理(SAM)工程管理包括5个过程域:需求管理(RM)、需求开发(RD)、技术解决方案(TS)、产品集成(PI)、产品确认(V AL)、产品验证(VER)在项目实际应用中,这两类过程域是容易实现的,因为这些过程域比较容易理解。
我们在平常的项目实施过程中,多少会自然的顺序涉及到这些过程域,按CMMI3的要求执行这些过程域,可以让我们项目实施更加规范化。
能力成熟度集成模型一、引言能力成熟度集成模型(Capability Maturity Integration Model,简称CMMI)是一种软件开发过程改进模型,旨在帮助组织改进其软件开发过程。
CMMI最初由美国国防部开发,是一个用于评估和改进组织的软件和系统工程能力的标准。
二、CMMI的历史CMMI最初是由美国国防部在20世纪80年代末和90年代初开发的。
该模型最初是作为软件成熟度模型(Software Capability Maturity Model,简称SCMM)而创建的。
SCMM旨在帮助组织评估和改善其软件开发过程。
随着时间的推移,SCMM逐渐演变为CMMI,并扩展到包括系统工程和产品开发等领域。
三、CMMI的结构CMMI包括五个不同的成熟度级别:初始级别、可重复级别、定义级别、管理级别和优化级别。
每个级别都包含多个过程区域(Process Area),每个过程区域都涵盖了特定方面的最佳实践。
1. 初始级别初始级别是一个非常基础的水平,它表明组织没有一个定义明确的软件开发过程。
在这个级别,软件开发过程通常是不稳定的、不可预测的和不受控制的。
这个级别的目标是建立一个基本的软件开发过程框架。
2. 可重复级别可重复级别表明组织已经建立了一个稳定的软件开发过程框架,并且已经开始记录一些基本度量。
在这个级别,组织能够重复执行其软件开发过程,并且能够识别和解决一些常见问题。
3. 定义级别定义级别表明组织已经建立了一个完整的、标准化的软件开发过程,并且已经将其文档化。
在这个级别,组织能够根据其定义的流程来管理项目,并且能够识别和解决更高层次的问题。
4. 管理级别管理级别表明组织已经实施了一些度量和分析技术,以便对项目进行管理和改进。
在这个级别,组织能够使用数据来支持决策,并且能够实施持续改进计划。
5. 优化级别优化级别表明组织已经实现了一个持续改进的文化。
在这个级别,组织能够识别并解决更高层次的问题,并且能够不断改进其软件开发过程。
cmmi能力成熟度模型评分项目CMMI(Capability Maturity Model Integration)能力成熟度模型是一种用于评估组织在软件开发和项目管理方面能力的框架。
该模型分为五个成熟度级别,每个级别都有具体的评分项目,这些评分项目旨在衡量组织在各方面的表现。
下面详细介绍了CMMI五个成熟度级别的评分项目:一、初始级(Initial)1. 项目计划与跟踪:组织能够制定简单的项目计划,但计划执行过程中往往出现偏差,需要项目经理经常干预。
2. 需求管理:组织能够收集和跟踪项目需求,但需求管理过程不规范,容易造成需求变更和项目延期。
3. 配置管理:组织能够进行简单的配置管理,但配置项的标识、版本控制和变更控制不够规范。
4. 质量管理:组织能够进行基本的代码审查和测试,但质量保证措施不够系统和规范。
5. 项目管理:组织能够进行基本的项目管理活动,如项目启动、规划、执行、监控和收尾,但项目管理过程不够规范和系统。
二、已管理级(Managed)1. 项目计划与跟踪:组织能够在项目早期制定详细的计划,并在整个项目过程中跟踪和控制进度。
2. 需求管理:组织能够建立规范的需求管理流程,收集和管理项目需求,有效减少需求变更和项目延期。
3. 配置管理:组织能够进行规范的配置管理,包括配置项的标识、版本控制和变更控制等。
4. 质量管理:组织能够建立规范的质量保证流程,进行全面的测试和质量保证活动,确保软件质量。
5. 项目管理:组织能够建立规范的项目管理流程,确保项目在整个生命周期内顺利进行。
三、定义级(Defined)1. 项目计划与跟踪:组织能够在整个项目生命周期内制定详细且具有前瞻性的计划,并通过项目管理工具持续监控和控制进度。
2. 需求管理:组织能够建立规范的需求管理流程,确保需求变更得到有效控制和管理。
3. 配置管理:组织能够建立规范的配置管理流程,包括配置项的标识、版本控制和变更控制等。
4. 质量管理:组织能够建立全面的质量管理体系,包括质量策划、质量控制和质量保证等。
软件能力成熟度模型等级和过程在软件开发行业中,软件能力成熟度模型(Capability Maturity Model,简称CMM)是一种用于评估和改进组织软件开发能力的方法。
CMM将软件过程能力分为五个等级,每个等级代表了不同的软件开发成熟度。
在本文中,我将介绍CMM的五个等级和相应的软件开发过程。
第一等级——初始级(Initial)初始级是软件开发团队的起点,特点是开发过程不可预测、不稳定且不受控制。
在这个等级中,软件开发过程通常是一种灵活的方式,缺乏定义和规范。
开发团队的工作主要依靠个人技能和经验,而非标准化方法。
第二等级——可管理级(Managed)当开发团队达到可管理级时,他们开始寻求一种系统化的方法来管理软件开发过程。
这个等级的关键是建立有效的项目管理实践,通过规范化的计划、控制和测量,对项目进展进行管理和监控。
第三等级——已定义级(Defined)已定义级是软件开发过程的一个重要里程碑,它要求开发团队建立起一套标准化的软件开发流程。
这个过程必须经过详细的定义和文档化,以确保团队的工作是可重复的和可预测的。
第四等级——量化管理级(Quantitatively Managed)在量化管理级,软件开发团队进一步改进了他们的过程,并引入了更多的量化和度量方法。
这些量化和度量方法是为了监控和管理软件开发过程的关键指标。
通过定期收集和分析数据,团队可以做出有根据的决策,进一步提高软件开发过程的质量和效率。
第五等级——优化级(Optimizing)优化级是软件开发过程的最高级别。
在这个等级中,开发团队持续追求卓越,并通过不断改进软件开发过程来实现进一步的提升。
团队会寻找新的创新方式,试验新的技术和方法,以优化软件开发过程的效率和质量。
综上所述,软件能力成熟度模型将软件开发能力划分为五个等级:初始级、可管理级、已定义级、量化管理级和优化级。
不同的等级代表了软件开发过程的不同成熟度水平,团队可以通过评估自身的成熟度来制定相应的改进计划,并逐步提高软件开发过程的质量和效率。
CMM Level 2 实战(一)作者:刘文威宁传成现在关于CMM的文章不在少数,但基本上都是概念性、理论性的。
为了使大家对CMM有更通俗、更直观的理解,作者根据实施CMM 多年积累的经验,结合实际项目的管理及应用,提出了一套可行的CMM2实施方案,以期能为同行提供有价值的参考。
一、前言CMM(软件能力成熟度模型:Software Capability Maturity Model),是由美国卡内基梅隆大学(CMU)的软件工程研究所(SEI)制定的一种软件评估标准,主要用于软件开发过程和软件开发能力的评估和改进。
此标准自1991年提出以来,已在美国、印度、日本、欧洲等地成功应用,并成为软件行业的工业标准。
尽管CMM引起了软件行业充分的重视,但如何将CMM应用到企业或项目管理中,大多数企业仍然毫无头绪。
其实实施CMM的最大障碍通常不是技术问题,而是工程和经验方面的管理问题以及企业文化问题,这一点对于中小软件企业尤其突出。
本文将从CMM2的六个KPA入手,根据作者实施CMM多年积累的经验,具体介绍CMM2的实践及应用。
二、CMM2实践CMM 2(可重复级)就是建立了基本的项目级管理过程,可对项目的成本、进度进行跟踪和控制,生产的过程、标准、工作产品以及服务都是被严格定义和文档化的。
基于以往管理类似的项目的经验,计划和管理新项目,并可依据一定的标准重复利用类似的软件产品。
CMM 2的核心就是重复利用。
CMM2由6个关键过程域(KPA)组成:需求管理(RM)、软件项目计划(SPP)、软件项目跟踪与监控(SPTO)、软件子合同管理(SSM)(本文略)、软件质量保证(SQA)、软件配置管理(SCM)。
需求管理(Requirement Management)需求管理的目的是为了在客户和处理客户需求的软件项目之间建立共识。
这是软件项目规划(SPP)和管理(SPTO)的基础,需求变更依赖于配置管理(SCM)的变更控制流程。
CMMI软件能力及成熟度模型集成一,概念CMMI(Capability Maturity Model Integration)软件能力及成熟度模型集成,集合了软件工程,系统工程,集成过程和产品开发,供应链管理等领域的最新成果,对度量和分析,工程实践,量化的过程控制等提出了详尽的要求,是几十年来全球软件工程,系统工程的最佳实践的总结,被全球IT行业公认为衡量一家软件企业综合实力的判别标准。
二,等级1,初始级:软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。
管理是反应式的。
2,可管理级:建立了基本的项目管理过程来跟踪费用、进度和功能特性。
制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。
3,已定义级:已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。
所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。
4,量化管理级:分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。
管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。
5,优化管理级:过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。
三:所需材料1,注册信息表(公司名称,公司地址,公司发起人名字,电话,邮箱,公司联系人名字,电话,邮箱)2,备案表(公司介绍,参与评估的项目简介,参与评估的EPG 小组成员名单)3,组织架构图4,三个完整生命周期的软件研发项目资料5,CMMI项目角色:发起人,Sponsor(公司领导),MSG 组长,EPG(部门经理),QA(质量保证人员),CM(配置管理员),项目经理,培训,需求,设计,开发,测试,ATM成员。
CMMI 等级的含义五个成熟度级别之间的比较如下:1,初始级特征:(1)软件过程的特点是杂乱无章,有时甚至混乱.几乎没有定义过程的规则或步骤.(2)过分的尽诺.常做出良好的承诺:如"按照软件工程方式,有序的工程过程来工作";或达到高目标的许诺.但实际上却出现一系列危机.(3)遇到危机就放弃原计划过程,反复编码和测试.(4)成功完全依赖个人努力和杰出的专业人才,取决于超常的管理人员和杰出有效的软件开发人员.具体的表现和成果都源于或者说是决定于个人的能力和他们先前的经验,知识以及他们的进取心和积极程度.(5)能力只是个人的特性,而不是开发组织的持性.依靠着个人的品质或承受着巨大压力,或找窍门取得成果.但此类人一旦离去,对组织的稳定作用也消失.(6)软件过程是不可确定的和不可预见的.软件成熟性程度处于第一级的软件组织的软件过程在实际的工作过程中被经常的改变(过程是随意的).这类组织也在开发产品,但其成果是不稳定的,不可预见的,不可重复的.也就是说,软件的计划,预算,功能和产品的质量都是不可确定和不可预见的.过程:(1)极少存在或使用稳定的过程.(2)所谓"过程",往往是"就这么干"而言. (3)各种条例,规章制度互不协调,甚至互相矛盾人员:(1)依赖个人努力和杰出人物.一旦优秀人物离去,项目就无法继续(2)人们的工作方式如同"救火".就是在开发过程中不断地出现危机,以及不断的"救火".技术: 引进新技术是极大风险度量: 不收集数据或分析数据改进方向:(1)建立项日管理过程.实施规范化管理.保障项目的承诺.(2)首要任务是进行需求管理,建立客户与软件项目之间的共同理解,使项目真正反映客户的要求.(3)建立各种软件项目计划.如软件开发计划,软件质量保证计划,软件配置管理计划,软件测试计划,风险管理计划及过程改进计划.(4)开展软件质量保证活动(SQA).2,可重复级特征(1)进行较为现实的求诺,可按以前在同类项目上的成功经验建立的必要过程准则来确保再一次的成功.(2)主要是逐个项目地建立基本过程管理条例来加强过程能力.(3)建立了基本的项目管理过程来跟踪成本,进度和功能.(4)管理工作主要跟踪软件经费支出,进度及功能.识别在承诺方面出现的问题.(5)采用基线(BASELINE)来标志进展,控制完整性.(6)定义了软件项目的标准,并相信它,遵循它.(7)通过于合同建立有效的供求关系.过程(1)软件开发和维护的过程是相对稳定的,但过程建立在项目一级.(2)有规则的软件过程是在一个有效的工程管理系统的控制之下,先前的成功经验可以被重复.(3)问题出现时.有能力识别及纠正.其承诺是可实现的.人员(1)项目的成功依赖于个人的能力以及管理层的支持.(2)理解管理的必要性及对管理的承诺.(3)注意人员的培训问题, 技术建立技术支持活动,并有稳定的计划. 度量每个项目建立资源计划.主要是关心成本,产品和进度.有相应的管理数据.改进方向(1)不再按项目制定软件过程,而是总结各种项目的成功经验,使之规则化,把具体经验归纳为全组织的标准软件过程.把改进组织的整体软件过程能力的软件过程活动,作为软件开发组织的责任.(2)确定全组织的标准软件过程,把软件工程及管理活动集成到一个稳固确定的软件过程中.从而可以跨项目改进软件过程效果,也可作为软件过程剪裁的基础.(3)建立软件工程过程小组(SEPG)长期承担评估与调控软件过程的任务,以适应未来软件项目的要求.(4)积累数据:建立组织的软件过程库及软件过程相关的文档库(5)加强培训.3,确定级特征:(1)无论管理方面或工程方面的软件过程都已文件化,标准化,并综合成软件开发组织的标准软件过程.(2)软件过程标准被应用到所有的工程中,用于编制和维护软件.有的项目也可根据实际情况,对软件开发组织的标准软件过程进行剪裁.(3)在从事一项工程时,产品的生产过程,花费,计划以及功能都是可以完全控制的,从而软件质量也可以控制.(4)软件工程过程组(SEPG)负责软件过程活动.(5)在全组织范围内安排培训计划.过程:(1)整个组织全面采用综合性的管理及工程过程来管理.软件工程和管理活动是稳定的和可重复的,具有连续性的.(2)软件过程起了预见及防范问题的作用,能使风险的影响最小化人员:(1)以项目组的方式进行工作.如同综合产品团队.(2)在整个组织内部的所有人对于所定义的软件过程的活动,任务有深入理解.大大加强了过程能力.(3)有计划地按人员的角色进行培训技术在定性基础上建立新的评估技术.度量:(1)在全过程中收集使用数据.(2)在全项目中系统性地共享数据改进方向(1)开始着手软件过程的定量分析,以达到定量地控制软件项目过程的效果.(2)通过软件的质量管理达到软件的质量目标.4,管理级特征:(1)制定了软件过程和产品质量的详细而具体的度量标准.软件过程和产品的质量都可以被理解和控制.(2)软件组织的能力是可预见的.原因是软件过程是被明确的度量标准所度量和操作.不言而喻.软件产品的质量就可以预见和得以控制.(3)组织的度量工程保证所有项目对生产率和质量进行度量,并作为重要的软件过程活功.(4)具有良好定义及一致的度量标服来指导软件过程,并作为评价软件过程及产品的定量基础.(5)在开发组织内已建立软件过程数据库,保存收集到的数据,可用于各项目的软件过程. 过程:(1)开始定量地认识软件过程.(2)软件过程的变化小.一般在可接受的范围内.(3)可以预见软件过程中和产品质量方面的一些趋势.一旦质量经度量后超出这些标准或是有所违反.可以采用一些方法去改正,以达到良好的日标.人员:每个项目中存在强烈的群体工作意识,因为每人都了解个人的作用与组织的关系,因此能够产生这种群体意识. 技术不断的在定量基础上评估新技术.度量:(1)在全组织内进行数据收集与确定.(2)度量标准化.(3)数据用于定量地理解软件过程及稳定软件过程.改进方向:(1)缺陷防范.不仅仅在发现了问题时能及时改进,而且应采取特定行动防止将来出现这类缺陷.(2)主动进行技术变动管理,标识,选择和评价新技术.使有效的新技术能在开发组织中施行,(3)进行过程变动管理.定义过程改进的目的,经常不断地进行过程改进.5,优化级特征:(1)整个组织特别关注软件过程改进的持续性,顶见及增强自身.防止缺陷及问题的发生.不断地提高他们的过程能力.(2)加强定量分析,通过来自过程的质量反馈和吸收新观念,新科技,使软件过程能不断地得到改进,(3)根据软件过程的效果,进行成本/利润分析,从成功的软件过程实践中吸取经验,加以总结.把最好的创新成绩迅速向全组织转移.对失败的案例,由软件过程小组近行分析以找出原因.(4)组织能找出过程的不足并预先改进.把失败的教训告知全体组织以防止重复以前的错误.(5)对软件过程的评价相对标准软件过程的改进,都在全组织内推广.过程:(1)不断地系统地改进软件过程(2)理解并消除产生问题的公共根源.在任何一个系统中都可找到:由于随机变化造成重复工作,进而导致时间浪费.为了防止浪费人力可能导致的系统变化.要消除"公共"的无效根源,防止浪费发生.尽管所有级别都存在这些问题,但这是第五级的焦点.人员:(1)整个组织都存在自觉的强烈的团队意识.(2)每个人都致力于过程改进.人们不再以达到里程碑的成就而满足,而要力求减少错误率. 技术基于定量的控制和管理,事先主动考虑新技术,追求新技术,利用新技术.可以实现软件开发中的方法和新技术的革新,以防止出现错误,不断提高产品的质量和生产率.度量:利用数据来评估,选择过程改进. 改进方向保持持续不断的软件过程改进.二,敏捷开发和高级别CMMI 关键字:高级别CMMI 敏捷开发我经常和别人一起讨论敏捷开发过程的知识,并且我们也会经常争论结合使用敏捷开发过程和CMMI 高级别的话题.他们两个是否能够结合使用?或者他们两个只是向相反的方向发展?带着这个疑问,下面我们一起来探讨. "这个问题可以说是老生常谈,但是我对第 5 级别中的那个基本差异有一个疑问,这个疑问会使人产生不安的情绪.CMMI1.2 强调了想在组织中控制结果的变更, 进而将其重心转移到了个人的身上.敏捷开发在意义上说不单单是为了让每个项目能在应对各种各样的环境中都拥有灵活的能力,并且可以让他们在这个环境中尽其所能表现的最好.我们并没有特别关注在所有项目中要规范行为以便可以预知结果是"可靠的". 但是,我并不清楚我现在尽力想说明的这种区别,是否确实是敏捷开发和CMMI 的基本概念中的一个基础的区别,还是只是组织如何解释和执行CMMI 第 5 级别的一个结果.当然,敏捷开发团队在过程模型和过程实践资产中拥有的信任似乎要比CMMI 团队中的要少――虽然在敏捷中没有方法可以规范这些事情即便他们是低成本的,但是没有假设说明这就是组织要走的路.事实上,敏捷开发支持者偏向于这样的想法, 在任何形式的可遇见的过程模型中快速地建立起逐渐减少的成果.是否这就是等同说敏捷开发支持者相信特殊原因会影响执行效果是如此的普遍,以至在组织中试图建立预见性的模型是无用的?" CMMI 第4 级别: QPM(量化项目管理):主要关注懂得过程行为变更的个别项目,他们认为这些变更影响着他们的成功和如何处理事情――或者至少影响着完成产品发展或者达成目标.组织单位(EPG)必须要监控成果. OPP(组织过程实践):主要关注集成模型,项目可以使用模型来规范他们想要达到成功的方面,比如说质量,进度表,预算,维护以及其他任何事情.诀窍就是项目在过程执行中以这些模型为基础,控制QPM 中的行为.比较典型的是,这些模型可能是基于相似的项目中的重复的结果不断建立起来的,虽然可能并没有这样的需求. 在个别项目级别中模型应该先被改进以便使用,所以在CMMI 模型中使用基于一个项目的历史数据(比如说,增量)或者20 个项目的历史数据是没有区别的,虽然这可能对使用者来说是有区别的. CMMI 第5 级别: CAR(原因分析与解决方法):主要关注引起问题的主要原因,过失,管理问题或者其他一切需要解决的问题.项目,EPG 或者其他任何人是否可以应用,是作为解决问题的方法.EPG 在OPP 中监控结果,或者得到别的经验.(敏捷开发是否在增量开始点或者结束点不建议进行类似的行为?我不清楚我所知道的术语是否正确) OID(组织创新与推展):完全非项目特点.关注基于个体,CAR,模型使用,外界因素等的组织改进.你是否会收集并且使用所有这些学到的经验?你进入企业后是否会寻求新的或者更好的做生意的方法(其中敏捷开发可能只是一个例子)?在组织中又该如何处理证明,分析(职业),和使用(结构请参照第 4 级别中的模型和过程控制)这些改进. 我个人认为CMMI 高级别和敏捷开发应该结合起来工作.敏捷可以帮助CMMI 高级别更容易实现短期的转变,并且它在处理事情的发展上起了很重要的作用.我的经验基本是从第5 级别得来的,有部分来自第4 级别.许多组织怀着"每个人都必须如此做"的想法而通过了第3 级别,但是他们却反对在第4,5 级别中有着同样的想法.就像我曾经提到的,敏捷开发是使用CMMI 第4,5 级别来改进如何发展产品的完美例子. CMMI 是Capability Maturity Model Integration(能力成熟度模型集成)的缩写, 是在CMM(Capability Maturity Model 能力成熟度模型)的基础上发展而来三,CMMI 实施现在很多企业因某种原因想做CMMI 了,大体做法1,决定实施CMMI 2,EPG 接受培训,理解CMMI 3,EPG 根据自己理解的CMMI 和实际情况开发一大堆漂漂亮亮的过程文档,流程图,表格,模板,检查单,作业指南. 4,大家边听着EPG 的解释(包括培训,答疑),边执行这些过程标准,然后审计(内,外) 将目前的最佳实践记录下来,写下来,文档化下来. 很多新的EPG 在做了一段时间后无奈的发现自己居然沦落成了一个过程标准解说员,甚至文档管理员.自己工作大部分时间是面对文档,或者督促别人写文档我到觉得EPG 最主要的工作应该深入到研发第一线,帮助研发人员解决研发过程中面临的最严重的实际问题(当然是解决方案要上升到过程高度,而不应是单个问题或个人),甚至哪怕是一些不严重但以你的项目经验知道该如何解决的问题上.总体说来就是掌握项目进展中的任何细微的技术难点要点,并主动记录下来. 为什么这么说呢?CMMI 实施的主要宗旨就是以每个项目为采集数据的源头,达到企业整体效益提升和资源重用.真正有价值的东西,是需要一线人员在实际工作中遇到问题,解决问题,并总结问题,不是一个一线工作的流水帐.就象一份研发人员的日报.写了上午做什么,下午做什么.这对企业的积累有什么用处呢?他工作过程中, 遇到什么问题,他是怎么解决的,走过什么弯路,实验过几种方法,失败了,失败的原因是什么,最后选择了什么方法,可能不是最好的,但完成了任务,达到了效率和资源分配的平衡.这些东西才可能是未来类似项目中,遇到类似问题时,可能有参考价值的.通常也是EPG 个人职业生涯的技术积累.只有公司里每个员工,把自己认为最有价值的积累贡献出来.才可能达到公司有价值的积累.而决不是形式上写的上午下午每个小时的流水帐. 明白了上面的说的CMMI 的目的,做为一个合格的EPG,就应该具备以下的素质: 1,明白什么是有价值的积累,先是对你个人,然后才是顺便帮公司做了积累. 2,深入一线,发现她们并忠实地记录她们.CMMI 里的SP,GP,只是帮助你,提醒你在哪个环节,哪些东西可能是有价值了.你去收集一下,别视而不见了.因为还有一个企业和你个人的角度不同,立场不同的问题.例如,REQM 里收集需求,对个人技术方面的积累虽然不多,但对企业是至关重要的,一次需求变更,没详细写清楚, 忘记了到客户那里去签字落实,可能就会给企业造成很大的损失.做为一个合格的EPG,是需要有这份责任和义务把每个环节都做到最好,这是职业道德所在.同时也是对自我延伸的一个好机会,学会一些和人的沟通,倾听,把专业的东西以平易的方式表达.这些也都算是EPG 额外的收获. 通常情况下,为了按时按量完成项目,一线的骨干,对写日报,周报,文档都很不屑.EPG 也很迁就,事后再补,这也不失为一个提高效率的好办法.但过去一个月半年了,我们正常人的记忆都能想象,很难记住细节.无非就是敷衍.这也在情理之中.你总不能让一个明天就要交东西的小组,今天晚上在通宵努力解决BUG 的同时, 还写什么报告,这也不尽人情.但作为EPG 不能只把眼光集中在这妇人之心上.要想的更远.为什么会把项目推到这么晚,BUG 还没解决完?难道要永远这样下去吗?项目中是有很多不可预测的因素,甚至是开发人员常说的"手气问题","人品问题".但这些是需要控制的,也是通过经验可以控制的,所谓艺高人胆大.艺的高低,就是经验的积累决定的. 那怎么解决这种两难的问题呢?逼着技术骨干写心水,人家没时间也的确压力很大.不写,公司又得不到有效积累,积累的都是垃圾流水.有个公司的办法和经验到可以借鉴一下: 公司内部搞了个BBS,把不同类型的工作分成不同的组,有纯技术的,JAVA 组, C++组等,也有PPT 组,甚至动画组,界面组.大家把自己平时的工作积累FTP 上去,甚至制作方法,遇到问题和解决方法的文档都丢上去,开始怎么想,用了多少套方案,最后选择了什么.自我感觉如何.把这些心路历程都写成文档.丢到阳光下, 大家评论.用点击率和"顶"的人数来说明谁写的是心水,谁在写垃圾.大家都是一个公司的,很容易实名.直接纳入考核机制中.做为一线人员,大家也有动力来写,自己的聪明才智有了展现的平台,虚荣心和荷包都得到了相应的满足.何乐而不为呢? EPG 适时的评估大家的成果,并把他们分到项目里.帮助项目总结,甚至在平时遇到问题时,直接帮助技术人员做必要记录.项目进度松时,再督促项目人员完善内容.以达到对个人和公司积累的最大化. EPG 应该明白学习和积累是个终身的过程,对公司如此,对个人也是如此.CMMI 是个辅助,辅助我们对公司做积累,也帮助我们个人做必要的积累.公司需要逐步走向更高的管理水平,发展平台. 四,CMMI 实施之核心关键字:CMMI,SCAMPI,过程改进,能力成熟度,EPG,PA,过程域在上一章节中,我们谈到了关于过程改进团队的组建方法及在组建过程中需要注意的问题,在本节中我们将继续探讨EPG 过程改进的另一个更为重要的一环——定义过程文档. 曾经有一位评估师开玩笑说,三级是写文档,四级是写文档的文档,五级是写文档的文档的文档.由此可见,文档贯穿于整个CMMI,在过程改进中起着举足轻重的作用.那么如何才能写出既符合CMMI 又立足于企业本身实际情况的文档呢?这就是本文将要探讨的问题——定义过程文档. 在定义过程文档时,首先,应该进行企业的习惯表述与CMMI 术语和语言间的映射.特别是组织结构中的一些术语,角色,组织内部之间关系以及过程活动的表述方式都需要映射到其组织的相应部分,以防止别人无法理解. 定义过程文档的一般步骤是: (1)先确定并描述产品的生命周期. 一般来说,产品生命周期可以划分为 6 个阶段,即产品概念阶段,产品定义阶段, 产品开发阶段, 产品测试阶段,用户验收阶段,产品维护阶段. (2)根据产品生命周期的各个阶段确定需要改进的过程域(PA)活动. "过程域"用于描述CMMI 标准定义的软件过程能力评估模型中的一种部件.在该模型中,"过程域"是最大的的构造块,每个"过程域"由一组目标构成,每个目标得到一组实践支持.模型中描述的过程是参考模板,用"过程域"来表示.不能与实际过程混淆."过程域"不是实际的过程,它是模型中的模板. (3)针对某一个PA 过程活动,完成PA 的数据流程图. (4)准备相应的模板,检查表或者方法附件定义过程文档.再在EPG 内部讨论修改,然后拿给评审人员阅读,最后是进行正式评审.进一步修订,再评审直到大家认可为止,再进入下一个PA 过程.(或者也可以评审通过后进行试点,试点成功再进入下有个PA 过程.) 根据自己多年的咨询经验,总结了在定义过程文档时一般容易出现的问题. 1,"本地化做得不够" 咨询顾问常常在项目进行中发现这样的问题:在定义某个PA 过程时,客户会过于依赖咨询公司提供的其他一些企业的过程文档,并将这些文档梢作调整成为其自己的过程文件.由于每个软件企业的情况是不一样,流程,规范,记录应该根据公司实际情况来制定,参照CMMI 框架,制定适合公司本身情况的"本地化"过程体系,这样的效果会更好. (2)总体把握,逐步细化在定义第一个PA 过程时,如果没有考虑它跟其它PA 之间的关系就直接参照CMMI 的此PA 的目标和实践完成了过程文件,可能发生的结果要么是无法通过评审, 要么就是通过了之后再返回进行修改.由于各PA 间关系密切,息息相关,因此在实际的定义过程中,先要从总体上把握住各PA 间关系,完成整个过程的数据流程图的基础上再进行逐步细分,否则即是"只见树木不见森林". (3)多交流,多总结由于在项目初期,EPG 小组对于CMMI 的理解不够透彻,大家也没什么经验,这就需要EPG 成员,QA,管理人员,开发人员之间多多交流,在定义过程文档时多讨论,集众人之智慧,随着过程定义的进展,EPG 小组对CMMI 的理解加深,就需要总结经验,避免将来在遇到类似问题的时候多走弯路.。
CMMI简介及CMMI2级的实施⽅案设计(DOC)CMMI简介及CMMI2级的实施⽅案设计第⼀部分 CMMI简介:CMMI 全称是Capability Maturity Model Integration,,即软件能⼒成熟度模型集成模型,是由美国国防部与卡内基-梅隆⼤学和美国国防⼯业协会共同开发和研制的。
CMMI (CMMI-SE/SW/IPPD)1.02 版本在部分国家和地区被SEI 开始推⼴和试⽤,主要应⽤于软件业项⽬,帮助提升对软件项⽬的管理能⼒。
随着模型本⾝的发展与应⽤的推⼴,CMMI 逐渐演变成为了⼀种被⼴泛采⽤的综合性模型。
在业界⼴泛使⽤的传统软件研发流程会带来⼀个严重的问题:存在于设计阶段的⼀个微⼩缺陷可能会直到后期的测试阶段才能被发现,⽽整个公司可能会花费数⼗倍甚⾄百倍的代价来改正这个缺陷。
为此,⼈⼒资源管理、软件采购、集成产品和过程开发、以及系统⼯程等等,多元化覆盖范围越来越⼴的能⼒成熟度模型应运⽽⽣。
1.1 CMMI 的作⽤软件能⼒成熟度集成模型(CMMI)经过长期积累和不断地优化,已经成功地发展并被认可为软件研发领域的标准过程体系,通过CMMI 可以增强企业核⼼竞争⼒、有效地提⾼软件企业产品质量,国内乃⾄国际上的⼴⼤软件⼚商都已经见证了CMMI 为企业带来的成功。
⽬前众多业界的软件企业纷纷试图使⽤CMMI 来达到过程改进的趋势,怎样才能将过程改进有效地实施,使其能实质地对软件研发过程起到优化效果,并带来⾏之有效地经济价值,已经逐渐成为了软件企业的决策者们最为关⼼的问题。
由最新SEI 评估报告中的数据显⽰,在进⾏了CMMI 的评估的企业中,⼤部分都是商业组织,并且其中近⼀半的企业⼈员规模都是在100 ⼈以下。
种种迹象均表明,CMMI 评估已经不仅仅吸引了⼤型IT 企业的注意⼒,同样存在⼤量的中⼩型企业也对此抱有浓厚的兴趣。
对软件企业来讲,CMMI 可以主要应⽤在两个地⽅:企业软件过程的改进和企业软件过程能⼒的评估。
CMMI是什么东西?CMMI英文全称是Capability Maturity Model Integration,直接翻译就是能力成熟度模型,直接看这几个中文字,你还是没有办法搞清楚CMMI是什么东西的。
大家可能在网上见过很多《成功人士的七个习惯》(可能还有很多类似的名字)的文章吧?有人总结了成功人士的成功的原因,总结出他们的习惯,如果我们也能具备这些习惯,那么我们也很可能成为成功人士。
类似的,CMMI可以看作是成功企业如何做好软件的一些习惯、做法、准则等的集合,是如何做好软件的最佳实践的集合。
如果企业也能按照CMMI的要求做好,那么企业就很可能成为成功的企业。
CMMI里面所有的要求,都是来自于成功企业的最佳实践的,她的先进性我们不必怀疑,如果我们没有做好,那不是CMMI本身的问题,而是我们自己没有理解好或者是没有执行好的原因。
说到CMMI,就不可避免会提到另外3个字母SEI,SEI全称是Software Engineering Institute 的全称,直译就是软件工程学院,是美国的一所大学,CMMI标准就是他们搞出来的。
CMMI目前最新版本是V1.2,如果你是现在才开始了解CMMI的,那么你完全没有必要去搞清楚V1.1与V1.2的差别,更加没有必要去比较CMM与CMMI的差别,直接了解CMMI V1.2就可以了,你只需要知道CMM是CMMI的前身,而CMMI V1.1虽然比CMM要新很多,但现在已经不用了。
现在在互联网上还有很多比较CMM与CMMI的文章的,除非你很想了解或者你有很多时间,建议不必去看这些内容。
连续式vs阶段式CMMI有两种表述方式:连续式与阶段式,两种方式只是从不同的角度来阐述CMMI,其实质上表达的内容是一致的。
就好像我们做数据库设计的时候,可能会设计不同的视图来查看相同数据表的数据,只是角度不一样。
大家可能会问,好好的CMMI,为什么要搞两种表达方式呢?不怕把大家搞糊涂吗?确实这两种方式把不少人给搞糊涂了,这是SEI的一个败笔。
CMMI能力成熟度模型
一、CMMI是什么?
CMMI全称是Capability Maturity Model Integration,即能力成熟度模型集成(也有称为:软件能力成熟度集成模型),是美国国防部的一个设想,年由美国国防部与卡内基-梅隆大学下的软件工程研究中心以及美国国防工业协会共同开发和研制的。
换句话说,就是给你公司一个软件开发管理可执行的框架,这个框架具有自动性和可扩展性。
实行CMMI体系的过程就是改进的过程。
最终的目的,就是在保证工期和预算的前提下,输出高质量的软件。
只要按照这个框架执行,我们开发工作每一个环节都有规程和文档为依据,我们的需求、设计、测试各个环节都有评审,变更将得到有效管理,项目成果和经验能得到积累和应用……
大家熟知的信息系统项目管理师和PMP,是两个对个人层面的认证,而CMMI是对企业层面的认证。
二、CMMI体系结构是怎样的?
5个等级。
CMMI模型把企业的软件能力成熟度划分为5个等级——第1到第5级。
数字越大,成熟度越高。
5个等级分别是:初始级、已管理级、已定义级、已定量管理级、优化级。
一般企业评估是第3级或第5级。
22个过程域。
每一个成熟度等级对应一定数量的过程域。
所谓过程域(PA),就是做好软件管理的某一个方面,如项目计划(PP)、风险管理(RSKM)、需求开发(RD)等等。
CMMI一共包括22个过程域,涵盖了过程管理、项目管理、工程管理、支持管理四个方面。
CMMI与软件质量管理概述CMMI(能力成熟度模型集成)是一种用于评估和改进软件开发过程的国际标准。
软件质量管理是一种通过实施标准化过程来确保软件产品质量的方法。
本文将探讨CMMI与软件质量管理之间的关系,以及它们在软件开发项目中的应用。
CMMI简介CMMI是一种用于评估和改进软件开发过程的模型。
它由Carnegie Mellon大学的软件工程研究所开发,并于2002年发布。
CMMI使用了一种成熟度模型的方法,用于评估组织的软件开发能力,并提出了一套指导原则和最佳实践,以改进组织的软件开发过程。
CMMI模型定义了5个不同的成熟度级别,从初级(级别1)到最高级别(级别5)。
每个级别都有一系列的指导原则和最佳实践,用于帮助组织实现更高水平的成熟度。
通过实施CMMI模型,组织可以提高软件开发过程的效率和质量,减少成本和风险。
软件质量管理软件质量管理是通过实施标准化的过程和活动,确保软件产品的质量和符合客户要求的方法。
它涵盖了整个软件开发生命周期,包括需求分析、设计、编码、测试和维护等阶段。
软件质量管理的目标是确保软件产品的可靠性、可用性、易用性和安全性等方面的质量,以满足客户的需求和期望。
软件质量管理包括以下主要方面:质量计划质量计划是指确定实施软件质量管理活动的计划和策略。
它包括确定质量目标、质量度量指标、质量评估方法等内容。
质量计划可以帮助组织确保软件产品在项目的每个阶段都符合预定的质量标准。
质量控制质量控制是指通过监控和评估软件开发过程中的活动和工件,确保产品质量符合预期的过程。
它包括编码规范的制定、代码审查、单元测试、集成测试等控制措施。
质量控制可以及早发现和纠正潜在的质量问题,从而确保软件产品的质量。
质量保证质量保证是指通过实施预防性和检测性的活动,确保软件产品质量符合预期的过程。
它包括需求审查、设计审查、测试计划制定和执行等活动。
质量保证可以帮助组织确保软件产品符合质量标准,预防质量问题的发生。
能力成熟度模型C M M I The document was prepared on January 2, 2021意义与功能CMMI 的全称为:Capability Maturity Model Integration,即能力成熟度模型集成.CMMI是CMM模型的最新版本.早期的CMMICMMI-SE/SW/IPPD版本是应用于软件业项目的管理方法,SEI在部分国家和地区开始推广和试用.随着应用的推广与模型本身的发展,演绎成为一种被广泛应用的综合性模型.具体内容自从1994 年SEI 正式发布软件CMM 以来,相继又开发出了系统工程、软件采购、人力资源管理以及集成产品和过程开发方面的多个能力成熟度模型.虽然这些模型在许多组织都得到了良好的应用,但对于一些大型软件企业来说,可能会出现需要同时采用多种模型来改进自己多方面过程能力的情况.这时他们就会发现存在一些问题,其中主要问题体现在:1. 不能集中其不同过程改进的能力以取得更大成绩;2. 要进行一些重复的培训、评估和改进活动,因而增加了许多成本;3. 遇到不同模型中有一些对相同事物说法不一致,或活动不协调,甚至相抵触. 于是,希望整合不同CMM 模型的需求产生了.1997 年,美国联邦航空管理局FAA 开发了FAA-iCMMSM联邦航空管理局的集成CMM,该模型集成了适用于系统工程的SE-CMM、软件获取的SA-CMM 和软件的SW-CMM 三个模型中的所有原则、概念和实践.该模型被认为是第一个集成化的模型.CMMI与CMM 最大的不同点在于: CMMISM-SE/SW/IPPD/SS 版本有四个集成成分,即:系统工程SE和软件工程SW是基本的科目,对于有些组织还可以应用集成产品和过程开发方面IPPD的内容,如果涉及到供应商外包管理可以相应的应用SSSupplier Sourcing部分.CMMI 有两种表示方法,一种是大家很熟悉的,和软件CMM 一样的阶段式表现方法,另一种是连续式的表现方法.这两种表现方法的区别是:阶段式表现方法仍然把CMMI 中的若干个过程区域分成了5 个成熟度级别,帮助实施CMMI 的组织建议一条比较容易实现的过程改进发展道路.而连续式表现方法则通过将CMMI 中过程区域分为四大类:过程管理、项目管理、工程以及支持.对于每个大类中的过程区域,又进一步分为基本的和高级的.这样,在按照连续式表示方法实施CMMI的时候,一个组织可以把项目管理或者其他某类的实践一直做到最好,而其他方面的过程区域可以完全不必考虑.CMMI各个进程的关键元素CMMI自出道以来,它所达到的目标就没有变过,第一个是质量,第二个是时间表,第三就是要用最低的成本.不过特别强调的是,CMMI不是传统的、仅局限于软件开发的生命周期,它应该被运用于更广泛的一个范畴——工程设计的生命周期.TSP的建立,也是为了支持CMMI的这样一个系统. 那么CMMI究竟是什么呢它并不是一个过程,也不是告诉你怎么去做一件事情.如果用一句话来概括什么是CMMI,它就是各个进程的一个关键的元素,在很多领域里面一个集成的点.它是这样的一个基本架构,能够用来度量你的有效性和实用性;能够找出这样的一些机会,继续改进的机会,包括在商业目标、策略还有降低项目的风险等方面.一、CMMI的起源随着人们对CMM研究的不断深入,其他学科也结合本系统的特点,陆续推出了自己的CMM模型.例如,人力资源能力成熟度模型、系统工程能力成熟度模型等等:1 SW-CMM Software CMM 软件CMM2 SE-CMM System Engineering CMM 系统工程CMM3 SA-CMM Software Acquisition CMM 软件采购CMM4 IPT-CMM Integrated Product Team CMM 集成产品群组CMM5 P-CMM People CMM 人力资源能力成熟度模型为了以示区别,国内外很多资料把CMM叫做SW-CMM.按照SEI原来的计划,CMM的改进版本应该在1997年11月完成,然后在取得版本得实践反馈意见之后,在1999年完成准版本.但是,美国国防部办公室要求SEI推迟发布版本,而要先完成一个更为紧迫的项目CMMI.CMMICapability Maturity Model Integration即能力成熟度集成模型,这也是美国国防部的一个设想,他们想把现在所有的以及将被发展出来的各种能力成熟度模型,集成到一个框架中去.这个框架有两个功能,第一,软件采购方法的改革;第二,建立一种从集成产品与过程发展的角度出发、包含健全的系统开发原则的过程改进.就软件而言,CMMI是SW-CMM的修订本.它兼收了SW-CMM 版C稿草案和SPA中更合理、更科学和更周密的优点.SEI在发表CMMI-SE/SW 版时,宣布大约用两年的时间完成从CMM到CMMI的过渡.CMMI项目更为工业界和政府部门提供了一个集成的产品集,其主要目的是消除不同模型之间的不一致和重复,降低基于模型改善的成本.CMMI将以更加系统和一致的框架来指导组织改善软件过程,提高产品和服务的开发、获取和维护能力.二、实施CMMI的意义很多人认为,实施CMMI的意义在于项目工程走向世界,可以在西方国家接到订单.实际上,这只是我国企业实施CMMI的意义的很小一部分.更为重要的意义则是,CMMI的实施能够提高我国企业的管理水平.降低企业的工程成本.事实表明,企业实施CMMI技术的投入都会得到丰厚的回报.据SEI统计,用于软件项目上的CMMI的投资,其回报率在5:1到8:1之间.由此可见,为什么这么多的企业纷纷实施CMMI项目管理技术.近年来,很多软件企业纷纷实施CMMI管理模式,这一方面反映了我国企业在进入WTO后的危机意识,以及与世界接轨的迫切愿望.另一方面则反映出我国软件企业在改进管理方法上所作的努力.但是CMMI到底能够为我们做什么呢实际上这个问题对不同的人有不同的答案.对采购部门的人员来说,掌握了CMMI技术可以有目的地考察项目实施人员或公司的实施能力,从而保证所采购的项目能够顺利完成.对于项目经理来说,掌握CMMI技术能够提高自己的管理能力,从而能够使项目高质量,低成本,按期限地完成.对于企业老总来说,CMMI还能够引入科学的管理理念,提升企业的整体管理水平.在美国,很多企业通过CMMI评估,一方面为了满足承包国防工程或一些大企业的工程的要求,另一方面也是为了提高企业自身的管理能力.美国政府的工程项目,绝大多数都要求承包商有一定的CMMI级别作为参加投标的资格.越来越多的大型企业开始要求其工程承包商具有一定的CMMI级别.级别高的企业在赢得项目的竞标中具有一定的优势.因此,如果没有CMMI的等级评估,企业就会失去很多商机.三、CMMI的两种实施方法CMMI有两种不同的实施方法,不同的实施方法,其级别表示不同的内容.CMMI的一实施方法为连续式,主要是衡量一个企业的项目能力.企业在接受评估时可以选择自己希望评估的项目来进行评估.因为是企业自己挑选项目,其评估通过的可能性就较大一点.但是,它反映的内容也比较窄一点.它仅仅表示企业在该项目或类似项目的实施能力达到了某一等级.而另一种实施方法为阶段性.它主要是衡量一个企业的成熟度,亦即是企业在项目实施上的综合实力.企业在进行评估时,一定要由评估师来挑选企业内部的任何项目,甚至于任何项目的任何部分.一般地讲,一个企业要想在阶段性评估中得到三级,其企业内部的大部分项目要达到三级,小部分项目可以在二级,但绝不能够有一级.阶段性实施方法的难度要大一些.虽然,CMMI的表述方式不同,但其实质内容是完全一样的.是同一种方法的两种不同的表述方式.企业在准备评估时要做的准备工作也是完全一样的.这些工作对企业的管理上的帮助也是一样的.因此,不管企业需要做什么样的评估,企业所获取的实惠应该是差别不大.具体要做连续性评估,还是做阶段性评估则要看企业对等级评估证书的具体要求.四、CMMI的五个台阶台阶一:CMMI一级,完成级.在完成级水平上,企业对项目的目标与要做的努力很清晰,项目的目标得以实现.但是由于任务的完成带有很大的偶然性,企业无法保证在实施同类项目的时候仍然能够完成任务.企业在一级上的项目实施对实施人员有很大的依赖性.台阶二:CMMI二级,管理级.在管理级水平上,企业在项目实施上能够遵守既定的计划与流程,有资源准备,权责到人,对相关的项目实施人员有相应的培训,对整个流程有监测与控制,并与上级单位对项目与流程进行审查.企业在二级水平上体现了对项目的一系列的管理程序.这一系列的管理手段排除了企业在一级时完成任务的随机性,保证了企业的所有项目实施都会得到成功.台阶三:CMMI三级,定义级.在定义级水平上,企业不仅能够对项目的实施有一整套的管理措施,并保障项目的完成;而且,企业能够根据自身的特殊情况以及自己的标准流程,将这套管理体系与流程予以制度化这样,企业不仅能够在同类的项目上生到成功的实施,在不同类的项目上一样能够得到成功的实施.科学的管理成为企业的一种文化,企业的组织财富.台阶四:CMMI四级,量化管理级.在量化管理级水平上,企业的项目管理不仅形成了一种制度,而且要实现数字化的管理.对管理流程要做到量化与数字化.通过量化技术来实现流程的稳定性,实现管理的精度,降低项目实施在质量上的波动. 台阶五:CMMI五级,优化级.在优化级水平上,企业的项目管理达到了最高的境界.企业不仅能够通过信息手段与数字化手段来实现对项目的管理,而且能够充分利用信息资料,对企业在项目实施的过程中可能出现的次品予以预防.能够主动地改善流程,运用新技术,实现流程的优化.由上述的五个台阶我们可以看出,每一个台阶都是上面一阶台阶的基石.要上高层台阶必须首先踏上较低一层台阶.企业在实施CMMI的时候,路要一步一步地走.一般地讲,应该先从二级入手.在管理上下功夫.争取最终实现CMMI的第五级.。