Skip to main navigation Skip to search Skip to main content

Learning to Recommend Method Names with Global Context

  • Fang Liu
  • , Ge Li
  • , Zhiyi Fu
  • , Shuai Lu
  • , Yiyang Hao
  • , Zhi Jin*
  • *Corresponding author for this work
  • Peking University
  • Ltd.

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

In programming, the names for the program entities, especially for the methods, are the intuitive characteristic for understanding the functionality of the code. To ensure the readability and maintainability of the programs, method names should be named properly. Specifically, the names should be meaningful and consistent with other names used in related contexts in their codebase. In recent years, many automated approaches are proposed to suggest consistent names for methods, among which neural machine translation (NMT) based models are widely used and have achieved state-of-the-art results. However, these NMT-based models mainly focus on extracting the code-specific features from the method body or the surrounding methods, the project-specific context and documentation of the target method are ignored. We conduct a statistical analysis to explore the relationship between the method names and their contexts. Based on the statistical results, we propose GTNM, a Global Transformer-based Neural Model for method name suggestion, which considers the local context, the project-specific context, and the documentation of the method simultaneously. Experimental results on java methods show that our model can outperform the state-of-the-art results by a large margin on method name suggestion, demonstrating the effectiveness of our proposed model.

Original languageEnglish
Title of host publicationProceedings - 2022 ACM/IEEE 44th International Conference on Software Engineering, ICSE 2022
PublisherIEEE Computer Society
Pages1294-1306
Number of pages13
ISBN (Electronic)9781450392211
DOIs
StatePublished - 5 Jul 2022
Externally publishedYes
Event44th ACM/IEEE International Conference on Software Engineering, ICSE 2022 - Hybrid, Pittsburgh, United States
Duration: 22 May 202227 May 2022

Publication series

NameProceedings - International Conference on Software Engineering
Volume2022-May
ISSN (Print)0270-5257

Conference

Conference44th ACM/IEEE International Conference on Software Engineering, ICSE 2022
Country/TerritoryUnited States
CityHybrid, Pittsburgh
Period22/05/2227/05/22

Keywords

  • deep learning
  • global context
  • method name recommendation

Fingerprint

Dive into the research topics of 'Learning to Recommend Method Names with Global Context'. Together they form a unique fingerprint.

Cite this