2016 IEEE 24th International Conference on Program Comprehension (ICPC) (2016)
Austin, TX, USA
May 16, 2016 to May 17, 2016
Roberto Minelli , REVEAL @ Faculty of Informatics - UniversitÓ della Svizzera Italiana (USI), Switzerland
Andrea Mocci , REVEAL @ Faculty of Informatics - UniversitÓ della Svizzera Italiana (USI), Switzerland
Romain Robbes , PLEIAD @ Departamento de Ciencias de la Computaciˇn (DCC) - University of Chile, Chile
Michele Lanza , REVEAL @ Faculty of Informatics - UniversitÓ della Svizzera Italiana (USI), Switzerland
Integrated Development Environments (IDEs) lack effective support to browse complex relationships between source code elements. As a result, developers are often forced to exploit multiple user interface components at the same time, bringing the IDE into a complex, "chaotic" state. Keeping track of these relationships demands increased source code navigation and cognitive load, leading to productivity deficits documented in observational studies. Beyond small-scale studies, the amount and nature of the chaos experienced by developers in the wild is unclear, and more importantly it is unclear how to tame it. Based on a dataset of fine-grained interaction data, we propose several metrics to characterize and quantify the "level of chaos" of an IDE. Our results suggest that developers spend, on average, more than 30% of their time in a chaotic environment, and that this may affect their productivity. To support developers, we devise and evaluate simple strategies that automatically alter the UI of the IDE. We find that even simple strategies may considerably reduce the level of chaos both in terms of effective space occupancy and time spent in a chaotic environment.
Chaos, Navigation, Context, Java, Productivity, Software, Data models
R. Minelli, A. Mocci, R. Robbes and M. Lanza, "Taming the IDE with fine-grained interaction data," 2016 IEEE 24th International Conference on Program Comprehension (ICPC), Austin, TX, USA, 2016, pp. 1-10.