Blogs (1) >>
ICSE 2019
Sat 25 - Fri 31 May 2019 Montreal, QC, Canada
Wed 29 May 2019 11:00 - 11:20 at Laurier - Automated Program Repair 1 Chair(s): Lars Grunske

To ensure code readability and facilitate software maintenance, program methods must be named properly. In particular, method names must be consistent with the method implementation. Debugging method names remains an important topic in the literature, where various approaches analyze commonalities among method names in a large dataset to detect inconsistent names and suggest better ones. We note that the state-of-the-art does not analyze the implemented code itself to assess consistency. We thus propose a novel automated approach to debugging method names based on the analysis of consistency between method names and method code. The approach leverages deep feature representation techniques adapted to the nature of each artifact. Experimental results on over 2.1 million Java method names show that we can achieve up to 15 percentage points improvement over the state-of-the-art, establishing a record performance of 67.9% F1-measure in identifying inconsistent method names. Furthermore, we demonstrate that our approach yields up to 25% accuracy in suggesting full names, while the state-of-the-art lags far behind at 1.1% accuracy. Finally, we report on our success in fixing 66 inconsistent method names during a live study on projects in the wild.

Wed 29 May

Displayed time zone: Eastern Time (US & Canada) change

11:00 - 12:30
Automated Program Repair 1Journal-First Papers / Technical Track / Papers at Laurier
Chair(s): Lars Grunske Humboldt-Universität zu Berlin
11:00
20m
Talk
Learning to Spot and Refactor Inconsistent Method NamesTechnical Track
Technical Track
Kui Liu Huawei Software Engineering Application Technology Lab, Dongsun Kim Furiosa.ai, Tegawendé F. Bissyandé SnT, University of Luxembourg, Taeyoung Kim Chonbuk National University, Kisub Kim University of Luxembourg, SnT, Anil Koyuncu University of Luxembourg, Luxembourg, Suntae Kim , Yves Le Traon University of Luxembourg
Pre-print
11:20
20m
Talk
Harnessing Evolution for Multi-Hunk Program RepairTechnical Track
Technical Track
Seemanta Saha University of California Santa Barbara, Ripon Saha Fujitsu Laboratories of America, Inc., Mukul Prasad Fujitsu Laboratories of America
11:40
20m
Talk
On Learning Meaningful Code Changes via Neural Machine TranslationTechnical Track
Technical Track
Michele Tufano College of William and Mary, Jevgenija Pantiuchina Università della Svizzera italiana, Cody Watson , Gabriele Bavota Università della Svizzera italiana (USI), Denys Poshyvanyk William and Mary
Pre-print
12:00
10m
Talk
Mining Fix Patterns for FindBugs ViolationsJournal-First
Journal-First Papers
Kui Liu Huawei Software Engineering Application Technology Lab, Dongsun Kim Furiosa.ai, Tegawendé F. Bissyandé SnT, University of Luxembourg, Shin Yoo Korea Advanced Institute of Science and Technology, Yves Le Traon University of Luxembourg
Pre-print
12:10
10m
Talk
Test-equivalence Analysis for Automatic Patch GenerationJournal-First
Journal-First Papers
Sergey Mechtaev University College London, Xiang Gao National University of Singapore, Shin Hwei Tan Southern University of Science and Technology, Abhik Roychoudhury National University of Singapore
12:20
10m
Talk
Discussion Period
Papers