论IPD和CMMI的关系
首先看一下CMMI在CMM的区别。CMMI是在CMM(软件成熟度模型)的基础上增加了集成的产品和过程开发(IPPD)等专业领域,不再局限于软件。CMMI与SW-CMM的主要区别在三个方面:专业领域、成熟度等级和过程域、模型结构。与CMM相比,CMMI覆盖4个专业领域,即软件工程(SW)、系统工程(SE)、集成的产品和过程开发(IPPD)、采购(Supplier Sourcing)。
IPD与CMMI起源和出发点的不同,决定了两者具有较大的区别。CMMI是SEI针对软件质量保证制定的能力成熟度模型,本质上关注的是过程质量。而IPD着眼于产品开发获得市场成功,是在PACE(产品及周期优化法)等产品开发模式的基础上,经过一些领先企业(如IBM)的实践发展起来的。IPD关注的是将影响产品成功的关键要素(如结构化流程、产品决策评审、产品开发团队等)有机地整合起来,形成集成的产品开发模式,推动产品的成功。打个形象的比喻:IPD侧重于企业整体产品管理框架的搭建(好比构建一栋大楼的结构框架),而CMMI更着眼于具体的房间布局和装修。
具体而言,IPD与CMMI区别如下:
1、 面向层面不同
IPD是企业层面的一套产品开发管理的思想、模式和方法,本质上是一种产品经营管理的模式。CMMI是面向研发的,而且更多是面向软件开发的。
2、 思想高度不同
两者目的的不同也导致了思想的不同。IPD的核心思想集中体现为6个方面,即产品开发是一项投资、基于市场的创新、跨部门的协同、异步开发、重用(CBB)、结构化。IPD是从更高和更加全面的角度来看待产品开发的。而CMMI主要倡导通过过程和活动来保证质量。
3、流程的结构化不同
IPD首先把产品开发看作一个流程,包括概念、计划、开发、验证、发布、生命周期管理6个阶段,在此基础上,IPD建立一个涵盖了流程概览、阶段流程、子流程和模板的分层结构框架,对涉及到的产品开发活动进行合理的结构化。CMMI把流程分解为一个个关键过程域(KPA),是相对离散地来定义流程的,这决定了在CMMI体系下,产品开发流程的结构化不够。
4、 管理的范围不一样
IPD需要对所有的产品开发活动进行管理,横向上涉及市场、设计、测试、试制、制造、采购、服务、销售、财务各功能部门在产品开发中的活动,纵向上涉及决策、管理、执行三个层面。而CMMI主要是面向研发部门的活动,如软件开发、系统集成、项目管理等。对于软硬件相结合的高科技产品而言,软件开发的工作量往往占整个开发工作量的50-60%,而硬件开发又可能占到15-20%,所以CMM可以管到50-60%的开发活动,而CMMI可以管到65-80%的开发活动。
5、 关注重点不一样
IPD不仅关注把事情做正确(do the things right),同时也关注做正确的事情(do the right things),所以IPD既强调执行的重要,也强调决策的重要。CMMI主要关注执行,即把事情做正确(do the things right),而且CMMI对如何执行好开发活动要求更规范、更细。
6、 人员管理不一样
IPD包括了对团队和个人的考评,如对集成组合管理团队(IPMT)和产品开发团队(PDT)的评估。
CMMI则不包括人员管理的内容。当然,SEI开发了主要针对软件开发人力资源管理的P-CMM。
尽管IPD与CMMI有较多的不同,但就对具体流程和活动进行管理而言,两者所依据的原则、方法和实践是相通的和一致的。所以在优化产品开发体系时,可以考虑将两者融合,实施IPD+CMMI的解决方案。国内一些企业如许继电气、优特科技、康家集团等部分企业在融合IPD和CMMI方面已经取得了成功的经验
在这里指的IPD并非CMMI-IPD.CMMI只是解决一项目的问题,IPD是由IBM结合实践经验总结出来的一种基于产品的研发管理思想,至于了不了解CMMI,我想1楼的兄弟,你根本就没有资格评价任何人,能说出这种狂言的人,我觉得没必要和你争论什么.我只是说出一些个人的理解而已.我想这里面了解IPD的人不知道多不多,但如果要说到改进的话,IPD的框架是远远大于CMMI结构的.IPD是基于市场的产品规划,要求将产品作为一项投资来考虑.但CMMI并没有这样必须的要求.CMMI里是有集成开发的一项.但是他并非系统地解决集成开发的问题,而只是为了集成开发而集成开发.
但过程改进不分模型,只要是能够体现出价值的改进,我觉得都是有效的改进.我接触过不少CMMI和IPD的咨询师和评估师,两者的观点是完全不一样的.这可能跟人有关,当然也有很不错的人.在大多数人里面.IPD看的面确实要比CMMI咨询师看的面更广一些.可能是中国大多数CMMI咨询最终目标就是为了评估吧.所以范围就只是CMMI标准而已.但CMMI标准是有局限性的.因此我们在实施过程改进的时候,一定要终合多方面的经验,才能系统地解决问题.改进是没有局限的.因此模型只是过程改进的一个小框框而已,具体实施改进的过程中,要达到哪些目标,解决哪里问题才是我们真正需要考虑的问题
产品的研发一定是要基于市场,注意,在这里我用的是产品.而并非项目.
希望大家不要将产品和项目理解错了.怎么样来规划产品.这是CMMI比较缺少的地方.
我们先来看看IPD的核心思想:
二、IPD核心思想和框架 IPD作为先进的产品开发理念,其核心思想概括如下:
a) 新产品开发是一项投资决策。IPD< SPAN style="COLOR: black; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">强调要对产品开发进行有效的投资组合分析,并在开发过程设置检查点,通过阶段性评审来决定项目是继续、暂停、种植还是改变方向。
b) 基于市场的开发。IPD强调产品创新一定是基于市场需求和竞争分析的创新。为此,IPD把正确定义产品概念、市场需求作为流程的第一步,开始就把事情做正确。
c) 跨部门、跨系统的协同。采用跨部门的产品开发团队(PDT:Product Development Team),通过有效的沟通、协调以及决策,达到尽快将产品推向市场的目的。
d) 异步开发模式,也称并行工程。就是通过严密的计划、准确的接口设计,把原来的许多后续活动提前进行,这样可以缩短产品上市时间。
e) 重用性。采用公用构建模块(CBB:Common Building Block)提高产品开发的效率。
f) 结构化的流程。产品开发项目的相对不确定性,要求开发流程在非结构化与过于结构化之间找到平衡。
IPD框架是IPD的精髓,它集成了代表业界最佳实践的诸多要素。具体包括异步开发与共用基础模块、跨部门团队、项目和管道管理、结构化流程、客户需求分析($ APPEALS)、优化投资组合和衡量标准共七个方面
回复Comments
{commenttime}{commentauthor}
{CommentUrl}
{commentcontent}