Shortening Overlong Method Names with Abbreviations

Yanjie Jiang, Hui Liu, Shing Chi Cheung, Lu Zhang

Research output: Contribution to journalArticlepeer-review

Abstract

Methods should be named to summarize their responsibilities meaningfully. When a method has a non-trivial responsibility, it may require a naming using multiple words. However, overlong method names are susceptible to typos and reduced readability (e.g., displaying a statement partially in standard screen width or splitting it into multiple lines). Programming naming conventions commonly adopt a maximal length (in characters) for identifiers. In practice, developers may not necessarily find a meaningful name that follows such naming conventions when coding a non-trivial method. This article presents the first automated technique (called NameCompressor) to shorten overlong method names. Our inspiration is that many lengthy words/phrases in an overlong method name have known and unambiguous abbreviations. The use of these abbreviations for method names is common. To shorten an overlong method name, NameCompressor employs three compression techniques, i.e., context-aware compression, probability-based compression, and machine learning-based compression, to find appropriate abbreviations for the words/phrases in the method name. We evaluate NameCompressor on a dataset of 700 overlong method names. It correctly generates 613 short names identical to those specified by the developers of these methods.

Original languageEnglish
Article number205
JournalACM Transactions on Software Engineering and Methodology
Volume33
Issue number8
DOIs
Publication statusPublished - 22 Nov 2024

Keywords

  • Method name
  • abbreviation
  • code quality
  • identifier

Fingerprint

Dive into the research topics of 'Shortening Overlong Method Names with Abbreviations'. Together they form a unique fingerprint.

Cite this