Encyclopedia of Database Systems

Living Edition
| Editors: Ling Liu, M. Tamer Özsu

Database Reverse Engineering

  • Jean-Luc Hainaut
  • Jean Henrard
  • Vincent Englebert
  • Didier Roland
  • Jean-Marc Hick
Living reference work entry
DOI: https://doi.org/10.1007/978-1-4899-7993-3_646-2

Synonyms

Definition

Database reverse engineering is the process through which the logical and conceptual schemas of a legacy database, or of a set of files, are reconstructed from various information sources such as DDL code, data dictionary contents, database contents or the source code of application programs that use the database.

Basically, database reverse engineering comprises three processes, namely physical schema extraction, logical schema reconstruction, and schema conceptualization. The first process consists in parsing the DDL code or the contents of an active data dictionary in order to extract the physical schema of the database. Reconstructing the logical schema implies analyzing additional sources such as the data and the source code of the application programs to discover implicit constraints and data structures, that is, constructs that have not been declared but that are managed by the information system or by its...

Keywords

Migration PCBs 
This is a preview of subscription content, log in to check access

Recommended Reading

  1. 1.
    Baxter I, Mehlich M. Reverse engineering is reverse forward engineering. Sci Comput Program. 2000;36:131–47.CrossRefGoogle Scholar
  2. 2.
    Blaha MR, Premerlani WJ. Observed idiosyncrasies of relational database designs. In: Proceedings of the 2nd IEEE Working Conference on Reverse Engineering; 1995. p. 116.Google Scholar
  3. 3.
    Casanova MA, Amaral de Sa JE. Mapping uninterpreted schemes into entity-relationship diagrams: two applications to conceptual schema design. IBM J Res Dev. 1984;28(1):82–94.CrossRefGoogle Scholar
  4. 4.
    Chikofsky EJ, Cross II JH. Reverse engineering and design recovery: a taxonomy. IEEE Softw. 1990;7(1):13–7.CrossRefGoogle Scholar
  5. 5.
    Davis KH, Aiken PH. Data reverse engineering: a historical view. In: Proceedings of the 7th Working Conference on Reverse Engineering; 2000. p. 70–8.Google Scholar
  6. 6.
    Davis KH, Arora AK. A methodology for translating a conventional file system into an entity-relationship model. In: Proceedings of the 4th International Conference on Entity-Relationship Approach; 1985. p. 148–59.Google Scholar
  7. 7.
    Edwards HM, Munro M. Deriving a logical model for a system using recast method. In: Proceedings of the 2nd IEEE Working Conference on Reverse Engineering; 1995. p. 126–35.Google Scholar
  8. 8.
    Hainaut J-L. Introduction to database reverse engineering, LIBD lecture notes. Belgium: University of Namur; 2002, p. 160. Retrieved Oct 2007 from http://www.info.fundp.ac.be/~dbm/publication/2002/DBRE-2002.pdf
  9. 9.
    Hainaut J-L. The transformational approach to database engineering. In: Lämmel R, Saraiva J, Visser J, editors. Generative and transformational techniques in software engineering, LNCS, vol. 4143. Berlin: Springer; 2006. p. 89–138.CrossRefGoogle Scholar
  10. 10.
    Hainaut J-L, Clève A, Henrard J, Hick J-M. Migration of legacy information systems. In: Mens T, Demeyer S, editors. Software evolution. Berlin: Springer; 2007. p. 107–38.Google Scholar
  11. 11.
    Hainaut J-L, Roland D, Hick J-M, Henrard J, Englebert V. Database reverse engineering: from requirements to CARE tools. J Autom Softw Eng. 1996;3(1/2):9–45.MathSciNetCrossRefGoogle Scholar
  12. 12.
    Navathe SB, Awong A. Abstracting relational and hierarchical data with a semantic data model. In: Proceedings of the Entity-Relationship Approach: A Bridge to the User. North-Holland; 1987. p. 305–33.Google Scholar

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  • Jean-Luc Hainaut
    • 1
  • Jean Henrard
    • 1
  • Vincent Englebert
    • 1
  • Didier Roland
    • 1
  • Jean-Marc Hick
    • 1
  1. 1.University of NamurNamurBelgium