基于审查的软件过程改进

Coral ·
更新时间:2024-09-21
· 910 次阅读

  1、问题的提出

  随着信息技术的快速发展,软件产业的地位越来越重要,如何提高软件产业的生产率和软件的质量成为软件组织关心的共同话题。软件工程管理是提高软件企业竞争力的一个非常有效的手段,是软件产业的一项基本功,一个成熟的软件企业必须重视软件工程管理,目前我国的软件企业和开发人员开始普遍重视软件工程管理实践。对基于-UU的软件过程改进热,是一个很好的证明。cmm是一个软件过程改进的框架,可以逐步的帮助企业提高他们的软件过程,但cmm有两个缺点,首先它主要面向大型软件企业,而且投资率很高。而中国绝大部分软件企业均属小型企业,,65%以上的公司员工少于人,建立的时间少于?年,缺乏足够的资金快速增长,组织和管理及生产率水平都较低,并且产品的质量无法保证。因此我国的软件企业在实施过程改进时,必须研究如何选择适合自己企业的改进策略,而不应该盲目的追求某种认证热潮。

  2、软件过程改进

  Harrington把过程改进定义为一个系统的方法,它能帮助商业简单化和线性化操作过程。Harrington说,过程提高的目标

  是确保商业过程消除错误,减少拖延,促进理解,易于使用,客户友好,易适应,增强竞争力,减少资源的使用。因此,Harrington说过程的提高是一种消除缺陷的行为,目的是提高生产力,缩短交付时间,增强产品的竞争能力,提高客户的满意度,小化组织资源的使用。spi(P软件过程改进)是指为了提高软件企业生产率,增强质量,缩短循环周期,降低成本,增加产品的可移植性和市场竞争力,对软件过程度量并改变软件管理和开发过程及操作的学科。当前国际上已存在多种较成熟的软件过程改进策略,普遍流行的spi策略如pso、tsp、审查、测试cmm和iso9000,并得到广泛使用。

  3、软件审查

  软件审早是在1972年由IBM公司提出的,主要的目标是在软件工程过程的早期帮助开发人员发现错误并改正错误,从而达到提高开发过程的质量和效率。它由以下六个主要的子过程组成:

  (1)计划:判定让团队进行评估的开发过程中产生的软件产品是否准备好,并计划团队的评估工作。

  (2)概括:为了以后的评估,让团队对软件产品有一个总体认识。

  (3)准备:团队成员个人检查软件产品并进行评估。

  (4)会议:引导团队评估软件产品并确定缺陷。

  (5)修改:修改软件产品中由团队审查出的缺陷。

  (6)复审:确定缺陷是否被修改了并且确保软件产品被审查。

  审查的参与人员有以下四类:

  (1)审查:负责领导审查小组迅速地并有效地得到成功的结论。

  (2)生产者:负责生产被审查的软件产品的人员。

  (3)审查者:审查软件产品的人员。

  (4)记录员:记录有意义的审查结果。

  审查的原则有以下六个:

  (1)审查是一个正式的结构化的过程,它规定了检查列表以及参与者的角色,它提供了一种在组织中实现软件工程标准的方式。

  (2)对于每一种审查类型都有检查列表和标准,对于特定的项目可以对这些表进行裁减。这些审查列表覆盖了审查过程的各阶段的标准。

  (3)在审查开始之前必须做准备,了解要审查的产品并且准备好要提的问题。

  (4)审查关心的是发现问题,而不是解决问题。这一点和第三点结合起来保证了审查不会浪费很多时间。

  (5)审查是由技术人员倡导对技术人员的工作审查,管理者不参与,但要告知他们发现的问题和被解决的时间。

  (6)审查的数据要进入过程数据库,既用来管理审查的有效性又可用来追踪管理产品的质量。这些数据帮助管理者对软件和过程进行度量与分析,软件审查过程的度量分别回答这些问题:审查的代价是多少?审查花费的时间是多少?被审查的软件的质量如何?员工对审查过程的遵循到什么程度?审查的状态如何?审查的有效性如何?审查的生产率如何?软件审查过程度量用来支持软件过程的提高。

  所以fagan认为,软件的审查过程有着明确的目标,它是一个精确定义的,逐步的,并且受时间约束的过程。

  4、审查的投资回报率分析

  ROI是对投资回报以货币的形式进行量化的一种方法。这种方法通过比较成本和收益,度量和成本相关的收益,用已用的资产除以净收入而得到的一个实际值被称为ROI。phillips提供了一种非常简单的模型去估计roi,并给出了用专业的方式使用这些简单的方程的完整过程。

  在对几种软件改进策略进行投资回报率分析时,主要考虑以下因素:培训代价,实现代价,总体生存周期的收益。下面以一个四人的小组为例,分别从上面三个方面进行考察,并且根据上面给出的两个模型进行计算。

  5、结论

  软件企业在实施过程改进时,有几个问题值得注意:首先应了解,企业应结合自身情况和需要选择,不必局限在少数几种,必须根据自己的实际情况,建立适合自己的过程,这里特别强调“自己的过程”,其次考虑改进的成本效益问题。中国的许多中小规模的软件企业由于对项目的管理水平的低下,在生产的过程中很少进行检查,而且许多公司根本没有文档,或文档质量很低。所以首要的任务是首先保证文档的产生以及文档的质量。其次要考虑选择改进策略的成本问题。因为很多软件公司的资金短缺,所以在过程改进时,要考虑线面的问题:用少的成本产生高的效益,选用代价较低,风险较低,并能尽早回收的改进策略。避免使用实现成本太高以及培训成本太高的策略。而且审查也是许多软件过程改进策略的基石,如缺陷预防等。综上,我们可以认为审查对中国的大多数软件企业来说不失为一种较好的改进策略。

  但是公司在实行审查的过程中必须明白,审查并不能解决所有的问题,审查不是一个魔术师,它不能替代测试,但是所有的软件组织都应该使用审查,对于软件工作的重要方面,主要是需求,设计,实现,测试,维护以及相关文档都要进行审查。第二点要注意审查需要文化氛围的改变和承诺的责任。



软件过程 软件

需要 登录 后方可回复, 如果你还没有账号请 注册新账号