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.