Inferring change effort from configuration management databases

T. Graves, A. Mockus
{"title":"Inferring change effort from configuration management databases","authors":"T. Graves, A. Mockus","doi":"10.1109/METRIC.1998.731253","DOIUrl":null,"url":null,"abstract":"In this paper we describe a methodology and algorithm for historical analysis of the effort necessary for developers to make changes to software. The algorithm identifies factors which have historically increased the difficulty of changes. This methodology has implications for research into cost drivers. As an example of a research finding, we find that a system under study was \"decaying\" in that changes grew more difficult to implement at a rate of 20% per year. We also quantify the difference in costs between changes that fix faults and additions of new functionality: fixes require 80% more effort after accounting for size. Since our methodology adds no overhead to the development process, we also envision it being used as a project management tool: for example, developers can identify code modules which have grown more difficult to change than previously, and can match changes to developers with appropriate expertise. The methodology uses data from a change management system, supported by monthly time sheet data if available. The method's performance does not degrade much when the quality of the time sheet data is limited. We validate our results using a survey of the developers under study: the change efforts resulting from the algorithm match the developers' opinions. Our methodology includes a technique based on the jackknife to determine factors that contribute significantly to change effort.","PeriodicalId":444081,"journal":{"name":"Proceedings Fifth International Software Metrics Symposium. Metrics (Cat. No.98TB100262)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1998-03-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"89","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Fifth International Software Metrics Symposium. Metrics (Cat. No.98TB100262)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/METRIC.1998.731253","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 89

Abstract

In this paper we describe a methodology and algorithm for historical analysis of the effort necessary for developers to make changes to software. The algorithm identifies factors which have historically increased the difficulty of changes. This methodology has implications for research into cost drivers. As an example of a research finding, we find that a system under study was "decaying" in that changes grew more difficult to implement at a rate of 20% per year. We also quantify the difference in costs between changes that fix faults and additions of new functionality: fixes require 80% more effort after accounting for size. Since our methodology adds no overhead to the development process, we also envision it being used as a project management tool: for example, developers can identify code modules which have grown more difficult to change than previously, and can match changes to developers with appropriate expertise. The methodology uses data from a change management system, supported by monthly time sheet data if available. The method's performance does not degrade much when the quality of the time sheet data is limited. We validate our results using a survey of the developers under study: the change efforts resulting from the algorithm match the developers' opinions. Our methodology includes a technique based on the jackknife to determine factors that contribute significantly to change effort.
从配置管理数据库推断变更工作量
在本文中,我们描述了一种方法和算法,用于对开发人员对软件进行更改所需的工作进行历史分析。该算法确定了历史上增加变更难度的因素。这种方法对成本驱动因素的研究具有启示意义。作为一个研究发现的例子,我们发现正在研究的系统正在“衰退”,因为变化以每年20%的速度变得更加难以实现。我们还量化了修复错误和添加新功能的更改之间的成本差异:在考虑大小之后,修复需要多付出80%的努力。由于我们的方法没有给开发过程增加额外的开销,我们也设想将它用作项目管理工具:例如,开发人员可以识别比以前更难更改的代码模块,并且可以将更改与具有适当专业知识的开发人员相匹配。该方法使用来自变更管理系统的数据,如果可用,则由每月时间表数据支持。当工时表数据的质量有限时,该方法的性能不会下降太多。我们通过对所研究的开发人员的调查来验证我们的结果:由算法产生的变更努力与开发人员的意见相匹配。我们的方法包括一种基于折刀的技术,以确定对变更工作有重大贡献的因素。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信