scispace - formally typeset
Search or ask a question

Showing papers on "Object-oriented design published in 1993"


Book
01 Dec 1993
TL;DR: This chapter discusses the development of Object-Oriented Programming Languages and the Structure of Complex Systems, and the role of Classification in this development.
Abstract: I. CONCEPTS. 1. Complexity. The Inherent Complexity of Software. The Structure of Complex Systems. Bringing Order to Chaos. On Designing Complex Systems. Sidebar: Categories of Analysis and Design Methods. 2. The Object Model. The Evolution of the Object Model. Elements of the Object Model. Applying the Object Model. Sidebar: Foundations of the Object Model. 3. Classes and Objects. The Nature of an Object. Relationships Among Objects. The Nature of a Class. Relationships Among Classes. The Interplay of Classes and Objects. On Building Quality Classes and Objects. Sidebar: Invoking a Method. 4. Classification. The Importance of Proper Classification. Identifying Classes and Objects. Key Abstractions and Mechanisms. Sidebar: A Problem of Classification. II. THE METHOD. 5 .The Notation. Elements of the Notation. Class Diagrams. State Transition Diagrams. Object Diagrams. Interaction Diagrams. Module Diagrams. Process Diagrams. Applying the Notation. 6 .The Process. First Principles. The Micro Development Process. The Macro Development Process. 7. Pragmatics. Management and Planning. Staffing. Release Management. Reuse. Quality Assurance and Metrics. Documentation. Tools. Special Topics. The Benefits and Risks of Object-Oriented Development. III. APPLICATIONS. 8. Data Acquisition: Weather Monitoring Station. Analysis. Design. Evolution. Maintenance. Sidebar: Weather Monitorint Station Requirements. 9. Frameworks: Foundation Class Library. Analysis. Design. Evolution. Maintenance. Sidebar: Foundation Class Library Requirements. 10. Client/Server Computing: Inventory Tracking. Analysis. Design. Evolution. Maintenance. Sidebar: Inventory Tracking System Requirements. 11. Artificial Intelligence Cryptanalysis. Analysis. Design. Evolution. Maintenance. Sidebar: Cryptanalysis Requirements. 12. Command and Control Traffic Management. Analysis. Design. Evolution. Maintenance. Sidebar: Traffic Management System Requirements. Afterword. Appendix: Object-Oriented Programming Languages. A.1 Concepts. A.2 Smalltalk. A.3 Object Pascal. A.4 C++. A.5 Common Lisp Object System. A.6 Ada. A.7 Eiffel. A.8 Other Object-Oriented Programming Languages. Notes. Glossary. Classified Bibliography. A. Classification. B. Object-Oriented Analysis. C. Object-Oriented Applications. D. Object-Oriented Architectures. E. Object Oriented Databases. F. Object-Oriented Design. G. Object-Oriented Programming. H. Software Engineering. I. Special References. J. Theory. K. Tools and Environments. Index. 0805353402T04062001

1,200 citations


Book ChapterDOI
26 Jul 1993
TL;DR: This work describes how to express and organize design patterns and introduces a catalog of design patterns, which provide a common vocabulary for design and reduce system complexity by naming and defining abstractions.
Abstract: We propose design patterns as a new mechanism for expressing object-oriented design experience. Design patterns identify, name, and abstract common themes in object-oriented design. They capture the intent behind a design by identifying objects, their collaborations, and the distribution of responsibilities. Design patterns play many roles in the object-oriented development process: they provide a common vocabulary for design, they reduce system complexity by naming and defining abstractions, they constitute a base of experience for building reusable software, and they act as building blocks from which more complex designs can be built. Design patterns can be considered reusable micro-architectures that contribute to an overall system architecture. We describe how to express and organize design patterns and introduce a catalog of design patterns. We also describe our experience in applying design patterns to the design of object-oriented systems.

704 citations


Book ChapterDOI
26 Jul 1993
TL;DR: This paper introduces Abstract Communication Types (ACTs), which are objects that abstract interactions among objects that make it easier to model layered communication architectures, to enforce the invariant behavior among objects, to reduce the complexity of programs by hiding the interaction details in separate modules and to improve reusability through the application of object-oriented principles to ACT classes.
Abstract: It is generally claimed that object-based models are very suitable for building distributed system architectures since object interactions follow the client-server model. To cope with the complexity of today's distributed systems, however, we think that high-level linguistic mechanisms are needed to effectively structure, abstract and reuse object interactions. For example, the conventional object-oriented model does not provide high-level language mechanisms to model layered system architectures. Moreover, we consider the message passing model of the conventional object-oriented model as being too low-level because it can only specify object interactions that involve two partner objects at a time and its semantics cannot be extended easily. This paper introduces Abstract Communication Types (ACTs), which are objects that abstract interactions among objects. ACTs make it easier to model layered communication architectures, to enforce the invariant behavior among objects, to reduce the complexity of programs by hiding the interaction details in separate modules and to improve reusability through the application of object-oriented principles to ACT classes. We illustrate the concept of ACTs using the composition filters model.

