Domain-Oriented Design Environments: A New Understanding of Design and its Support with Computational Artifacts

Glossary of Terms

R: related to / see also - S: source

Adaptive Systems: A system is adaptive if it changes its behavior by itself (based on its model of the user). Example: customized explanations based on the hypothesized expertise of the user. -R: Malleable Systems

Adaptable Systems: A system is adapatable if can be adjusted in an easy way to serve a user better or to conform to his/her individual way of doing things. -R: Malleable Systems

Agents: Agents are computational entities which analyze user activities and user products. They are not activitated explicitly by the user but act on their own dependent of changes in the computational environment. Examples: critics, expectation agents

Applicability Conditions: The condition under which an artifact (a function, a tool, ...) should be used. Many manuals only describe what a function does, but not why someone should use it. Examples usually show one specific applicability condition.

Argumentation: Design is an argumentative process and DODEs support argumentation. Argumentation is linked with the constructive activties with critics. Argumentation support reflection as a cognitive process.

Asymmetry between Humans and Computers: Humans and Computers have different abilities; therefore they can and should contribute different parts in a cooperative problem solving situation. This asymmetry should be exploited in the design of cooperative problem solving systems. Suchman <Suchman1987> argues that the design of human-computer interfaces is less a project of simulating human communication than of engineering alternatives to interactions situated properties (e.g., natural language may not be the preferred mode of communication in all cases).

Augmentation of Human Intelligence: Human intelligence can be augmented and amplified by cognitive artifacts. A famous quote of Einstein states: "My pencil is cleverer then I." Examples of cognitive artifacts are: Calculators, external information stores (to compensate for the limitations of short term memory), spreadsheets, etc.. - R: Things That Makes Us Smart S: <Norman1993>

Autonomous Systems: Systems that solve a task by themselves, in contrast to cooperative systems. Example: R1. These systems can replace humans -- which is desirable, for example, in situations which are dangerous for human beings.

Backtalk of a Situation: Making thoughts, ideas and plans explicit by writing them down or by developing an artifact, we create situations which talk back to us. Often this backtalk is limited, and we need critics to enhance the backtalk. - R: Critics, Opacity

Breakdowns: Designers act until they experience a breakdown (e.g., they are lacking knowledge to proceed, or they cannot satisfy conflicting requirements). These breakdowns are either noticed by the designers themselves through the backtalk of the situation, or they are signaled by a human collaborator or a computational critic.

Catalog: Design environments contain catalogs as repositories for design cases. For large catalogs, accessing mechanisms are needed to find examples which are relevant to the task at hand.

Case-Based Reasoning: A problem solving methodology which is used successfully in many disciplines (e.g., in law, in medicine, in architectural design) which relies on existing, related cases (in DODEs stored in a catalog).

Community of Practice: Communities of practice are groups of practitioners who work as a community in a certain domain. One objective of DODEs is to support communities of practice. Virtual communities of practice are supported with the remote explorium. - R: Remote Explorium

Conservation Law of Complexity: If this law would hold, it would imply that the description of a complex system cannot be any simpler than the system itself. New representations and new formalisms are able to break this law. Simon <Simon1981> argues that the major contribution of science is to break this law.

Constructionism: An educational philosophy emphasizing that learning is a process of active knowledge construction and not of passive knowledge absorption.

Constrained Design Processes: Constrained design processes are a special class of design processes in which the number of processes (e.g., selection, specialization, instantiation) is limited, and therefore the design process is easier <FischerLemke1988a>. This can be achieved by domain-specific environments which constrain the number of alternatives and possible artifacts that can be generated.

Construction Kits: A construction kit is a set of components (parts) and combinators that can be used to create artifacts. A construction kit should include a presentation component that allows its users to see what parts are available. The elements of a construction kit are at a higher (more domain-oriented) level than programming language constructs.

Context: DODEs model a partial context for a specific domain. New problems/tasks are solved, by articulating the task against this context.

Convivial Tools: Illich <Illich1973> calls tools convivial that users actively master and can use them according to their goals.

