写点什么

软件质量神话的经验研究

  • 2009-10-13
  • 本文字数:461 字

    阅读完需:约 2 分钟

微软研究所发布了一项检验软件工程神话的经验研究结果报告。由 Nachi Nagappan 主持的这项工作,衡量了通用的软件工程实践给软件质量带来的真正影响。分析显示:

  • 测试中更高的代码覆盖率与上线之后需要补丁数的减少之间并不具有必然相关性,也有许多其他因素在发挥着作用。
  • TDD 改善了质量,但时间更长:“研究小组发现:相对没有使用 TDD 的团队所产出的代码,使用 TDD 的团队所产出的代码在缺陷分布密度上要低百分之六十到九十。他们同时发现采用 TDD 的团队要多花费百分之十五到三十五的时间才能完结项目。”
  • 使用断言和代码验证能减少 bug 数。而且,“在代码里面能有效使用断言的软件工程师,往往是受过良好训练和经验丰富的,这对最终结果是一个利好因素。”
  • 组织结构对质量有更深远的影响:“组织的衡量指标,如果跟代码不相干,我们预测软件会有 85% 的失败倾向。”
  • 分布式团队开发对软件质量的影响实在是微不足道

微软开发团队正在使用这些研究成果,其中包括帮助像 Windows Vista SP2 这样的项目进行风险分析和 bug 分类。

查看英文原文: Empirical Studies on Software Quality Mythology

2009-10-13 05:492116
用户头像

发布了 76 篇内容, 共 24.8 次阅读, 收获喜欢 3 次。

关注

评论

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

Realtime DB技术详解

安第斯智能云

数据

去中心化交易所搭建|区块链数字货币交易平台开发

Geek_23f0c3

APP开发 去中心化交易所系统开发 区块链、

浪潮云说直播间,就在今天!

爬虫入门到放弃03:爬虫如何模拟人的浏览行为

叫我阿柒啊

爬虫 代理IP user-agent

天不生我SpringBoot高级笔记 编程万古无常夜!

白亦杨

Java springboot

手把手教你,从零开始搭建Spring Cloud Alibaba!这份笔记太牛了

DistSQL:像数据库一样使用 Apache ShardingSphere

SphereEx

用10个真实案列带你掌握MySQL调优

北游学Java

Java MySQL 性能调优

智汇华云|安超云套件Archer Cloudsuite为“信创强国”筑基

华云数据

如何保障服务器承受亿级流量(12)【限流】

我爱娃哈哈😍

架构设计 架构设计实战

大数据训练营 - 第二次作业hadoopRPC

西伯利亚鼯鼠

产业区块链迎来新纪元,基础设施建设成核心命题

旺链科技

区块链 产业 基础设施建设

干货 | 用JAVA实现多语言翻译组件

LigaAI

Java 国际化

耗时半年,堪称神迹!阿里架构师整合出258W字Java全栈面试题

Java架构追梦

Java 阿里巴巴 面试 java架构 跳槽

2021InfoComm|钉钉会议 Rooms 的 "全场景" 智能化解决方案

阿里云CloudImagine

音视频 钉钉 视频会议 会议 会议室

什么是高效,什么是好的企业文化

Ryan Zheng

手写希尔排序算法

实力程序员

编程 程序员 C语言 排序算法

天津大学教授站上 WICC2021 “讲坛” 将分享边缘计算新研究

融云 RongCloud

百度内容风控是怎样在秒级之内完成词表匹配

百度Geek说

百度 内容审核

Tapdata 荣获2021中国创新势力榜“最佳数字中台企业服务品牌”大奖

tapdata

Tapdata 最佳数字中台企业服务品牌

Uber 多区域 Kafka 的灾难恢复

奔着腾讯去

Apache kafka 分布式

Tapdata 与巨杉数据库完成产品兼容互认证

tapdata

Tapdata 巨杉数据库 产品兼容性互认

有奖体验活动,最新1.3版本试用

Geek_6cdeb6

人工智能 机器学习 深度学习 学习 AI

完美收官!字节4面斩下2-2Offer,入职就是30K16薪,全凭这套“面试+架构进阶知识点”pdf

Java 程序员 架构 面试

比redis-rdb-tools快10倍的rdb分析工具

BUG侦探

redis bigkey rdb分析

Alibaba永远滴神!阿里内部最新Java基础到中高级核心知识手册

Java~~~

Java 编程 程序员 架构 面试

如何实现70%丢包下音视频的高可用 - 数据篇

ZEGO即构

音视频 数据处理 传输协议 弱网环境高可用 Qo

容器安全检查列表

greatersecurity

容器 云原生 DevSecOps

从零开始学习3D可视化之数据对接(1)

ThingJS数字孪生引擎

大前端 可视化 3D 3D可视化 数字孪生

专科程序员与本科程序员之间有什么区别?薪资待遇又差多少?

Java 编程 程序员 架构 面试

lsyncd实现文件实时同步

阿呆

lsyncd

软件质量神话的经验研究_研发效能_Gavin Terrill_InfoQ精选文章