312 citations


Patent
18 Oct 1993
TL;DR: In this paper, a system for increasing the security of a computer system, while giving an individual user a large amount of flexibility and power, is presented, where a standard object that has the capability to embed objects is used.
Abstract: A system for increasing the security of a computer system, while giving an individual user a large amount of flexibility and power. To give users the most power and flexibility, a standard object that has the capability to embed objects is used. To allow users even more flexibility, a standard object tracking mechanism is used that allows users to distribute multiple encrypted embedded objects to other individuals in a single encrypted object. By effecting compartmentalization of every object by label attributes and algorithm attributes, multi-level multimedia security is achieved.

290 citations


Book
01 May 1993
TL;DR: The author introduces the reader to real-time and concurrency concepts, and reviews the background in software design and development needed for the balance of the book, and takes two related object-oriented methods - ADARTS and CODARTS - and shows in detail how they can be applied.
Abstract: From the Publisher: real-time, and distributed systems, describing the concepts most important in their design, and surveys the design methods available for them. Drawing on his experience in industry, he takes two related object-oriented methods - ADARTS (Ada-based Design Approach for Real-Time Systems) and CODARTS (Concurrent Design Approach for Real-Time Systems) - and shows in detail how they can be applied. The author first introduces the reader to real-time and concurrency concepts, and reviews the background in software design and development needed for the balance of the book. He then describes a number of methods that can be used for real-time and concurrent system design, comparing them through application to a common problem. Methods described include Real-time Structured Analysis and Design, Jackson System Development, Naval Research Lab/Software Cost Reduction, and Object Oriented Design. For each design method treated, the author presents the concepts on which it is based, the steps used in its application, and an assessment of its effectiveness. Gomaa then focuses on ADARTS, a practical method developed by the author and proven over time, and CODARTS, which contains the author's latest ideas on software analysis and design. The final part of the book features practical case studies in which the ADARTS and CODARTS methods are demonstrated. Highlights Provides a basic understanding of concepts and issues in concurrent system design, while surveying and comparing a range of applicable design methods. Elaborates two object-oriented design methods for the effective design of concurrent and real-time systems. Describes a practical approach forapplying real-time scheduling theory to analyze the performance of real-time designs.

266 citations


Patent
24 Feb 1993
TL;DR: In this article, a new object for pasting data within a clipboard to a desktop for an object management facility is created, and an icon is displayed on the desktop for the new object.
Abstract: In response to a user pasting data within a clipboard to a desktop for an object management facility, a new object for the data is created. The data is placed within the new object, and an icon is displayed on the desktop for the new object. When the data is text, the new object is created to be of a type which contains text. When the data is bitmapped, the new object is created to be of a type which contains bitmaps. The data is placed in the clipboard, for example, in response to a Cut command or in response to a Copy command from an application process originally processing the data. The data can reformatted, for example, before exporting the data from the application process, before importing the data to the new object or after importing the data to the new object. Also, in response to a user selecting a first object and issuing a conversion command, classes of objects into which the first object may be converted are displayed to the user. Upon the user selecting a class of objects into which the first object is to be converting, the first object is converted into a new object of the selected class of objects. The new object is created, data from the first object is extracted and sent to the new object. The data may be converted to a format usable by the first object, by the new object or by the object management facility.

233 citations


Patent
20 Sep 1993
TL;DR: In this paper, an object based data processing system including an extensible set of object types and a corresponding set of "object managers" wherein each object manager is a program for operating with the data stored in a corresponding type of object.
Abstract: An object based data processing system including an extensible set of object types and a corresponding set of "object managers" wherein each object manager is a program for operating with the data stored in a corresponding type of object. The object managers in general support at least a standard set of operations. Any program can effect performance of these standard operations on objects of any type by making an "invocation" request. In response to an invocation request, object management services (which are available to all object managers) identifies and invokes an object manager that is suitable for performing the requested operation on the specified type of data. A mechanism is provided for linking data from one object into another object. A object catalog includes both information about objects and about links between objects. Data interchange services are provided for communicating data between objects of different types, using a set of standard data interchange formats. A matchmaker facility permits two processes that are to cooperate in a data interchange operation identify each other and to identify data formats they have in common. A facility is provided, for managing shared data "resources". Customized versions of resources can be created and co-exist with standard resources. A resource retrieval function determines whether a customized or a standard resource is to be returned in response to each request for a resource.

143 citations


Patent
20 May 1993
TL;DR: In this article, an object based data processing system including an extensible set of object types and a corresponding set of "object managers" wherein each object manager is a program for operating with the data stored in a corresponding type of object.
Abstract: An object based data processing system including an extensible set of object types and a corresponding set of "object managers" wherein each object manager is a program for operating with the data stored in a corresponding type of object. The object managers in general support at least a standard set of operations. Any program can effect performance of these standard operations on objects of any type by making an "invocation" request. In response to an invocation request, object management services (which are available to all object managers) identifies and invokes an object manager that is suitable for performing the requested operation on the specified type of data. A mechanism is provided for linking data from one object into another object. A object catalog includes both information about objects and about links between objects. Data interchange services are provided for communicating data between objects of different types, using a set of standard data interchange formats. A matchmaker facility permits two processes that are to cooperate in a data interchange operation identify each other and to identify data formats they have in common. A facility is provided for managing shared data "resources". Customized versions of resources can be created and co-exist with standard resources. A resource retrieval function determines whether a customized or a standard resource is to be returned in response to each request for a resource.

117 citations


Proceedings ArticleDOI
01 Jun 1993
TL;DR: An event interface is introduced, which extends the conventional object semantics to include the role of an event generator, and provides a basis for the specification of events spanning sets of objects, possibly from different classes, and detection of primitive and complex events.
Abstract: This paper proposes a new approach for supporting reactive capability in an object-oriented database. We introduce an event interface, which extends the conventional object semantics to include the role of an event generator. This interface provides a basis for the specification of events spanning sets of objects, possibly from different classes, and detection of primitive and complex events. This approach clearly separated event detection from rules. New rules can be added and use existing objects, enabling objects to react to their own changes as well as to the changes of other objects.We use a runtime subscription mechanism, between rules and objects to selectively monitor particular objects dynamically. This elegantly supports class level as well as instance level rules. Both events and rules are treated as first class objects.

111 citations


Patent
02 Apr 1993
TL;DR: In this article, the authors propose a hierarchical modeling system that arranges the model in a hierarchical structure of communicating and independently executing object modules controlled by an overall supervisor, each object represents a component or a system and includes an object controller which communicates with other object modules, an object error checker and an object model.
Abstract: A modeling system that arranges the model in a hierarchical structure of communicating and independently executing object modules controlled by an overall supervisor. Each object represents a component or a system and includes an object controller which communicates with other object modules, an object error checker and an object model. The objects communicate through a database accessible by all objects. The structure of the object module and the hierarchical structure itself are standardized allowing new components or systems to be added by adding a standard object module which includes an object model that is unique to the object being modeled. The controller for an object causes subobjects upon which the object model depends for data to be executed prior to execution of the object model. Such bottom up model traversal insures that models do not execute until all needed data is available. The error check module checks the controller and model modules to make sure they are executing properly. The object model includes a deterministic equation based component aging model, a statistical based component aging model and expert rules that combine the deterministic and statistical model with the knowledge of experts to determine the current state of the object and make recommendations concerning future actions concerning the object. A maintenance module is also included along side the supervisor that allows maintenance actions for the objects to be taken into consideration.

110 citations


Journal ArticleDOI
TL;DR: The maintenance requirements of object-oriented software, including the ability to make changes easily and an in-depth understanding of the software's structure and behavior, are discussed and the problems encountered by a maintainer trying to understand the software by reading and statically analyzing it are described.
Abstract: The maintenance requirements of object-oriented software, including the ability to make changes easily and an in-depth understanding of the software's structure and behavior, are discussed. The problems encountered by a maintainer trying to understand object-oriented software by reading and statically analyzing it are described. The problems caused by dynamic binding, polymorphism, and cooperating object classes in object-oriented software maintenance are reviewed. >

Patent
Harold R. Skinner1
30 Apr 1993
TL;DR: In this article, object managers on different computing platforms communicate with each other in a cooperative manner, while allowing the objects on the computing platforms to communicate with one another using a remote procedure call which preserves the object oriented characteristics of data independence and encapsulation.
Abstract: Object managers on different computing platforms communicate with each other in a cooperative manner, while allowing the objects on the computing platforms to communicate with each other using a remote procedure call which preserves the object oriented characteristics of data independence and encapsulation. Preferably, each object manager indicates to the other object manager whether local objects have successfully responded to remote messages. The object manager can thereby preserve integrity of the object oriented system by committing or rolling back the system in response to completion of specific tasks or failure to complete specific tasks, even though some of the tasks occurred outside the local object oriented computing environment.

Proceedings ArticleDOI
01 Jul 1993
TL;DR: A measurement approach based on precise assumptions derived from the change process is proposed to capture the difficulty of isolating, understanding, designing and validating changes in software maintainability.
Abstract: Software architecture appears to be one of the main factors affecting software maintainability. Therefore, in order to be able to predict and assess maintainability early in the development process one needs to be able to measure the high-level design characteristics that affect the change process. To this end, a measurement approach based on precise assumptions derived from the change process is proposed. The change process is based on object-oriented design principles and is partially language independent. Metrics for cohesion, coupling, and visibility are defined in order to capture the difficulty of isolating, understanding, designing and validating changes. >

Proceedings ArticleDOI
01 Oct 1993
TL;DR: A method is presented for using composite objects which separates their role and meaning as models of relations between problem-domain concepts from theirrole and meaningAs models of hierarchical sof’twarc structures by capturing the designer’s rationale for model transformation.
Abstract: A method is presented for using composite objects which separates their role and meaning as models of relations between problem-domain concepts from their role and meaning as models of hierarchical sof’twarc structures. The meaning of composite objects is analysed in terms of connections bctwccn real-world concepts in object-oriented analysis and bctwccn software objects in object-oriented design. By capturing the designer’s rationale for model transformation, the resulting models arc casicr to understand and maintain. An embedded systems example illustrates the approach.

Patent
Massimo Messina1
24 Sep 1993
TL;DR: In this article, a method and system for controlling the access to objects in an object oriented data processing application is presented, where the objects are being hierarchically structured and either locally available or retrievable from an external unit.
Abstract: A method and system are provided for controlling the access to objects in an object oriented data processing application, where the objects are being hierarchically structured and either locally available or retrievable from an external unit. Each object has a dependent object counter which indicates the existence or the number of dependent objects associated with that object. When at least one dependent object is not locally available, a dummy object is appended to that object, enabling the object expansion even if the dependent objects of the selected object are not yet locally available in local memory. The objects to be retrieved from the external unit are locked from user access, while access is allowed to the locally available dependent objects.

Proceedings Article
24 Oct 1993
TL;DR: This paper presents a brief overview of the project, the software architecture and some preliminary empirical results, and the strategy is to combine partially automatic layout with manual layout.
Abstract: There is increasing evidence that it is possible to perceive and understand increasingly complex information systems if they are displayed as graphical objects in a three dimensional space. Object-oriented software provides an interesting test case - there is a natural mapping from software objects to visual objects. In this paper we explore two areas. 1) Information perception: we are running controlled experiments to determine empirically if our initial premise is valid; how much more (or less) can be understood in 3D than in 2D? 2) Layout: our strategy is to combine partially automatic layout with manual layout. This paper presents a brief overview of the project, the software architecture and some preliminary empirical results.

Journal ArticleDOI
TL;DR: The subjective judgement by the expert is incorporated in the regression model of the metrics based on the experimental data and ensures that the metric system is pragmatic and flexible for the software industry.
Abstract: The paper presents a new metric for the object-oriented design. The metric measures the complexity of a class in an object-oriented design. The metrics include operation complexity, operation argument complexity, attribute complexity, operation coupling, class coupling, cohesion, class hierarchy, and reuse. An experiment is conducted to build the metric system. The approach is to derive a regression model of the metrics based on the experimental data. Moreover, the subjective judgement by the expert is incorporated in the regression model. This ensures that the metric system is pragmatic and flexible for the software industry.

Patent
Thomas B. Douglas1, Robert J. Torres1
30 Dec 1993
TL;DR: In this article, a method and apparatus for facilitating operator initiated integration of items between software objects in a graphical user interface is presented, where the operator selects a source software object and one or more target software objects.
Abstract: A method and apparatus is provided for facilitating operator initiated integration of items between software objects in a graphical user interface. In this technique, the operator selects a source software object and one or more target software objects. The source software object and the target software objects include data items which may be copied by the operator between the software objects during an accelerated integration mode of operation. During the accelerated integration mode of operation, a graphical pointing device is utilized by the operator to select items which are present in the source software object. By manipulating the graphical pointing device, the operator selects items from the source software object for automatic inclusion in the one or more target software objects, while the graphical pointing device is maintained entirely within the source software object. A visual indication is automatically provided which is representative of the step of automatically copying.

Journal ArticleDOI
A. Snyder1
TL;DR: To address communication problems, a glossary of terms appropriate for the diverse set of domains in which object-oriented concepts are being applied is developed.
Abstract: Core concepts in object-oriented technology are defined. The concepts are the basis for characterizing and contrasting various object-oriented technologies. The core concepts are: all objects embody an abstraction, objects provide services, clients issue requests, objects are encapsulated, requests identify operations, requests can identify objects, new objects can be created, operations can be generic, objects can be classified in terms of their services, objects can have a common implementation, and objects can share partial implementations. To address communication problems, a glossary of terms appropriate for the diverse set of domains in which object-oriented concepts are being applied is developed. The definitions are grouped into three sections in top-down order: terms related to abstraction, terms related to requesting services, and terms related to performing services. >

Proceedings ArticleDOI
01 Oct 1993
TL;DR: The paper discusses the general purpose of analysis and evaluates OOA, arguing that OOA does not deliver what it claims to do, and suggests that it should become problem-oriented rather than target-oriented.
Abstract: The paper discusses the general purpose of analysis and evaluates OOA with respect to this, arguing that OOA does not deliver what it claims to do. The two major problems are that OOA often does not meet the full needs of the analysis phase, and that the transition to design is not always as easy as promised. The last point is illustrated by a solution to the OOPSLA conference registration problem. Due to the mentioned shortcomings, OOA/OOD was not found sufficient for forming the basis of a common development methodology for three Norwegian software producers in a technology transfer project with our university. The suggestion made is that OOA should become problem-oriented rather than target-oriented.

Patent
Shih-Gong Li1, John S. Wang1
28 Dec 1993
TL;DR: In this article, a data processing system for allowing a user to efficiently create an application utilizing a plurality of objects in a graphic user interface is presented, where objects are graphically presented to the user in the user interface.
Abstract: A data processing system for permitting a user to efficiently create an application utilizing a plurality of objects in a graphic user interface. Objects are graphically presented to the user in the graphic user interface. The user is permitted to create a compound object utilizing at least two of the plurality of objects. The compound object is automatically associated with the objects in response to a user input, wherein the compound object thereafter may be selected by the user to efficiently create an application.

Patent
12 Aug 1993
TL;DR: In this article, a palette view is provided onto an object within the system that depicts all the subobjects that potentially form parts of that object, by manipulating the objects in this view, for example by dragging and dropping them onto another view of the object.
Abstract: An object-based computer system has a graphical user interface. A palette view is provided onto an object within the system that depicts all the subobjects that potentially form parts of that object. By manipulating the objects in this view, for example by dragging and dropping them onto another view of the object, the user can select them for inclusion in the object. Also provided is a parts view, which depicts the list of parts that have actually been included within the object.

Proceedings ArticleDOI
01 Mar 1993
TL;DR: Presents a general model for persistent replicated object management and identifies what metainformation about objects needs to be maintained by a naming and binding service to ensure that objects named by application programs are bound to only those object replicas which are in a mutually consistent state.
Abstract: Presents a general model for persistent replicated object management and identify what metainformation about objects needs to be maintained by a naming and binding service to ensure that objects named by application programs are bound to only those object replicas which are in a mutually consistent state. These ideas are developed within the framework of a distributed system in which application programs are composed of atomic actions (atomic transactions) manipulating persistent (long-lived) objects. >

Book ChapterDOI
08 Jun 1993
TL;DR: An overview of the benefits that can be expected from the use of the PNO formalism in dialogue modelling is presented, and a detailed example illustrates the application of this method.
Abstract: This paper presents a survey of three formalisms that are used for modelling the dialogue of user-driven interfaces: state diagrams, events and Petri nets. Petri nets are found to be the best suited formalism in this area, even if they lack structure. In order to address this problem, the usefulness of the object-oriented approach is discussed, and we present a formalism, called Petri Nets with Objects (PNO), that integrates both object-oriented and Petri nets approaches. A three-step method for building such models, consisting in defining the object classes, definiting the presentation and modelling the application's dialogue, is presented, and a detailed example illustrates the application of this method. Finally, we present an overview of the benefits that can be expected from the use of the PNO formalism in dialogue modelling.

