Files in this item



application/pdfMiningContinuou ... ProgramTransformations.pdf (669kB)
(no description provided)PDF


Title:Mining Continuous Code Changes to Detect Frequent Program Transformations
Author(s):Negara, Stas; Codoban, Mihai; Dig, Danny; Johnson, Ralph E.
Subject(s):mining code changes
frequent program transformations
detecting program transformations
repetitive code changes
Abstract:Identifying repetitive code changes benefits developers, tool builders, and researchers. Tool builders can automate the popular code changes, thus improving the productivity of developers. Researchers would better understand the practice of code evolution, advancing existing code assistance tools even further. Developers would particularly benefit if such tools can learn and support repetitive code changes that are in progress. Unfortunately, the existing tools that aim at detecting frequent code change patterns predominantly focus on analyzing the static source code of an application rather than dynamic code changes, and thus, they can not learn from the changes on-the-fly. We present the first approach that identifies previously unknown frequent code change patterns from a continuous sequence of code changes. Our novel algorithm effectively handles two major challenges that distinguish continuous code change pattern mining from the existing data mining techniques: overlapping transactions and transactions containing multiple instances of the same item kind. We evaluated our algorithm on 1,520 hours of code development collected from 23 developers, and showed that it is effective, useful, and scales to big amounts of data. We analyzed some of the mined code change patterns and discovered ten popular kinds of high-level program transformations.
Issue Date:2013-04-27
Genre:Technical Report
Publication Status:published or submitted for publication
Peer Reviewed:not peer reviewed
Date Available in IDEALS:2013-04-28

This item appears in the following Collection(s)

Item Statistics