The n-dim project

Design is a Social Process!

n-dim is a computer system and an approach to study and improve design that takes the above premise seriously. The principal work on the project is done at the Engineering Design Research Center at Carnegie Mellon University, Pittsburgh, PA.

The n-dim home page contains additional information about the project.

A very short description of what one can do with n-dim.

n-dim can be used to build arbitrary models from objects. Models can be informal, like the one in the figure below, or formal such as Petri nets, conceptual graphs, etc.


The model in the Figure "behaves" like it would when viewed in n-dim. That is, one can click on an object and the model will be "opened". In the figure, clicking will lead you to the corresponding page. An object in a model can be anything that can be electronically stored. When clicking on it, it can behave as defined by the user.
The model in the figure was created with the Universal language, which allows any objects and links to be incorporated in a model. The user can easily create other languages that restrict the nature of objects and links and also assign semantics with them. Through this, user can define languages that range from informal to formal and use them.

As an example of the ease of creating a language consider the figure below. In the top right model (labeled "Systematic Diagram Language") we see how the user defines a model consisting of an object Entity and a link labeled sub. This model is written in the Universal modeling language. In the bottom right model (labeled "Entity") the user incorporated three objects: Function, Behavior, and Structure. This model was created with the GlassBox whose meaning is explained below. So far, these models are models as the one shown in the previous figure. However, the user can use models in different ways. One way is to use models as definitions of languages (see the open menu in the top right model). The top left model was created by using the Systematic Diagram Language model as a language. As such, the only types of objects possible are of type Entity and the only links possible are of type sub. The type Entity is further defined by the "Entity" model and through the meaning of the GlassBox language to be one of Function, Behavior, or Structure. Thus, with great ease, the user has created a new modeling language capable of describing functional, behavioral, and structural decomposition diagrams.


Additional screen dumps showing how n-dim might be used can be viewed in the papers below. In particular, the Computer-Aided Participatory Design paper contains an illustration of how n-dim could be used to facilitate true participation by illustrating it through a plausible project that deals with the design of community library.

The n-dim approach to studying and supporting design:

At the foundation (1), there is a software infrastructure designed to address design contexts and also designed to scale up to handle real applications. As additional applications are developed, n-dim would include repositories of various blocks for building applications (2). At the top level (3), our research and development follows the philosophical positions and theories we developed and evolved through empirical studies. These theories guide us in future studies and development projects, and are subject to constant reflection and potential revisions (4).

A project starts as a collaboration with industrial or other partner(s). In order to support design and study it at the same time, we adopt participatory action research (PAR) as our development methodology. Together with our collaborators, we study the present state of information management in the organization. The bottlenecks and their severeness suggest priorities in setting goals for collaborative projects. We jointly define the project goals (5). The development process (6) uses the infrastructure and reuses the repositories of previous blocks (7) for prototyping the application (8). This development, in turn, enriches the repositories and the infrastructure. The application is deployed and tested by its end-users. This process iterates until the goals, as understood at each iteration, are satisfied by the evolving application (9). During the evolution, parts of the system that become stable can be re-written quickly in more efficient code. The collaborative project is studied and reflected upon continuously to uncover potential improvements to all aspects of the methodology (10). Its results are used to refine our theories (11). During such projects we also identify critical areas for basic research, prioritize and execute them.

Our hypothesis is that this process supports the development of support systems in the best way we know. We have developed a collection of tools that supports the execution of this process (Subrahmanian et al., 1997).

n-dim ideas have impact or strong association with the following topics:

  • Computer-Supported Cooperative Work (CSCW)
  • Knowledge Management (KM)
  • Intellectual Capital (IC)
  • Information Modeling
  • Agile Manufacturing
  • Participation Action Research (PAR)
  • Participatory Design (PD)
  • Information Retrieval (IR)
  • Hypermedia
  • Product Data Management (PDM)
  • Software/Design Prototyping
  • Database Management Systems (DBMS)
  • End-User Modifiability, Usability
  • Concurrent Engineering
  • Design Rationale Capture
  • Design Studies, Theories, and Practice
  • ... and more ...

The extent of these associations is discussed in the n-dim papers.

