Tutor
- Jean-Luc Hainaut, PReCISE Research Center, University of Namur []
- Anthony Cleve, PReCISE Research Center, University of Namur []
Transformation-based software engineering has long been considered a major approach to build reliable and efficient programs. According to this approach, abstract specifications (or models) can be converted into correct, compilable and efficient programs by applying selected, correctness-preserving operators called transformations.
In the database engineering realm, an increasing number of bodies (e.g., OMG through the MDE proposal) and of authors recognize the merits of transformational approaches, that can produce in a systematic way machine-processable database structures from abstract models, and conversely. Transformations that are proved to preserve the correctness of the source specifications have been proposed in virtually all the activities related to schema engineering: schema normalization, schema quality evaluation, logical design, schema integration, view derivation, schema equivalence, database migration, data conversion, database reverse engineering, schema optimization, ETL, wrapper generation and others.
This tutorial addresses both basic and practical aspects of database transformation techniques. It develops the concept of transformation, together with its properties of semantics-preservation. In addition, it analyzes the dependencies between several artefacts (e.g., database and programs) and introduces the concept of co-transformation. The tutorial shows how transformation plans can be built in a systematic way and applies this methodology to the elaboration of Entity-relationship to object-relational schema translation. It also elaborates on the design of reverse engineering methodologies for various data models. The impact of transformational techniques on CASE technology is discussed and illustrated through the use of DB-MAIN, a free transformation-based CASE environment.
The lecture is primarily aimed at practitioners in data-intensive application engineering. However, researchers can be considered as a target audience as well. Basic knowledge in database engineering is required.