Database reverse engineering: From requirements to CARE tools

This paper analyzes the requirements that CASE tools should meet for effective database reverse engineering (DBRE), and proposes a general architecture for data-centered applications reverse engineering CASE environments. First, the paper describes a generic DBMS-independent DBRE methodology, then it analyzes the main characteristics of DBRE activities in order to collect a set of desirable requirements. Finally, it describes DB-MAIN, an operational CASE tool developed according to these requirements. The main features of this tool that are described in this paper are its unique generic specification model, its repository, its transformation toolkit, its user interface, the text processors, the assistants, the methodological control and its functional extensibility. Finally, the paper describes five real-world projects in which the methodology and the CASE tool were applied.

[1]  Vincent Englebert,et al.  Database Design Recovery , 1996, CAiSE.

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

[3]  Kathi Hogshead Davis,et al.  A Methodology for Translating a Conventional File System into an Entity-Relationship Model , 1985, ER.

[4]  M. G. Rekoff,et al.  On reverse engineering , 1985, IEEE Transactions on Systems, Man, and Cybernetics.

[5]  Mark Weiser,et al.  Program Slicing , 1981, IEEE Transactions on Software Engineering.

[6]  Shamkant B. Navathe,et al.  Schema analysis for database restructuring , 1977, TODS.

[7]  Colin Potts,et al.  Recording the reasons for design decisions , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[8]  Erik G. Nilsson The Translation of a Cobol Data Structure to an Entity-Relationship Type Conceptual Schema , 1985, ER.

[9]  Toby J. Teorey Database modeling & design : the fundamental principles , 1994 .

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

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

[12]  Peter M. G. Apers,et al.  Reverse Engineering of Relational Database Applications , 1995, OOER.

[13]  Jean-Marc Petit,et al.  Using Queries to Improve Database Reverse Engineering , 1994, ER.

[14]  Patrick A. V. Hall,et al.  Overview of reverse engineering and reuse research , 1992, Inf. Softw. Technol..

[15]  Martin Andersson,et al.  Extracting an Entity Relationship Schema From a Relational Database Through Reverse Engineering , 1994, Int. J. Cooperative Inf. Syst..

[16]  Marco A. Casanova,et al.  Mapping Uninterpreted Schemes into Entity-Relationship Diagrams: Two Applications to Conceptual Schema Design , 1984, IBM J. Res. Dev..

[17]  F. Springsteel,et al.  Reverse data engineering of E-R-designed relational schemas , 1990, Proceedings. PARBASE-90: International Conference on Databases, Parallel Architectures, and Their Applications.

[18]  Colette Rolland,et al.  Modeling the Requirements Engineering Process , 1993 .

[19]  Helen M. Edwards,et al.  Deriving a logical data model for a system using the RECAST method , 1995, Proceedings of 2nd Working Conference on Reverse Engineering.

[20]  William J. Premerlani,et al.  Observed idiosyncracies of relational database designs , 1995, Proceedings of 2nd Working Conference on Reverse Engineering.

[21]  Wojtek Kozaczynski,et al.  An Extended Entity-Relationship (E²R) Database Specification and its Automatic Verification and Transformation into the Logical Relational Design , 1987, ER.

[22]  Marco A. Casanova,et al.  Designing Entity-Relationship Schemes for Conventional Information Systems , 1983, ER.

[23]  H. V. Jagadish,et al.  Database Modeling and Design , 1998 .

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

[25]  Richard C. Waters,et al.  Challenges to the field of reverse engineering , 1993, [1993] Proceedings Working Conference on Reverse Engineering.

[26]  Arnon Rosenthal,et al.  Theoretically Sound Transformations for Practical Database Design , 1987, ER.

[27]  Joseph Fong,et al.  Knowledge-Based Approach for Abstracting Hierarchical and Network Schema Semantics , 1993, ER.

[28]  Peretz Shoval,et al.  Database Reverse Engineering: From the Relational to the Binary Relationship model , 1993, Data Knowl. Eng..

[29]  Stéphane Bressan,et al.  Introduction to Database Systems , 2005 .

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

[31]  Jean-Luc Hainaut,et al.  Database CASE Tool Architecture: Principles for Flexible Design Strategies , 1992, CAiSE.

[32]  Oreste Signore,et al.  Reconstruction of ER Schema from Database Applications: a Cognitive Approach , 1994, ER.

[33]  Guido Persch Automating the transformational development of software , 1987 .

[34]  Giuseppe Santucci,et al.  Structuring Primitives for a Dictionary of Entity Relationship Data Schemas , 1993, IEEE Trans. Software Eng..

[35]  Jean-Luc Hainaut,et al.  Theoretical and Practical Tools for Data Base Design , 1981, VLDB.

[36]  Jean-Luc Hainaut,et al.  Transformation-based Database Engineering 1 Transformation-based Database Engineering Motivation and Introduction , 2022 .

[37]  Isamu Kobayashi,et al.  Losslessness and semantic correctness of database schema transformation: another look of schema equivalence , 1986, Inf. Syst..

[38]  Veda C. Storey,et al.  Reverse Engineering of Relational Databases: Extraction of an EER Model from a Relational Database , 1994, Data Knowl. Eng..

[39]  Jean-Luc Hainaut,et al.  Contribution to a theory of database reverse engineering , 1993, [1993] Proceedings Working Conference on Reverse Engineering.

[40]  Jean-Luc Hainaut,et al.  Specification Preservation in Schema Transformations - Application to Semantics and Statistics , 1996, Data Knowl. Eng..

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

[42]  Hall Chapman,et al.  Software Reuse and Reverse Engineering in Practice , 1992 .

[43]  William J. Premerlani,et al.  An approach for reverse engineering of relational databases , 1993, [1993] Proceedings Working Conference on Reverse Engineering.

[44]  Arnon Rosenthal,et al.  Tools and transformations—rigorous and otherwise—for practical database design , 1994, TODS.

[45]  Henderik Alex Proper,et al.  Database Schema Transformation and Optimization , 1995, OOER.

[46]  Otto Rauh,et al.  Standard Transformations for the Normalization of ER Schemata , 1995, CAiSE.

[47]  W. Alex Gray,et al.  An Approach to Eliciting the Semantics of Relational Databases , 1992, CAiSE.