The Role of Domain Expenence in Software Design
IEEE Transactions on Software Engineering - Special issue on artificial intelligence and software engineering
Novices on the computer: a review of the literature
International Journal of Man-Machine Studies
A field study of the software design process for large systems
Communications of the ACM
Why looking isn't always seeing: readership skills and graphical programming
Communications of the ACM
A glimpse of expert programmers' mental imagery
ESP '97 Papers presented at the seventh workshop on Empirical studies of programmers
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Putting ethnography to work: the case for a cognitive ethnography of design
International Journal of Human-Computer Studies - Understanding work and designing artefacts
Designing effective program visualization tools for reducing user's cognitive effort
Proceedings of the 2003 ACM symposium on Software visualization
ATask Oriented View of Software Visualization
VISSOFT '02 Proceedings of the 1st International Workshop on Visualizing Software for Understanding and Analysis
Team coordination through externalized mental imagery
International Journal of Human-Computer Studies - Special issue: Empirical studies of software engineering
Information Needs in Collocated Software Development Teams
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Software Visualization: From Theory to Practice
Software Visualization: From Theory to Practice
Insights from expert software design practice
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Hi-index | 0.00 |
This paper considers the relationship between mental imagery and software visualization in professional, high-performance software development. It presents overviews of four empirical studies of professional software developers in high-performing teams: (1) expert programmers' mental imagery, (2) how experts externalize their mental imagery as part of teamwork, (3) experts' use of commercially available visualization software, and (4) what tools experts build themselves, how they use the tools they build for themselves, and why they build tools for themselves. Through this series of studies, the paper provides insight into a relationship between how experts reason about and imagine solutions, and their use of and requirements for external representations and software visualization. In particular, it provides insight into how experts use visualization in reasoning about software design, and how their requirements for the support of design tasks differ from those for the support of other software development tasks. The paper draws on theory from other disciplines to explicate issues in this area, and it discusses implications for future work in this field.