您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 第1章 研发管理和过程改进的概念
集成化软件研发流程IDP5.0IntegratedDevelopmentProcesses第1章研发管理和过程改进的概念上海漫索计算机科技有限公司章研发管理和过程改进的概念·2·1.1研发管理的概念...........................................................................................................31.2过程改进的概念...........................................................................................................41.2.1什么是过程?为什么要重视过程?.........................................................41.2.2什么是过程改进?企业为什么需要过程改进?..................................51.2.3软件过程改进和CMMI之间的关系........................................................61.2.4有了CMMI为什么还要研制企业的过程规范?.................................71.2.5如何应用CMMI?.........................................................................................71.3过程改进的实施建议...................................................................................................81.3.1各级领导“亲身参与”而非“口头支持”...........................................81.3.2制定“合适”而非“大而全”的过程规范...........................................81.3.3不要迷信所谓的标准....................................................................................91.3.4“引导推行”而非“强硬推行”.............................................................91.3.5写好必要的文档...........................................................................................111.4研发管理的过程改进方法..........................................................................................121.1研发管理的概念·3·1.1研发管理的概念企业的根本目标是“合法地赚取尽可能多的利润,使企业整体利益最大化”。企业所有的特定目标和行动(例如研发、营销等)都是围绕根本目标开展的,不能和根本目标抵触。企业研发管理的指导思想是:关注结果,重视过程。“关注结果”是指:以最终产品获得的经济效益来衡量研发业绩,追求利益最大化。“重视过程”是指:将期望的成果分解到每个过程域(即工作环节)去实现,努力把每项工作做好,从而得到好的成果。衡量研发工作优劣的三个关键指标是:质量、生产率和成本。人们在工作的时候总是希望:做得好(即质量高)、做得快(即生产率高)而且少花钱(即成本低)。如果出现三者难以同时兼得的情况,那么决策者一定要搞清楚质量、生产率、成本之间的复杂关系,判断孰重孰轻,给出优化和折中的措施。企业研发管理的目标:基本目标:让所有人员有条不紊地开展工作,在预定的时间和成本之内,开发完成质量合格的产品,从而使企业和个人获得预定的利益。奋斗目标:调动一切积极因素,努力提高产品质量、提高工作效率并且降低成本,使企业和个人获得比预定目标更多的利益。在IT企业中,软件研发管理所涉及的主要过程域有:商务过程域:合同项目和自主产品的立项管理,合同项目客户跟踪,产品优化和市场推广。项目管理过程域:项目规划与监控,风险跟踪和变更控制,结项管理。项目开发过程域:需求开发,设计,实现,测试,试用与验收等。机构支持过程域:质量管理,软件配置管理和文档管理,客户服务和维护,跨部门协作等。上述过程域中的任何活动都会影响研发项目的质量、时间和成本。人们显然难以一股脑地把所有的事情做好,需要合适的管理方法。企业里大部分工作是成熟的,有现成的模式可以套用,这类工作应当靠流程制度来管理,可比喻为“法治”。第1章研发管理和过程改进的概念·4·企业中还有一部分工作可能是独特的,并不适宜套用流程制度(也可能没有流程制度可以套用),相关人员要当机立断、高效地处理问题,可比喻为“人治”。一般地,企业既需要大量的“法治”管理方式,又需要小量的“人治”管理方式。通常前者约占60-80%,而后者约占20-40%。“法治”和“人治”结合使用是企业管理的重要手段。企业领导要关注两点:一是建立合适的流程制度(实现良好的法治);二是使用合适的人(实现良好的人治)。国内大部分IT企业的研发管理现状是:“法治”太少,混乱的“人治”太多。阻碍国内IT企业发展的瓶颈问题通常不是技术问题,而是杂乱无章的管理。1.2过程改进的概念1.2.1什么是过程?为什么要重视过程?一、什么是过程人们使用合适的方法、技术、工具才能开发出用户需要的产品。过程是指“人,方法,技术和工具”的集合,如图1-1所示。过程被写成文档后,变成了公司的“流程制度”,公司成员们依据“流程制度”开展工作,这叫“法治管理”。图1-1过程示意图二、过程与产品有什么关系?为什么要重视过程?软件产品不能靠人们的意念瞬间完成,它需要一个研发过程。一般情况下,好的过程才可能得到好的产品,而差的过程会得到差的产品。当然也有相反的情况,有些人在混乱的过程中创造了很好的产品,也有些人在严谨的过程中生产出商业上失败的产品。但这类现象不具有指导意义,本书不作讨论。人员方法技术产品工具过程1.2过程改进的概念·5·为什么要重视过程?由于公司销售的是产品而非过程,人们常常只把眼光盯在产品上,而忘了过程的重要性。例如,领导对员工们下达命令时经常强调:“我不管你们怎么做,只要时间一到你们交付产品就行。”其实这是一句因果关系颠倒了的话,却在业界普遍存在。下面的故事给出了警示:如果领导不关心员工怎么做(即做事的过程),往往会得到失望的结果。公司领导对项目经理小王说:这个软件项目对公司和客户都很重要,你们要好好干,在6个月之内完成,要让客户满意。6个月后我来看你们的成果,为你们庆功。每个月末,领导照例打电话问小王:“项目进展怎么样了?”小王每次答曰:“挺好。”6个月后,领导兴冲冲地问小王:“项目完成了吧,可以交付给客户了吧?”小王说:“还有一点东西没有完成,再给我们一个月时间,肯定能够完成。”7个月后,小王说:“出了一些小意外,我们正在解决之中,我保证下个月完成。”8个月后,小王说:“我们正在修改某些功能,还需要一个月。”9个月后,小王说:“我们正在完善某些功能,还需要一个月。”领导和小王日益焦虑,……12个月后,项目终于完成了。领导喜气洋洋地请客户来验收软件,大家都做好了庆功地准备。客户看了软件后,大吃一惊:“这不是我们想要的软件!”在12月里,公司和客户都不关心该项目的过程,都不知道软件是怎样开发的、不知道软件做成什么模样了,都等着看最后的结果。结果是,进度延误了6个月,终于开发完成了不符合客户需求的软件。项目团队疲惫不堪,公司和客户损失惨重。所以,人们既要关注结果,又要重视过程。1.2.2什么是过程改进?企业为什么需要过程改进?过程改进(ProcessImprovement)是指:根据企业的现实情况和发展需求,优化流第1章研发管理和过程改进的概念·6·程制度,努力提升人们在过程中的工作能力,从而“提升产品质量、提升生产率并降低成本”。(注:这是本书作者对过程改进的定义)“过程改进”本身就是一件消耗时间、精力和成本的事情,那么企业为什么要做“过程改进”?答案是:过程改进是企业谋求进步的需要。企业谋求进步离不开以下两点:(1)企业人士要不断学习新技术,开发新产品,开拓新业务领域。(2)企业人士要不断反省自己,总结经验教训,改正缺点、发挥优点。后者就是“过程改进”。过程改进体现了“自我反省、自我改进”的精神,不论对人生还是对企业而言,都是极为重要的。1.2.3软件过程改进和CMMI之间的关系在二十世纪七、八十年代,软件工程的研究重点是需求分析、软件设计、编程、测试、维护等领域的方法、技术和工具,我们称之为经典软件工程。应该说现代的软件技术、软件工具要比几十年前好不知道多少倍,可是如今绝大多数软件项目依然面临着质量低下、进度延误、费用超支这些老问题。人们逐渐意识到,由于机构管理软件过程的能力比较弱,常常导致项目处于混乱状态,过程混乱使得新技术、新工具的优势难以体现。经典的软件工程不是不好,而是不够用。提高软件过程能力的实践通称为软件过程改进(SoftwareProcessImprovement)。软件过程改进的目的是:提高软件质量、提高生产率并且降低开发成本。从二十世纪九十年代至今,软件过程改进成为软件工程学科的一个主流研究方向,其中CMM/CMMI是该领域举世瞩目的重大成果。CMM/CMMI是世界范围内用于衡量软件过程能力的标准。人们往往搞不清楚“软件过程改进”和“CMMI等级评估”之间的关系,经常混为一谈。本节作个比喻来解释:把“软件过程改进”比喻为“学英语,提高英语能力”,那么“CMMI等级评估”就好比是“英语等级考试”。一般情况下,英语等级考试的成绩反映了英语能力。但是,在特别擅长应试的中国,英语考试成绩很好并不见得英语能力很好,甚至差到“哑巴英语”的程度。这种“特性”传染到软件领域,不少企业虽然通过了高级别的CMMI等级评估,但是其实际的软件过程能力却非常底下。1.2过程改进的概念·7·软件过程改进的真正目的是提高机构的软件过程能力,而不是为了达到CMMI高等级。“汝果欲写诗,功夫在诗外”,这是很好的启示。1.2.4有了CMMI为什么还要研制企业的过程规范?卡内基梅隆大学软件工程研究所发布的CMMIforDevelopment1.2版本,厚达560页。既然有了全世界认同的“CMMI宝典”,企业为什么还要研制自己的软件过程规范呢?解答这个疑问,我们首先要搞清楚“CMMI是什么”以及“CMMI不是什么”。CMMI是世界范围内用于衡量软件过程能力的标准,但是CMMI不是软件过程改进的执行标准,不可能存在适合所有企业的执行标准。就如“英语四六级考试”是中国所有大学都认同的评估大学生英语能力的标准,但是“英语四六级考试大纲”绝对不是“学好英语的标准”。不能把“CMMI宝典”直接作为企业的软件过程规范,主要原因如下:CMMI的560页文本论述了二十多个过程域和数百条实践,但是这些“过程域和实践”没有与“企业的具体业务和组织结构”衔接起来。有些企业死搬硬套CMMI,竟然按照CMMI文本的逐个遍历CMMI的过程域和实践,这种方式非常迂腐可笑:如同给一个病人治病,不考虑病人需要吃什么药,却把药店里面的药逐个儿吃一遍,以为就能治好病。1.2.5如何应用CMMI?既然不能全盘套用CMMI文本,那么究竟该如何应用CMMI?应当根据企业的实际情况,既要裁剪CMMI过程域和实践,又要补充CMMI没有涉及的过程域和实践。企业领导和软件过程改进工作者必须明白:企业需要吻合商业目标、容易执
本文标题:第1章 研发管理和过程改进的概念
链接地址:https://www.777doc.com/doc-745359 .html