Robert Amor's pic

Robert Amor's PhD

Download the full PhD  as a PDF now.

A Generalised Framework for the Design and Construction of Integrated Design Systems

(1997) PhD thesis, Department of Computer Science, University of Auckland, Auckland, New Zealand, 350 pp.


The building industry employs a significant percentage of the workforce of any country, and encompasses a considerable proportion of a country's GDP. Despite that, IT tools used in the design and management of a building project are still fairly crude. Many projects have been undertaken to develop IT-based solutions to support the architecture, engineering, and construction domains (A/E/C), but little effort has gone into the tools required to support these development activities. This is the area in which this thesis concentrates.

To develop a schema representing some subsystem of a building it is necessary to have support tools which enhance the modeller's environment. The current state of the art, a replicated paper based approach, is ineffective at guaranteeing the consistency and validity of large schemas. In this thesis, a more appropriate environment is developed and demonstrated. This provides multiple overlapping views of the developing schema, with guaranteed consistency between all views, the ability for many modellers to work on the schema, and links to related aspects.

The array of schemas being developed for the A/E/C domains contain overlaps of information, though often in different representations. To enable the full use and correct transfer of information between schemas, mappings between their representations need to be defined. This thesis develops a comprehensive mapping language which describes bidirectional mappings between schemas. An automated system has been constructed which can take a mapping specification and manage the updates and consistency of data in models corresponding to the mapped schemas. To manage the development of environments described above, as well as the finished integrated environments proposed, it is necessary to manage and control the supported processes. A notation is developed to allow this control to be defined, and an implementation is provided to demonstrate how a project can be managed.

The end result of the thesis is a set of notations and associated tools which support all aspects of the development and implementation of integrated design environments. The resultant development environment greatly raises the level of support for developers over that offered by current tools, for all aspects of specification, consistency, testing, validation, implementation, and coordination between developers.


List of Figures

List of Tables

1 Introduction

1.1 The Problem Domain
1.2 Related Research
1.3 COMBINE Project
1.4 Underlying Framework
1.5 Research Objectives
	1.5.1 Formalism to specify mappings
	1.5.2 Formalism to specify project and flow of control
	1.5.3 Comprehensive tool set to support model specification
	1.5.4 Inter-model mapping utilising mapping specifications
	1.5.5 Control system utilising project and flow of control specification
1.6 Description of Example
	1.6.1 The Snart language
	1.6.2 PlanEntry
	1.6.3 FaceEditor
	1.6.4 VISION-3D
	1.6.5 ThermalDesigner
	1.6.6 IDM
	1.6.7 Correspondences between models
1.7 Outline of Thesis

2 The Project Development Environment

2.1 Structure and Requirements
2.2 Schema Modelling and Development
	2.2.1 Requirements of a schema modelling environment
	2.2.2 IDM schema
	2.2.3 DT schemas
	2.2.4 Actor schemas
	2.2.5 Related schema modelling environment research
	2.2.6 Approach to a schema modelling environment
2.3 Inter-schema Relationship Modelling
	2.3.1 Requirements of an inter-schema relationship definition language and modelling environment
	2.3.2 Related inter-schema relationship modelling languages
	2.3.3 Related inter-schema relationship modelling environments
	2.3.4 Approach to an inter-schema relationship modelling language
	2.3.5 Approach to an inter-schema relationship modelling environment
2.4 Design Tool Environment Modelling
	2.4.1 Requirements for design tool environment modelling
	2.4.2 Related design tool environment modelling work
	2.4.3 Approach to a design tool environment modelling system
2.5 Project Definition
	2.5.1 Requirements for a project definition notation and development environment
	2.5.2 Related project definition notation work
	2.5.3 Related project definition environment work
	2.5.4 Approach to a project definition notation
	2.5.5 Approach to a project definition environment
2.6 Project Development Environment Summary

3 Schema Modelling and Development

