Skip to main content
Log in

Domain-oriented design environments

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

The field of knowledge-based software engineering has been undergoing a shift in emphasis from automatic programming to human augmentation and empowerment. In our research work, we support this shift with an approach that embedshuman-computer cooperative problem-solving tools intodomain-oriented, knowledge-based design environments. Domain orientation reduces the large conceptual distance between problem-domain semantics and software artifacts. Integrated environments support the coevolution of specification and construction while allowing designers to access relevant knowledge at each stage within the software development process.

This paper argues thatdomain-oriented design environments (DODEs) are complementary to the approaches pursued withknowledge-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 paper discusses the major challenges for software systems, develops a conceptual framework to address these problems, illustrates DODE with two examples, and assesses the contributions of the KBSA and DODE approaches toward solving these problems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

References

  • Atwood, M. E., Burns, B., Gray, W. D., Morch, A. I., Radlinski, E. R., and Turner, A. 1991.The Grace Integrated Learning Environment—A Progress Report, Proceedings of the Fourth International Conference on Industrial & Engineering Applications of Artificial Intelligence & Expert Systems (IEA/AIE 91), ACM, June 1991, pp. 741–745.

  • Barstow, D. R., Shrobe, H. E., and Sandewall, E. (eds.) 1984.Interactive Programming Environments. New York: McGraw-Hill Book Company.

    Google Scholar 

  • Belady, L. 1985. MCC: Planning the revolution in software.IEEE Software, November: 68–73.

  • Billings, C. E. 1991.Human-Centered Aircraft Automation: A Concept and Guidelines. NASA Technical Memorandum 103885, NASA Ames Research Center, Moffett Field, CA.

    Google Scholar 

  • Boehm, B. W. 1988. A spiral model of software development and enhancement.IEEE Computer, 21(5):61–72.

    Google Scholar 

  • Brooks, F. P., Jr. 1987. No silver bullet: Essence and accidents of software engineering.IEEE Computer, 20(4):10–19.

    Google Scholar 

  • Buxton, W. A. S., Lamb, M. R., Sherman, D., and Smith, K. C. 1983. Towards a comprehensive user interface management system.Computer Graphics, 17(3):35–42.

    Google Scholar 

  • Cross, N. 1984.Developments in Design Methodology. New York: John Wiley & Sons.

    Google Scholar 

  • Computer Science and Technology Board. 1988.Scaling Up: A Research Agenda for Software Engineering. Washington, DC: National Academy Press.

    Google Scholar 

  • Computer Science and Technology Board. 1990. Scaling up: A research agenda for software engineering.Communications of the ACM, 33(3):281–293.

    Google Scholar 

  • Curtis, B., Krasner, H., and Iscoe, N. 1988. A field study of the software design process for large systems.Communications of the ACM, 31(11):1268–1287.

    Google Scholar 

  • Dawkins, R. 1987.The Blind Watchmaker. New York: W.W. Norton and Company.

    Google Scholar 

  • DeBellis, M., Sasso, W. C., and Cabral, G. 1991. Directions for future KBSA research. InProceedings of the 6th Annual Knowledge-Based Software Engineering (KBSE-91) Conference (Syracuse, NY), Rome Laboratory, New York, September 1991, pp. 138–142.

    Google Scholar 

  • Devanbu, P., Brachman, R. J., Sefridge, P. G., and Ballard, B. W. 1991. LaSSIE: A knowledge-based software information system.Communications of the ACM, 34(5):34–49.

    Google Scholar 

  • Ehn, P. 1988.Work-Oriented Design of Computer Artifacts. Stockholm, Sweden: Almquist & Wiksell International.

    Google Scholar 

  • Eisenberg, M. 1991.Programmable Applications: Interpreter Meets Interface. Technical Report 1325, Department of Electrical Engineering and Computer Science, MIT.

  • Engelbart, D. C., and English, W. K. 1968. A research center for augmenting human intellect. InProceedings of the AFIPS Fall Joint Computer Conference, The Thompson Book Company, Washington, D.C., pp. 395–410.

    Google Scholar 

  • Fickas, S., and Nagarajan, P. 1988. Critiquing software specifications.IEEE Software, 5(6):37–47.

    Google Scholar 

  • Fischer, G. 1990. Communications requirements for cooperative problem solving systems.The International Journal of Information Systems (Special Issue on Knowledge Engineering), 15(1):21–36.

    Google Scholar 

  • Fischer, G. 1991. Supporting learning on demand with design environments. InProceedings of the International Conference on the Learning Sciences 1991 (Evanston, IL), edited by Lawrence Birnbaum, Association for the Advancement of Computing in Education, Charlottesville, VA, August, pp. 165–172.

    Google Scholar 

  • Fischer, G., Lemke, A. C., McCall, R., and Morch, A. 1991a. Making argumentation serve design.Human Computer Interaction, 6(3–4):393–419.

    Google Scholar 

  • Fischer, G., Lemke, A. C., Mastaglio, T., and Morch, A. 1991b. The role of critiquing in cooperative problem solving.ACM Transactions on Information Systems, 9(2):123–151.

    Google Scholar 

  • Fischer, G., Grudin, J., Lemke, A. C., McCall, R., Ostwald, J., Reeves, B. N., and Shipman, F. 1992a. Supporting indirect, collaborative design with integrated knowledge-based design environments.Human Computer Interaction, Special Issue on Computer Supported Cooperative Work, 7(3):281–314.

    Google Scholar 

  • Fischer, G., Girgensohn, A., Nakakoji, K., and Redmiles, D. 1992b. Supporting software designers with integrated, domain-oriented design environments.IEEE Transactions on Software Engineering, Special Issue on Knowledge Representation and Reasoning in Software Engineering, 18(6):511–522.

    Google Scholar 

  • Fischer, G., Nakakoji, K., Ostwald, J., Stahl, G., and Sumner, T. 1993. Embedding computer-based critics in the contexts of design.Human Factors in Computing Systems, INTERCHI'93 Conference Proceedings, ACM, pp. 157–164.

  • Fischer, G., and Girgensohn, A. 1990. End-user modifiability in design environments. InHuman Factors in Computing Systems, CHI'90 Conference Proceedings (Seattle, WA), ACM, New York, April, pp. 183–191.

    Google Scholar 

  • Fischer, G., and Lemke, A. C. 1988. Construction kits and design environments: Steps toward human problem-domain communication.Human-Computer Interaction, 3(3):179–222.

    Google Scholar 

  • Fischer, G., McCall, R., and Morch, A. 1989. JANUS: Integrating hypertext with a knowledge-based design environment. InProceedings of Hypertext'89 (Pittsburgh, PA), ACM, New York, November, pp. 105–117.

    Google Scholar 

  • Fischer, G., and Nakakoji, K. 1992. Beyond the macho approach of artificial intelligence: Empower human designers—Do not replace them.Knowledge-Based Systems Journal, 5(1):15–30.

    Google Scholar 

  • Gantt, M., and Nardi, B. A. 1992. Gardeners and gurus: Patterns of cooperation among CAD users. InHuman Factors in Computing Systems, CHI'92 Conference Proceedings (Monterrey, CA), ACM, May, pp. 107–117.

  • Green, C., Luckham, D., Balzer, R., Cheatham, T., and Rich, C. 1983.Report on a Knowledge-Based Software Assistant. Technical Report RADC-TR-83-195, Rome Air Development Center, August 1983, Reprinted inReadings in Artificial Intelligence and Software Engineering, edited by C. H. Rich and R. Waters, pp. 377–428. Los Altos, CA: Morgan Kaufmann Publishers, 1986.

  • Greenbaum, J., and Kyng, M. (eds.) 1991.Design at Work: Cooperative Design of Computer Systems. Hillsdale, NJ: Lawrence Erlbaum Associates.

    Google Scholar 

  • Henderson, A., and Kyng, M. 1991. There's no place like home: Continuing design in use. InDesign at Work: Cooperative Design of Computer Systems, edited by J. Greenbaum and M. Kyng, pp. 219–240. Hillsdale, NJ: Lawrence Erlbaum Associates.

    Google Scholar 

  • Hill, W. C. 1989. The mind at AI: Horseless carriage to clock.AI Magazine, 10(2):29–41.

    Google Scholar 

  • Johnson, W. L., Feather, M. S., and Harris, D. R. 1991. The KBSA requirements/specification facet: ARIES. InProceedings of the 6th Annual Knowledge-Based Software Engineering (KBSE-91) Conference (Syracuse, NY), Rome Laboratory, New York, September, pp. 53–64.

    Google Scholar 

  • Kant, E. 1992. Knowledge-based support for scientific programming. InProceedings of the 7th Annual Knowledge-Based Software Engineering (KBSE-92) Conference (McLean, VA), IEEE Computer Society Press, Los Alamitos, CA, September, pp. 2–4.

    Google Scholar 

  • Kant, E. 1993. Synthesis of mathematical modeling software.IEEE Software, May: 30–41.

  • Kishida, K., Katayama, T., Matsuo, M., Miyamoto, I., Ochimizu, K., Saito, N., Sayler, J. H., Torii, K., and Williams, L. G. 1988. SDA: A novel approach to software environment design and construction. InProceedings of the 10th International Conference on Software Engineering (Singapore), IEEE Computer Society Press, Washington, DC, April, pp. 69–79.

    Google Scholar 

  • Lee, L. 1992.The Day The Phones Stopped. New York: Donald I. Fine.

    Google Scholar 

  • Lemke, A. C. 1989.Design Environments for High-Functionality Computer Systems. Unpublished Ph.D. Dissertation, Department of Computer Science, University of Colorado, July.

  • Lemke, A. C., and Fischer, G. 1990. A cooperative problem solving system for user interface design. InProceedings of AAAI-90, Eighth National Conference on Artificial Intelligence, AAAI Press/The MIT Press, Cambridge, MA, August, pp. 479–484.

    Google Scholar 

  • Lemke, A. C., and Gance, S. 1991.End-User Modifiability in a Water Management Application. Technical Report CU-CS-541-91, Department of Computer Science, University of Colorado.

  • Maiden, N., and Sutcliffe, A. 1992. Domain abstractions in requirements engineering: An exemplar approach? InProceedings of the 7th Annual Knowledge-Based Software Engineering (KBSE-92) Conference (McLean, VA), IEEE Computer Society Press, Los Alamitos, CA, September, pp. 112–121.

    Google Scholar 

  • Nakakoji, K. 1993.Increasing Shared Understanding of a Design Task Between Designers and Design Environments: The Role of a Specification Component. Unpublished Ph.D. Dissertation, Department of Computer Science, University of Colorado. Also available as Technical Report CU-CS-651-93.

  • Nardi, B. A. 1993.A Small Matter of Programming. Cambridge, MA: The MIT Press.

    Google Scholar 

  • Norman, D. A. 1993.Things That Make Us Smart. Reading, MA: Addison-Wesley Publishing Company.

    Google Scholar 

  • Osterweil, L. 1987. Software processes are software too. InProceedings of the 9th International Conference on Software Engineering (Monterey, CA, IEEE Computer Society, Washington, DC, March, pp. 2–13.

    Google Scholar 

  • Petroski, H. 1985.To Engineer Is Human: The Role of Failure in Successful Design. New York: St. Martin's Press.

    Google Scholar 

  • Polanyi, M. 1966.The Tacit Dimension. Garden City, NY: Doubleday.

    Google Scholar 

  • Prieto-Diaz, R., and Arango, G. 1991.Domain Analysis and Software Systems Modeling. Los Alamitos, CA: IEEE Computer Society Press.

    Google Scholar 

  • Proceedings of IEEE International Symposium on Requirements Engineering, 1993. IEEE Computer Society, IEEE Computer Society Press, Los Alamitos, CA, January.

  • Redmiles, D. F. 1992.From Programming Tasks to Solutions—Bridging the Gap Through the Explanation of Examples. Ph.D. Dissertation, Department of Computer Science, University of Colorado, Boulder, CO. Also available as Technical Report CU-CS-629-92.

    Google Scholar 

  • Repenning, A., and Sumner, T. 1992. Using Agentsheets to create a voice dialog design environment. InProceedings of the 1992 ACM/SIGAPP Symposium on Applied Computing, ACM Press, pp. 1199–1207.

  • Resnick, L. B. 1991. Shared cognition: Thinking as social practice. InPerspectives on Socially Shared Cognition, edited by L. B. Resnick, J. M. Levine, and S. D. Teasley, American Psychological Association, Washington, DC, pp. 1–20, ch. 1.

    Google Scholar 

  • Reubenstein, H. B., and Waters, R. C. 1991. The requirements apprentice: Automated assistance for requirements acquisition. InIEEE Transactions on Software Engineering, 17(3):226–240.

    Google Scholar 

  • Rich, C. H., and Waters, R. (eds.) 1986.Readings in Artificial Intelligence and Software Engineering. Los Altos, CA: Morgan Kaufmann Publishers.

    Google Scholar 

  • Rich, C. H., and Waters, R. C. 1988. Automatic programming: Myths and prospects.Computer, 21(8):40–51.

    Google Scholar 

  • Rittel, H. W. J. 1984. Second-generation design methods. InDevelopments in Design Methodology, edited by N. Cross, pp. 317–327. New York: John Wiley & Sons.

    Google Scholar 

  • Royce, W. W. 1987. Managing the development of large software systems: Concepts and techniques. InProceedings of the 9th International Conference on Software Engineering (Monterey, CA, IEEE Computer Society, Washington, DC, pp. 328–338 (reprint of a paper originally published in 1970).

    Google Scholar 

  • Schoen, D. A. 1983.The Reflective Practitioner: How Professonals Think in Action. New York: Basic Books.

    Google Scholar 

  • Schoen, E., Smith, R. G., and Buchanan, B. G. 1988. Design of knowledge-based systems with a knowledge-based assistant.IEEE Transactions on Software Engineering, SE-14(12):1771–1791.

    Google Scholar 

  • Shaw, M. 1989. Maybe your next programming language shouldn't be a programming language. InScaling Up: A Research Agenda for Software Engineering, edited by the Computer Science and Technology Board, pp. 75–82. Washington, DC: National Academy Press.

    Google Scholar 

  • Sheil, B. A. 1983. Power tools for programmers.Datamation, February: 131–143.

  • Simon, H. A. 1981.The Sciences of the Artificial. Cambridge, MA: The MIT Press.

    Google Scholar 

  • Simon, H. A. 1986. Whether software engineering needs to be artificially intelligent.IEEE Transactions on Software Engineering, SE-12(7):726–732.

    Google Scholar 

  • Stahl, G. 1993.Interpretation in Design: The Problem of Tacit and Explicit Understanding in Computer Support of Cooperative Design. Ph.D. Dissertation, Department of Computer Science, University of Colorado, Boulder, CO.

    Google Scholar 

  • Stefik, M. J. 1986. The next knowledge medium.AI Magazine, 7(1):34–46.

    Google Scholar 

  • Suchman, L. A. 1987.Plans and Situated Actions. Cambridge, UK: Cambridge University Press.

    Google Scholar 

  • Swartout, W. R., and Balzer, R. 1982. On the inevitable intertwining of specification and implementation.Communications of the ACM, 25(7):438–439.

    Google Scholar 

  • Terveen, L. G., Selfridge, P. G., and Long, M. D. 1993. From folklore to living design memory. InHuman Factors in Computing Systems, INTERCHI'93 Conference Proceedings, ACM, April, pp. 15–22.

  • Thomas, J. C., and Kellogg, W. A. 1989. Minimizing ecological gaps in interface design. InIEEE Software, 6 (January): 78–86.

    Google Scholar 

  • Waters, R. C. 1985. The programmer's apprentice: A session with KBEmacs.IEEE Transactions on Software Engineering, SE-11(11):1296–1320.

    Google Scholar 

  • White, D. A. 1991. The knowledge-based software assistant: A program summary. InProceedings of the 6th Annual Knowledge-Based Software Engineering (KBSE-91) Conference (Syracuse, NY, Rome Laboratory, New York, September, pp. vi-xiii.

    Google Scholar 

  • Winograd, T. 1979. Beyond programming languages.Communications of the ACM, 22(7):391–401.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fischer, G. Domain-oriented design environments. Autom Software Eng 1, 177–203 (1994). https://doi.org/10.1007/BF00872289

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00872289

Keywords

Navigation