Unravel Programming Sessions with THRESHER: Identifying Coherent and Complete Sets of Fine-granular Source Code Changes

Q4 Computer Science
Marcel Taeumel, Stephanie Platz, Bastian Steinert, R. Hirschfeld, H. Masuhara
{"title":"Unravel Programming Sessions with THRESHER: Identifying Coherent and Complete Sets of Fine-granular Source Code Changes","authors":"Marcel Taeumel, Stephanie Platz, Bastian Steinert, R. Hirschfeld, H. Masuhara","doi":"10.11185/IMT.12.24","DOIUrl":null,"url":null,"abstract":"Development teams bene t from version control systems, which manage shared access to code repositories and persist entire project histories for analysis or recovery. Such systems will be e cient if developers commit coherent and complete change sets. These best practices, however, are di cult to follow because multiple activities often interleave without notice and existing tools impede unraveling changes before committing them. We propose an interactive, graphical tool, calledThresher, that employs adaptable scripts to support developers to group and commit changes especially for ne-granular change tracking where numerous changes are logged even in short programming sessions. We implemented our tool in Squeak/Smalltalk and derived a foundation of scripts from ve refactoring sessions. We evaluated those scripts' precision and recall, which indicate a reduced manual e ort because developers can focus on project-speci c adjustments. Having such an interactive approach, they can easily intervene to accurately reconstruct activities and thus follow best practices.","PeriodicalId":16243,"journal":{"name":"Journal of Information Processing","volume":"50 1","pages":"24-39"},"PeriodicalIF":0.0000,"publicationDate":"2017-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Information Processing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.11185/IMT.12.24","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"Computer Science","Score":null,"Total":0}
引用次数: 9

Abstract

Development teams bene t from version control systems, which manage shared access to code repositories and persist entire project histories for analysis or recovery. Such systems will be e cient if developers commit coherent and complete change sets. These best practices, however, are di cult to follow because multiple activities often interleave without notice and existing tools impede unraveling changes before committing them. We propose an interactive, graphical tool, calledThresher, that employs adaptable scripts to support developers to group and commit changes especially for ne-granular change tracking where numerous changes are logged even in short programming sessions. We implemented our tool in Squeak/Smalltalk and derived a foundation of scripts from ve refactoring sessions. We evaluated those scripts' precision and recall, which indicate a reduced manual e ort because developers can focus on project-speci c adjustments. Having such an interactive approach, they can easily intervene to accurately reconstruct activities and thus follow best practices.
解开编程会话与脱粒机:识别一致和完整的集合细粒度源代码的变化
开发团队受益于版本控制系统,它管理对代码存储库的共享访问,并保存整个项目历史以供分析或恢复。如果开发人员提交一致且完整的变更集,这样的系统将是高效的。然而,这些最佳实践是很难遵循的,因为多个活动经常在没有通知的情况下交错,并且现有的工具阻碍了在提交更改之前展开更改。我们提出了一个交互式的图形化工具,称为thresher,它使用适应性强的脚本来支持开发人员对更改进行分组和提交,特别是对于在短编程会话中记录大量更改的新粒度更改跟踪。我们在Squeak/Smalltalk中实现了我们的工具,并从五个重构会话中获得了脚本的基础。我们评估了这些脚本的准确性和召回率,这表明减少了手工操作,因为开发人员可以专注于项目特定的调整。有了这样一个交互式的方法,他们可以很容易地进行干预,以准确地重建活动,从而遵循最佳实践。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
Journal of Information Processing
Journal of Information Processing Computer Science-Computer Science (all)
CiteScore
1.20
自引率
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学术官方微信