Cooperative Problem Solving Systems: Systems which cooperate with the user, i.e., certain tasks are done by the user, others by the system. Systems that combine the computer's strengths with the user's strengths to solve a problem.

Critics: A critic is a system that gives context-sensitive advice regarding a product under development. Critics needs a metric to evaluate the quality of a solution. Specific classes of critics are: generic critics, specific critics, interpretive critics, pluralitic critics

Cross-Cultural Communication: Design is a collaborative activity bringing together stakeholders from different domains (different work cultures, and different geographical cultures). Communication across these cultures is difficult. Artifacts often play an important role to ground this communication and to incrementally create a shared understanding.

Customizability: Modification of a systems to fit the needs/desires of a specific user. The modification should only require a limited understanding of the system's internal structure. - R: Adaptable Systems, End-user Modifiability, End-user Programming

Delegation Principle: Tasks are delegated to other agents if doing so is more economical. People delegate tasks to other persons or to systems if they have a complete specification for it and if it is not more effort to convey the specifications to the other person orthe system than to do the task themselves. Examples: Spreadsheets, Spelling Checkers.

Intelligent support systems should be able to deliberate their advice (e.g., a computer-based critic should be able to deliberate about its criticism with another computer-based critic or with a human).

Design: Design is concerned with how things ought to be in order to attain goals and to function . In constructive design, a specific artifact is designed. In argumentative design, the design space and the design trade-offs of a class of designs is discussed <FischerMcCallMorch1989>.

Design Environments: Knowledge-based systems that support the design of an artifact by giving examples, knowing how components fit together, showing demonstrations, criticizing (partial) designs. They extend construction kits by supporting not just the design of an artifact, but the design of a good artifact.

Design Rationale: Successful computational artifacts will evolve over long periods of time. To support changes, the rationale behind the existing artifact is needed. InDODEs, design rationale is recorded in the argumentation component.

Differential Descriptions: Descriptions that are based on a similar artifact and mention only the differences to it. Examples: describing emacs by describing its differences to vi, describing Genera by describing its differences to UNIX, VMS, MS-DOS. Can be a powerful technique in generating examples, especially if they are based on a system's model of a user.

Direct Manipulation: An interface technique which is based on the "world model", i.e. users can directly manipulate objects which are represented on the screen <HutchinsHollanNorman1986>. Examples: PinBall and Music Construction Kit

Distributed Cognition:

Downstream Design Activities: Design processes create mappings between three different entities: the world, specifications and implementations. Downstream design activities are the translations between specifications and implementations. - R: Upstream Design Activities, Problem Framing and Solving

Error Elimination: A research methodology advocated by Karl Popper ; it provides the theoretical foundation for design methdologies such as rapid prototyping, iterative design, and management of trouble.

Evolutionary Growth: The SER model postulates, that DODEs will undergo evolutionary growth through its use.- R: SER Model, Programmable Design Environments

Expert Systems: Refers to computer programs that apply substantial knowledge of specific areas of expertise to the problem solving process. The term expert is intended to apply both narrow specialization and competence where success of the system is often due to this narrow focus .

Exploratory Programming: For ill-structured problems, it is not possible to specify at the outset what the complete nature and behavior of the system should be. The challenge for many systems in artificial intelligence and human-computer communication research lies in getting the specifications right, rather than implementing given specifications.

Cognitive Fidelity: A representation of a complex system that helps users to understand the system. This representation does not necessarily give an exact description of the system's actual working <Brown1986>. Cognitive fidelity should enhance a user's capability to construct a mental model of a system.

Great Aha: The event of finding (not by actively searching) a piece of information that solves a long perceived problem. In such situations, users are most receptive to integrate the new knowledge in their own understanding and repertoire of actions.

High-Functionality (Computer) Systems and Applications: Systems which contain thousands of objects and whose description requires thousands of pages. For these systems, complete understanding is impossible. Examples: Symbolics Lisp machines, UNIX, MS-Word, MS-Office, multi-media authoring environments

Human Costs: Occur in using, learning, understanding, fighting, and introducing systems into a social setting (office, research group).

Human Computer Communication: Is more than the user interface -- successful communication relies on shared knowledge and management of trouble.

Human Problem-Domain Communication: Extension and specialization of human computer communication, where the computer remains "invisible", i.e., the communication takes place in terms of the problem domain, not of the computer. Requires domain-oriented abstractions as a basis for shared knowledge. Reduces the representational gap between the real world and computational representations of it.

Hypertext: Nonlinear text. Pieces of text interconnected with multiple links. The reader can choose one of many possible sequences. Methodology for information representation and access (e.g., in argumentative design) <Conklin1987>.

Ill-defined Problems: Problems are ill-defined (or wicked) when no specification for them is available. The integration between problem framing and problem solving is critical for ill-defined problems.

Increasingly Complex Micro-Worlds (ICM): A microworld is a sufficiently consistent subset of a system, in which only part of the functionality is available, and therefore it is easier to use. The idea is to provide more and more functionality (ICMs) when a user is proficient in the current microworld <BurtonBrownFischer1984>.

Incremental Formalization: In the evolutionary growth phase of the SER model, information is often added in forms which cannot be interpreted by DODEs. Incremental formalization (often occuring during the Reseeding phase) increases the amount of interpretability of information.

Indirect, Long-Term Collaboration: Complex artifacts often develop over long periods of time. Collaborative activities are required when direct face-to-face collaboration is not possible or impractical. DODEs support indirect, long-term collaboration by associating information (e.g., design rationale) with the artifact.

Information Access: Characterizes situations where users actively search for information (either in the form of information retrieval or information exploration).

Information Delivery: Complements information access and is needed in situations where users are unable to articulate the need for information or are unware that they may profit form information. DODEs support information delivery with critics and simulations and uses its intent and context mechanisms to make information relevant to the task at hand.

Information Volunteering: Giving potentially useful information the communication partner has not explicitly asked for. In a joint human-computer systems, information can be volunteered by the computer <FischerLemkeSchwab1985> or by the human <FischerStevens1987>.


Intelligent Support System: A generic term for computer-based systems which act as tutors, critics, consultants, or advisors.

Intent Articulation: The descriptive mechanism in design environments to allow users to describe the task at hand (e.g., a partial specification and a partial construction).

Intrusiveness: A dimension of active computational artifacts (e.g., agents, critics, information volunteering) which should be set at the "right" level.

Knowledge (and Domain) Construction: A methodological approach which assumes that the knowledge for many system developments is not out there (and therefore needs to be only acquired), but needs to be constructed.

Knowledge-Based Systems: Difference to expert systems: they are focused on the knowledge the systems carry, rather than on the question of whether or not such knowledge constitutes expertise. These systems have explicit knowledge bases and some flexibility in the use of the knowledge.

Layers of Abstraction: A system architecture which contains a numbers of layers starting with a general purpose layer (e.g., a programming language). The higher levels are less general, more application-oriented, and provide a smaller transformation distance to the application domain for which they are suited. Example: MCL/Agentsheets/VDDE.

Learner-Centered Design: Acknowledges the fact that designers using computational artifacts are not just static users but learners and that these learning processes need to be supported by the system.

Learning on Demand: Situated learning in a working context which occurs at the user's discretion - often triggered by an impass. In large information stores, such as high-functionality computer systems, where users only have a partial knowledge, learning on demand is the only viable strategy.

Life-Long Learning: Postulates that learning does not end when one leaves school. It is more than "adult education". It is applicable to the educational experience of both children and adults by bringing the child's experience closer to meaningful and personalized work and the adult's experience closer to one of continued growth and exploration.

Location/Comprehension/Modification Cycle: Taking advantage of large information repositories requires that we locate task-relevant functionality, comprehend it and modify it to fit new needs. DODEs provide computational support mechanisms for these activities. - R: Object-Oriented System Architectures, Reuse, Redesign, Catalogs

Management of Trouble: The possibility to start a clarifying dialogue when a user is in trouble, e.g., doesn't understand an error message ("let's talk about it") .

