写点什么

Elizabeth Hendrickson 谈“缺陷传染症”

  • 2012-08-19
  • 本文字数:889 字

    阅读完需:约 3 分钟

Elizabeth Hendrickson 最近发表文章,讨论了发生在缺陷评估会议上的浪费。在她的博客 testobsessed.com ,她指出,很多公司花了很多时间和金钱在测试上,但又不真正地利用好测试结果。

就像她在她的文章中解释得那样,软件工程社区中有一个常见但错误的观点:缺陷是不可避免的,而且不是所有缺陷都需要修复的。这也就是为什么“可以根据 ROI 来决定某个缺陷要修复还是先放一放”。

她曾经工作过的两个公司都深受这种观点之害。公司没有被缺陷直接整垮,但是就像 Hendrickson 解释得那样,缺陷成为了“弥漫的传染病”,降低了生产力,也拖死了测试人员和工程师。具体表现为:

那个隐性成本侵蚀了我们的生活:在缺陷评估会议上的争吵时间;一次又一次地受已知问题影响的时间;为了一些小的变更不断地修改脆弱而且易错的代码库的时间;不断重新分类、排列待办事项列表的时间。这些花费非常让人沮丧,也是相当昂贵的!

Hendrickson 根据她的经验,给出了结论。

取消所有缺陷评估会议;花时间预防缺陷;尽早测试,多测试,从而能更早发现缺陷;一旦发现缺陷立即修复;尽早修复你的“破窗户”

很多读者评论了这篇文章,比如,Jim Gay 说道:

我的经历是某些缺陷其实表明了业务流程有问题。比如一个分析人员告诉你,你应该去做 X,于是你开发了 X,但用户质疑你为什么不做 Y。不管代码上的缺陷抑或流程缺陷都意味着你得去着手修复它们。

Gabe Newcomb 不同意 Hendrickson 的所有观点:

这暗示所有的缺陷都是值得修复的,而且修复缺陷比实现新的功能更加重要。这跟我的经验不符合。缺陷评估流程很好地回答了诸如什么时候(是否)修复一个缺陷,它和其他工作有什么关联等重要问题。你又准备怎么来回答这些问题呢?

Steve Fenton 是个程序员,他也认为所有的缺陷都应该被修复,因为:

修复缺陷所花的时间几乎总是要比容忍它所带来的无尽的循环要短,也比对客户产生的影响要值得。在会议上讨论一个历史遗留缺陷,或者碰巧一次又一次地被测试人员提出,又被程序员一次又一次地以重复缺陷为由而关闭。缺陷拖得越久,产生的成本也就非常可能比直接修复的成本要来得更高。

查看英文原文: Elizabeth Hendrickson On The Bugs Spread Disease

2012-08-19 04:071173
用户头像

发布了 114 篇内容, 共 33.0 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

全程干货,用 python 下载某站全部【免抠图片】,图片背景透明,格式PNG

梦想橡皮擦

12月日更

Spark从入门到精通

冇先生

秒过!度目智慧通行让常态化防疫更高效

百度大脑

人工智能 人脸识别

对象存储手把手教七 | 存储空间授权策略 Bucket Policy

QingStor分布式存储

分布式系统 对象存储 分布式存储 分布式,

WeTest小程序质量专项方案推出,小程序异常监控内测招募中

WeTest

如果还不懂如何使用 Consumer 接口,来公司我当面给你讲!

阿Q说代码

函数式接口 签约计划第二季 consumer 实战讲解 supplier

PackML从会到不会——标签(3)

陈的错题集

标准化 PackML

用户登录设计之双token设计

CRMEB

博文推荐|使用 Pulsar IO 打造流数据管道

Apache Pulsar

Java 开源 架构 云原生 Apache Pulsar

Flink CDC 系列 - 构建 MySQL 和 Postgres 上的 Streaming ETL

Apache Flink

大数据 flink 编程 后端 实时计算

恒源云(GPUSHARE)_GPU白嫖大法来袭!

恒源云

深度学习 gpu 算力加速

看了同事写的代码,我竟然开始默默的模仿了。。。

阿Q说代码

策略模式 多态 签约计划第二季 自定义参数解析器 统一验签

看了这么多年西游记,你可知道孙悟空是如何召唤土地公公的吗?

阿Q说代码

Java 观察者模式 签约计划第二季 事件通知机制

长连接网关技术专题(六):石墨文档单机50万WebSocket长连接架构实践

JackJiang

websocket 即时通讯 IM 网关

「Spark从精通到重新入门(一)」Spark 中不可不知的动态优化

尔达Erda

云计算 大数据 spark 开发者 感悟

Flink 是如何统一批流引擎的

编程江湖

大数据 flink

【活动报名】Apache ShardingSphere Dev Meetup 重启!

SphereEx

开源项目 开源社区 ShardingSphere Meetup SphereEx

实战篇:断点续传?文件秒传?手撸大文件上传

阿Q说代码

断点续传 签约计划第二季 文件秒传 文件分块 文件合并

高校企业双向赋能,首届飞桨启航菁英计划圆满结束

百度大脑

人工智能 百度 飞桨

后端开发实战总结 | 签约计划第二季|后端

阿Q说代码

内容合集 签约计划第二季 技术专题合集

Android技术分享| ViewPager2离屏加载,实现抖音上下视频滑动

anyRTC开发者

android 音视频 移动开发 ViewPager 视频滑动

大数据中不同文件格式的比较

吴脑的键客

大数据 云存储

语法糖甜不甜?巧用枚举实现“状态”转换限制

阿Q说代码

枚举 签约计划第二季 语法糖 订单状态转换

如何在 ShardingSphere 中开发自己的 DistSQL

SphereEx

Java 数据库 ShardingSphere database SphereEx

【量化】股市技术分析利器之TA-Lib(一)

恒生LIGHT云社区

量化投资 量化

实战篇:Security+JWT组合拳 | 附源码

阿Q说代码

spring security JWT 签约计划第二季 权限验证

还在用BeanUtils拷贝对象?MapStruct才是王者!【附源码】

阿Q说代码

Java MapStruct 签约计划第二季 深拷贝与浅拷贝

『上线』OpenSEC SIGs 终于成立了!

SphereEx

开源社区 ShardingSphere SphereEx 中文开源 OpenSEC

看FusionInsight Spark如何支持JDBCServer的多实例特性

华为云开发者联盟

大数据 SQL语句 FusionInsight Spark JDBCServer 多实例

Linux学习方法《Linux一学就会》Linux系统进程管理

侠盗安全

Linux linux运维 运维工程师 云计算架构师

IoT Stack 2.0升级物模型及数据交互协议, 大幅提升物联网方案交付速度

百度大脑

人工智能 百度 物联网

Elizabeth Hendrickson谈“缺陷传染症”_研发效能_Michael Stal_InfoQ精选文章