Title
Mining Version Control Systems for FACs (Frequently Applied Changes)
Abstract
Today, programmers are forced to maintain a software system based on their gut feeling and experience. This pa- per makes an attempt to turn the software maintenance craft into a more disciplined activity, by mining for frequently ap- plied changes in a version control system. Next to some ini- tial results, we show how this technique allows to recover and study successful maintenance strategies, adopted for the redesign of long-lived systems. By making this knowledge general, software mainte- nance can be improved and lose its status of ad hoc dis- cipline. In order to meet this goal, we propose a technique analogue to the idea of frequently asked questions or FAQs. These FAQs are summaries of frequent questions and cor- responding answers to reduce the continual posting of the same basic question. Analogue, we propose to identify fre- quently applied changes (FACs) since these changes record general solutions to frequent and recurring problems. To detect such frequently applied changes, a technique based on clone detection is used. Due to their central po- sition in modern development processes and their ability to record a project's entire change history, versioning systems contain a wealth of change information. Therefore the data for the detection process is provided by a versioning system. In the remainder of this paper we will introduce the tech- nique, evaluate it and position it in a broader context. The first section is reserved for introducing the technique (sec- tion 2). Afterwards, the results of an initial case study to evaluate the technique are discussed in section 3. Section 4 on the other hand, explores how the resulting change sets can be used to study software maintenance. Our future di- rections are discussed in section 5. The last section (6) dis- cusses related work.
Year
Venue
DocType
2004
MSR
Conference
Citations 
PageRank 
References 
12
1.05
9
Authors
2
Name
Order
Citations
PageRank
Filip Van Rysselberghe118313.97
Serge Demeyer22250291.74