Withdraw
Loading…
Mining Continuous Code Changes to Detect Frequent Program Transformations
Negara, Stas; Codoban, Mihai; Dig, Danny; Johnson, Ralph E.
Loading…
Permalink
https://hdl.handle.net/2142/43889
Description
- Title
- Mining Continuous Code Changes to Detect Frequent Program Transformations
- Author(s)
- Negara, Stas
- Codoban, Mihai
- Dig, Danny
- Johnson, Ralph E.
- Issue Date
- 2013-04-27
- Keyword(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.
- Type of Resource
- text
- Language
- en
- Permalink
- http://hdl.handle.net/2142/43889
Owning Collections
Manage Files
Loading…
Edit Collection Membership
Loading…
Edit Metadata
Loading…
Edit Properties
Loading…
Embargoes
Loading…