Domain-oriented design environments

It is argued that domain-oriented design environments (DODEs) provide a complementary goal for the future of software engineering to the approaches pursued with knowledge-based software assistant systems (KBSAs). The DODE extends the KBSA framework by emphasizing a human-centered and domain-oriented approach facilitating communication about evolving systems among all stakeholders. The author briefly discusses the major challenges for software systems, develops a conceptual framework to address these problems, and illustrates the contributions of the KBSA and DODE approaches towards solving these problems.<<ETX>>

[1]  Richard C. Waters The Programmer's Apprentice: A Session with KBEmacs , 1985, IEEE Transactions on Software Engineering.

[2]  Robert Balzer,et al.  Kestrel Institute: REPORT ON A KNOWLEDGE-BASED SOFTWARE ASSISTANT , 1986 .

[3]  Guillermo Arango,et al.  Domain Analysis and Software Systems Modeling , 1991 .

[4]  Thomas W. Mastaglio,et al.  The role of critiquing in cooperative problem solving , 1991, TOIS.

[5]  Stephen Fickas,et al.  Critiquing software specifications , 1988, IEEE Software.

[6]  B. Sheil Power tools for programmers , 1986 .

[7]  Charles E. Billings,et al.  Human-centered aircraft automation: A concept and guidelines , 1991 .

[8]  Gerhard Fischer,et al.  Beyond the macho approach of artificial intelligence: empower human designers - do not replace them , 1992, Knowl. Based Syst..

[9]  Lauren B. Resnick,et al.  Shared cognition: Thinking as social practice , 1991, Perspectives on socially shared cognition.

[10]  David F. Redmiles From programming tasks to solutions: bridging the gap through the explanation of examples , 1992 .

[11]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[12]  Tamara Sumner,et al.  Iterative design of a voice dialog design environment , 1992, CHI '92.

[13]  R. Dawkins The Blind Watchmaker , 1986 .

[14]  William Buxton,et al.  Towards a comprehensive user interface management system , 1983, SIGGRAPH.

[15]  Elaine Kant Knowledge-based support for scientific programming , 1992, Proceedings of the Seventh Knowledge-Based Software Engineering Conference.

[16]  H. W. Rittel,et al.  Second-generation design methods , 1984 .

[17]  William C. Sasso,et al.  Directions For Future KBSA Research , 1991, Proceedings., 6th Annual Knowledge-Based Software Engineering Conference.

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

[19]  Kumiyo Nakakoji,et al.  Increasing shared understanding of a design task between designers and design environments: the role , 1993 .

[20]  J. F. Traub,et al.  Scaling Up: A Research Agenda for Software Engineering , 1989 .

[21]  Raymond McCall,et al.  JANUS: integrating hypertext with a knowledge-based design environment , 1989, Hypertext.

[22]  Gerhard Fischer,et al.  Supporting Software Designers with Integrated Domain-Oriented Design Environments , 1992, IEEE Trans. Software Eng..

[23]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[24]  Koji Torii,et al.  SDA: a novel approach to software environment design and construction , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[25]  Raymond McCall,et al.  Making Argumentation Serve Design , 1996, Hum. Comput. Interact..

[26]  Gerhard Fischer,et al.  A Cooperative Problem Solving System for User Interface , 1990 .

[27]  Elaine Kant,et al.  Synthesis of mathematical-modeling software , 1993, IEEE Software.

[28]  L. Suchman Plans and situated actions , 1987 .

[29]  Herbert A. Simon,et al.  Whether software engineering needs to be artificially intelligent , 1986, IEEE Transactions on Software Engineering.

[30]  Gerry Stahl,et al.  Interpretation in design: the problem of tacit and explicit understanding in computer support of coo , 1993 .

[31]  Pelle Ehn,et al.  Work-oriented design of computer artifacts , 1989 .

[32]  Robert Balzer,et al.  On the inevitable intertwining of specification and implementation , 1982, CACM.

[33]  Donald A. Norman,et al.  Things that make us smart , 1979 .

[34]  Douglas C. Engelbart,et al.  A research center for augmenting human intellect , 1968, AFIPS Fall Joint Computing Conference.

[35]  Bruce G. Buchanan,et al.  Design of Knowledge-Based Systems with a Knowledge-Based Assistant , 1988, IEEE Trans. Software Eng..

