关闭

软件测试也要做过程改进

发表于:2010-3-22 17:31

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

 作者:周舟 戴金龙    来源:51Testing软件测试网采编

  尽管,软件测试过程改进现在还没有得到足够的重视,但并不意味着我们不需要做这项工作。相反,它对于提高软件质量尤为重要。

  过程改进并不是IT行业专有的词汇。自从有质量活动以来,人们就开始广泛地关注过程改进。在著名的Deming循环中,过程改进甚至被赋予了举足轻重的地位。我们知道在这个循环中(即计划、实施、检查、改进循环),过程改进既是一次质量活动的终点,又是下次质量活动的原点,它起着承上启下的作用。Deming循环中过程改进的理念是如此鲜明而且深入人心,以致CMM的起草者,卡内基梅隆大学软件工程研究所直接将它作为成为CMM进行持续过程改进的基本模型。

  尽管过程改进已经不再是新的名词,然而,提出软件测试过程改进却是近些年的事情。读者不妨查阅一下IEEE、ISO、CMM或者CMMI。在这些文献中,有关软件测试过程改进的描述少之又少。那么这是不是意味着软件测试就不需要做过程改进了呢?显然不是这样。首先,测试作为质量控制的重要活动,天然属于Deming循环的应用范畴。这是因为Deming循环最初就是针对质量控制而提出的。其次,软件测试真正进入大众的视野也仅仅是近20年间的事,相关的研究工作做得都还不够。

  鉴于资料的严重缺乏,本文仅从工程实践的角度,对软件测试过程改进做一个浅显的介绍与探讨,并欢迎读者朋友来信交流。

  软件测试过程的提出

  从软件测试外包发展起来的印度软件业,测试过程改进方面值得中国企业学习

  在软件作为手工艺品产出的年代,软件过程的概念还没有萌芽,就谈不上软件测试过程了。直到人们意识到必须用工程化的手段来规范软件生产,软件过程才开始广受关注。一些激进的理论家甚至提出“软件工厂”的概念。顾名思义,这个词很形象地表达了人们对软件开发行业的一种“流程化”的愿望:即开发过程遵循一定的开发步骤,各司其职,井然有序,如同流水线作业一般完成软件产品的开发。不错,在工程思想上,它们的生产过程的确有可以类比的地方,不同的是,流水线生产的冰箱、彩电都是有形的,而软件是无形的。

  我们假想一下冰箱的生产过程,在冰箱开始组装之前,所需的所有组件都必须采购或生产出来,并且这些组件必须是严格按照要求的大小、规格、质量完成的,这样才能够组装在一起,达到相应的功能和性能指标。如果冰箱的门比柜体高了2厘米或者说某个螺丝的直径小了1毫米,那么这批冰箱是不能正常使用甚至是不能销售的。

  假设冰箱质量检查的流程是这样的:明确标准(也就是知道冰箱的柜体的尺寸,冰箱门的尺寸)→验证标准(验证冰箱柜体的尺寸,冰箱门的尺寸是否匹配)→发现不符合的产品(冰箱门比柜体高了2厘米)→采取措施(更换冰箱柜体或者更换冰箱门)→重新验证(确定冰箱门与柜体的尺寸相匹配了)。

  软件测试流程与上述冰箱质量检查流程是类似的,一个较为典型的软件测试流程可以这样描述:制定测试计划→撰写测试用例→执行测试用例→记录并提交缺陷→修改缺陷→回归测试。

  把两个过程一一对应起来,得到如下映射关系:制定测试计划、撰写测试用例,也就是明确标准,类似于在生产冰箱的时候,需要根据设计图纸、生产程序,零部件样品逐一确定冰箱的零部件检验标准。执行测试用例,也就是验证标准,类似于逐一分解冰箱的零部件,逐一检查生产质量。记录并提交缺陷,也就是发现不符合的产品。这里略有不同,冰箱的零部件一旦被发现不符合标准,就可能被扔进废品堆,软件部件却不会因此全部都被废弃掉。所以详细的记录缺陷的操作步骤、便于开发人员进行缺陷修复是很有必要的。修改缺陷,类似于冰箱生产过程中发现问题后采取措施,可能是图纸设计的时候尺寸标注错误,也可能试生产系统参数设置的错误,还可能是工人操作不当,总之真正的原因是一定要被找到的。回归测试,类似于冰箱返工后的重新验证,一般找到不符合标准的零件原因后,冰箱除更换相关零部件还需经过二次检测。软件产品也是这样,修正缺陷后仍需进行回归测试。

  软件测试过程改进

  乍一看,软件测试过程非常简单,读者或许会问,对这样一个简单的过程,有必要进行过程改进吗?回答是肯定的。请看下面这样一个工程经验公式: 质量控制=技术+管理+过程。

  其中,测试技术解决了测试采用的方法和技术问题,测试管理保证各项测试活动的顺利开展。然而,对于一个工程而言,过程也就是生命周期,也会至关重要地影响着生产效率和软件质量。软件测试的过程改进,主要着眼于合理调整各项测试活动的时序关系,优化各项测试活动的资源配置以及实现各项测试活动效果的最优化。

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号