The Art of Testing Less without Sacrificing Quality

Kim Herzig, Michaela Greiler, J. Czerwonka, Brendan Murphy
{"title":"The Art of Testing Less without Sacrificing Quality","authors":"Kim Herzig, Michaela Greiler, J. Czerwonka, Brendan Murphy","doi":"10.1109/ICSE.2015.66","DOIUrl":null,"url":null,"abstract":"Testing is a key element of software development processes for the management and assessment of product quality. In most development environments, the software engineers are responsible for ensuring the functional correctness of code. However, for large complex software products, there is an additional need to check that changes do not negatively impact other parts of the software and they comply with system constraints such as backward compatibility, performance, security etc. Ensuring these system constraints may require complex verification infrastructure and test procedures. Although such tests are time consuming and expensive and rarely find defects they act as an insurance process to ensure the software is compliant. However, long lasting tests increasingly conflict with strategic aims to shorten release cycles. To decrease production costs and to improve development agility, we created a generic test selection strategy called THEO that accelerates test processes without sacrificing product quality. THEO is based on a cost model, which dynamically skips tests when the expected cost of running the test exceeds the expected cost of removing it. We replayed past development periods of three major Microsoft products resulting in a reduction of 50% of test executions, saving millions of dollars per year, while maintaining product quality.","PeriodicalId":330487,"journal":{"name":"2015 IEEE/ACM 37th IEEE International Conference on Software Engineering","volume":"47 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-05-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"91","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 IEEE/ACM 37th IEEE International Conference on Software Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSE.2015.66","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 91

Abstract

Testing is a key element of software development processes for the management and assessment of product quality. In most development environments, the software engineers are responsible for ensuring the functional correctness of code. However, for large complex software products, there is an additional need to check that changes do not negatively impact other parts of the software and they comply with system constraints such as backward compatibility, performance, security etc. Ensuring these system constraints may require complex verification infrastructure and test procedures. Although such tests are time consuming and expensive and rarely find defects they act as an insurance process to ensure the software is compliant. However, long lasting tests increasingly conflict with strategic aims to shorten release cycles. To decrease production costs and to improve development agility, we created a generic test selection strategy called THEO that accelerates test processes without sacrificing product quality. THEO is based on a cost model, which dynamically skips tests when the expected cost of running the test exceeds the expected cost of removing it. We replayed past development periods of three major Microsoft products resulting in a reduction of 50% of test executions, saving millions of dollars per year, while maintaining product quality.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
减少测试而不牺牲质量的艺术
测试是软件开发过程中管理和评估产品质量的关键要素。在大多数开发环境中,软件工程师负责确保代码功能的正确性。然而,对于大型复杂的软件产品,还需要检查更改是否会对软件的其他部分产生负面影响,并且它们是否符合系统约束,例如向后兼容性、性能、安全性等。确保这些系统约束可能需要复杂的验证基础结构和测试过程。尽管这样的测试既耗时又昂贵,而且很少发现缺陷,但它们可以作为确保软件兼容的保险过程。然而,持久的测试与缩短发布周期的战略目标之间的冲突越来越大。为了降低生产成本和提高开发敏捷性,我们创建了一个称为THEO的通用测试选择策略,它可以在不牺牲产品质量的情况下加速测试过程。THEO基于成本模型,当运行测试的预期成本超过删除测试的预期成本时,该模型会动态跳过测试。我们重播了过去三个主要微软产品的开发阶段,结果减少了50%的测试执行,每年节省了数百万美元,同时保持了产品质量。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Contributor's Performance, Participation Intentions, Its Influencers and Project Performance ZoomIn: Discovering Failures by Detecting Wrong Assertions Agile Project Management: From Self-Managing Teams to Large-Scale Development How Much Up-Front? A Grounded theory of Agile Architecture Avoiding Security Pitfalls with Functional Programming: A Report on the Development of a Secure XML Validator
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1