3.1 Introduction
	3.1.1 Requirements for schema development
	3.1.2 Schema specification languages
	3.1.3 The EXPRESS and EXPRESS-G languages
3.2 Schema Development in the EPE Environment
	3.2.1 Functionality offered by the EPE environment
	3.2.2 Using the EPE environment
	3.2.3 Implementation of EPE in the MViews framework
	3.2.4 Internal schema representation in EPE
	3.2.5 Summary of EPE functionality
3.3 Generic Schema Database Definition
3.4 Appraisal of Schema Modelling

4 Inter-Schema Relationship Modelling

4.1 Mapping Types
	4.1.1 Structural mapping types
	4.1.2 Semantic mapping types
	4.1.3 Mapping language requirements
4.2 Mapping Definition Languages
	4.2.1 EXPRESS-M
	4.2.2 EXPRESS-V
	4.2.3 EXPRESS-C
	4.2.4 Transformr
	4.2.5 EDM-2
	4.2.6 KIF
	4.2.7 Superviews
	4.2.8 RDBMS views
4.3 Summary of Inter-Schema Relationship Modelling

5 The View Mapping Language (VML)

5.1 Mapping between Schemas
5.2 Mapping between Classes
	5.2.1 Entity names and keys
	5.2.2 Inheritance of inter_class definitions
	5.2.3 Invariant specification
	5.2.4 Initialiser specification
	5.2.5 Equivalence specification
	5.2.6 Mapping equations
5.3 A Graphical Notation for VML
	5.3.1 Graphical icons of VML-G
5.4 Appraisal of VML

6 Mapping Modelling and Development

6.1 Introduction
	6.1.1 Requirements for mapping development
6.2 Mapping Development in VPE
	6.2.1 Functionality offered by the VPE environment
	6.2.2 Using the VPE environment
	6.2.3 Implementation of VPE in the MViews framework
	6.2.4 Future connections between VPE and EPE
6.3 Management of Mapping Definitions
	6.3.1 Name resolution
	6.3.2 Schema modification
6.4 Generic Mapping Database Definition
6.5 Appraisal of Mapping Modelling and Development

7 Project Modelling

7.1 Introduction
	7.1.1 Requirements
	7.1.2 Structure
7.2 User and Function Modelling
7.3 Flow of Control Modelling
	7.3.1 Set theoretic background for flow of control
	7.3.2 Flow definition
7.4 Appraisal of Project Specification

8 The Project Testing and Implementation Environment

8.1 Structure and Requirements
8.2 Schema Instance Development
	8.2.1 Requirements of a schema instance maintenance system
	8.2.2 Related schema instance maintenance systems
	8.2.3 Approach to a schema instance maintenance system
8.3 Mapping Handler and Controller
	8.3.1 Requirements of a mapping handler and controller
	8.3.2 Related mapping handler and controller work
	8.3.3 Approach to a mapping handler and controller
8.4 Design Tool Connection
	8.4.1 Requirements for a design tool connection system
	8.4.2 Related design tool connection systems
8.5 Flow Handling
	8.5.1 Requirements of a flow of control manager
	8.5.2 Related flow of control manager work
	8.5.3 Approach to a flow of control manager
8.6 Project Testing and Implementation Environment Summary

9 Schema Instance Management

9.1 Requirements for Instance Management
9.2 Instance Management Systems
	9.2.1 EPE: an instance construction and browsing system
	9.2.2 InSTEP: a graphical instance browser
	9.2.3 SnartQuery and the ObjectViewer
	9.2.4 ReŽlex: an object-oriented CAD system
9.3 Appraisal of Schema Instance Management

10 Mapping Controller

10.1 Data-Store Modification Records
10.2 The Mapping Controller
	10.2.1 Transaction-based mapping manager
	10.2.2 Automatic mapping manager
