1

An Open Dataset of Abbreviations and Expansions

We present a data set of abbreviations and expansions, derived from a set of five open source systems, for use by the research and development communities.

Contextualizing Rename Decisions using Refactorings and Commit Messages

Identifier names are the atoms of comprehension; weak identifier names decrease productivity by increasing the chance that developers make mistakes and increasing the time taken to understand chunks of code. Therefore, it is vital to support …

Modeling the Relationship Between Identifier Name and Behavior

This paper presents the features of a model that relates the natural language found in identifiers with program semantics. The model takes advantage of part of speech information and static-analysis-based program models to understand how different …

Towards a Model to Appraise and Suggest Identifier Names

Unknowingly, identifiers in the source code of a software system play a vital role in determining the quality of the system. Ambiguous and confusing identifier names lead developers to not only misunderstand the behavior of the code but also …

A Preliminary Study of Android Refactorings

Throughout the lifetime of a software system, developers continuously refactor the source code as a means of improving the quality of the code. Android apps, like traditional software systems, are not exempt from such refactoring activities. We …

An Empirical Investigation of How and Why Developers Rename Identifiers

Renaming is vital to software maintenance and evolution. Developers rename entities when their original names no longer fit their behavioral role within the program. This may happen if the entity's original name was of poor quality or if the system …