ABSTRACT
Software developers are rooted in the written form of their code, yet they often draw diagrams representing their code. Unfortunately, we still know little about how and why they create these diagrams, and so there is little research to inform the design of visual tools to support developers' work. This paper presents findings from semi-structured interviews that have been validated with a structured survey. Results show that most of the diagrams had a transient nature because of the high cost of changing whiteboard sketches to electronic renderings. Diagrams that documented design decisions were often externalized in these temporary drawings and then subsequently lost. Current visualization tools and the software development practices that we observed do not solve these issues, but these results suggest several directions for future research.
- M. W. Alibali, M. Bassok, K. O. Solomon, S. E. Syc, and S. Goldin-Meadow. Illuminating mental representation through speech and gesture. Psychological Science, 10:327--333, 1999.Google ScholarCross Ref
- V. Bellotti and S. Bly. Walking away from the desktop computer: Distributed collaboration and mobility in a product design team. In Proc. CSCW, pp. 209--218. Google ScholarDigital Library
- M. Cherubini and J. van der Pol. Grounding is not shared understanding: Distinguishing grounding at an utterance and knowledge level. In CONTEXT 2005.Google Scholar
- H. H. Clark and E. F. Shaeffer. Contributing to discourse. Cognitive Science, 13:259--294, 1989.Google ScholarCross Ref
- U. Dekel. Supporting distributed software design meetings: What can we learn from co-located meetings? In Proc. HSSE 2005. ACM. Google ScholarDigital Library
- P. Dillenbourg, D. Traum, and D. Schneider. Grounding in multi-modal task-oriented collaboration. In Proc. EUROAIED 1996, pp. 415--425.Google Scholar
- E. Do and M. D. Gross. Reasoning about cases with diagrams. In J. Vanegas and P. Chinowsky, editors, ASCE, pp. 314--320, 1996.Google Scholar
- S. Goldin-Meadow. Hearing gesture: How our hands help us think. Belknap Press, Cambridge, MA, USA, 2003.Google Scholar
- J. Heiser, B. Tversky, and M. Silverman. Visual and spatial reasoning in design III, chapter Sketches for and from collaboration, pp. 69--78. 2004.Google Scholar
- K. Henderson. On Line and On Paper: Visual Representations, Visual Culture, and Computer Graphics in Design Engineering. Cambridge, MA: MIT Press, 1999. Google ScholarDigital Library
- J. D. Herbsleb. Metaphorical representation in collaborative software engineering. In Proc. WACC 1999, pp. 117--126. ACM. Google ScholarDigital Library
- M. Hertzum and A. M. Pejtersen. The information seeking practices of engineers: Searching for documents as well as for people. Information Processing and Management, 36(5):761--778, 2000. Google ScholarDigital Library
- E. Hutchins. Cognition in the Wild. MIT Press, Cambridge, MA, USA, 1995.Google Scholar
- A.J. Ko, H.H. Aung, B.A. Myers (2005), Eliciting Design Requirements for Maintenance-Oriented IDEs: A Detailed Study of Corrective and Perfective Maintenance Tasks, In Proc. ICSE 2005. ACM. Google ScholarDigital Library
- J. H. Larkin and H. Simon. Why a diagram is (sometimes) worth ten thousand words. Cognitive Science, pages 65--99, 1987.Google Scholar
- T. D. LaToza, G. Venolia, and R. DeLine. Maintaining mental models: a study of developer work habits. In ICSE '06: Proc ICSE 2006, pp. 492--501. ACM. Google ScholarDigital Library
- D. W. McDonald and M. S. Ackerman. Just talk to me: A field study of expertise location. In Proc. CSCW 1998, pp. 315--324. Google ScholarDigital Library
- D. E. Perry, N. A. Staudenmayer, and L. G. Votta. People, organizations and process improvement. IEEE Software, pages 36--45, July 1994. Google ScholarDigital Library
- B. A. Price, R. M. Baecker, and I.S. Small. A Principled Taxonomy of Software Visualization. Journal of Visual Languages and Computing, 4(3):211--266, 1999.Google ScholarCross Ref
- M. Suwa, J. Gero, and T. Purcell. Unexpected discoveries and s-invention of design requirements: Improving vehicles for a design process. Design Studies, 18(4):539--567, 2000.Google ScholarCross Ref
- B. Tversky, M. Suwa, M. Agrawala, H. J, C. Stolte, P. Hanrahan, D. Phan, J. Klingner, M. Daniel, P. Lee, and J. Haymaker. Human behavior in design: Individuals, teams, tools. In Sketches for Design and Design of Sketches, pp. 79--86. Springer, 2003.Google Scholar
- B. Tversky. Spatial schemas and abstract thought. In Spatial Schemas in Depictions, pp. 79--111. MIT, 2001.Google Scholar
Index Terms
- Let's go to the whiteboard: how and why software developers use drawings
Recommendations
Sketches and diagrams in practice
FSE 2014: Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software EngineeringSketches and diagrams play an important role in the daily work of software developers. In this paper, we investigate the use of sketches and diagrams in software engineering practice. To this end, we used both quantitative and qualitative methods. We ...
An approach and tool for synchronous refactoring of UML diagrams and models using model-to-model transformations
WRT '12: Proceedings of the Fifth Workshop on Refactoring ToolsWhen refactorings are applied to software models that are specified using the Unified Modeling Language (UML), the actual model and the graphical presentation of the model using a diagram need to be distinguished. While UML refactoring tools exist, they ...
Let's play: understanding the role and meaning of digital games in the lives of older adults
FDG '12: Proceedings of the International Conference on the Foundations of Digital GamesDespite a marked increase in the use of digital games among older persons, there is a notable lack of research that provides insight into the gaming experiences of this population. A major demographic shift within the senior gaming market has ushered in ...
Comments