ACM Home Page
Please provide us with feedback. Feedback
Insights from expert software design practice
Full text PdfPdf (451 KB)
Source
Foundations of Software Engineering archive
Proceedings of the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering on European software engineering conference and foundations of software engineering symposium table of contents
Amsterdam, The Netherlands
SESSION: Challenge paper table of contents
Pages 233-242  
Year of Publication: 2009
ISBN:978-1-60558-001-2
Author
Marian Petre  Open University, Milton Keynes, England UK
Sponsors
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 42,   Downloads (12 Months): 82,   Citation Count: 0
Additional Information:

abstract   references   index terms  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1595696.1595731
What is a DOI?

ABSTRACT

Software is a designed artifact. In other design disciplines, such as architecture, there is a well-established tradition of design studies which inform not only the discipline itself but also tool design, processes, and collaborative work. The 'challenge' of this paper is to consider software from such a 'design studies' perspective. This paper will present a series of observations from empirical studies of expert software designers, and will draw on examples from actual professional practice. It will consider what experts' mental imagery, software visualisations, and sketches suggest about software design thinking. It will also discuss some of the deliberate practices experts use to promote innovation. Finally, it will open discussion on the tensions between observed software design practices and received methodology in software engineering.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Allwood, C. M. 1986. Novices on the computer: a review of the literature. International Journal of Man-Machine Studies, 25, 633--658.
 
2
Ball, L. J., and Ormerod, T. C. 2000. Putting ethnography to work: The case for a cognitive ethnography of design. International Journal of Human-Computer Studies, 53, 147--168.
 
3
Beck, K. 1999. Extreme Programming Explained: Embrace Change. Addison-Wesley.
 
4
Beyer, H., and Holtzblatt, K. 1988. Contextual Design: Defining Customer-Centered Systems. Morgan Kaufmann.
 
5
Boehm, B. W., 1981. Software Engineering Economics. Prentice-Hall 'Advances in Computing Science and Technology' series. Prentice-Hall. xxvii, 767.
 
6
Bucciarelli, LL 1988. An ethnographic perspective on engineering design. Design Studies, 9, 159--168.
 
7
Craft, B., and Cairns, P. 2006. Using sketching to aid the collaborative design of information visualization software. In Human Work Interaction Design: Designing for Human Work, IFIP vol. 221, 103--122.
 
8
Cross, N. 2006. Designerly Ways of Knowing. Springer-Verlag.
 
9
Curtis, B., Krasner, H., and Iscoe, N. 1988. A field study of the software design process for large teams. Communications of the ACM, 31, 11, 1268--1287.
 
10
Damm, C. H., Hansen, K. M., and Thomsen, M. 2000. Tool support for cooperative object-oriented design: gesture based modeling on an electronic whiteboard. In Proceedings of the SIGCHI conference on Human Factors in Computing Systems, ACM, 518--525.
 
11
Fish, J. and Scrivener, S. 1990. Amplifying the mind's eye: sketching and visual cognition, Leonardo, 23, 1, 118--126.
 
12
Flor, N. V., and Hutchins, E. L. 1991. Analysing distributed cognition in software teams: a case study of team programming during perfective software maintenance. In J. Koenemann-Belliveau, T. G. Moher and S. P. Roberston (eds), Empirical Studies of Programmers: Fourth Workshop, Ablex.
 
13
Goel, V. 1995. Sketches of Thought. MIT Press.
 
14
Goldschmidt, G. 1991, The dialectics of sketching. Creativity Research Journal, 4, 2, 123--143.
 
15
Hamming, R. W. 1987. Numerical Methods for Scientists and Engineers, 2nd ed., Dover Publications.
 
16
Kaplan, S., Gruppen, L., Leventhal, L. M., and Board, F. 1986. The Components of Expertise: A Cross-Disciplinary Review. The University of Michigan.
 
17
Ko, A. J., DeLine, R., and Venolia. G. 2007. Information needs in collocated software development teams. In 29th International Conference on Software Engineering (ICSE '07), IEEE Computer Society, 344--353.
 
18
Lansdown, J. 1993. Visualising design ideas. In Proceedings of Interacting with Images (London, February). BCS.
 
19
Lawson, B. 2003. Schemata, gambits and precedent: some factors in design expertise. In N. Cross and E. Edmonds (eds), Expertise in Design: Design Thinking Research Symposium 6, Creativity and Cognition Studio Press, 37--50.
 
20
Logie, R. H. 1989. Characteristics of visual short-term memory. European Journal of Cognitive Psychology, 1, 275--284.
 
21
Lubars, M., Potts, C., and Richter, C. 1993. Developing Initial OOA Models. In Proceedings of 15th International Conference on Software Engineering, IEEE Computer Society Press, 255--264.
 
22
Luff, P., Heath, C., and Greatbatch, D., 1992. Tasks-in-interaction: paper and screen based documentation in collaborative activity. In Proceedings of CSCW 92, 163--170.
 
23
Miller, G. A. 1993. Images and models, similes and metaphors. In A.Ortony (ed.), Metaphor and Thought, 2nd edition. Cambridge University Press, 357--400.
 
24
Newell, A., and Simon, H. A. 1990. GPS: A Program that Simulates Human Thought. In Computers and Thought, McGraw-Hill.
 
25
Petre, M. 2004. How expert engineering teams use disciplines of innovation. Design Studies, 25, 477--493.
 
26
Petre, M. 2007. Expert strategies for dealing with complex and intractable problems. Keynote address, Psychology of Programming Interest Group Workshop.
 
27
Petre, M. 2009. Representations for idea capture in software and hardware development. Open University Centre for Research in Computing Technical Report.
 
28
Petre, M. In press. Mental imagery and software visualization in high-performance software development teams. To appear in: Journal of Visual Languages and Computing.
 
29
Petre, M., and Blackwell, A. 1997. A glimpse of programmers' mental imagery. In S. Wiedenbeck and J. Scholtz (Eds), Empirical Studies of Programmers: Seventh Workshop, ACM Press, 109--123.
 
30
Petre, M., and Green, T. R. G. 1990. Where to draw the line with text: some claims by logic designers about graphics in notation. In D. Diaper, D. Gilmore, G. Cockton, and B. Shackel (eds.), Human-Computer Interaction: Interact'90, North-Holland, 463--468.
 
31
Rittel, H., and Webber, M. 1973. Dilemmas in a general theory of planning. Policy Sciences, 4, 155--169.
 
32
Schön, D. 1988. Design rules, types and worlds. Design Studies, 9, 3, 181--190.
 
33
Schön, D. A., 1983. The Reflective Practitioner: How Professionals Think in Action, Basic Books.
 
34
Simon, H. A. 1996. The Sciences of the Artificial, 3rd ed., MIT Press.
 
35
Vincenti, W. G. 1990. What Engineers Know and How They Know It: Analytical Studies from Aeronautical History. Johns Hopkins University Press.