[36]  Mary Shaw,et al.  Maybe Your Next Programming Language Shouldn't Be a Programming Language , 1989 .

[37]  Gerhard Fischer,et al.  Design environments for high-functionality computer systems , 1989 .

[38]  Gerhard Fischer,et al.  Embedding computer-based critics in the contexts of design , 1993, INTERCHI.

[39]  Douglas A. White The Knowledge-based Software Assistant: A Program Summary , 1991, Proceedings., 6th Annual Knowledge-Based Software Engineering Conference.

[40]  Ware Myers,et al.  MCC: Planning the Revolution in Software , 1985, IEEE Software.

[41]  Premkumar T. Devanbu,et al.  LaSSIE—a knowledge-based software information system , 1991, ICSE '90.

[42]  Gerhard Fischer,et al.  End-user modifiability in design environments , 1990, CHI '90.

[43]  Richard C. Waters,et al.  Automatic programming: myths and prospects , 1988, Computer.

[44]  Henry Petroski,et al.  To Engineer Is Human: The Role of Failure in Successful Design , 1986 .

[45]  Mark Stefik,et al.  The Next Knowledge Medium , 1986, AI Mag..

[46]  Alexander Repenning,et al.  Using Agentsheets to create a voice dialog design environment , 1992, SAC '92.

[47]  Terry Winograd,et al.  Beyond programming languages , 1979, CACM.

[48]  Austin Henderson,et al.  There's No Place Like Home: Continuing Design in Use , 1992, Design at Work.

[49]  Loren G. Terveen,et al.  From “folklore” to “living design memory” , 1993, INTERCHI.

[50]  Donald A. Schön The reflective practitioner : how professionals think in action , 1986 .

[51]  Richard C. Waters,et al.  Readings in artificial intelligence and software engineering , 1986 .

[52]  Martin S. Feather,et al.  The KBSA Requirements/specification Facet: ARIES , 1991, Proceedings., 6th Annual Knowledge-Based Software Engineering Conference.

[53]  Morten Kyng,et al.  Design at Work , 1992 .

[54]  William C. Hill,et al.  The Mind at AI: Horseless Carriage to Clock , 1989, AI Mag..

[55]  Herbert A. Simon,et al.  The Sciences of the Artificial , 1970 .

[56]  Richard C. Waters,et al.  The Requirements Apprentice: Automated Assistance for Requirements Acquisition , 1991, IEEE Trans. Software Eng..

[57]  Nigel Cross,et al.  Developments in design methodology , 1984 .

[58]  Jonathan Grudin,et al.  Supporting Indirect Collaborative Design With Integrated Knowledge-Based Design Environments , 1992, Hum. Comput. Interact..

[59]  Gerhard Fischer,et al.  Cognitive tools for locating and comprehending software objects for reuse , 1991, [1991 Proceedings] 13th International Conference on Software Engineering.

[60]  Neil A. M. Maiden,et al.  Domain abstractions in requirements engineering: an exemplar approach? , 1992, Proceedings of the Seventh Knowledge-Based Software Engineering Conference.

[61]  David R. Barstow,et al.  Interactive programming environments , 1984, SOEN.

[62]  M. Polanyi Chapter 7 – The Tacit Dimension , 1997 .

[63]  D. Schoen,et al.  The Reflective Practitioner: How Professionals Think in Action , 1985 .

[64]  Robert Balzer,et al.  Report on a knowledge-based software assistant , 1986 .

[65]  Andreas C Lemke,et al.  End-User Modifiability in a Water Management Application ; CU-CS-541-91 , 1991 .

[66]  Herbert A. Simon,et al.  The Sciences of the Artificial , 1970 .

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

[68]  John C. Thomas,et al.  Minimizing ecological gaps in interface design , 1989, IEEE Software.

[69]  Gerhard Fischer,et al.  Communication requirements for cooperative problem solving systems , 1990, Inf. Syst..

[70]  Leonard Lee,et al.  The Day the Phones Stopped , 1991 .

[71]  Gerhard Fischer,et al.  Construction Kits and Design Environments: Steps Toward Human Problem-Domain Communication , 1987, Hum. Comput. Interact..

[72]  Leon J. Osterweil,et al.  Software processes are software too , 1987, ISPW.

[73]  Bonnie A. Nardi,et al.  Gardeners and gurus: patterns of cooperation among CAD users , 1992, CHI.