关闭

关于软件过程改进的论述

发表于:2011-9-19 10:27

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Vansin.Zhang    来源:51Testing软件测试网采编

  “阻碍企业发展的瓶颈问题通常不是技术问题,而是杂乱无章的管理。”林锐老师的理论体系中,看到这句话和有关于在企业中进行过程改进的论述,颇有启发。在此也根据林锐老师的论述对软件过程改进的问题加以突出强调。

  1、提高软件过程能力的实践

  现公司管理软件过程的能力比较弱,常常导致项目处于混乱状态。过程混乱,即便是使用最新的技术和工具,其优势难以体现。

  软件过程改进是软件工程学的一个主要研究方向,其中CMM/CMMI是该领域举世瞩目的重大成果。

  CMM/CMMI是世界范围内用于衡量软件过程能力的标准。但是人们往往搞不清楚“软件过程改进”和“CMMI等级评估”之间的关系,经常混为一谈。软件过程改进其真正的目的是提高公司的软件过程能力,而不是为了达到CMMI某个等级标准。就打个比方:

  把“软件过程改进”比喻为“学英语,提高英语能力”,那么“CMM/CMMI等级评估”就好比是“英语等级考试”。一般情况下,英语等级考试的成绩反映了英语能力。但是大多数情况下,英语考试成绩很好的并不见得英语能力就很好,可能是“哑巴英语”的程度极高。这种“特性”传染到软件领域:不少企业虽然通过了高级别的CMM/CMMI等级评估,但是其实际的软件过程能力却未必很高。

  那么到底CMM/CMMI到底是什么呢?

  CMM/CMMI是世界范围内用于衡量软件过程能力的标准,但是CMM/CMMI不是软件过程改进的执行标准,不可能存在适合所有企业的执行标准。

  就像“英语四六级考试”是所有中国大学都认同的评估大学生英语能力的标准,但是“英语四六级考试大纲”绝对不是“学好英语的标准”。

  所以,我们不能把CMM/CMMI直接作为公司的软件过程规范,主要原因是:

  CMM/CMMI内容之广,之深。其论述了数十个过程域和数百条关键实践,但是这些“过程域和实践”不能与“企业的具体业务和组织结构”很好的衔接起来。

  有些企业死搬硬套CMM/CMMI标准,甚至按照CMM/CMMI逐个执行其中的过程域和实践,这种方式看来可笑:就如同给一个病人治病一样,还没有考虑病人到底需要吃什么药,就把药店里的药逐个吃一遍,就以为能治好病了。

  那究竟该如何应用CMM\CMMI呢?

  根据公司的实际情况,既要裁剪CMM/CMMI中的一些过程域和实践,又要补充CMM/CMMI中没有涉及的过程域和实践。公司领导和软件过程改进人员必须要明白:公司需要的是一个既符合商业目标,又容易执行的软件过程规范。

  裁剪:要分析企业的业务特征,根据自身的人力和财力,选取CMMI中一些重要的东西,舍弃一些不重要的东西。至于什么是“重要的东西”,就要看它对公司的作用多大来衡量了。

  补充:比如,CMM/CMMI对于软件开发和管理过程的论述很深,但却没有涉及“商务过程”,例如没有谈及立项管理、售前服务、售后服务等。这是CMM/CMMI的不足之处。因为企业开发产品的最终目的是把产品给卖出去,赚取利润。如果软件过程规范中不考虑这些因素的话,就会导致开发团队“闭门造车”,从而开发出“在技术上是很好的产品,但却是商业上的失败产品”。

  2、对软件过程改进的建议

  A)各级领导必须“亲自参与”,不能“口头支持”

  过程改进不是“办家家”,是需要投入很大的人力和物力去做的。软件研发管理过程中所涉及的人员都应该熟悉过程规范,并掌握其技能。公司中存在这样的现象:当给企业员工培训过程规范的时候,各级经理、领导总是有各种理由不参加培训。而真正在项目中执行新的过程规范时候,各级经理自己却不懂过程规范,仍然按照他以前的方式进行管理,让下属不知该信哪个的,该听哪个的。

  各级领导的主要职责是“带领团队完成预定目标”,他们要“亲自参与”过程改进,才能深刻体会过程的要点,掌握研发管理的方法技能。“亲自参与”体现在:参与分析问题,商议改进对策;参与制定和自己工作相关的过程规范;参与评审;参加培训学习等等。

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号