next up previous
Next: Example Up: Computer-Aided Participatory Design Previous: Computation and participation

n-dim

 

We begin by introducing the building blocks of n-dim--objects and models. There is a basic cleavage in the space of n-dim objects between atomic and structured objects. As the name indicates, atomic objects cannot be broken down any further, e.g. an integer, a link, a piece of text, an image, an audio bitstream, etc. One could think of atomic objects as things that have values of some sort.

The primary form of structured object is the model. A model is a set of links, which are, themselves, atomic objects. Link types are given their meaning(s) by the modeling language(s) in which they occur. It is quite possible to have the same link type mean totally different things in different contexts; we view the meaning of links as something to be negotiated by users of the system over time. Operationalizing the semantics of particular interpretations of links is considered an open-ended process; n-dim provides mechanisms for doing so, but does not require it to be done in order to use a link type. All objects, whether structured or not, are constructed using another model as their modeling language. Typically, modeling languages specify what objects can be in a model and what relations they can have to one another. Such specifications can be thought of as grammars.

To illustrate these concepts, Figure 1 shows the model Should_I_Participate created by an n-dim user with the Universal modeling language. The model shows that the object labeled Self_Interest influences the object labeled Participation, Participation requires Resources, Participation influences the Quality_of_Design, and Time is a Resource. The legal types of objects and links in the Universal modeling language include all existing types known to n-dim, as well as additional arbitrary types defined by the user.

  figure237
Figure 1:  A simple n-dim model

There is a special link called a part link, which is canonically represented as a box inside of a box. That is, Should_I_Participate in Figure 1 contains five part links, all whose source is Should_I_Participate itself and whose targets are the objects displayed ``inside'' the model. It must be stressed that, Should_I_Participate does not contain any of the five objects that appear inside it; this is simply the canonical n-dim visual representation for a part link. The four other links in Should_I_Participate are represented as directed lines, which is the normal representation of all types of links except for the part link.

In Figure 1, the object Participation is itself a model. One can view its content by ``opening'' it. The process of traversing models through opening them (i.e., tracing part links) is a browsing activity. One can also browse the data in n-dim models in different ways (e.g., through directed search), depending on the models one chooses to traverse.

One can map a structure of an n-dim model onto multiple projections, which discriminate between possible views of that structure. Finally, any projection can be mapped onto multiple presentations, which fix the characteristics of projection vis a vis its rendering.gif n-dim uses the same representational mechanisms to deal with all three levels, projections are models, as are renderings. The system merely interprets such models appropriately when needed.

n-dim models can play at least two different roles for an n-dim user: instance/prototype and language. An n-dim model is in a specific context. When many contexts are found where such models are useful, a modeling language, that is, a model describing the possible structure of other models, can be created.

To illustrate, Figure 2 depicts two additional models created in the Universal modeling language, where node and link types can be any known to n-dim. Figure 3 shows a model created from the models in Figures 1 and 2 in a new language, IBIS (issue-based language), that may have evolved from observing similarities in the previous models and the wish to integrate them.

  figure279
Figure 2:  Two additional models

  figure318
Figure 3:  Transformation into a new model

The language role is easier to describe. A language has in mind some restrictive purpose and functionality. Whereas the Universal language, used to construct the models in Figures 1 and 2, allows the use of arbitrary nodes and links, the languages MLTransformation and IBIS specify a small number of legal types of nodes and links that have rather transparent meanings. The more restrictive or strongly typed the language, the more amenable it is to the applications of formal methods. As a simple illustration, in the Issues_in_my_Participation model, the structure of sub-issues-of could be used to determine when the goal issue Decide has been attained. Or, if issues would be restricted (or specialized) to contain numeric information about the expected duration to solve them, the structure of issues could be used to find the critical path to address the goal issue.

The desire to formalize or standardize as a primary objective often leads to (1) the creation of formal techniques for design such as grammars [62, 63], (2) the establishment of standards such as STEPgif, or (3) the proposal of various formal data models such as EDM [64] or others [65]. n-dim is developed to provide support for modeling all these endeavors including the embedding of tools such as the layout design system ABLOOS [51, 34]. In fact, such modeling activities are relatively easy, albeit quite involved, compared to providing support for informal modeling such as sketching, communicating, or in general, to the social construction of shared memory.

The prototype and language roles of n-dim models play a crucial part in the usability of n-dim in the sense that they allow users to mix bottom-up and top-down processes. In the former, a user creates models of specific situations and from these generalizes to create a modeling language as demonstrated in Figures 2 and 3. In the latter, the language is defined from which individual instances of the model can be created and elaborated to use rules (see below) and other external computational agents.

While a modeling language defines the set of possible instances of that language, it does not necessarily define the set of meaningful instances. Some constraints can easily be imposed on a language for conveying simple semantic information. For example, in the IBIS modeling language, the link sub-issue-of can link two ISSUE objects. To capture more complex semantic, as well as syntactic, information about models, additional facilities are needed. The ability to put rules in modeling languages provides these facilities [34].

n-dim contains additional facilities that are critical for the participation of multiple people in a design project. The deal with the creation, communication, and analysis of information. These categories overlap and feed one into the other; they include Publication, Search and the Talk facilities, and partially integrated natural language processing and machine learning capabilities. We briefly discuss each of them in turn.

Publication (creation facility). Participation is a situation where the personal and the community intermingle; therefore, n-dim must allow for maintaining personal and community workspaces. In the personal workspace, participants can create their models in privacy. Once participants decide to share models, they ``publish'' them, thereby allowing all the remaining participants to inspect them. Published objects are persistent, they remain unchanged. Only their copies can be altered. Published objects provide the means for keeping design history and facilitate the creation of shared memory. To illustrate, Figure 1 depicts a published object. It is distinguished from ordinary objects by the two stones mark to the left of the model's name.

Talk (communication facility). The talk facility provides a means for synchronous communication. This facility allows participants to exchange short notes or arbitrarily complex information such as models.

Search (communication and analysis facility). Publishing and searching are critical activities in modeling by multiple participants. They provide the basic substance for asynchronous communication. Participation can easily generate an enormous amount of information in the form of published models. As the corpus of information increases continually, facilities are needed to search it for information relevant to current modeling activities. Currently, search is performed via a structured query editor. n-dim allows for, and will include, techniques designed to facilitate search by models, whereby a user could specify a partial model and search for models closely related to the outlined model. These techniques would be significantly more usable to computer illiterate participants.

Natural language processing and machine learning (analysis and creation facilities). Natural language processing will allow participants to discover terminological patterns implicit in large text corpora written by previous participants. The discovered patterns can act as a basis in building conceptual models thus aiding in the creation process. Further, such patterns can be used to create synonyms for extending search queries beyond idiosyncratic labeling. The machine learning capability will allow participants to (1) inspect large amount of technical information and transform it into comprehensible forms; (2) learn and evolve the understanding of the current design problem through analyzing its progress and its relation to previous designs; and (3) compile information for future reuse.

All the above facilities are expected to be executed under participants' control; there is no assumption that any of them will be executed automatically.


next up previous
Next: Example Up: Computer-Aided Participatory Design Previous: Computation and participation

Yoram Reich
Fri Oct 31 12:13:20 IST 1997