Proceedings ArticleDOI
25 Feb 1993
TL;DR: It is argued that the most critical aspects for modeling and control, in a large software engineering environment, are inter/intrateam communication and synchronization.
Abstract: It is argued that the most critical aspects for modeling and control, in a large software engineering environment, are inter/intrateam communication and synchronization. A solution based on a two-level approach is proposed. The Adele kernel supports multiple activities on shared objects, providing services like contextual behavior, active relationships, and general process support. The second level is the TEMPO formalism based on the role concept, which defines a software process step as a set of objects playing a role. Each object's characteristics and behavior depend on the role it plays in the software process it belongs to, and may be part of different simultaneous software processes. TEMPO clearly separates the description of the process from the description of the interaction and collaboration between the different processes. >

Journal ArticleDOI
01 Dec 1993
TL;DR: PLEIADES as mentioned in this paper is a system that provides many of the object management capabilities required to support software engineering environments, but it is limited in both the kinds of functionality they have provided and in the models of support they define.
Abstract: Software engineering environments impose challenging requirements on the design and implementation of an object management system. Existing object management systems have been limited in both the kinds of functionality they have provided and in the models of support they define. This paper describes a system, called PLEIADES, which provides many of the object management capabilities required to support software engineering environments.

01 Jan 1993
TL;DR: The object oriented requirements analysis and logical design is one book that the authors really recommend you to read, to get more solutions in solving this problem.
Abstract: A solution to get the problem off, have you found it? Really? What kind of solution do you resolve the problem? From what sources? Well, there are so many questions that we utter every day. No matter how you will get the solution, it will mean better. You can take the reference from some books. And the object oriented requirements analysis and logical design is one book that we really recommend you to read, to get more solutions in solving this problem.

Patent
11 Jun 1993
TL;DR: In this paper, a tool for system design is provided which allows a user to generate a first set of objects, each defining a portion of the system, and then a second set of implementable objects is generated, each of the second sets of objects is associated with the first set.
Abstract: A tool for system design is provided which allows a user to generate a first set of objects, each defining a portion of the system. The objects may have a parent-child relationship wherein one or more child objects each define a portion of the parent object. A second set of implementable objects is generated, each of the second set of objects is associated with the first set of objects. Links between the first and second sets are generated, the links describing the relationship between requirements associated with the first set and implementations associated with the second set. A matrix of interdependencies is generated between a selected set of the links.

Book ChapterDOI
26 Jul 1993
TL;DR: This paper proposes to hide low-level functions behind object-oriented abstractions such as object-groups, Remote Method Calling, and Smart Proxies, and describes how the Electra toolkit provides such object- oriented abstractions in a portable and highly machine-independent way.
Abstract: Under many circumstances, the development of distributed applications greatly benefits from mechanisms like process groups, reliable ordered multicast, and message passing. However, toolkits offering these capabilities are often low-level and therefore difficult to program. To ease the development of distributed applications, in this paper we propose to hide these low-level functions behind object-oriented abstractions such as object-groups, Remote Method Calling, and Smart Proxies. Furthermore, we describe how the Electra toolkit provides such object-oriented abstractions in a portable and highly machine-independent way.

01 Jan 1993
TL;DR: An overview of a framework for enabling designers to capture and structure as much of the information they use and generate as is possible, and the acronym chosen, n-dim, stands for n-dimensional information modeling, to indicate the authors’ view that the total space of information under consideration is multi-dimensional in nature.
Abstract: The premise of our work is that designers, in the process of doing their work, create models of various kinds, for various purposes, and that it is the negotiation of the structure and content of these models that comprises the bulk of the task of doing design. We give here an overview of a framework for enabling designers to capture and structure as much of the information they use and generate as is possible. We have designed and implemented such a system for creating models in a computer that can be shared with other designers in the course of an ongoing design, made persistent for future recall, classified and categorized so as to facilitate both the study of how design is done in a given organization and the study of design in general. Our system is generic enough to be useful in domains outside of design, and we posit it to be useful in general for anyone who needs to manipulate information in a structured way, an activity called Information Modeling. The acronym chosen for the system, n-dim, stands for n-dimensional information modeling, to indicate the authors’ view that the total space of information under consideration is multi-dimensional in nature.