Skip to main content
Log in

Database reverse engineering: From requirements to CARE tools

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  • Andersson, M. 1994. Extracting an entity relationship schema from a relational database through reverse engi- neering. In Proc. of the 13th Int. Conf. on ER Approach, Manchester: Springer-Verlag.

    Google Scholar 

  • Batini, C., Ceri, S., and Navathe, S.B. 1992. Conceptual Database Design. Benjamin-Cummings.

  • Batini, C., Di Battista, G., and Santucci, G. 1993. Structuring primitives for a dictionary of entity relationship data schemas. IEEE TSE, 19(4).

  • Blaha, M.R. and Premerlani, W.J. 1995. Observed idiosyncracies of relational database designs. In Proc. of the 2nd IEEE Working Conf. on Reverse Engineering, Toronto: IEEE Computer Society Press.

    Google Scholar 

  • Bolois, G. and Robillard, P. 1994. Transformations in reengineering techniques. In Proc. of the 4th Reengineering Forum Reengineering in Practice, Victoria, Canada.

    Google Scholar 

  • Casanova, M. and Amarel de Sa, J. 1983. Designing entity relationship schemas for conventional information systems. In Proc. of ERA, pp. 265–278.

  • Casanova, M.A. and Amaral, De Sa 1984. Mapping uninterpreted schemes into entity-relationship diagrams: Two applications to conceptual schema design. In IBM J. Res. & Develop., 28(1).

  • Chiang, R.H., Barron, T.M., and Storey, V.C. 1994. Reverse engineering of relational databases: Extraction of an EER model from a relational database. Journ. of Data and Knowledge Engineering, 12(2):107–142.

    Article  Google Scholar 

  • Date, C.J. 1994. An Introduction to Database Systems. Vol. 1, Addison-Wesley.

  • Davis, K.H. and Arora, A.K. 1985. A Methodology for translating a conventional file system into an entity- relationship model. In Proc. of ERA, IEEE/North-Holland.

  • Davis, K.H. and Arora, A.K. 1988. Converting a relational database model to an entity relationship model. In Proc. of ERA: A Bridge to the User, North-Holland.

  • Edwards, H.M. and Munro, M. 1995. Deriving a logical model for a system using recast method. In Proc. of the 2nd IEEE WC on Reverse Engineering. Toronto: IEEE Computer Society Press.

    Google Scholar 

  • Fikas, S.F. 1985. Automating the transformational development of software. IEEE TSE, SE-11:1268–1277.

    Google Scholar 

  • Fong, J. and Ho, M. 1994. Knowledge-based approach for abstracting hierarchical and network schema semantics. In Proc. of the 12th Int. Conf. on ER Approach, Arlington-Dallas: Springer-Verlag.

    Google Scholar 

  • Fonkam, M.M. and Gray, W.A. 1992. An approach to eliciting the semantics of relational databases. In Proc. of 4th Int. Conf. on Advance Information Systems Engineering—CAiSE'92, pp. 463–480, LNCS, Springer-Verlag.

  • Elmasri, R. and Navathe, S. 1994. Fundamentals of Database Systems. Benjamin-Cummings.

  • Hainaut, J.-L. 1981. Theoretical and practical tools for data base design. In Proc. Intern. VLDB Conf., ACM/IEEE.

  • Hainaut, J.-L. 1991. Entity-generating schema transformation for entity-relationship models. In Proc. of the 10th ERA, San Mateo (CA), North-Holland.

    Google Scholar 

  • Hainaut, J.-L., Cadelli, M., Decuyper, B., and Marchand, O. 1992. Database CASE tool architecture: Principles for flexible design strategies. In Proc. of the 4th Int. Conf. on Advanced Information System Engineering (CAiSE-92), Manchester: Springer-Verlag, LNCS.

    Google Scholar 

  • Hainaut, J.-L., Chandelon, M., Tonneau, C., and Joris, M. 1993a. Contribution to a theory of database reverse engineering. In Proc. of the IEEE Working Conf. on Reverse Engineering, Baltimore: IEEE Computer Society Press.

    Google Scholar 

  • Hainaut, J.-L., Chandelon, M., Tonneau, C., and Joris, M. 1993b. Transformational techniques for database reverse engineering. In Proc. of the 12th Int. Conf. on ER Approach, Arlington-Dallas: E/R Institute and Springer-Verlag, LNCS.

    Google Scholar 

  • Hainaut, J.-L., Englebert, V., Henrard, J., Hick, J.-M., and Roland, D. 1994. Evolution of database applications: The DB-MAIN approach. In Proc. of the 13th Int. Conf. on ER Approach, Manchester: Springer-Verlag.

    Google Scholar 

  • Hainaut, J.-L. 1995. Transformation-based database engineering. Tutorial notes, VLDB'95, Zürich, Switzerland, (available at jlh@info.fundp.ac.be).

  • Hainaut, J.-L. 1996. Specification Preservation in Schema transformations—Application to Semantics and Statistics, Elsevier: Data & Knowledge Engineering (to appear).

    Google Scholar 

  • Hainaut, J.-L., Roland, D., Hick J.-M., Henrard, J., and Englebert, V. 1996. Database design recovery, in Proc. of CAiSE-96, Springer-Verlag.

  • Halpin, T.A. and Proper, H.A. 1995. Database schema transformation and optimization. In Proc. of the 14th Int. Conf. on ER/OO Modelling (ERA), Springer-Verlag.

  • Hall, P.A.V. (Ed.) 1992. Software Reuse and Reverse Engineering in Practice, Chapman & Hall IEEE, 1990. Special issue on Reverse Engineering, IEEE Software, January, 1990.

  • Johannesson, P. and Kalman, K. 1990. A Method for translating relational schemas into conceptual schemas. In Proc. of the 8th ERA, Toronto, North-Holland.

    Google Scholar 

  • Joris, M., Van Hoe, R., Hainaut, J.-L., Chandelon, M., Tonneau, C., and Bodart F. et al. 1992. PHENIX: Methods and tools for database reverse engineering. In Proc. 5th Int. Conf. on Software Engineering and Applications, Toulouse, December 1992, EC2 Publish.

  • Kobayashi, I. 1986. Losslessness and semantic correctness of database schema transformation: Another look of schema equivalence. In Information Systems, 11(1):41–59.

    Article  MATH  Google Scholar 

  • Kozaczynsky, Lilien, 1987. An extended entity-relationship (E2R) database specification and its automatic verification and transformation. In Proc. of ERA Conf.

  • Markowitz, K.M. and Makowsky, J.A. 1990. Identifying extended entity-relationship object structures in relational schemas. IEEE Trans. on Software Engineering, 16(8).

  • Navathe, S.B. 1980. Schema analysis for database restructuring. In ACM TODS, 5(2).

  • Navathe, S.B. and Awong, A. 1988. Abstracting relational and hierarchical data with a semantic data model. In Proc. of ERA: A Bridge to the User, North-Holland.

  • Nilsson, E.G. 1985. The translation of COBOL data structure to an entity-rel-type conceptual schema. In Proc. of ERA, IEEE/North-Holland.

  • Petit, J.-M., Kouloumdjian, J., Bouliaut, J.-F, and Toumani, F. 1994. Using queries to improve database reverse engineering. In Proc. of the 13th Int. Conf. on ER Approach, Springer-Verlag: Manchester.

    Google Scholar 

  • Premerlani, W.J. and Blaha, M.R. 1993. An approach for reverse engineering of relational databases. In Proc. of the IEEE Working Conf. on Reverse Engineering, IEEE Computer Society Press.

  • Potts, C. and Bruns, G. 1988. Recording the reasons for design decisions. In Proc. of ICSE, IEEE Computer Society Press.

  • Rauh, O. and Stickel, E. 1995. Standard transformations for the normalization of ER schemata. In Proc. of the CAiSE-95 Conf., Jyväskylä, Finland, LNCS, Springer-Verlag.

    Google Scholar 

  • Rock-Evans, R. 1990. Reverse engineering: Markets, methods and tools, OVUM report.

  • Rosenthal, A. and Reiner, D. 1988. Theoretically sound transformations for practical database design. In Proc. of ERA Conf.

  • Rosenthal, A. and Reiner, D. 1994. Tools and transformations—Rigourous and otherwise—for practical database design, ACM TODS, 19(2).

  • Rolland, C. 1993. Modeling the requirements engineering process. In Proc. of the 3rd European-Japanese Seminar in Information Modeling and Knowledge Bases, Budapest (preprints).

  • Sabanis, N. and Stevenson, N. 1992. Tools and techniques for data remodelling cobol applications. In Proc. 5th Int. Conf. on Software Engineering and Applications, Toulouse, 7–11 December, pp. 517–529, EC2 Publish.

  • Selfridge, P.G., Waters, R.C., and Chikofsky, E.J. 1993. Challenges to the field of reverse engineering. In Proc. of the 1st WC on Reverse Engineering, pp. 144–150, IEEE Computer Society Press.

  • Shoval, P. and Shreiber, N. 1993. Database reverse engineering: From relational to the binary relationship Model, data and knowledge Engineering, 10(10).

  • Signore, O., Loffredo, M., Gregori, M., and Cima, M. 1994. Reconstruction of E-R schema from database Applications: A cognitive approach. In Proc. of the 13th Int. Conf. on ER Approach, Manchester: Springer- Verlag.

    Google Scholar 

  • Springsteel, F.N. and Kou, C. 1990. Reverse data engineering of E-R designed relational schemas. In Proc. of Databases, Parallel Architectures and their Applications.

  • Teorey, T.J. 1994. Database Modeling and Design: The Fundamental Principles, Morgan Kaufmann.

  • Vermeer, M. and Apers, P. 1995. Reverse engineering of relational databases. In Proc. of the 14th Int. Conf. on ER/OO Modelling (ERA).

  • Weiser, M. 1984. Program slicing, IEEE TSE, 10:352–357.

    Google Scholar 

  • Wills, L., Newcomb, P., and Chikofsky, E. (edEds.) 1995. Proc. of the 2nd IEEE Working Conf. on Reverse Engineering. Toronto: IEEE Computer Society Press.

    Google Scholar 

  • Winans, J. and Davis, K.H. 1990. Software reverse engineering from a currently existing IMS database to an entity-relationship model. In Proc. of ERA: the Core of Conceptual Modelling, pp. 345–360, North-Holland.