Malleable Systems: Systems which are adaptive and adaptable.

Mental Model: A human's set of beliefs about how the system operates; the user's mental model will inevitably differ, in varying degrees, from the designer's mental model <GentnerStevens1983,Turner1988>.

Mixed-initiative Dialogue: A dialogue in which the initiative can be taken by both communication partners, in contrast to a dialogue in which one asks the questions and the other one answers them. Mixed-initiative dialogue have to support information volunteering.

Models of the User: Models of the user can have the following meaning: (a) a designer's knowledge of the intended user community or (b) a systems knowledge of a user. In the latter case, the model can be used to adapt a system's behavior to a specific user <Rich1983b>.

Models of the Task: In DODES, models of the tasks can be articulated with specification components: Often they overlap with models of the user (e.g., design a kitchen for a person in a wheelchair).

Multifaceted Architecture for Design Environments: A domain-independent architecture underlying the development of domain-oriented design environments. Examples: Janus, Hydra

Multiple Specification Techniques: For most problems (e.g., information retrieval tasks, object descriptions) there are multiple ways of specifying them (e.g., graphics, examples, goals, end-results). Therefore multiple specification techniques should be supported <FischerNieper-Lemke1989>.

Representations for Mutual Learning and Understanding: To support different groups of stakeholders in design to incrementally understand each other, representations are needed which can be understood by all participants. - R: Languages of Doing <Ehn1988>, Symmetry of Ignorance, Cross-Cultural Communication

Natural Communication: Natural communication is more than understanding natural language. It includes resources for the management of trouble, clarifying dialogues, information volunteering, etc.. The form of natural communication does not have to be in natural language.

Objective Computability: Concerned with theoretical determination of whether a problem can be solved, i.e., what can be done in principle. Examples: to program a pinball machine in assembler, to walk from Los Angeles to New York.-R: Subjective Computability.

Object-Oriented System Architectures: Systems (a) whose information units are objects that can react to messages, (b) systems in which data objects exhibit hierarchical inheritance .

Opacity: Denotes the degree to which the system's functionality is not able to be perceived from its interface . Opacity is a special problem for many informational systems (as compared to mechanical systems). The software oscilloscope <BoeckerFischerNieper1986> is an effort to overcome the opacity of sytems.

Organizational Learning: Working and learning become increasingly collaborative activities based on the limitations of the individual human mind. Individual learning needs to be complemented by organizational learning. DODEs can support organizational learning by their function as organizational and artifact memories.

Owner of Problems: Need to remain active participants in the solving of ill-defined problems. The owners of problems will be practitioners of specific problem domains requiring the support of human problem domain communication.

Participatory Design: The symmetry of ignorance makes participatory design a necessity. - R: Cross-Cultural Communication

Problem Framing and Solving: In the real world, problems are not given but need to be framed. But problem framing often requires attempts to partially solve the problem. Therefore problem framing and solving need to be integrated. DODEs support this integration with specification and constrcution components.

Production Paradox: People are not always eager to learn new things, but they want to get their work done, i.e., getting the job done is the primary focus <CarrollRosson1986>.

Programmable Design Environments: The SER model postulates that in design environments (at the generic level at an the specific task level) desing-in-use needs to be supported. Support for end-user modifiability and end-user programming <Eisenberg1991> and collaborative work practices <Nardi> is required to make DODEs programmable. - R: Evolutionary Growth, SER Model

