About me

Calendar

Search

Recent Articles

Recent Comments

Links

Statistics

Support


Except where otherwise noted, this site is licensed under a Creative Commons License.
除特别说明,本站所有内容都遵循创作共用协议.

About ADS

 

 
给我留言My Guestbook  我的照片My Photo  友情提示您,当前时间为:

CMMI 起源

[ 2006/6/29 18:10:00 | ]
CMMI起源

  随着人们对CMM研究的不断深入,其他学科也结合本系统的特点,陆续推出了自己的CMM模型。例如,人力资源能力成熟度模型、系统工程能力成熟度模型等等:

  (1) SW-CMM (Software CMM) 软件CMM
  (2) SE-CMM (System Engineering CMM) 系统工程CMM
  (3) SA-CMM (Software Acquisition CMM) 软件采购CMM
  (4) IPT-CMM (Integrated Product Team CMM) 集成产品群组CMM
  (5) P-CMM (People CMM) 人力资源能力成熟度模型

  为了以示区别,国内外很多资料把CMM叫做SW-CMM。按照SEI原来的计划,CMM的改进版本2.0应该在1997年11月完成,然后在取得版本2.0得实践反馈意见之后,在1999年完成准CMM2.0版本。但是,美国国防部办公室要求SEI推迟发布CMM2.0版本,而要先完成一个更为紧迫的项目CMMI。

  CMMI(Capability Maturity Model Integration)即能力成熟度集成模型,这也是美国国防部的一个设想,他们想把现在所有的以及将被发展出来的各种能力成熟度模型,集成到一个框架中去。这个框架有两个功能,第一,软件采购方法的改革;第二,建立一种从集成产品与过程发展的角度出发、包含健全的系统开发原则的过程改进。就软件而言,CMMI是SW-CMM的修订本。它兼收了SW-CMM 2.0版C稿草案和SPA中更合理、更科学和更周密的优点。SEI在发表CMMI-SE/SW 1.0版时,宣布大约用两年的时间完成从CMM到CMMI的过渡。

  CMMI项目更为工业界和政府部门提供了一个集成的产品集,其主要目的是消除不同模型之间的不一致和重复,降低基于模型改善的成本。CMMI将以更加系统和一致的框架来指导组织改善软件过程,提高产品和服务的开发、获取和维护能力。

CMMI介绍

  CMMI是英文Capacity Matu-rity Model Integrated的简称。中文的译意是能力成熟度集成模型。CMMI是CMM模型的最新版本。早期的CMMI(CMMI-SE/SW/IPPD)1.02版本是应用于软件业项目的管理方法,SEI在部分国家和地区开始推广和试用。随着应用的推广与模型本身的发展,演绎成为一种被广泛应用的综合性模型。

  2001年12月,SEI(美国软件工程研究院)正式发布CMMI 1.1版本。与原有的能力成熟度相比,CMMI涉及面更广,专业集领域覆盖软件工程、系统工程、集成产品开发和系统采购。据美国国防部资料显示,运用CMMI模型管理的项目,不仅降低了项目的成本,而且提高了项目的质量与按期完成率。因此,美国在国防工程项目中全面地推广CMMI模型,规定在国防工程项目的招标中,达到CMMI一定等级才有参加竞标的资格。该模型包括了连续模型和阶段模型这两种表示方法,一个组织根据 自己的过程改进要求可以自由选择合适的表示方法来使用。

  目前国内有一种片面的认识,即CMMI是应用于软件业项目的管理方法。实际上,CMMI在软件与系统集成外的领域,如科研、工程,甚至于日常的管理都得到了广泛的应用,并取得了相当好的效果。

  CMMI虽然源于美国,但在世界各地得到了广泛的推广与接受。在日本、欧洲、台湾、印度等地都有很多企业在推广与应用CMMI模型。尤其在印度CMMI的应用甚至超过了美国。据SEI统计,世界软件企业评估达到5级的共有25个印度占了其中的16个。这也是印度软件得以迅速发展的一个主要原因。有专家预测在未来的几年内,CMMI将成为ISO9000之后的又一个国际上普遍接受的标准。

