Issue No.04 - July/August (2009 vol.35)
Jody Ryall , University of Victoria, Victoria
Janice Singer , National Research Council Canada, Ottawa
Del Myers , University of Victoria, Victoria
Li-Te Cheng , IBM Research, Cambridge
Michael Muller , IBM Research, Cambridge
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TSE.2009.15
Developers frequently add annotations to source code to help them remember pertinent information and mark locations of interest for future investigation. Finding and refinding these notes is a form of navigation that is integral to software maintenance. Although there is some tool support in modern development environments for authoring and navigating these comments, we have observed that these annotations often fail to remind and are sometimes difficult to find by the programmer. To address these shortcomings, we have designed a new approach for software navigation called Tags for Software Engineering Activities (TagSEA). TagSEA combines the notion of waypointing (a mechanism for marking locations in spatial navigation) with social tagging to support programmers in defining semantically rich annotations to source code comments. The tool provides support for creating, editing, navigating, and managing these annotations. We present the results from two empirical studies, where we observed and then analyzed how professional programmers used source code annotations to support their development activities over 24 months. Our findings indicate that the addition of semantic information to annotations can improve their value. We also provide suggestions on how annotation tools in general may be improved.
Annotations, software navigation, software tagging, tags, software development tools.
Jody Ryall, Janice Singer, Del Myers, Li-Te Cheng, Michael Muller, "How Software Developers Use Tagging to Support Reminding and Refinding", IEEE Transactions on Software Engineering, vol.35, no. 4, pp. 470-483, July/August 2009, doi:10.1109/TSE.2009.15