查看: 4480|回复: 7

[转载] 巧破软件测试缺陷管理之痛

[复制链接]
招聘 : c/c++研发
论坛徽章:
54
月度论坛发贴之星
日期:2008-06-01 02:15:49复活蛋
日期:2012-06-08 19:50:342011新春纪念徽章
日期:2011-02-18 11:43:32ITPUB元老
日期:2010-11-12 21:49:50奥运会纪念徽章:皮划艇激流回旋
日期:2008-06-20 20:10:53奥运会纪念徽章:摔跤
日期:2008-06-19 20:50:06奥运会纪念徽章:射箭
日期:2008-06-15 10:10:10奥运会纪念徽章:马术
日期:2008-06-14 10:06:29奥运会纪念徽章:帆船
日期:2008-06-12 18:00:03奥运会纪念徽章:柔道
日期:2008-06-12 17:58:23
发表于 2008-5-31 21:55 | 显示全部楼层 |阅读模式
2008-05-30 来源:网络转载

人世间最痛苦的事莫过于——我所在项目开发正陷于混乱不堪的缺陷之中。因为缺乏一套缺陷管理的有效解决方案,使程序的缺陷无法回溯,无法跟踪,解决没解决不清楚,整一个就是一片模糊。
由于没有得到足够的重视,软件缺陷管理处于失控状态。软件测试人员报告的缺陷常常被遗忘掉;或没有人知道在新的软件版本里究竟纠正了哪些缺陷,还有哪些缺陷未被纠正。更重要的是纠正过程是否引入了新的缺陷也没有人知道,再或者就是缺陷报告书写不规范,使得开发人员不得不一次次找到测试人员来面谈,还有许多无效的文档使缺陷状态混乱,相关人员无法及时获得有关的变更信息。
什么是开发的缺陷管理?
软件中的缺陷(Defect或BUG)是软件开发过程中的“副产品”。通常,缺陷会导致软件产品在某种程度上不能满足用户的需要。每一个软件开发团队都必须知道如何妥善处理软件中的缺陷,这关系到软件生存、发展的质量根本。可遗憾的是,并非所有的软件开发团队都知道如何有效地管理软件中的缺陷。
软件缺陷管理是在软件生命周期中为确保缺陷被跟踪和管理所进行的活动。狭义地讲,BUG是写程序过程中造成的错误。广义地讲,BUG是影响客户正常使用的任何问题。就是说,BUG不仅仅是编程中出现的问题,还包括客户需求和功能规范等方面。
(1)缺陷管理的目标
一般而言,缺陷的跟踪和管理需要达到以下两个目标:一是确保每个被发现的缺陷都能够被解决,二是收集缺陷数据并根据缺陷趋势曲线识别和预防缺陷的频繁发生。
在谈到缺陷管理时,一般人都会只想到如何修正缺陷,而对根据缺陷分析进行有效预防缺陷却很容易忽视。其实,在一个运行良好的项目开发中,缺陷数据的收集和分析是很重要的,从缺陷数据中可以得到很多与软件质量相关的数据。例如通过缺陷趋势曲线来确定测试过程是否结束是常用并且较为有效的一种方式。常见的的缺陷数据统计图表包括缺陷趋势图、缺陷分布图、缺陷及时处理情况统计表等。
(2)缺陷管理重在预防缺陷
正如我们所知,BUG应该尽早地在开发过程中被发现。修正处于开发阶段的BUG的成本远远低于修正处于验收阶段的BUG,而相对与修正已经发布给客户的产品BUG的成本更是可以忽略不计。因此,越晚修正BUG,需要重做的事情就越多。
对很多人来说,零缺陷的软件产品似乎是不切实际的。因此,我们总是听到许多软件开发人员说:“软件永远有BUG”。软件产品含有BUG并不奇怪,不幸的是发布一个包含很多BUG的产品给客户仍然不让人感到惊讶,这就是一件值提深思的事情了。
事实上,每个软件开发团队都可以通过一些简单的方法,在不增加额外资源的情况下预防BUG。为了能够预防BUG,我们首先需要了解BUG的来源。软件BUG可以分为几个类别:第一类BUG可能是随机的,它们通常是因为一时的疏忽造成的。尽管这些BUG可能由于其随机性很难预防。但是,适当的分析将有助于避免这些BUG。另一类的BUG来自于需求误解、开发环境的错误或者纯粹由于缺乏解决问题的相关技术,这类BUG共同的特点是都来自于开发人员。
但有一个好消息是,软件中的BUG往往倾向于重复出现,即使是一个随机出现的BUG。软件BUG的不断出现不仅表现在同一个开发人员的工作上,而且表现在同一个项目上。这当然不是说项目中的每一个开发人员都会犯同样的错误。但是,至少其中一些的错误足以成为经常性出现的问题。因此,BUG的预防尤为重要。
缺陷管理的核心:缺陷分析
缺陷预防的着眼点在于缺陷的共性原因(Common Cause)。通过寻找、分析和处理缺陷的共性原因,实现缺陷预防。BUG预防并不是一个不切实际的目标,但是不能期望它在一夜之间发生。我们在开发过程中应该积极为开发小组提供缺陷分析,使BUG逐渐改善。因此,缺陷管理的最终目标是预防BUG,不断提高整个开发团队的技能和实践经验,而不只是修正它们。
BUG预防策略非常简单和容易实现,策略是发现BUG,找出BUG的根源,然后寻找一个方法来预防类似的BUG在将来出现。这策略并不需要昂贵的花费,但是却可带来极大的额外价值。
(1)BUG记录
BUG分析的第一步是记录BUG,值得注意的是记录BUG不应该满足于记录BUG的表面症状。测试的一个重要职责就是试图发现BUG的根本原因,在测试时不应将产品看作一个黑盒,而应该像开发人员那样了解产品的内在,包括深入源代码,理解产品的设计和实现。
(2)利用BUG分析了解开发质量趋势
对于测试出来的BUG进行缺陷分类,找出那些关键的缺陷类型,进一步分析其产生的根源,从而针对性的制定改进措施。缺陷分析非常关键的一步就是寻找一个预防类似缺陷再次发生的方法。这一方法不仅涉及到开发、测试人员,还涉及到不直接负责代码编写的资深开发人员。利用这一阶段的实践成果,开发人员可以预防BUG的发生,而不仅仅是修正这些BUG。
BUG预防分析是整个BUG分析过程的核心。这一阶段总结出的实践可以在更广泛的范围内预防潜在的缺陷。由于分析结果的广泛应用性,分析某个具体BUG的投入将很容易被收回。在这个时候,BUG分析提供了两个非常重要的参数,一个是缺陷数量的趋势,另一个是缺陷修复的趋势。缺陷趋势就是将每月新生成的缺陷数、每月被解决的缺陷数和每月遗留的缺陷数标成一个趋势图表。
一般在项目的开始阶段发现缺陷数曲线会呈上升趋势,到项目中后期被修复缺陷数曲线会趋于上升,而发现缺陷数曲线应总体趋于下降。同时处于OPEN状态的缺陷也应该总体呈下降趋势,到项目最后,三条曲线都趋向于零。项目经理可通过持续观察这张图表,确保项目开发健康发展。同时,通过分析预测项目测试缺陷趋于零的时间,以制定产品质量验收和发布的时间。
实际上,BUG分析图表会告诉我们很多有价值的信息。比如说,可分析开发和测试在人力资源的配比上是否恰当,可以分析出某个严重的缺陷所造成的项目质量的波动。对于异常的波动,如本来应该越测试越收敛的,却到了某个点发现的故障数反而呈上升趋势,那么意味着往往有一些特殊事件的发生。通过对测试缺陷分析,能够给予我们很多改进研发和测试工作的信息。