CMMI的实施方法

  CMMI有两种不同的实施方法,不同的实施方法,其级别表示不同的内容。CMMI的一实施方法为连续式,主要是衡量一个企业的项目能力。企业在接受评估时可以选择自己希望评估的项目来进行评估。因为是企业自己挑选项目,其评估通过的可能性就较大一点。但是,它反映的内容也比较窄一点。它仅仅表示企业在该项目或类似项目的实施能力达到了某一等级。而另一种实施方法为阶段性。它主要是衡量一个企业的成熟度,亦即是企业在项目实施上的综合实力。企业在进行评估时,一定要由评估师来挑选企业内部的任何项目,甚至于任何项目的任何部分。一般地讲,一个企业要想在阶段性评估中得到三级,其企业内部的大部分项目要达到三级,小部分项目可以在二级,但绝不能够有一级。阶段性实施方法的难度要大一些。

  虽然,CMMI的表述方式不同,但其实质内容是完全一样的。是同一种方法的两种不同的表述方式。企业在准备评估时要做的准备工作也是完全一样的。这些工作对企业的管理上的帮助也是一样的。因此,不管企业需要做什么样的评估,企业所获取的实惠应该是差别不大。具体要做连续性评估,还是做阶段性评估则要看企业对等级评估证书的具体要求。

CMMI的五个级别

  1、CMMI一级,初始级。在初始级水平上,企业对项目的目标与要做的努力很清晰,项目的目标得以实现。但是由于任务的完成带有很大的偶然性,企业无法保证在实施同类项目的时候仍然能够完成任务。企业在一级上的项目实施对实施人员有很大的依赖性。

  2、CMMI二级,受管理级。在受管理级水平上,企业在项目实施上能够遵守既定的计划与流程,有资源准备,权责到人,对相关的项目实施人员有相应的培训,对整个流程有监测与控制,并与上级单位对项目与流程进行审查。企业在二级水平上体现了对项目的一系列的管理程序。这一系列的管理手段排除了企业在一级时完成任务的随机性,保证了企业的所有项目实施都会得到成功。

  3、CMMI三级,已定义级。在已定义级水平上,企业不仅能够对项目的实施有一整套的管理措施,并保障项目的完成;而且,企业能够根据自身的特殊情况以及自己的标准流程,将这套管理体系与流程予以制度化。这样,企业不仅能够在同类的项目上生到成功的实施,在不同类的项目上一样能够得到成功的实施。科学的管理成为企业的一种文化,企业的组织财富。

  4、CMMI四级,量化管理级。在量化管理级水平上,企业的项目管理不仅形成了一种制度,而且要实现数字化的管理。对管理流程要做到量化与数字化。通过量化技术来实现流程的稳定性,实现管理的精度,降低项目实施在质量上的波动。

  5、CMMI五级,优化级。在优化级水平上,企业的项目管理达到了最高的境界。企业不仅能够通过信息手段与数字化手段来实现对项目的管理,而且能够充分利用信息资料,对企业在项目实施的过程中可能出现的次品予以预防。能够主动地改善流程,运用新技术,实现流程的优化。

  由上述的五个等级我们可以看出,每一个等级都是上面一阶等级的基石。要上高层等级必须首先踏上较低一层等级。企业在实施CMMI的时候,路要一步一步地走。一般地讲,应该先从二级入手。在管理上下功夫。争取最终实现CMMI的第五级。

CMM成熟度家族

  CMM家族中,除了专门针对软件开发流程设计的SW-CMM外;基于相似的观念,SEI也逐步发展出其它的CMM模式,包含SE-CMM,IPD-CMM,P-CMM,SA-CMM,CMMI等不同的模式。不同的模式之鉴定理念及架构或许相似,但仍各有其适用之鉴定方法。为避免读者在阅读相关资料时的混淆,以下先简介目前SEI发表的各种CMM模式:

  1、软件件成熟度模式( Capability Maturity Model for Software, SW-CMM )
