关闭

怎样进行软件过程改进

发表于:2010-11-18 14:41

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

 作者:ITPUB_PMSpace    来源:51Testing软件测试网采编

  有人认为,如果一个软件机构在五个开发人员以下,以及开发周期短于六个月,进行基于SW-CMM的软件过程改进是不划算的。写这篇文章的一个目的,就是帮助人力财力不那么雄厚的中小型企业进行软件过程改进,让他们能少花钱,少花时间,并且显著得益。无论人数多少,开发周期多短,改进必得益!

  笔者在“SW-CMM与中国”一文中己提出了对在中国软件产业中应用CMM的一些建议。

  只要一个软件企业在开发产品,它就一定有一个软件过程(可能只是没有写下来)。如果这个过程不能很好地适应开发工作的要求,就需要进行软件过程改进。

  软件过程改进并不是一件很困难的事。并没有写一个操作系统,或设计一个微处理器那样的纯技术上的难度。但它面对的是一种含有大量管理成分的工程技术。这也就是为什么不容易把它做好的原因。

  什么是“改进”?改进所涉及的几个步骤是:

  1.把要想达到的状态与目前的状态作比较,找出所有差距;

  2.决定要改变哪一些(注意,不一定是全部)差距,要改变到什么程度(可分阶段改);

  3.制定具体的行动计划;

  4.执行计划,同时在执行过程中对行动计划按情况进行调整(以最佳效果为目标);

  5.总结这一轮改进的经验,开始下一轮改进。   下面讨论,在进行软件过程改进时,上述五个步骤中的关键内容。

  “要想达到的状态”(目标状态):具体是指软件过程的状态。如果一个机构决定采用SW-CMM来作参考篮本的话,就可以基于它的各个关键过程域(KPA ),制定出符合自己机构及产品特点的目标状态。(在这里,笔者强调“基于”及“符合自己特点”,意思就是不能照抄。)

  “目前的状态”:要找出什么是目前的状态,就.要进行对目前软件过程的评估。评估的方法很多,最简单的就是一组熟悉本机构的日常开发运作的人员在一起讨论,把它列出来。在这里,可借助SW-CMM的评估问卷办法。实质上,评估问卷中的问题,就是把各关键过程域的各细则内容,加上“有没有做到”、“有没有建立”、“有没有执行”等语句而构成的,并没有什么神秘之处。   “决定要改变哪一些差距”:要从多个方面进行考虑决定。例如:“最薄弱的环节”、“最需要改进的环节”,“最易做到而又有显著收效的改进”,“有人力,财力和时间,即有条件进行”。各机构要按自己的情况作决定。

  “要改变到什么程度”:由于条件的限制,我们不可能做一切希望要做的事,或者不可能百分之百地一步实现目标。许多时候,欲速则不达,反而误了事。目标与能力,要有个平衡。

  “具体的行动计划”:“具体的”就是:

  a. 要有明确的,可以检验的目标;

  b. 要定出检验成功与否的标准;

  c. 要有具体的实施行动办法;

  d. 要指定具体执行计划的人,每人的具体责任与任务;

  e. 要指明计划的主要领导或协调者,以负责解决一切在执行中出现的问题;

  f. 要列出所采用的新技术与新工具,怎样获得它们;

  g. 要定出对新技术和新工具进行对本机构适用性改造的目标;

  h. 要有对新技术和新工具的使用进行培训的计划;

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号