定制论文·联系客服·网站地图·收藏本页·设为首页
软件工程当前位置:中国论文库 > 计算机论文 > 软件工程> 正文

软件过程改进关键步骤研究

时间:2011-11-30作者:来源:中国论文库
字号:T|T

  王 易,骆 华,范恩魁摘 要:软件的过程改进是一项长期系统的工程,急于求成必将导致失败。没有目标步骤地进行过程改进,只会浪费时间和增加项目的成本而不会取的很好的效果。如果我们把

  王 易,骆 华,范恩魁摘 要:软件的过程改进是一项长期系统的工程,急于求成必将导致失败。没有目标步骤地进行过程改进,只会浪费时间和增加项目的成本而不会取的很好的效果。如果我们把软件过程改进看做一个系统的工程项目,像其他项目一样,对它做详细的规划,确定项目改进的目标范围、按照一定的改进战略和具体的实施步骤进行,这样必将取得良好的效果。对软件的过程改进关键步骤方面进行研究。

  关键词:软件过程改进;关键步骤

  0 引言

  软件过程为一个为建造高质量软件所需完成的任务的框架,即形成软件产品的一系列步骤,包括中间产品、资源、角色及过程中采取的方法、工具等。在日常的软件过程改进开发中,如果这个过程不能很好地适应开发工作的要求,就需要进行软件过程改进。软件过程改进并没有像写一个操作系统或者一个微处理器那样的纯技术上的难度,但是它是基于许多微小而逐渐发展的步骤,而不是革命性的革新,更多的是一种含有管理成分的工程技术,这也就是不容易把它做好的原因。要做好软件过程改进可以按照如下几个关键步骤进行。

  1 分析出目前的状态和要改进的目标状态之间的差距  “目前的状态”:要找出什么是目前的状态,存在的问题,就要进行对目前软件过程的评估。比如目前状态存在如下问题:①需求的跟踪不到位,需求的变更没有被跟踪;

  ②在测试的时候代码不符合规约的描述;③产品的管理方针不明确,目标经常变化;④软件变更的状态不明确;⑤分配用于软件设计的资源和技能匮乏;⑥测试计划中没有包括与客户相关的内容等。总之,评估的方法很多,最简单的就是一组熟悉本机构的日常开发运作的人员在一起讨论,把它列出来。也可借助SW-CMM的评估问卷办法。

  实质上,评估问卷中的问题,就是把各关键过程域的各细则内容,加上“有没有做到”、“有没有建立”、“有没有执行”等语句而构成的。

  “要想达到的状态”(目标状态):具体是指软件过程的状态。如果一个机构决定采用SW-CMM来作参考篮本的话,就可以基于它的各个关键过程域(KPA),制定出符合自己机构及产品特点的目标状态。“决定要改变哪一些差距”:要从多个方面进行考虑决定。例如:“最薄弱的环节”、“最需要改进的环节”,“最易做到而又有显著收效的改进”,“有人力,财力和时间,即有条件进行”。各机构要按自己的情况作决定。

  2 选定改进范围

  找出所有差距之后,需要做的就是确定改进的范围,对范围的定义不够明确,做不到可量化、可验证程度。很多时候都是一些定性的要求、而不是定量的,例如“界面友好,可操作性强,提高用户满意度”等。类似这些模糊的需求就是导致后续项目扯皮的根源。项目范围的明确定义,有经验的项目经理及系统分析员将起到至关重要的作用。

  可以从如下几个方面来对项目的范围进行改进:①确定计划的责任权;②陈述主要的目标和问题;③将问题分组关联到相应的目标;④确认目标和问题足够明确和引人注目;⑤设定目标的优先权;⑥导出针对目标的度量标准。

  总之,完善的项目范围管理是整个项目最终成败的关键。持续的改进很重要,但频繁的改进会不利于过程的执行,所以我们在改进之前一定要先确定好范围,避免跌入永无止境的改进之中。

  3 制定改进计划

  为一个过程改进活动选定范围和制定计划是一件很难的工作,会遇到很多障碍。如果想要全盘采用过程改进框架,任务会变得令人畏缩;可以从比较关键的如下几个方面进行改进计划的制定:①成立过程改进小组即软件工程过程组,派专人负责整个过程改进;②根据背景及业务分析、项目分析、内部因素、产品特点进行现有软件过程的评估;③根据评估给出详细的软件过程改进建议;④根据软件过程改进建议转化为行动。整个行动由过程改进小组SEPG负责监控、跟踪;⑤实施软件过程改进,并同时密切监控改进过程。有问题立刻解决;⑥对实施的过程改进进行评估;⑦对成功实施的软件过程制度化。

  制定计划很重要,计划制定的是否合理、工作量、难度是否适中,都直接会影响我们过程改进的成败。

  4 实施改进计划

  你已经花费了一些时间计划过程改进活动,现在要将计划的内容付诸实践。要实施你的计划,在感觉上会有些不堪重负。包括建立和部署解决方案,坚定你的想法并且克服阻力。我们实施改进的过程中可以考虑从如下几个方面进行:①优先处理期望的和必需的工作;②持续强调目标和问题;③协调管理人员和实践者的行为。在执行过程中,一旦发现需要对改进计划进行调整,以期达到最佳的效果,而实际情况也允许在中途进行调整的话,可以进行经过计划的、严加控制的调整。所有的改变必须预先取得所有有关人员的同意。

  5 检查改进计划进展

  在实施了改进计划之后,需要做的就是检查改进计划的进展,跟踪进展使你能够了解到改进活动的进行状况,提供对改进活动的可见度从而及早检测出问题,并且给出数据使得未来计划更有效。矫正行动包括一系列中途的变更,其根据来自于“目标规划和实施”阶段的结果教训。

  矫正行动包括:修订行动计划从而达到未实现的目标,修订曾在规划阶段使用的规划方法,改换在实施阶段培养和部署新技能的办法,根据新的优先级重新排列改进活动的内容,或修订用来监测进展状况的度量标准。从以下几个方面可以对进度进展进行检查:①是否针对目标取得进展;②是否针对改进计划取得进展;③是否针对改进框架取得进展;④迄今得到那些经验教训。检查进展是一项很重要的活动,在过程改进活动执行进程中为机构提供反馈。基于业务目标制定的度量标准是有助于获得考察进展和指导改进活动的基本信息。

  6 总结本轮改进经验

  软件过程改进的最后一步是:“认真总结本轮改进的经验和教训,能使我们在下一轮改进中更加出色”。在软件过程改进中,最重要的一点是要注重执行,千万不能制定出计划之后就将其丢进抽屉中,束之高阁。总之,软件过程改进是为了取得实效,而非单纯为了改进而改进。

转贴于中国论文库 http://www.lwkoo.com

    相关阅读

    推荐论文

    热门

    最新

    推荐