SW-CMM提供软件单位如何有效改善与控制软件开发与维护流程之指引,并指引软件单位演进成为具有软件工程素养,并能卓越管理之组织。SW-CMM也用以作为软件成熟度鉴定(Appraisal)时之参考模式。

  2、系统工程成熟度模式( Systems Engineering Capability Maturity Model, SE-CMM )
  目前的SE-CMM 1.1版于1995年12月发行,说明为确保一个好的系统工程所必须存在之组织系统工程流程的重要项目。SE-CMM同样分为五个能力层级.

  3、整合产品发展成熟度模式( Integrated Product Development Capability Maturity Model, IPD-CMM )
  目前仍处于草案阶段的IPD-CMM提供需采行整合性产品发展方法之组织一个用以建立、鉴定、与改善产品发展作业之指引。IPD-CMM描述组织需在流程、训练、技术、知识等方面适时进行合作以提供服务或产品时之成熟度模式,包含来自不同,甚至相矛盾需求之整合与解决流程。

  4、人力资源管理成熟度模式( People Capability Maturity Model, P-CMM )
P-CMM为组织持续改善人力资产发展与管理作业提供一个成熟度架构。除了改善流程

  5、整合成熟度模式( Capability Maturity Model Integration, CMMI )
CMMI是SEI自1997年以来进行的一项努力,目的在发展一个整合性的架构以整合不同的成熟度模式及相关产品,以提升使用成熟度模式时之效率与回收效益。目前初步的任务为整合SW-CMM v2.0 draft C, Systems Engineering Capability Model (SECM)及IPD-CMM V0.98等三个模式。CMMI 1.1版已在2001年12月发行,随着整合性架构的 建 立,未来仍可能会继续整合其它成熟度模式。针对CMMI,SEI提供了新的鉴定方法,称为the Standard CMMISM Assessment Method for Process Improvement (SCAMPISM),并已于网站上公开相关资料。

CMMI的评估方法

  CMMI提供了阶段式和连续式两种表示方法,这两种表示法在逻辑上是等价的。我们熟悉的SW-CMM软件能力成熟模型就是阶段式的模型,SE-CMM系统工程模型是连续式模型,而IPD-CMM集成产品开发模型结合了阶段式和连续式两者的特点。

  阶段式方法将模型表示为一系列"成熟度等级"阶段,每个阶段都有一组KPA指出一个组织应集中于何处以改善其组织过程,每个KPA用满足其目标的方法来描述,过程改进通过在一个特定的成熟度等级中满足所有KPA的目标而实现的。

  连续式模型没有像阶段式那样的分散阶段,模型的KPA中的方法是KPA的外部形式,并可应用于所有的KAP中,通过实现公用方法来改进过程。它不专门指出目标,而是强调方法。组织可以根据自身情况适当裁剪连续模型并以确定的KPA为改进目标。

  两种表示法的差异反应了为每个能力和成熟度等级描述过程而使用的方法,他们虽然描述的机制可能不同,但是两种表示方法通过采用公用的目标和方法作为需要的和期望的模型元素,而达到了相同的改善目的。