Download references

Author information

Authors and Affiliations

Authors

Additional information

This is a heavily revised and extended version of “Requirements for Information System Reverse Engineering Support” by J.-L. Hainaut, V. Englebert, J. Henrard, J.-M. Hick, D. Roland, which first appeared in the Proceedings of the Second Working Conference on Reverse Engineering, IEEE Computer Society Press, pp. 136–145, July 1995. This paper presents some results of the DB-MAIN project. This project is partially supported by the Région Wallonne, the European Union, and by a consortium comprising ACEC-OSI (Be), ARIANE-II (Be), Banque UCL (Lux), BBL (Be), Centre de recherche public H. Tudor (Lux), CGER (Be), Cockerill-Sambre (Be), CONCIS (Fr), D'Ieteren (Be), DIGITAL, EDF (Fr), EPFL (CH), Groupe S (Be), IBM, OBLOG Software (Port), ORIGIN (Be), Ville de Namur (Be), Winterthur (Be), 3 Suisses (Be). The DB-Process subproject is supported by the Communauté Française de Belgique.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hainaut, JL., Englebert, V., Henrard, J. et al. Database reverse engineering: From requirements to CARE tools. Automated Software Engineering 3, 9–45 (1996). https://doi.org/10.1007/BF00126958

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00126958

Keywords

Navigation