ABSTRACT
Today's integrated development environments (IDEs) are hampered by their dependence on files and file-based editing. We propose a novel user interface that is based on collections of lightweight editable fragments, called bubbles, which when grouped together form concurrently visible working sets. In this paper we describe the design of a prototype IDE user interface for Java based on working sets. A quantitative evaluation shows that developers could expect to view a sizeable number of functions concurrently with relatively few UI operations. A qualitative user evaluation with 23 professional developers indicates a high level of excitement, interest, and potential benefits and uses.
- Erlikh, L. Leveraging Legacy System Dollars for E-Business. IT Pro, May/June (2000), 17--23. Google ScholarDigital Library
- Ko, A. J., Myers, B. et al. An Exploratory Study of How Developers Seek, Relate, and Collect Relevant Information during Software Maintenance Tasks. IEEE TSE, 32, 12 (Dec. 2006), 971--987. Google ScholarDigital Library
- Plumlee, M. D., Ware C. Zooming versus multiple window interfaces: Cognitive costs of visual comparisons. ACM ToCHI, 13, 2 (6/06), 179--209. Google ScholarDigital Library
- Bragdon, A. et al. Code Bubbles: A Working Set-based Interface for Code Understanding and Maintanence. In Proceedings of CHI 2010. Google ScholarDigital Library
- Murphy, G. C., Kersten M, et al. How are Java software developers using the Eclipse IDE? IEEE Software, 23, 4 (July/August 2006), 76--83. Google ScholarDigital Library
- Robillard, M. P., et al. How effective developers investiage source code: An exploratory study. IEEE TSE, 30, 12 (Dec. 2004), 889--903. Google ScholarDigital Library
- Sherwood, K. D. Path exploration during code navigation. UBC, 2008.Google Scholar
- Reiss, S. P. Simplifying data integration: the design of the Desert software development environment. In ICSE'96, 398--407. Google ScholarDigital Library
- Reiss, S. P. The Desert environment. ToSEM, 8, 4 (1999), 297--342. Google ScholarDigital Library
- Nackman, L. R. An overview of Montana. IBM Research (1996).Google Scholar
- Stockton, R. et al. The Sheets hypercode editor. CMU, 1993.Google Scholar
- Ingalls, D., Kaehler, T., Maloney, J., Wallace, S., and Kay, A. Back to the future: the story of Squeak, a practical Smalltalk written in itself. In Proceedings of OOPSLA'97, 318--326. Google ScholarDigital Library
- Ungar, D. and Smith, R. B. Self: The power of simplicity. In Proceedings of OOPSLA'87, 227--242. Google ScholarDigital Library
- Cockburn, A. et al. Hidden messages: evaluating the efficiency of code elision in program navigation. Interacting with Computers (2003), 387--407.Google Scholar
- Jakobsen, M. and Hornbaek, K. Evaluating a fisheye view of source code. In Proceedings of CHI'06, 377--386. Google ScholarDigital Library
- Coblenz, M. et al. JASPER: An Eclipse plug-in to facilitate software maintenance tasks. In OOPSLA Workshop on Eclipse Tech. 2006, 65--69. Google ScholarDigital Library
- Cubranic, D., Murphy G. C. Hipikat: recommending pertinant software development artifacts. In ICSE'03, 408--418. Google ScholarDigital Library
- Singer, J., Elves, R., and Storey, M. A. Navtracks: supporting navigation in software. ICPC'05, 173--175. Google ScholarDigital Library
- Kersten, M. et al. Mylar: degree-of-interest model for IDEs. AOSD '05. Google ScholarDigital Library
- Kersten, M. and Murphy, G. C. Using task context to improve programmer productivity. In SIGSOFT 06/FSE 14 (2006), 1--11. Google ScholarDigital Library
- DeLine, R., Czerwinski, M., and Robertson, G. Easing program comprehension by sharing navigation data. VL/HCC 2005, 241--248. Google ScholarDigital Library
- Dragunov, A. et al. TaskTracer: a desktop environment to support multitasking knowledge workers. IUI, 2005, 75--82. Google ScholarDigital Library
- Zhang, J. Idewaypoint: support task-oriented IDE navigation. Univerisity of Victoria, 2006.Google Scholar
- Majid, I. et al. NaCIN: an Eclipse plug-in for program navigation-based concern inference. In OOPSLA Workshop on Eclipse Tech. '05, 70--74. Google ScholarDigital Library
- Robillard, M. P. Murphy G. C. FEAT: a tool for locating, describing, and analyzing concerns in source code. In ICSE '03, 822--823. Google ScholarDigital Library
- Robillard, M. P. et al. ConcernMapper: simple view-based separation of scattered concerns. In OOPSLA workshop on Eclipse Tech. (2005), 65--69. Google ScholarDigital Library
- Lintern, R. et al. Plugging-in visualization: experiences integrating a visualization tool with Eclipse. In SoftVIS '03 (2003), 47--56. Google ScholarDigital Library
- Ko, A. J. et al. Debugging Reinvented: Asking and answering why and why not questions about program behavior. In ICSE'08, 301--310. Google ScholarDigital Library
- Reiss, S. P. Connection tools using message passing in the FIELD environment. IEEE Software, 7, 4 (July 1990), 57--67. Google ScholarDigital Library
- Reiss, S. P. Tracking source locations. In ICSE'08, 11--20. Google ScholarDigital Library
Recommendations
Code bubbles: a working set-based interface for code understanding and maintenance
CHI '10: Proceedings of the SIGCHI Conference on Human Factors in Computing SystemsDevelopers spend significant time reading and navigating code fragments spread across multiple locations. The file-based nature of contemporary IDEs makes it prohibitively difficult to create and maintain a simultaneous view of such fragments. We ...
Speculative analysis of integrated development environment recommendations
OOPSLA '12Modern integrated development environments make recommendations and automate common tasks, such as refactorings, auto-completions, and error corrections. However, these tools present little or no information about the consequences of the recommended ...
The patchworks code editor: toward faster navigation with less code arranging and fewer navigation mistakes
CHI '14: Proceedings of the SIGCHI Conference on Human Factors in Computing SystemsIncreasingly, people are faced with navigating large information spaces, and making such navigation efficient is of paramount concern. In this paper, we focus on the problems programmers face in navigating large code bases, and propose a novel code ...
Comments