Rethinking User Interfaces for Feature Location
Locating features in large software systems is a fundamental maintenance task for developers when fixing bugs and extending software. We introduce In Situ Impact Insight (I3), a novel user interface to support feature location. In addition to a list of search results, I3 provides support for developers during browsing and inspecting the retrieved code entities. In situ visualizations augment results and source code with additional information relevant for further exploration. Developers are able to retrieve details on the textual similarity of a source code entity to the search query and to other entities, as well as the information on co-changed entities from a project’s history. Execution traces recorded during program runs can be used as filters to further refine the search results. We implemented I3 as an Eclipse plug-in and tested it in a user study involving 18 students and professional developers that were asked to perform three feature location tasks chosen from the issue tracking system of jEdit. The results of our study suggest that I3’s user interface is intuitive and unobtrusively supports developers with the required information when and where they need it.
Beck, Fabian; Dit, Bogdan; Velasco-Madden, Jaleo; Weiskopf, Daniel; and Poshyvanyk, Denys. (2015). "Rethinking User Interfaces for Feature Location". 2015 IEEE 23rd International Conference on Program Comprehension, 151-162. http://dx.doi.org/10.1109/ICPC.2015.24