Case study on software refactoring tactics

Hui Liu, Yang Liu, Xue Guo, Yuanyuan Gao
{"title":"Case study on software refactoring tactics","authors":"Hui Liu, Yang Liu, Xue Guo, Yuanyuan Gao","doi":"10.1049/iet-sen.2012.0121","DOIUrl":null,"url":null,"abstract":"Refactorings might be done using two different tactics: root canal refactoring and floss refactoring. Root canal refactoring is to set aside an extended period specially for refactoring. Floss refactoring is to interleave refactorings with other programming tasks. However, no large-scale case study on refactoring tactics is available. To this end, the authors carry out a case study to investigate the following research questions. (i) How often are root canal refactoring and floss refactoring employed, respectively? (ii) Are some kinds of refactorings more likely than others to be applied as floss refactorings or root canal refactorings? (iii) Do engineers employing both tactics have obvious bias to or against either of the tactics? They analyse the usage data information collected by Eclipse usage data collector. Results suggest that about 14% of refactorings are root canal refactorings. These findings reconfirm the hypothesis that, in general, floss refactoring is more common than root canal refactoring. The relative popularity of root canal refactoring, however, is much higher than expected. They also find that some kinds of refactorings are more likely than others to be performed as root canal refactorings. Results also suggest that engineers who have explored both tactics obviously tended towards root canal refactoring.","PeriodicalId":13395,"journal":{"name":"IET Softw.","volume":"1 1","pages":"1-11"},"PeriodicalIF":0.0000,"publicationDate":"2014-01-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IET Softw.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1049/iet-sen.2012.0121","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

Refactorings might be done using two different tactics: root canal refactoring and floss refactoring. Root canal refactoring is to set aside an extended period specially for refactoring. Floss refactoring is to interleave refactorings with other programming tasks. However, no large-scale case study on refactoring tactics is available. To this end, the authors carry out a case study to investigate the following research questions. (i) How often are root canal refactoring and floss refactoring employed, respectively? (ii) Are some kinds of refactorings more likely than others to be applied as floss refactorings or root canal refactorings? (iii) Do engineers employing both tactics have obvious bias to or against either of the tactics? They analyse the usage data information collected by Eclipse usage data collector. Results suggest that about 14% of refactorings are root canal refactorings. These findings reconfirm the hypothesis that, in general, floss refactoring is more common than root canal refactoring. The relative popularity of root canal refactoring, however, is much higher than expected. They also find that some kinds of refactorings are more likely than others to be performed as root canal refactorings. Results also suggest that engineers who have explored both tactics obviously tended towards root canal refactoring.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
软件重构策略的案例研究
重构可以使用两种不同的策略:根管重构和牙线重构。根管重构就是专门留出一段较长的时间进行重构。Floss重构是将重构与其他编程任务穿插在一起。然而,没有关于重构策略的大规模案例研究。为此,笔者进行个案研究,探讨以下研究问题。(i)分别使用根管重构和牙线重构的频率是多少?(ii)某些重构是否比其他重构更有可能被应用于牙线重构或根管重构?(iii)采用这两种策略的工程师是否对其中一种策略有明显的偏见?它们分析由Eclipse使用数据收集器收集的使用数据信息。结果表明,约14%的重构为根管重构。这些发现再次证实了一个假设,即一般来说,牙线重构比根管重构更常见。然而,根管重构的相对流行程度远高于预期。他们还发现,某些类型的重构比其他类型的重构更有可能被执行为根管重构。结果还表明,探索过这两种策略的工程师明显倾向于根管重构。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Prioritising test scripts for the testing of memory bloat in web applications A synergic quantum particle swarm optimisation for constrained combinatorial test generation A hybrid model for prediction of software effort based on team size A 20-year mapping of Bayesian belief networks in software project management Emerging and multidisciplinary approaches to software engineering
×
引用
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