Reverse Engineering of Relational Databases: Extraction of an EER Model from a Relational Database

Abstract A methodology for extracting an extended Entity-Relationship (EER) model from a relational database is presented. Through a combination of data schema and data instance analysis, an EER model is derived which is semantically richer and more comprehensible for maintenance and design purposes than the original database. Classification schemes for relations and attributes necessary for the EER model extraction are derived and justified. These have been demonstrated to be implementable in a knowledge-based system; a working prototype system which does so is briefly discussed. In addition, cases in which human input is required are also clearly identified. This research also illustrates that the database reverse engineering process can be implemented at a high level of automation.

[1]  Charles W. Bachman A Personal Chronicle: Creating Better Information Systems, with Some Guiding Principles , 1989, IEEE Trans. Knowl. Data Eng..

[2]  Paul Johannesson,et al.  A method for transforming relational schemas into conceptual schemas , 1989, Proceedings of 1994 IEEE 10th International Conference on Data Engineering.

[3]  Veda C. Storey,et al.  Relational database design based on the Entity-Relationship model , 1991, Data Knowl. Eng..

[4]  Roger H. L. Chiang,et al.  A knowledge-based system for performing reverse engineering of relational databases , 1995, Decis. Support Syst..

[5]  Kathi Hogshead Davis,et al.  Converting A Relational Database Model into an Entity-Relationship Model , 1987, ER.

[6]  Katalin Kalman,et al.  Implementation and Critique of an Algorithm which Maps a Relational Database to a Conceptual Model , 1991, CAiSE.

[7]  T. J. Teorey,et al.  A logical design methodology for relational databases using the extended entity-relationship model , 1986, CSUR.

[8]  Abraham Silberschatz,et al.  Database System Concepts , 1980 .

[9]  Jean-Luc Hainaut,et al.  Database Reverse Engineering: Models, Techniques, and Strategies , 1991, ER.

[10]  Sudhir K. Arora,et al.  Schema Translation Using the Entity-Relationship Approach , 1981, ER.

[11]  D. Bitton,et al.  A feasibility and performance study of dependency inference (database design) , 1989, [1989] Proceedings. Fifth International Conference on Data Engineering.

[12]  Ramez Elmasri,et al.  The Category Concept: An Extension to the Entity-Relationship Model , 1985, Data Knowl. Eng..

[13]  Ronald J. Brachman,et al.  What IS-A Is and Isn't: An Analysis of Taxonomic Links in Semantic Networks , 1983, Computer.

[14]  Shamkant B. Navathe,et al.  Abstracting Relational and Hierarchical Data with a Semantic Data Model , 1987, International Conference on Conceptual Modeling.

[15]  Philip A. Bernstein,et al.  Synthesizing third normal form relations from functional dependencies , 1976, TODS.

[16]  Johann A. Makowsky,et al.  Identifying Extended Entity-Relationship Object Structures in Relational Schemas , 1990, IEEE Trans. Software Eng..

[17]  James H. Cross,et al.  Reverse engineering and design recovery: a taxonomy , 1990, IEEE Software.

[18]  Ronald Fagin,et al.  Inclusion dependencies and their interaction with functional dependencies , 1982, PODS.

[19]  C. Robert Carlson,et al.  An Algorithm Converting Relational Schemas to Nested Entity-Relationship Schemas , 1991, ER.

[20]  Ramez Elmasri,et al.  Fundamentals of Database Systems , 1989 .

[21]  S. Sudarshan,et al.  Data models , 1996, CSUR.

[22]  Kathi Hogshead Davis,et al.  Software Reverse Engineering from a Currently Existing IMS Database to an Entity-Relationship Model , 1990, ER.

[23]  Diane C. P. Smith,et al.  Database abstractions: aggregation and generalization , 1977, TODS.

[24]  James A. Larson,et al.  Integrating User Views in Database Design , 1986, Computer.

[25]  Laurian M. Chirica,et al.  The entity-relationship model: toward a unified view of data , 1975, SIGF.

[26]  Richard B. Wilmot Foreign keys decrease adaptability of database designs , 1984, CACM.

[27]  Hans Albrecht Schmid,et al.  On the semantics of the relational data model , 1975, SIGMOD '75.

[28]  Shamkant B. Navathe,et al.  Conceptual Database Design: An Entity-Relationship Approach , 1991 .