Blogs (1) >>
ICSE 2019
Sat 25 - Fri 31 May 2019 Montreal, QC, Canada
Fri 31 May 2019 11:20 - 11:40 at Centre-Ville - Mining Software Changes and Patterns Chair(s): Ayşe Başar

Existing approaches for detecting repetitive code changes relying on syntactic similarity cannot effectively detect semantic change patterns. In this work, we introduce a novel graph-based mining approach, CPatMiner, which is capable of detecting semantic code change patterns from a large number of open-source repositories by capturing dependencies between fine-grained change elements.

We evaluated CPatMiner by mining change patterns in a diverse corpus of 5,000+ open-source projects from GitHub with 170,000+ developers. We use three complementary methods. First, we sent the mined patterns to the authors and received 108 responses. 70% of respondents recognized those patterns as their meaningful frequent changes. 79% of respondents even named the patterns, and 44% wanted IDEs to automate such repetitive changes. The mined patterns belong to various activities: adaptive (9%), perfective (20%), corrective (35%) and preventive (36%). Second, we compared CPatMiner with the state-of-the-art, AST-based technique, and reported that CPatMiner detects 2.1x more meaningful patterns. Third, we used CPatMiner to search for patterns in a corpus of 88 GitHub projects with longer histories consisting of 164M SLOCs. It constructed 322K fine-grained change graphs containing 3M nodes, and detected 17K change patterns which provide unique insights on the practice of change patterns among individuals and teams. We found that a large percentage (75%) of the patterns from individual developers are commonly shared with others, and this holds true for teams. Moreover, we found that the patterns spread widely over time. Thus, we call for a community-based change pattern database to provide important resources in novel applications.

Fri 31 May

icse-2019-Paper-Presentations
11:00 - 12:30: Papers - Mining Software Changes and Patterns at Centre-Ville
Chair(s): Ayşe BaşarRyerson University
icse-2019-Technical-Papers11:00 - 11:20
Talk
Ralf RamsauerOTH Regensburg, Daniel LohmannLeibniz Universität Hannover, Wolfgang MauererOTH Regensburg / Siemens AG
icse-2019-Technical-Papers11:20 - 11:40
Talk
Hoan NguyenIowa State University, Tien N. NguyenUniversity of Texas at Dallas, Danny DigSchool of EECS at Oregon State University, Son NguyenThe University of Texas at Dallas, Hieu TranThe University of Texas at Dallas, Michael HiltonCarnegie Mellon University, USA
icse-2019-Demonstrations11:40 - 12:00
Talk
Matias MartinezUniversity of Valenciennes, Martin MonperrusKTH Royal Institute of Technology
icse-2019-Demonstrations12:00 - 12:20
Talk
Thong Hoang, Julia LawallInria/LIP6, Richard J OentaryoMcLaren Applied Technologies, Singapore, Yuan TianQueens University, Kingston, Canada, David LoSingapore Management University
icse-2019-Paper-Presentations12:20 - 12:30
Talk