Publications related to n-dim include:

  • Reich, Y., Coyne, F. R., Konda, S., Monarch, I., Subrahmanian, E., and Westerberg, W. A. (1993), Computer-Aided Participatory Design, White paper on the use of n-dim as a support system for participatory design, 1992.
    This paper discusses the underlying foundations for supporting participatory design with computational tools. It introduces n-dim and illustrates it through a plausible reconstruction of a participatory design project for developing a community library. The paper includes many screen dumps with their explanations.
    (HTML file)
  • Reich, Y., Konda, S., Monarch, I., and Subrahmanian, E. (1992), Participation and Design: An Extended View, In PDC'92: Proceedings of the Participatory Design Conference, (Cambridge, MA), Muller, M. J., Kuhn, S., and Meskill, J. A. (eds.), CPSR, Palo Alto, CA.
    This conference paper extends the ideas of participation in design as appeared in diverse disciplines. concurrent engineering. The communication facilities in n-dim are discussed.
    (Postscript file, 177K)
  • Subrahmanian, E., Konda, S. L., Levy, S. N., Reich, Y., Westerberg, A. W., and Monarch, I. A. (1993), Equations aren't Enough: Informal Modeling in Design, AI EDAM, 7(4):257-274.
    This paper puts forward the statement that much of design involves informal modeling and analysis activities rather than the use of formal models such as equations. Examples are described to support this argument and an environment that supports such modeling and analysis activities (i.e., n-dim) is briefly described.
    (Postscript file, 375K; Zipped PS).
  • Subrahmanian, E., Coyne, R., Konda, S. L., Levy, S. N., Martin, R., Monarch, I., Reich, Y., Westerberg, A. (1993), Support system for different-time different-place collaboration for concurrent engineering, In Proceedings of the 2nd IEEE Workshop on Enabling Technologies Infrastructure for Collaborative Enterprises (WET ICE), pp. 187-191, IEEE Computer Society Press, Los Alamitos, CA.
    This conference paper that discusses the critical role of asynchronous, rather than, synchronous communication as a key ingredient in collaborative work or concurrent engineering. The communication facilities in n-dim are discussed. (Postscript file, 124K)
  • Reich, Y., Konda, S., Levy, S. N., Monarch, I., and Subrahmanian, E. (1993), New roles for machine learning in design, Artificial Intelligence in Engineering, 8(3):165-181.
    This paper reviews the present way of using machine learning in design and criticize it as being restrictive. The underlying assumptions under present use are discussed and new ways in which machine learning can be used in design are discussed. The use of natural language processing (NLP) techniques is discussed as well as the use of multiple machine learning tools (multistrategy). The integration framework for all the techniques is, as you have already guessed ... n-dim.
    (Postscript file, 783K)
  • Levy, S., Subrahmanian, E., Konda, S. L., Coyne, R. F., Westerberg, A. W., and Reich, Y. (1993). An overview of the n-dim environment. Technical Report EDRC-05-65-93, Engineering Design Research Center, Carnegie Mellon University, Pittsburgh, PA.
    The original, tried and true, outdated EDRC tech report on n-dim. Quite a lot of it is still valid, but take statements about implementation with a grain of salt. We are planning a new, updated version of this, possibly for publication. In the meantime...
    (Postscript file, 783K)
  • Reich. Y. and the n-dim Group (1995), A Human-Centered Enterprise Information System for Agile Design, Proceedings of the 15th Israeli Conference on Advanced Technologies in Engineering, Management, and Manufacturing, SME, p. 264-270.
    (Postscript file, 115K)
  • Reich, Y., Konda, S. L., Levy, S. N., Monarch, I. A., and Subrahmanian, E. (1996), Varieties and Issues of Participation and Design, Design Studies, 17(2):165-180.
    (Postscript file, 170K)
    Abstract: Participatory design is the antithesis to traditional design in which designers are expected to exhibit their expertise. The right to participate in design is often ignored and even when it is accepted, many obstacles including perceived pragmatic/economic deficiencies and organizational concerns, impede participation. This paper criticizes the foundations of traditional design. It starts from the premise that it is the right of all affected by a design to have an active role in its development and that appropriate ways of exercising this right can lead to better designs. Subsequently, the paper elaborates on some properties of participation in various design disciplines and in particular in the context of architectural design and urban planning. The paper then presents an approach for participation founded on widening communication channels between participants and briefly discusses the potential of computer tools for supporting participatory design. Finally, the paper briefly relates participation and design to several popular concepts such as concurrent engineering, total quality management, and quality function deployment.
  • Subrahmanian, E., Reich, Y., Konda, S. L., Dutoit, A., Cunningham, D., Patrick, R., Thomas, M., Westerberg, A. W. (1997), The n-dim Approach to Building Design Support Systems, Proceedings of ASME Design Theory and Methodology DTM '97 ASME, New York, NY.
    (Postscript file, 263K)
    Abstract: Creating practical design support systems is a complex design endeavor. We approach it with an evolutionary process, one that studies the design information flow then builds and tests information management support systems. Through our experience with industrial partners we have evolved this process into a set of methods and tools that implement these methods. We have evolved an infrastructure ure called n-dim, that is composed of a small number of building blocks that can be composed in ways that match the complexity of design contexts and work. We have developed this infrastructure to be highly flexible so as to allow us to conduct this evolutionary process in a practical project setting.

Activities of group members:

Copyright 2005 Yoram Reich
Page URL:

Last modified: 5/1/2005 10:16:00 PM