[ 本帖最后由 randoming 于 2008-6-10 19:43 编辑 ]
论坛徽章:
548
金牌徽章
日期:2008-09-04 11:32:50金牌徽章
日期:2012-08-15 14:07:24金牌徽章
日期:2012-08-15 14:48:00银牌徽章
日期:2012-08-21 14:55:12银牌徽章
日期:2012-08-15 13:40:21铜牌徽章
日期:2012-08-15 14:07:242012欧洲杯之星
日期:2012-07-02 14:16:292012欧洲杯之星
日期:2012-08-15 14:48:002012欧洲杯之星
日期:2012-06-25 16:51:11NBA之星
日期:2010-04-15 14:14:34
发表于 2008-6-1 18:04 | 显示全部楼层
哇,又有新贴了。坐SF慢慢看

使用道具 举报

回复
招聘 : c/c++研发
论坛徽章:
54
月度论坛发贴之星
日期:2008-06-01 02:15:49复活蛋
日期:2012-06-08 19:50:342011新春纪念徽章
日期:2011-02-18 11:43:32ITPUB元老
日期:2010-11-12 21:49:50奥运会纪念徽章:皮划艇激流回旋
日期:2008-06-20 20:10:53奥运会纪念徽章:摔跤
日期:2008-06-19 20:50:06奥运会纪念徽章:射箭
日期:2008-06-15 10:10:10奥运会纪念徽章:马术
日期:2008-06-14 10:06:29奥运会纪念徽章:帆船
日期:2008-06-12 18:00:03奥运会纪念徽章:柔道
日期:2008-06-12 17:58:23
 楼主| 发表于 2008-6-10 19:44 | 显示全部楼层
其实不能把测试单存的看成是测试。。 是项目过程中一个非常重要的部分
如果大家都这样看的话 也许会有更多的人关注测试区。

使用道具 举报

回复
论坛徽章:
308
世界杯纪念徽章
日期:2014-07-14 11:31:46菠菜明灯
日期:2016-04-18 14:00:07NBA常规赛纪念章
日期:2016-04-18 14:04:43体育版块博采纪念徽章
日期:2016-05-20 14:17:32巴塞罗那
日期:2016-05-31 13:37:41欧洲冠军杯纪念徽章
日期:2016-05-31 13:42:29NBA季后赛之星
日期:2016-06-24 10:28:06NBA季后赛大富翁
日期:2016-06-24 10:29:08NBA季后赛纪念徽章
日期:2016-06-24 10:30:41指数菠菜纪念章
日期:2016-07-04 17:43:29
发表于 2008-6-14 13:41 | 显示全部楼层
测试新手,学习中.

使用道具 举报

回复
认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2009-10-8 16:57 | 显示全部楼层
有工具,好办事

使用道具 举报

回复
论坛徽章:
113
生肖徽章2007版:羊
日期:2011-10-11 10:20:29生肖徽章2007版:羊
日期:2011-10-11 10:20:29生肖徽章2007版:羊
日期:2011-10-11 10:20:29生肖徽章2007版:羊
日期:2011-10-11 10:20:29生肖徽章:猴
日期:2007-04-10 01:23:40生肖徽章:虎
日期:2011-10-11 10:20:29生肖徽章:羊
日期:2007-08-12 22:22:56生肖徽章:兔
日期:2007-08-15 17:25:14生肖徽章:虎
日期:2011-10-11 10:20:29生肖徽章:虎
日期:2007-09-24 07:24:16
发表于 2009-10-16 16:02 | 显示全部楼层
hehe

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2009-11-07 16:36:04
发表于 2009-10-16 23:48 | 显示全部楼层
学习一下

使用道具 举报

回复
认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2015-3-1 18:18 | 显示全部楼层
good job

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表