IDE ANNOTATION
Program code is different from text documents in that it is non-linear. Therefore, it can become inefficient to annotate over printed versions of code as the reviewer must manually search through pages of code to find method declarations and object classes. However comments typed directly within the IDE are difficult to distinguish from actual code comments.
Alternatively, reading code within an IDE, then documenting code issues on a piece of paper or in a separate digital file involves frequent switching between the code and the issue list. This risks a break in concentration, while also giving no direct reference point to the code, resulting in each issue requiring a higher degree of description.
The ability to annotate with digital ink directly in an IDE gives the reviewer a more distinguishable and intuitive annotation approach, and gives a computerized approach to improve efficiency problems seen in code review. While also retaining all the benefits an underlying code editor has to offer.
We have two projects that have investigated IDE annotation: one built on Microsoft Visual Studio 2005 and the other Eclipse. We have found that both IDEs have limited extension points for Add-ins which creates technical challenges and has to-date prevented us building fully functional annotation into the code editing windows.
Screenshots of RCA and the Eclipse Annotator
Publications
Paper Publications
- Chang, S. H., Chen, X., Priest, R. A., and Plimmer, B. (2008). Issues of extending the user interface of integrated development environments. Proceedings of the 9th ACM SIGCHI New Zealand Chapter's international Conference on Human-Computer interaction - Wellington, New Zealand.
- Chen, X. and Plimmer, B. (2007). CodeAnnotator: digital ink annotation within Eclipse. Proceedings of the 19th Australasian Conference on Computer-Human interaction - Australia.
- Priest, R. and Plimmer, B. (2006). RCA: experiences with an IDE annotation tool. Proceedings of the 7th ACM SIGCHI New Zealand Chapter's international Conference on Computer-Human interaction - Christchurch, New Zealand.
- Plimmer, B., Grundy, J., et al. (2006). Inking in the IDE: Experiences with Pen-based Design and Annotation. Visual Languages and Human-Centric Computing, 111-115.
Other Publications
- Chen, X. (2008). Digital Ink Annotation within Integrated Development Environment. MSc Thesis, University of Auckland.
- Priest, R. (2006). Ink Annotation for Programming Environments. MSc Thesis, University of Auckland.