Perceived Value of a System: Users judge the value of a system on their perceived value (including their goals, their background knowledge, and their understanding of the system's capabilities and limitations). The perceived value can be quite different from the actual value.

Reflection-in-Action: <Schoen1983> - R: experiental and reflective cognition <Norman1993>, ready-to-hand (Heidegger)

Reuse: Any way in which previously written software can be used for a new purpose <Fischer1987d>. Example: reusing the classes which define the building blocks of a window systems; building a pinball machine using the parts of the pinball construction kit.

Redesign: Modification of a system by replacing some of its components; alteration of an existing artifact to fit a new situation; Example: building a new pinball machine based on one of the samples provided in Pinball Construction Kit.

Remote Explorium: The Remote Explorium "virtualizes" DODEs by making them accessible through the world wide web. Communities of practice can use and contribute to DODEs and develop without constraints of space.

Reseeding: Reseeding is a coordinated effort between environment developers and domain designers to cleanup, organize and incrementally formalize DODEs which have grown through evolutionary growth processes.- R: SER Model

Seeds: Environment developers and domain designers develop the seed for a DODE. It is called a seed to indicate that such an environment can never be complete but must grow through its use.- R: Evolutionary Growth, Reseeding, SER Model

Self-Directed Learning:

SER Model: The SER model is a process model for design underlying DODEs. It is fundamentally different from expert system approaches in AI and from software engineering approaches which are specification driven.

Shared Understanding: Natural communication, cooperative problem solving have to rely on shared knowledge bases which contain knowledge of a problem or domain that is common to both communication agents. The knowledge contained in the shared knowledge base does not have to be explicitly communicated.

Situated Action/Cognition: Emphasizes that real world activities are situated in the environment in which they take place. By using the world as a resource we can simplify planning processes and overcome their restrictive elements.

Situation Awareness: The possibilities/mechanisms of a systems to be aware of what is going on. This is easier in our domains, because the activities (e.g., the design of an artifact) takes places within the system. - R: Intent Articulation

Situation Model: Specification of a problem in terms of the situation the user is in, i.e. a situation is characterized with respect to the user's goals <FischerKintsch1986>. The gulf of execution and evaluation is the effort to bridge the gap between the situation model and the system model <Norman1986>.

"Soft" Software: Software that can be modified by the user. This should be possible for all software (as the name says), but it is more wishful thinking than a reality for most software packages. Good tools are needed to make software really "soft".

Software Oscilloscope: A set of visualization tools and control mechanisms to monitor the execution of a program and to understand the structure and function of software. Has the potential to overcome the opacity of a complex informational system <BoeckerFischerNieper1986,Computer1985>.

Speaker-Listener Reversal: Listening is usually the more difficult part of a conversation because the listener has to understand the terms the speaker is using and cannot use his or her own terms. Based on the "asymmetry between humans and computers," it is hoped that more successfull human-computer systems can be developed more quickly if the computer assumes the easier role of speaking, and the human tries to make sense of the computers utterances. Example: Natural language based menu systems <TennantRossThompson1983>, Helgon <FischerNieper-Lemke1989>.

Subjective Computability: Characterize what users can really do with a system, as opposed to what they can do in principle (objective computability). Restricting the objective computability may increase the subjective computability.

Symmetry of Ignorance: Real world design problems transcend the knowledge of individuals and specific groups. All participants who have a stake in the design activity should be able to contribute their knowledge <Rittel1984>. - R: Participatory Design

System Model: A description of a system in its own terms without references to goals and plans which the system might help to achieve. - R: Situation Model.

Tool Kit: Set of tools, where a tool is used to build something, but does not become part of the final product. Examples: debugger, compiler, Symbolics Document Examiner, software oscilloscope, editor.

Upstream Design Activities: Design processes create mappings between three different entities: the world, specifications and implementations. Upstream design activities are the translations between the world and the specifications. - R: Downstream Design Activities, Problem Framing and Solving

Usable Systems: Systems which are easy to learn and to use. Usability does not automatically include usefulness <Fischer1987e>.

Useful Systems: Systems which have a broad functionality and which have sophisticated ways to increase productivity. They are not necessarily usable -- especially for the non-expert <Fischer1987e>.

User-Centered System Design: Designing systems from the outside (i.e., the user) and not from the inside (i.e., the hardware); a design philosopy that emphasizes the needs and abilities of the user, which is generally opposed to a philosopy that concentrates on efficient computation .

Utility: Defined as the quotient Value / Effort. It postulates that users will not mind a real effort to learn or to do something in cases where they can expect a substantial value.

General Index