我国最大的IT项目管理门户网站,国内IT项目管理培训与咨询服务提供商

当前位置:首页 > CMMI > 正文

CMMI或敏捷:何不互相拥抱—摘要

2018-11-12 来源:软件工程之思
      人们经常认为'敏捷开发方法'和'CMMI最佳实践'是互相抵触的。本报告首先阐明了两者之间的这些“不和谐”实际上是不存在的,并且建议CMMI和敏捷的拥护者们利用好对方和优点,共同开拓,并从中受益 ,充分发挥二者的潜在优势,显著提升业务性能。
 
1. 问题说明
      敏捷开发方法和CMMI最佳实践经常被人们认为是互相抵触的。如果这种观念以及引起这些观念的原因不能解释清楚,我们将在具体实施这些方法的过程中遇到更多的困惑和冲突。此外,CMMI和敏捷两种方法都蕴含了很多良好的软件开发的基本原则,然而这些原则却经常被另一方所忽视。实际上,无论CMMI还是敏捷,所有这些知识和方法本身对软件项目的成功都很重要。从长远的眼光来看,这些“不和谐”的存在,对软件工程行业的健康发展造成不利影响。
 
      为什么在敏捷和CMMI阵营之间存在这些争议?本文的目的,就是对争议的原因进行解释,并说明为什么这些争议实际上是不存在的,并且请求在您(和大家)的帮助下,使整个软件开发社区意识到,如果能够适当地,混合使用CMMI和敏捷的原则和方法,可以大大提升软件开发的质量和效率。
 
      我们相信敏捷和CMMI阵营存在争议的最主要原因是以下两点:
      (1)早期采用CMMI和敏捷方法的案例分别代表了各自比较极端的情况。早期的CMMI面向的是大型的、不愿承担任何风险的、肩负重要使命的项目。项目经常直接在高等级管理者的分层监督和管理下进行。相反,早期敏捷方法通常关注小型、需求不稳定、单一团队开发的“纯”软件项目。这样的两个极端情况为本文探讨的所有问题提供了基调。
 
      (2)关于CMMI和敏捷的不准确(甚至是错误)的信息和对两种方法的一些“误用”,导致了两大阵营对彼此做法产生了错误认识。这种负面的理解使CMMI和敏捷之间不断争吵,究其原因,这些问题中的大多数是由以下因素引起的:
      a. 误用——从CMM到CMMI,20多年的经验,然而一些实践却经常被错误使用,或者被应用(也就是“覆盖”应用,在原本已经有效的活动上叠加运用)到那些已经对开发活动有深入理解,且已经富有成效的开发团队上。
      b. 缺乏准确的信息——在敏捷社区和CMMI社区里都缺乏彼此正确理解对方的准确信息。
      c. 术语困难——CMMI术语(如纪律、质量保证和可预测性等),敏捷方法中的术语(如持续集成、测试驱动开发和共有代码所有权等),经常具有上下文关联的含义,很容易被错误的理解和滥用;
      d. “自顶向下”相对“自底向上”的改进方法——新方法的引入的过程中, “一个声音”的支持程度往往超过“另一个声音”(例如,管理者的声音和参与/执行者的声音),然而,无论哪个声音,都经常忽略了另一个“更重要的声音”,那就是“怎样能使业务运行的更有效?
 
      在本报告中,针对CMMI和敏捷两种方法/范式,我们确定了一些我们认为危害性极大的错误观念,并进行了讨论,之后,我们针对如何改进和提升认识、正确地理解两种范式给出了建议。作为后见之明,我们承认,在某种程度上,是CMMI在发展和引进过程中的一些方法,引起了一些用户对CMMI本质的某些错误认识(我不能这样来说敏捷社区;但是我们觉得敏捷方法也存在着某种意义的类似情况)。这种错误的认识/观念,可能导致在不适当和没有效果地使用CMMI。
 
      更进一步讲,我们确定了CMMI和敏捷之间存在的常见误解。很多情况下,这些误解与对CMMI和敏捷的误用有关系,但是有时这些误解也是由于缺少准确的信息造成的。另外,对观念和经验上的长期固有信条的坚持,也是造成误解的原因之一,这种情况和CMMI、敏捷两种方法都没有关系。
 
      敏捷社区对CMMI的一些误解来源于CMM的一些特征,目前这些特征已经不属于CMMI了。CMMI包含了许多改进并由此和CMM之间存在着区别,CMM中的内容自1993年以来就没有更新过了(实际上,包含了一些改进方法的未完成的CMM稿件版本2,是在1997年被创建的,但是这些内容从来没有被正式发布过,而是作为了CMMI初始文档的一部分加以利用),例如CMMI中,更加关注风险管理、集成化团队和工作环境,而减少了项目启动所需要的固定必备条件和做事情要“依据文档化的程序”等方面的关注。敏捷社区的部分人使用CMM的概念来评判CMMI是不公平的。比如把成熟度等级2的目标说成是产生“可重复使用的过程”,这种不正确的观点一直沿用到今天。近来在CMMI相关的网络坛中,一些参与者已经承认并不像他们了解CMM一样了解CMMI。
 
      更麻烦的问题是,有一些CMM的用户从来没有更新到CMMI,并且坚持使用那些相对于更新后的CMMI模型来说,在软件和系统开发过程中缺少灵活性的观点;某些早期的CMM用户,虽然更新到CMMI,但是还在固守CMM中一些过时的观点。
 
      另一个重要的因素是,实施者们经常把那些实际上没有遵循CMMI或敏捷原则的活动贴上CMMI或敏捷的“标签”,出现这种情况都源自于对CMMI和敏捷的负面理解。
 
      现在,我们已经认识到CMMI和敏捷能够在一起成功使用。在本文的末尾引用了一些综合使用两种方法的成功案例;SEI一直以来对敏捷开发方法感兴趣,持续关注着CMMI和敏捷社区的经验。
 
(本资讯于2015-01-16首次发布)
分享到:

免责声明:
  1、IT项目管理界发布的所有资讯与文章是出于为业界传递更多信息之目的,并不意味着赞同其观点或证实其描述。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请浏览者仅作参考,并请自行核实相关内容。
  2、本站部分内容转载于其他网站和媒体,版权归原作者或原发布媒体所有。如文章涉及版权等问题,请联系本站,我们将在两个工作日内进行删除或修改处理。敬请谅解!

延伸阅读:

more

会议活动

more

公开课

more

PMO

Copyright © 2021 IT项目管理界 版权所有 京ICP备17062359号-4 如转载本站文章,请注明原作者和原发布媒体

本着互联网分享精神,本站部分内容转载于其他网站和媒体,如稿件涉及版权等问题,请联系本站进行删除或修改处理

客服电话:010-89506650 89504891 非工作时间可联系:18701278071(微信) QQ在线:511524637

新闻与原创文章投稿:tougao#cpmta.com 客服邮箱:info#cpmta.com(请将#换成@)

IT项目管理界——我国最大的IT项目管理门户网站,隶属卓橡公司

IT项目管理界官方微信

IT项目管理界官方微信

PMO大会官方微信

PMO大会官方微信