Learning to Spot and Refactor Inconsistent Method NamesTechnical Track
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 Times are displayed in time zone: Eastern Time (US & Canada) change
11:00 - 12:30 | Automated Program Repair 1Papers / Journal-First Papers / Technical Track at Laurier Chair(s): Lars GrunskeHumboldt-Universität zu Berlin | ||
11:00 20mTalk | Learning to Spot and Refactor Inconsistent Method NamesTechnical Track Technical Track Kui LiuUniversity of Luxembourg, Dongsun KimFuriosa.ai, Tegawendé F. BissyandéSnT, University of Luxembourg, Taeyoung KimChonbuk National University, Kisub KimUniversity of Luxembourg, SnT, Anil KoyuncuUniversity of Luxembourg, Luxembourg, Suntae Kim, Yves Le TraonUniversity of Luxembourg Pre-print | ||
11:20 20mTalk | Harnessing Evolution for Multi-Hunk Program RepairTechnical Track Technical Track Seemanta SahaUniversity of California Santa Barbara, Ripon SahaFujitsu Laboratories of America, Inc., Mukul PrasadFujitsu Laboratories of America | ||
11:40 20mTalk | On Learning Meaningful Code Changes via Neural Machine TranslationTechnical Track Technical Track Michele TufanoCollege of William and Mary, Jevgenija PantiuchinaUniversità della Svizzera italiana, Cody Watson , Gabriele BavotaUniversità della Svizzera italiana (USI), Denys PoshyvanykWilliam and Mary Pre-print | ||
12:00 10mTalk | Mining Fix Patterns for FindBugs ViolationsJournal-First Journal-First Papers Kui LiuUniversity of Luxembourg, Dongsun KimFuriosa.ai, Tegawendé F. BissyandéSnT, University of Luxembourg, Shin YooKorea Advanced Institute of Science and Technology, Yves Le TraonUniversity of Luxembourg Pre-print | ||
12:10 10mTalk | Test-equivalence Analysis for Automatic Patch GenerationJournal-First Journal-First Papers Sergey MechtaevUniversity College London, Xiang GaoNational University of Singapore, Shin Hwei TanSouthern University of Science and Technology, Abhik RoychoudhuryNational University of Singapore | ||
12:20 10mTalk | Discussion Period Papers |