Skip to main content
Presentation
A study of repetitiveness of code changes in software evolution
Proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering
  • Hoan Anh Nguyen, Iowa State University
  • Anh Tuan Nguyen, Iowa State University
  • Tung Thanh Nguyen, Iowa State University
  • Tien N. Nguyen, Iowa State University
  • Hridesh Rajan, Iowa State University
Document Type
Conference Proceeding
Conference
The 28th IEEE/ACM International Conference on Automated Software Engineering (ASE '13)
Publication Version
Accepted Manuscript
Link to Published Version
https://doi.org/10.1109/ASE.2013.6693078
Publication Date
1-1-2013
DOI
10.1109/ASE.2013.6693078
Conference Title
ASE 2013
Conference Date
November 11-15, 2013
Geolocation
(37.387474, -122.05754339999999)
Abstract

In this paper, we present a large-scale study of repetitiveness of code changes in software evolution. We collected a large data set of 2,841 Java projects, with 1.7 billion source lines of code (SLOC) at the latest revisions, 1.8 million code change revisions (0.4 million fixes), 6.2 million changed files, and 2.5 billion changed SLOCs. A change is considered repeated within or cross-project if it matches another change having occurred in the history of the project or another project, respectively. We report the following important findings. First, repetitiveness of changes could be as high as 70-100% at small sizes and decreases exponentially as size increases. Second, repetitiveness is higher and more stable in the cross-project setting than in the within-project one. Third, fixing changes repeat similarly to general changes. Importantly, learning code changes and recommending them in software evolution is beneficial with accuracy for top-1 recommendation of over 30% and top-3 of nearly 35%. Repeated fixing changes could also be useful for automatic program repair.

Comments

This article is published as Nguyen, Hoan Anh, Anh Tuan Nguyen, Tung Thanh Nguyen, Tien N. Nguyen, and Hridesh Rajan. "A study of repetitiveness of code changes in software evolution." In Proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering, pp. 180-190. IEEE Press, 2013. 10.1109/ASE.2013.6693078 . Posted with permission.

Rights
© 2013 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.
Copyright Owner
IEEE
Language
en
File Format
application/pdf
Citation Information
Hoan Anh Nguyen, Anh Tuan Nguyen, Tung Thanh Nguyen, Tien N. Nguyen, et al.. "A study of repetitiveness of code changes in software evolution" Silicon Valley, CAProceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering (2013) p. 180 - 190
Available at: http://works.bepress.com/hridesh-rajan/55/