Beyond computer science

Computer science is necessary but not sufficient to understand and overcome the problems we face in software engineering. We need to understand not only the properties of the software itself, but also the limitations and competences humans bring to the engineering task. Rather than rely on commonsense notions, we need a deep and nuanced view of human capabilities in order to determine how to enhance them. The author discusses what he regards as promising examples of cognitive and organizational theories and proposes research directions to develop new ways of representing run-time behavior and ways of thinking about project coordination. He concludes with observations on creating an interdisciplinary culture.

[1]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[2]  E. Marg A VISION OF THE BRAIN , 1994 .

[3]  Kim B. Clark,et al.  Architectural Innovation: The Reconfiguration of Existing Product Technologies and the Failure of , 1990 .

[4]  Victor R. Basili,et al.  The software engineering laboratory - an operational software experience factory , 1992, International Conference on Software Engineering.

[5]  Owen Astrachan,et al.  On the Cruelty of Really Teaching Computer Science redux , 2005 .

[6]  Jonathan Evans,et al.  Logic and human reasoning: an assessment of the deduction paradigm. , 2002, Psychological bulletin.

[7]  S. Zeki A vision of the brain , 1993 .

[8]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[9]  Somesh Jha,et al.  Software Design as an Investment Activity: A Real Options Perspective , 1998 .

[10]  A. David,et al.  The impact of early and late damage to the human amygdala on 'theory of mind' reasoning. , 2004, Brain : a journal of neurology.

[11]  James D. Herbsleb Metaphorical representation in collaborative software engineering , 1999, WACC.

[12]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[13]  Walter F. Tichy,et al.  Should Computer Scientists Experiment More? , 1998, Computer.

[14]  A. Leslie Pretense and representation: The origins of "theory of mind." , 1987 .

[15]  Victor R. Basili,et al.  The role of experimentation in software engineering: past, current, and future , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[16]  Kevin Crowston,et al.  The interdisciplinary study of coordination , 1994, CSUR.

[17]  Bertram F. Malle,et al.  Folk Theory of Mind: Conceptual Foundations of Social Cognition , 2003 .

[18]  Jan P. Vandenbroucke MD,et al.  Changing images of John Snow in the history of epidemiology , 2005, Sozial- und Präventivmedizin.

[19]  J. Herbsleb,et al.  Two case studies of open source software development: Apache and Mozilla , 2002, TSEM.

[20]  Frederick P. Brooks,et al.  The Mythical Man-Month: Essays on Softw , 1978 .

[21]  Alan MacCormack,et al.  Exploring the Structure of Complex Software Designs: An Empirical Study of Open Source and Proprietary Code , 2006, Manag. Sci..

[22]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[23]  M. E. Conway HOW DO COMMITTEES INVENT , 1967 .

[24]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[25]  S. Baron-Cohen,et al.  Another advanced test of theory of mind: evidence from very high functioning adults with autism or asperger syndrome. , 1997, Journal of child psychology and psychiatry, and allied disciplines.

[26]  Edmund H. Durfee,et al.  Organizations, Plans and Schedules: An Interdisciplinary Perspective on Coordinating AI Agents , 1993 .

[27]  Jr. Frederick P. Brooks,et al.  The mythical man-month (anniversary ed.) , 1995 .

[28]  Walt Scacchi,et al.  Understanding the requirements for developing open source software systems , 2002, IEE Proc. Softw..

[29]  Audris Mockus,et al.  An Empirical Study of Speed and Communication in Globally Distributed Software Development , 2003, IEEE Trans. Software Eng..

[30]  R. Moreland,et al.  Group Versus Individual Training and Group Performance: The Mediating Role of Transactive Memory , 1995 .

[31]  Edmund H. Durfee,et al.  Coordination as distributed search in a hierarchical behavior space , 1991, IEEE Trans. Syst. Man Cybern..

[32]  C. Frith,et al.  Interacting minds--a biological basis. , 1999, Science.

[33]  Alan M. Leslie,et al.  Theory of Mind , 2001 .

[34]  Roy T. Fielding,et al.  Shared leadership in the Apache project , 1999, CACM.

[35]  J.D. Herbsleb,et al.  Global software development at Siemens: experience from nine projects , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[36]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[37]  E. Hutchins Cognition in the wild , 1995 .

[38]  Rebecca E. Grinter Systems architecture: product designing and social engineering , 1999, WACC '99.

[39]  Martin Daly The Language Instinct: How the Mind Creates Language.Steven PinkerPatterns in the Mind: Language and Human Nature.Ray Jackendoff , 1994 .

[40]  Mervyn Susser,et al.  Glossary: causality in public health science , 2001 .

[41]  D HerbslebJames,et al.  Two case studies of open source software development , 2002 .

[42]  S. Pinker The language instinct : how the mind creates language , 1995 .

[43]  Chrysanthos Dellarocas,et al.  A coordinate perspective on software architecture: towards a design handbook for integrating software components , 1996 .