A study of repetitiveness of code changes in software evolution

dc.contributor.author Nguyen, Hoan
dc.contributor.author Nguyen, Anh Tuan
dc.contributor.author Rajan, Hridesh
dc.contributor.author Nguyen, Tung Thanh
dc.contributor.author Nguyen, Tien
dc.contributor.author Rajan, Hridesh
dc.contributor.department Computer Science
dc.date 2018-02-18T23:32:03.000
dc.date.accessioned 2020-06-30T01:54:41Z
dc.date.available 2020-06-30T01:54:41Z
dc.date.copyright Tue Jan 01 00:00:00 UTC 2013
dc.date.embargo 2017-10-05
dc.date.issued 2013-01-01
dc.description.abstract <p>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.</p>
dc.description.comments <p>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 <em>Proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering</em>, pp. 180-190. IEEE Press, 2013. <a href="http://dx.doi.org/10.1109" target="_blank">10.1109/ASE.2013.6693078 </a>. Posted with permission.</p>
dc.format.mimetype application/pdf
dc.identifier archive/lib.dr.iastate.edu/cs_conf/5/
dc.identifier.articleid 1016
dc.identifier.contextkey 10860126
dc.identifier.s3bucket isulib-bepress-aws-west
dc.identifier.submissionpath cs_conf/5
dc.identifier.uri https://dr.lib.iastate.edu/handle/20.500.12876/19858
dc.language.iso en
dc.source.bitstream archive/lib.dr.iastate.edu/cs_conf/5/2013_Rajan_StudyRepetitiveness.pdf|||Sat Jan 15 00:37:22 UTC 2022
dc.source.uri 10.1109/ASE.2013.6693078
dc.subject.disciplines Computer Sciences
dc.subject.disciplines Software Engineering
dc.title A study of repetitiveness of code changes in software evolution
dc.type article
dc.type.genre conference
dspace.entity.type Publication
relation.isAuthorOfPublication 4e3f4631-9a99-4a4d-ab81-491621e94031
relation.isOrgUnitOfPublication f7be4eb9-d1d0-4081-859b-b15cee251456
File
Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
2013_Rajan_StudyRepetitiveness.pdf
Size:
186.63 KB
Format:
Adobe Portable Document Format
Description: