Impermanent Identifiers: Enhanced Source Code Comprehension and Refactoring
Eduardo Martins Guerra, Andre A. S. Ivo, Fernando O. Pereira, Romain Robbes, Andrea Janes, Fabio Fagundes Silveira
TL;DR
This work proposes Impermanent Identifiers, a dynamic, visualization-based form of code augmentation that decouples an identifier's textual representation from its identity to improve program comprehension and evolution. It experimentally evaluates adoption using the UTAUT-2 framework and structural equation modeling across 11 usage scenarios, identifying key drivers such as Performance Expectation, Effort Expectation, Learning Value, and Social Influence. The study finds generally positive acceptance with high-consequence scenarios (notably Scenario 11) showing strong impact on intention to use, while concerns about ambiguity and sensory overload point to design trade-offs. The findings offer actionable guidance for tool builders and educators and highlight future directions for broader industrial validation and refinement of impermanent identifiers in real-world workflows.
Abstract
In response to the prevailing challenges in contemporary software development, this article introduces an innovative approach to code augmentation centered around Impermanent Identifiers. The primary goal is to enhance the software development experience by introducing dynamic identifiers that adapt to changing contexts, facilitating more efficient interactions between developers and source code, ultimately advancing comprehension, maintenance, and collaboration in software development. Additionally, this study rigorously evaluates the adoption and acceptance of Impermanent Identifiers within the software development landscape. Through a comprehensive empirical examination, we investigate how developers perceive and integrate this approach into their daily programming practices, exploring perceived benefits, potential barriers, and factors influencing its adoption. In summary, this article charts a new course for code augmentation, proposing Impermanent Identifiers as its cornerstone while assessing their feasibility and acceptance among developers. This interdisciplinary research seeks to contribute to the continuous improvement of software development practices and the progress of code augmentation technology.
