Automated Software Engineering

, Volume 1, Issue 2, pp 177-203

First online:

Domain-oriented design environments

  • Gerhard FischerAffiliated withDepartment of Computer Science and Institute of Cognitive Science, University of Colorado

Rent the article at a discount

Rent now

* Final gross prices may vary according to local VAT.

Get Access


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.


automatic programming cooperative problem solving co-evolution of specification and construction critiquing design domain-oriented design environments design rationale end-user modifiability evolution FRAMER formal specifications JANUS knowledge-based software assistant languages of doing software reuse and redesign stakeholders upstream and downstream activities