评估模型的剪裁

  模型是评估中的一个重要因素。在进行具体的评估之前,需要对选定的模型进行剪裁。这样做一方面可以减少评估的工作量,更主要的是建立起适合组织具体情况的具体模型,将标准模型中的角色、活动等部件映射到组织结构中。

  对CMMI模型的剪裁可以从两个不同的角度进行:一是将剪裁模型用于过程改进;另一方面,也可以将剪裁模型用于建立评估基线。

  对于内部过程改进方面的模型剪裁,主要是限制或扩展组织或项目的过程改进范围,识别出支持组织的商业目标和需求的过程域和实践,去掉对组织的业务目标“不适用”的过程域、目标以及实践。当然,由于模型中各组件之间的相互联系,如果将多个过程域、过程域中的多个目标或实践声明为“不适用”,将不可避免地带来评估中的一系列风险,从而削弱了评估的作用。因此,当怀疑某个过程域或目标以及实践不适用时,不应该匆忙做出决定。

  将剪裁模型用于建立评估基线,主要是为了能够通过评估报告在同行业中或者在几个潜在的供应商中比较评估结果。因此,在这种情况下进行模型的剪裁,必须保证在多次评估中参照剪裁模型所得出的定级结果的一致性。从这种角度出发的模型剪裁受到更多的限制。CMMI-SE/SW/IPPD版本1.1中对其具体剪裁方法给出了详尽的描述,组织在通过剪裁定制自己的CMMI模型时可以作为参考。

  组织在进行过程剪裁时,应该综合考虑自身的业务目标、业务模型以及过程改进的资源约束等因素,全面衡量剪裁在减少评估工作量与其所带来的风险之间的利害关系,紧密结合组织本身的核心业务过程,参照CMMI产品集中给出的规范和标准,建立起自身评估中可用的CMMI模型。

为什么实施过程改进?

  当您的公司发展到一定的规模您是否经常遇到下列问题:

  1.项目延迟
  项目完成日期,一拖再拖......

  2.无法了解项目实际情况
  项目结束后发现,最终产品与原始需求南辕北辙......

  3.项目风险过多
  在项目开发过程中出现了,技术等风险,无法解决,导致项目停滞不前......

  4.成本超支
  在项目开发过程中发现人员、技术等资源严重不足,为保证项目的顺利进行,只得不断追加资源......

  5.软件产品控制混乱
  在项目完成后,发现软件有问题,居然找不到最终版本......

  6.因人员变动产生巨大损失
  在项目开发的过程中因主力人员的流失,导致项目停滞,许多工作重新进行......

  7.同类的错误不断重复
  同类的项目进行再次开发时,出现与前一版本或同类项目相同的错误,而且上次的成功经验,没有记录......

  8.企业的成功经验没有积累和推广
  在公司的重要人员离开后,他经手的成功案例,没有记录,导致犯了许多重复的错误......

  9.…………
  您是否一直在为这些问题苦恼?

通过过程改进能做到哪些?

  通过过程是我们能为您做到:
  1.根据企业目标选择改进机制
  · 开展软件过程改进
  · 开展软件过程改进,并通过CMMI2
  · 开展软件过程改进,并一次性通过CMMI2&CMMI3

  2.诊断出企业目前距离目标的差距
  · 通过访谈调查,分析企业现状中存在的问题
  · 根据诊断结果,制定有针对性的过程改进方案

  3.建立行动小组,制定行动方案
  · 建立SEPG小组,明确改进范围,培训SEPG成员
  · 制定详细改进方案(选择工程模型、制定WBS、对成本等进行估计、识别风险、进度规划等)
  · 定义机构标准软件过程(OSSP)
  · 制定相关子计划(包括培训计划、SQA计划、SCM计划等)

  4.执行方案,逐步实现企业目标
  制定符合企业实际需求的方针、过程、规程
  · 制定改进所需所有文档,包括规范、模板、检查单、报表等
  · 定期出具差距分析报告,改进进度清晰可见

  5.发现、记录教训,及时调整方案
  按照SCM计划,对整个改进过程中的工作产品进行管理
  · 召开里程碑评审会议,评审改进方案实施状况,及时调整偏差
  · 建立企业经验数据库,减少重复错误,推广成功经验

  6.实现企业目标
  · 提高机构软件过程能力
  · 通过评估,为企业创造一定商业价值


发表评论:

    昵称:
    密码:
    主页:
    标题:
  • 本博客由放飞思想提供免费服务
  • www.flyidea.cn 放飞思想,成就未来
  • 本博客内部所有文章如需转载,请联系原作者或转载前作者