10.3 Performing a Mapping
	10.3.1 In preparation to map
	10.3.2 The first mapping between two stores
	10.3.3 Consideration of modification types
	10.3.4 Determining combinations of objects from an inter_class header
	10.3.5 Four pass mapping process
	10.3.6 Mapping a new combination to the other data-store
	10.3.7 Procedures followed when a new object is created
	10.3.8 Tracking objects created and referenced in mappings
	10.3.9 Mapping the deletion of an object
	10.3.10 Mapping the modification of an object
	10.3.11 Evaluating, or re-evaluating affected equations
10.4 Appraisal of Mapping Controller

11 Flow Handling

11.1 Requirements for Flow Handling
	11.1.1 Project manager requirements
	11.1.2 Actor requirements
11.2 The Exchange Executive
	11.2.1 Simulation of flow of control
	11.2.2 Representation of design tool invocation
	11.2.3 Project manager interface
	11.2.4 Actor interface
11.3 Appraisal of Flow Handling

12 Conclusions

12.1 The Project Development Environment
12.2 The Mapping System
	12.2.1 Additional applications of the mapping language
12.3 The Flow of Control System
12.4 Future Work
	12.4.1 Tighter system integration
	12.4.2 Distributed environment
	12.4.3 Wider incorporation of project aspects
	12.4.4 Formal definitions of the mapping domain
	12.4.5 Alternate mapping language implementations
	12.4.6 Incorporation of measure tools
	12.4.7 Dissemination and exploitation


Appendix A. The View Mapping Language
A.1 VML Syntax
A.2 VML Graphical Notation
A.3 VML Comparison to other Notations
	A.3.1 Comparison to database operators
	A.3.2 Comparison to Motro virtual integration operators

Appendix B. Project Specification Language
B.1 Project Model Transfer Syntax
B.2 Project Modelling Graphical Notation
	B.2.1 User and function specification
	B.2.2 Flow of control specification

Appendix C. Snart
C.1 Facets
C.2 Query Language
	C.2.1 Introduction
	C.2.2 Example schemas
	C.2.3 Old style queries in Snart
	C.2.4 New style queries in Snart
	C.2.5 Implementation of the query language in Snart
C.3 Object Spaces
	C.3.1 Introduction
	C.3.2 Defining an object space in Snart
	C.3.3 Working with an object space model in Snart
C.4 Persistency
	C.4.1 Introduction
	C.4.2 Persistency in the old Snart
	C.4.3 Manipulating persistent objects in the old Snart
	C.4.4 Persistency in the new Snart
C.5 ObjectViewer

Appendix D. Small Examples Schemas and Mappings

Appendix E. Large Example Schemas and Mappings
E.1 Description of Large Example
E.2 Schemas for the Large Example
	E.2.1 IDM schema
	E.2.2 PlanEntry schema
	E.2.3 FaceEditor schema
	E.2.4 VISION-3D schema
	E.2.5 ThermalDesigner schema
E.3 Mappings for the Large Example
	E.3.1 IDM <-> PlanEntry mapping
	E.3.2 IDM <-> FaceEditor mapping
	E.3.3 IDM <-> VISION-3D mapping
	E.3.4 IDM <-> ThermalDesigner mapping
E.4 Project Window for the Large Example
	E.4.1 User and function specification
	E.4.2 Flow of control specification

Appendix F. The Parsers
F.1 ISO-10303:11 EXPRESS Parser
	F.1.1 EXPRESS to Snart translator
	F.1.2 Snart to EXPRESS translator
	F.1.3 Snart to ReŽlex translator
F.2 ISO-10303:21 STEP data-file Parser
	F.2.1 STEP data-file to Snart translator
	F.2.2 Snart to STEP data-file translator
F.3 CGE Parser
F.4 VML Parser

Appendix G. Generalised Schema Representation Notation
G.1 Version Tree
G.2 Schema

Appendix H. Generalised Mapping Representation Notation
H.1 Schema
H.2 Mapping
H.3 Inverted Index



Robert Amor-