Abstract
The design of a software component, such as a database, is the trace of all the processes, products and reasonings that have led to the production of this artifact. Such a document is the very basis of system maintenance and evolution processes. Unfortunately, it does not exist in most situations. The paper describes how the design of a database or of a collection of files can be recovered through reverse engineering techniques. Recording the reverse engineering activities provides a history of this process. By normalizing and reversing this history, then by conforming it according to a reference design methodology, one can obtain a tentative design of the source database. The paper describes the baselines of the approach, such as a wide spectrum specification model, semantics-preserving transformational techniques, and a design process model. It describes a general procedure to build a possible DB design, then states the requirements for CASE support, and describes DB-MAIN, a prototype CASE tool which includes a history processor. Finally it illustrates the proposals through an example.
This research is a part of the DB-MAIN project, which is partly supported by 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 (Be), EDF (Fr), EPFL (CH), Groupe S (Be), IBM (Be), 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
Chapter PDF
References
Balzer, R., Transformational implementation: An example, IEEE TSE, Vol. SE-7, No. 1, 1981
Batini, C., Ceri, S., Navathe, S., B., Conceptual Database Design, Benjamin/Cummings, 1992
Batini, C., Di Battista, G., Santucci, G., Structuring Primitives for a Dictionary of Entity Relationship Data Schemas, IEEE TSE, Vol. 19, No. 4, 1993
Biggerstaff, T., J., Design Recovery for Maintenance and Reuse, IEEE Computer, July 1989
Fikas, S., F., Automating the transformational development of software, IEEE TSE, Vol. SE-11, pp1268–1277, 1985
Hainaut, J-L, Database Reverse Engineering, Models, Techniques and Strategies, in Proc. of the 10th Conf. on Entity-Relationship Approach, San Mateo (CA), E-R Institute, 1991
Hainaut, J-L., Cadelli, M., Decuyper, B., Marchand, O., Database CASE Tool Architecture: Principles for Flexible Design Strategies, in Proc. of the 4th Int. Conf. on Advanced Information System Engineering (CAiSE-92), Manchester, May 1992, Springer-Verlag, LNCS, 1992
Hainaut, J-L., Chandelon, M., Tonneau, C., Joris, M., Contribution to a Theory of Database Reverse Engineering, in Proc. of the IEEE Working Conf. on Reverse Engineering, Baltimore, May 1993, IEEE Computer Society Press, 1993
Hainaut, J-L., Chandelon, M., Tonneau, C., Joris, M., Transformational techniques for database reverse engineering, in Proc. of the 12th Int. Conf. on ER Approach, Arlington-Dallas, ER Institute, 1993
Hainaut, J-L, Englebert, V., Henrard, J., Hick, J-M., Roland, D., Evolution of database Applications: the DB-MAIN Approach, in Proc. of the 13th Int. Conf. on ER Approach, Manchester, Springer-Verlag, 1994
Hainaut, J-L, Database Reverse Engineering — Problems, Techniques and Tools, Tutorial notes, CAiSE'95, Jyväskylä, Finland, June 1995 (available at jlh@info.fundp.ac.be)
Hainaut, J-L, Englebert, V., Henrard, J., Hick, J-M., Roland, D., Requirements for Information System Reverse Engineering Support, in Proc. of the 2nd IEEE WC on Reverse Engineering, Toronto, July 1995, IEEE Computer Society Press, 1995.
Hainaut, J-L, Transformation-based database engineering,Tutorial notes, VLDB'95, Zürich, Switzerland, Sept. 1995 (available at jlh@info.fundp.ac.be)
Hainaut, J-L, Specification preservation in schema transformations — application to semantics and statistics, Data & Knowledge Engineering, Vol. 11, No. 1, 1996.
Hainaut, J-L, Englebert, V., Henrard, J., Hick J-M., Roland, D., Database Reverse Engineering: from Requirements to CASE tools, Journal of Automated Software Engineering, Vol. 3, No. 1, 1996
Halpin, T., A., Proper, H., A., Database schema transformation and optimization, in Proc. of the 14th Int. Conf. on ER/OO Modelling (ERA), Dec. 1995
Kobayashi, I., Losslessness and Semantic Correctness of Database Schema Transformation: another look of Schema Equivalence, in Information Systems, Vol. 11, No 1, pp. 41–59, January, 1986
Kozaczynsky, Lilien, An extended Entity-Relationship (E2R) database specification and its automatic verification and transformation, in Proc. of Entity-Relationship Approach, 1987
Mylopoulos, J., Chung, L., Nixon, B., Representing and Using Nonfunctional requirements: A Process-Oriented Approach, IEEE TSE, Vol. 18, No. 6, June 1992
Navathe, S., B., Schema Analysis for Database Restructuring, in ACM TODS, Vol.5, No.2, June 1980
Potts, C., Bruns, G., Recording the Reasons for Design Decisions, in Proc. of ICSE, IEEE, 1988
Rauh, O., Stickel, E., Standard Transformations for the Normalization of ER Schemata, in Proc. of the CaiSE·95 Conf., Jyväskylä, Finland, LNCS, Springer-Verlag, 1995
Rolland, C., Modeling the Requirements Engineering Process, in Proc of the 3rd European-Japanese Seminar in Information Modeling and Knowledge Bases, May 1993, Budapest (preprints)
Rosenthal, A., Reiner, D., Theoretically sound transformations for practical database design, in Proc. of Entity-Relationship Approach, 1988
Rosenthal, A., Reiner, D., Tools and Transformations — Rigourous and Otherwise — for Practical Database Design, ACM TODS, Vol. 19, No. 2, June 1994
Spaccapietra, S., Parent, C., View Integration: A Step Forward in Solving Structural Conflicts, IEEE Trans. on Knowledge and Data Engineering, October, 1992
Teorey, T. J., Database Modeling and Design: the Fundamental Principles, Morgan Kaufmann, 1994
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hainaut, J.L., Henrard, J., Hick, J.M., Roland, D., Englebert, V. (1996). Database design recovery. In: Constantopoulos, P., Mylopoulos, J., Vassiliou, Y. (eds) Advanced Information Systems Engineering. CAiSE 1996. Lecture Notes in Computer Science, vol 1080. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61292-0_16
Download citation
DOI: https://doi.org/10.1007/3-540-61292-0_16
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61292-6
Online ISBN: 978-3-540-68451-0
eBook Packages: Springer Book Archive