|Title |Introduction |Integrating App's |Integrity Maintenance |AOODB Model |Backward Propagation |HVC |Constraint Maintenance |Conclusion |References|
1 Introduction
since 24 June, 1996, last modified 24 June, 1996
1.1 Integrity Maintenance in Engineering Databases
Economically effective and timely product development and manufacture demand that various aspects of design constraints are evaluated during the design of the product, especially when adaptiveness and short cycle time are critical requirements. As a result, it is required to enhance design methods in order to manage and apply many disparate engineering constraints such as manufactuability, resource availability, and environmental effects.
As a solution, the product information is stored in an engineering database, which can be shared by all engineering applications [East80;Sart84;Katz85; Enca90;Rank90;Do93]. This enables the various subsequent engineering applications to evaluate and enforce the constraints on the product at early design stages. In this environment, the enforcement of constraints is the responsibility of the database applications. It is because the automated verification of constraints and their enforcement provided by current database systems (DBSs) is limited. Since the integrity constraints are scattered in each application, it is difficult to maintain them consistently [Eick93;Flat93;Urba92b]. This type of integrity maintenance is called the application-oriented integrity maintenance.
Recently, to resolve the problems of the application-oriented integrity maintenance, another discipline has emerged which aims at developing DBSs' support to integrity maintenance [Flat93]. The research in this area is to centralize the management of integrity constraint, by extending traditional DBSs to have a dedicated component for constraint enforcement. This approach is called the centralized integrity maintenance. In this approach, applications do not have to declare the constraints explicitly and are free from the details of constraint checking. Furthermore, since the DBSs ensure the consistency, heterogeneous applications can be integrated, sharing data and its constraints [Urba92b].
Active databases have been recognized to be an effective tool for managing complex engineering constraints [Kotz88; Ston88; Caca90; Urba92b; Frat93; Urba94]. They provide high level rules to define and validate various integrity constraints without separate applications. In other words, constraints are enforced centrally by the DBS, not within individual applications. Due to the advantages for constraint management and automatic invocation of user-specified procedures, active databases are considered as a candidate of the next generation databases by DB researchers [Lock90;LAGU90].
In this thesis, we propose a framework that maintains engineering data with its constraints, using an active object-oriented database. It provides the centralized integrity maintenance that integrates heterogeneous engineering applications based on active databases and the information-driven CIM that integrates its applications, allowing the exchange of information among them.
Current active object-oriented databases, however, cannot adequately support certain constraints defined on a class composition hierarchy. Due to their directional navigation mechanism, integrity constraints can be automatically maintained only in the forward direction along the class composition hierarchy. Propagation of the constraints in the backward direction is left as the user's responsibilities. We call these kinds of problems "backward propagation problems" and investigate several alternatives to resolve them using currently available techniques. Based on one of the approaches which uses virtual classes, a new constructor, called CONSTRAINTCCH is proposed to support integrity maintenance in a class composition hierarchy. It uses only resources from an active object-oriented database so that the applications may be integrated without additional facilities for constraint maintenance. Moreover, the virtual class in the backward propagation approach (we call it Horizontal Virtual Class: HVC) enables efficient representation and management of constraints, using participating objects' identifiers and methods for constraints.
Before presenting the framework based on the active database, we describe the engineering semantics loss problem in integrating applications in a CIM environment, which uses the existing application-oriented integrity maintenance approach.
1.2 Engineering Semantics Loss in CIM Environments
Conventional engineering process in a CIM environment employs a product model (e.g., a CAD model or a mathematical model) for engineering applications to share the information of products. Each application in the process retrieves related information from the model and determines its features, checking and enforcing the engineering constraints. If the features are decided by all the applications, and the engineers confirm that there are no conflicts among the features, the engineering process is completed. An engineering process, therefore, can be described as a process for satisfying engineering constraints of a product by defining its features in various applications.
Each application has its own integrity constraints that maintain data in the system consistent. In addition, the constraints must be translated from one application to another so that the whole applications may be integrated into an information-driven CIM system. Even if integrity constraints are enforced in an application in the application-oriented CIM environment, there is no guarantee that these constraints are enforced outside the application. The loss of these integrity constraints means that engineering semantics is lost when engineering information is translated to other applications. The following scenario illustrates the loss of engineering semantics (see Figure 1-1).
Figure 1-1 An example of the loss of engineering semantics
When an engineer designs a solid primitive such as a torus in a solid modeler, the primitive has to observe implicit constraints that the solid modeler enforces. A torus has two attributes, inner radius and outer radius, and an implicit rule that 'Inner radius is larger than zero and less than outer radius'. If the engineer tries to design a torus which has inconsistent attribute values (e.g., if the inner radius is larger than the outer radius), the solid modeler will enforce the constraint with a proper error message on the inconsistent attribute values (see Integrity check in Figure 1-1).
This is a common practice for current engineering applications to manage integrity constraints. They use implicit and unclassifiable methods to represent the integrity constraints. It is very difficult to extract and translate these integrity constraints, if other systems need to import the data produced by the applications.
In the previous example, the values of the radii (R=10, r=5) without the integrity constraint might be saved in an engineering database for sharing the data. Another application such as a numerical analysis application might read the data and change the value of the inneradius to be larger than that of the outer radius (R =5, r= 10). If there is no constraint checking facility in the application, the radii can be changed without any violation of the integrity constraint in the database. After the update transaction, if the solid modeler attempts to refer to the radii of the torus in the database, it will find the illegal data (see Illegal data reference in Figure 1-1).
Although the above example represents only a simple case of loss of engineering semantics, the problem can become more serious when many applications share engineering information in a CIM environment. Researchers report that other engineering systems also have faced serious problems including the loss of the engineering semantics when translating engineering information [Wils87].
The loss of engineering semantics can be viewed as the integrity maintenance problem in databases. Thus, resolution methods of the problem can be classified into two categories, the application-oriented integrity maintenance and the centralized integrity maintenance approaches. The first is that each application has a facility for the integrity constraints on the shared data. In the example, if the numerical analysis application also has the integrity constraint checker on the radii of the torus, there would be no problem with the integrity constraint. Although the approach may solve the problem, it would not be practical. In a typical CIM environment, there are various applications from vendors world wide. Therefore, they cannot provide facilities for all the integrity constraints that each engineering system should enforce.
The second approach, the centralized integrity maintenance, is to develop an engineering database that can maintain both data and associated constraints. If an application saves its data in the database with the constraints, the database monitors any transaction which concerns the state of the data and enforces the integrity constraints. As a result, other applications can share the data and the associated integrity constraints through the database. Compared with the former method, this approach eliminates the burden of checking integrity constraints by each application. Moreover, it eliminates the duplication of procedures for integrity constraints contained in the applications. As a consequence, the applications in this environment can share the data without any concern about the integrity constraints that the database maintains in a unified way.
Constraints in the existing engineering process have been managed directly by the applications (the application-oriented integrity maintenance). This causes tedious reworks in engineering processes and other inefficiencies that CIM systems or concurrent engineering systems aim to resolve [Eric93;Cart92]. Recently, the active database technologies enable the engineering databases to maintain procedures (such as methods) and rules (such as triggers) that can be used in constraint maintenance without additional applications. This means that the DBSs are responsible for managing and checking engineering constraints (i.e., the centralized integrity maintenance). These advanced facilities can realize the information driven CIM system that can integrate engineering applications at the level of engineering semantics, by providing the engineering data and its constraints consistently.
The engineering database is needed to represent complex entities in engineering domain, so the active object-oriented database can be used as the engineering database to provide both object-oriented schema for the complex entities and active facilities for engineering rule management [LAGU90]. We, therefore, propose an architecture for engineering databases that integrate heterogeneous engineering applications on active object-oriented databases.
1.3 Scope and Goals of Research
First, we present a framework of the centralized constraint maintenance which enables integration of heterogeneous engineering applications in an information driven CIM system. The framework is based on an active object-oriented database, allowing the applications to access engineering data with its constraints. The existing active object-oriented databases, however, cannot properly support the constraints. We define the constraint maintenance problem with the current AOODBS' and its resolution approaches (the backward propagation problem and the backward propagation approaches, respectively). The approaches are implemented based on a data model of an existing DBS [UniS93]. Considering the proposed framework and the backward propagation approaches, we present a prototypic design constraint management system that integrates engineering applications. The framework, therefore, resolves the problems of the application-oriented integrity maintenance which does not allow an engineering constraint maintained in an application to be exchanged with other applications. We also provide an example of cooperative design process that employs the design system for the control panel design. Comparison of our research with other approaches is also provided.
The goals of this research can be summarized as the follows:
- Provide a framework of the centralized constraint maintenance for integrating heterogeneous engineering applications
- Define the backward propagation problem of user-defined integrity constraints based on the rules of existing active object-oriented databases
- To resolve the problem, provide the backward propagation approaches based on the data model of an active object-oriented database [UniS93a]
- Devise a backward propagation constructor and a procedure for its generation using a backward propagation approach
- Build a constraint management system that can show the framework and the constructor can be effectively applied to engineering domains.
To satisfy these goals, the following research scheme has been adopted (see the Figure 1-2). It consists of the three phases, the theoretical background, the implementation, and the application phases. In the theoretical background phase, a framework for integrating engineering applications is proposed based on the active object-oriented data model. The backward propagation problem and its resolution approaches are also presented in this phase. In the implementation phase, a backward propagation approach is selected, and a constructor for defining a constraint that supports the backward propagation is proposed using an active object-oriented database [UniS93a]. In the last phase, the application phase, we apply the proposed framework and the constructor to a design constraint management system that integrates engineering applications at the semantic level.
This thesis is organized as follows. The proposed framework and comparisons with other approaches are presented in Section 2. In Chapter 3, we describe related work for integrity maintenance in active databases. An active object-oriented data model used in the subsequent chapters is described in Chapter 4. Along with the resolution approaches, the backward propagation problem that occurs on integrity constraints on a class composition hierarchy is presented in Chapter 5. In Chapter 6, a constructor for integrity maintenance
Figure 1-2 Research overview
based on a backward propagation approach is proposed. A prototypic constraint management system that employs the framework and the backward propagation approach is described in Chapter 7. We show that the system can integrate applications at the semantic level. In Chapter 8, we conclude the paper and discuss future research directions.
Korean Engineering Databases ¨Ï copyright Namchul Do, 1996