International E-publication: Publish Projects, Dissertation, Theses, Books, Souvenir, Conference Proceeding with ISBN.  International E-Bulletin: Information/News regarding: Academics and Research

Database Reverse Engineering Methods: What is Missing?

Author Affiliations

  • 1Faculty of Information Technology, University of Central Punjab, Lahore, PAKISTAN
  • 2 Department of Computer Science, Abdul Wali Khan University Mardan, PAKISTAN
  • 3 Department of Computer Science, King Faisal University, Hofuf, SAUDI ARABIA

Res. J. Recent Sci., Volume 2, Issue (5), Pages 49-58, May,2 (2013)


Database reverse engineering (DBRE) is a process of extracting requirements from a running system. The process is carried to understand the system having least design and architecture documentation. DBRE is very beneficial when we are expanding our systems or shifting to a newer technology. Since its start, reverse engineering has given hard time to software engineers but researchers are doing a continuous effort to make the process more effective and efficient. Many frameworks and methods have been proposed in the literature; each has its inputs, limitations, assumptions and outputs. CASE tools have been developed by researchers and commercial companies, but no tool provides a complete set of features to reverse engineer a database to a conceptual schema, also a concrete formal model is missing. Few common problems arise while reverse engineering of any system using existing approaches. In this review paper we have analyzed different methods proposed in the literature, discussed their strengths and limitations. Major problems faced by the reverse engineers while using existing methods are identified and discussed. This paper will motivate the software engineers to develop a DBRE method which takes minimal set of inputs, applies least assumptions and generates better output with least or no human intervention.


  1. Mian N.A. and Zafar N.A. , Key Analysis of Normalization Process using Formal Techniques in DBRE, Proc. of Second Intl. Conf. on Computer Engineering and Applications, ICCEA 2010, Bali, Indonesia (2010)
  2. Alhajj R. and Polat F., Database Reverse Engineering, Proc. Eighth Working Conf. on Reverse Engineering, Stuttgart, Germany, 335-344, (2001)
  3. Andersson M., Extracting an Entity Relationship schema from a relational database through reverse engineering, Lecture Notes In CS; 881 ,Proc. of Thirteenth Intl. Conf. on the Entity-Relationship Approach 403-419, (1994)
  4. Batini C., Ceri S., and Shamkant N., Conceptual Database Design-An Entity-Relationship Approach, Benjamin/ Cummings, (1992)
  5. Chiang R., Barron T. and Storey V., Reverse engineering of relational databases: Extraction of an EER model from a relational database, Data & Knowledge Engineering, 107142, (1994)
  6. Chiang R., A knowledge-based system for performing reverse engineering of relational databases, Decision Support Systems 295312, (1995)
  7. Hainaut J. L., Research in Database Engineering at the University of Namur, ACM SIGMOD Record archive, 32(4), 124 - 128, (2003)
  8. Johannesson P., A method for transforming relational schemas into conceptual schemas, Proc. of Tenth Intl.. Conf. on Data Engineering, Rusinkiewicz, 115122, (1994)
  9. Yeh D. and Li Y., Extracting Entity Relationship Diagram from a Table-based Legacy Database, Proc. of Ninth European Conf. on Software Maintenance and Reengineering, CSMR 2005, 72- 79, (2005)
  10. Jesus L. D., Sousa P., Selection of Reverse Engineering Methods for Relational Databases, Proc. of Third European conf. on Soft. Maint. and Reengineering, 194-197, Amsterdam, Netherlands, (1999)
  11. Davis K. H. and Aiken P. H., Data reverse engineering: a historical survey, Proc. of Seventh Working Conf. on Reverse Engineering, 7078, (2000)
  12. Embley D. W., Liddle S. W. and Lonsdale D. W., KBB: A Knowledge-Bundle Builder for Research Studies, Proc. of Twenty Eighth Intl. Conf. on Conceptual Modeling, Gramado, Brazil, (2009)
  13. Astrova I. and Stantic B., Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms, Proc. of Eighth European Conf. on Principles and Practice of Knowledge Discovery in Databases, 7378, (2004)
  14. Mens K. and Tourwe T., Reverse Engineering Aspectual Views using Formal Concept Analysis, CiteSeerX- Scientific Literature Digital Library and Search Engine, (2008)
  15. Ichise Y. and Ishida Y., Reverse Engineering of Spatial Patterns in Cellular Automata, Proc. of thirteenth Intl. Symp. on Artificial Life and Robotics, Oita, Japan, (2008)
  16. Cabot J., Gomez C., Planas E. and Rodriguez M. E., Reverse Engineering of OO Constructs in Object-Relational Database Schemas, JISBD 2008, (2008)
  17. Jilani M. A., Aziz A. and Hussain T., An Analysis of Extended Entity Relationship Constructs Extraction in Database Reverse Engineering Approaches, Science Intl. J., 20(4), 249-254, (2008)
  18. Lammari N., Wattiau I. C. and Akoka J., Extracting Generalization Hierarchies from Relational Databases: A Reverse Engineering Approach, Data and Knowledge Engineering, 63, 568-589, (2007)
  19. Mammar A. and Laleau R., From a B Formal Specification to an Executable Code: Application to the Relational Database Domain, Intl. J. of Information and Software Technology, 48(4), 253-279, (2006)
  20. Abbasifard M. R., Rahgozar M., Bayati A. and Pournemati P., Using Automated Database Reverse Engineering for Database Integration, J. of World Academy of Science Engineering and Technology, 19, 1-17, (2006)
  21. Masoud F. A., Khattab H. T. and Karazoon M. A., University of Jordan Case Tool (Uj-Case-Tool) for Database Reverse Engineering, J. of World Academy of Science Engineering and Technology 9, 28-31, (2005)
  22. Ghalayini H. E., Odeh M., McClatchey R. and Solomonides T., Reverse Engineering Ontology to Conceptual Data Models, Proc. of IASTED Intl. Conf. on Databases and Applications, Part of the 23rd Multi-Conf. on Applied Informatics, Innsbruck, Austria, 222-227, (2005)
  23. Alhajj R., Extracting the Extended Entity Relationship Model for Legacy Relational Database, Intl. J. on Information Systems 28, 597-618, (2003)
  24. Datta S. B. and Gupta V.K., Performance Interoperability between RDBs and OODBs, Res. J.Recent Sci., 1 (ISC-2011) , 419-421, (2012)
  25. Benslimane S., Malki M. and Bouchiha D., Deriving Conceptual Schema from Domain Ontology: A Web Application Reverse Engineering Approach, Intl. Arab J. of IT, 7(2), 167-176, (2010)
  26. Raffat S.K., Siddiqui M.S., Siddiq M. and Shafiq F., Towards the Development of Web-based Ontology Development and Editing (WODE) Tool, Res. J. Recent Sci., 1(12), 67-69, (2012)
  27. Trinkunas J. and Vasilecas O., Building Ontologies from Relational Databases Using Reverse Engineering Methods, Proc. of Intl. Conf. on Computer Systems and Technologies Section II, 6.1-6.6, (2007)
  28. Gupta D. and Gupta V.K., Approaches for Deadlock Detection and Deadlock Prevention for Distributed systems, Res. J. Recent Sci., 1 (ISC-2011), 422-425, (2012)
  29. Jitendra S. and Gupta V.K., Concurrency Issues of Distributed Advance Transaction Process, Res.J.Recent Sci., 1 (ISC-2011), 426-429, (2012)
  30. Neeraj S. and Swati L. S., Overview of Non-redundant Association Rule Mining, Res.J. Recent Sci., 1(2), 108-112, (2012)
  31. Pannurat N., Kerdprasop N. and Kerdprasop K., Database Reverse Engineering based on Association Rule Mining, Intl. J. of CS, 7(2), 10-15, (2010)
  32. 2.Georgieva, T. Discovering branching and fractional dependencies in databases, J. of Data & Knowledge Engineering 66, 311325, (2008)
  33. Wu A. H., Tan Z. J. and Wang W., Annotation based query answer over inconsistent database, J. of CS and Technology, 25 (3), 469-481, (2010)
  34. Soutou C., Relational Database Reverse Engineering: Algorithms to Extract Cardinality Constraints, Data and Knowledge Engineering, 28(2), 161-207, (1998)
  35. Cleve A., Henard J. and Hainaut J. L., Data Reverse Engineering using System Dependency Graphs, proc. of Thirteenth Working Conf. on Reverse Engineering, Benevento, 157 166, (2006)
  36. Blaha M. R., An Industrial Example of Database Reverse Engineering, Proc. of Sixth Working Conf. on Reverse Engineering, 196-202, (1999)
  37. Premerlani W J., Blaha M. R., An Approach for Reverse Engineering of Relational Databases., Proc. of Working Conf. on Reverse Engineering, (1993)
  38. Premerlani W J., Blaha M. R., An approach for reverse engineering of relational databases, Communications of the ACM, 37, (1994)
  39. Blaha M. R., Dimensions of Database Reverse Engineering, Proc. of Fourth Working Conf. on Reverse Engineering, 176-183, (1997)
  40. Moise D. L. and Wong K., An Industrial Experience in Reverse Engineering, Proc. of tenth Working Conf. on Reverse Engineering, (2003)
  41. Baxter I. D. and Mehlich M., Reverse Engineering is Reverse Forward Engineering, Proc. of Fourth Working Conf. on Reverse Engineering, The Netherlands, 104, (1997)
  42. Rugaber S., Shikano T., Stirewalt R. E. K. and Carroll L., Reverse Reverse-Engineering, Automated SE Conf., (2001)
  43. Chu W. C. C., Chang C. H. and Yang S. J. H, Application of the Software Maintenance Predicate/Transition Net (SMPrT-Net) to the Change Control Process of Maintenance, Intl. J. of Chinese Institute of Engineers, 23 (5), (2000)
  44. Rugaber S., Stirewalt K., Model-Driven Reverse Engineering, IEEE Software J., 21 (4), 45-53, (2004)
  45. Jahnke J. H., Schafer W. and Ztindorf A., Generic Fuzzy Reasoning Nets as a Basis for Reverse Engineering Relational Database Applications, Proc. of European Conf. on SE, (1997)
  46. Sneed H.M., An Incremental Approach to System Replacement and Integration, Proc. of Ninth European Conf. on Software Maintenance and Reengineering, (2005)
  47. Alalfi M.H., Cordy J. R. and Dean T. R., SQL2XMI: Reverse Engineering of UML-ER Diagrams from Relational Database Schemas, Proc. of Fifteenth Working Conf. on Reverse Engineering, 187-191, (2008)
  48. Chung C.Y., Gertz M. and Sundaresan N., Reverse Engineering for Web Data: From Visual to Semantic Structures, Proc. of Eighteenth Intl. Conf. on Data Engineering, (2002)
  49. Santoso H. A., Haw S. C. and Mehdi Z. T. A., Ontology extraction from relational database: Concept hierarchy as background knowledge, J. of Knowledge-Based Systems, 24, 457464, (2010)
  50. Sousaa P., Jesus L. P., Pereira G. and Abreu F. B., Clustering relations into abstract ER schemas for database reverse engineering, J. of Science of Computer Programming 45, 137 153, (2002)
  51. Perez J., Ramos I., Anaya V., Cubel J. M., Dominguez F., Boronat A. and Carsi J. A., Data Reverse Engineering of Legacy Databases to Object Oriented Conceptual Schemas, Electronic Notes in Theoretical CS, 74(4), Elsevier Science, (2002)
  52. Angyal L., Lengyel L. and Charaf H., An Overview of the State-of-The-Art Reverse Engineering Techniques, Proc. of Seventh Intl. Symp. of Hungarian Researchers on Computational Intelligence, 507-516, Hungary, (2006)
  53. Henrard J., Hick J. M., Thiran P. and Hainaut J. L., Strategies for Data Reengineering, Proc. of Ninth Working Conf. on Reverse Engineering , 211-220, (2002)
  54. Muller H. A., Jahnke J. H., Smith D. B., Storey M. A., Tilley S. R. and Wong K., Reverse engineering: A Roadmap, Proc. of Conf. on Future of SE, 47-60, (2000)
  55. Ali M. R., Why Teach Reverse Engineering ?, ACM SIGSOFT SE Notes, 30 (5), 1-4, (2005)
  56. Canfora G. and Penta M.D., New Frontiers of Reverse Engineering, Proc. of Intl. Conf. on Future of SE, (2007)
  57. Khan, S. A. and Zafar N. A., Promotion of local to global operation in train control system. J. of Digital Information Management, 5(4), 231, (2007)
  58. F. M and Khan S. A., Specification and Verification of Safety Properties along a Crossing Region in a Railway Network Control. Applied Mathematical Modelling J., 10.1016/j.apm.2012.10.047, (2012)
  59. Zafar N. A., and Khan S. A., Towards the safety properties of moving block railway interlocking system. Int. J. Innov. Comput., Info & Control, (2012)
  60. Khan, S. A. and Zafar. N. A., Improving moving block railway system using fuzzy multi-agent specification language. Int. J. Innov. Computing, Inform. Control, 7(7), (2011)
  61. Mian N. A., Hussain T., Database Reverse Engineering Tools, Proc. of Seventh WSEAS Intl. Conf. on SE, Parallel and Distributed Systems (SEPADS 08) University of Cambridge, Cambridge, UK, (2008)
  62. Markowitz V. and Makowsk J., Identifying extended entity relationship object structures in relational schemas, IEEE Transactions on SE, (1990)
  63. Petit J. M., Toumani F., Boulicaut J.F., and Kouloumdjian J., Towards the reverse engineering of Denormalized Relational Databases, Proc. of Twelfth Intl. Conf. on Data Engineering, USA, (1996)
  64. Signore O., Loffredo M., Gregori M., and Cima M., Using procedural patterns in abstracting relational schemata, Proc. of thirteenth Intl. Conf. on Entity-Relationship Approach, LNCS, 881 (1994)
  65. Mfourga N., Extracting Entity-Relationship Schemas from Relational Databases A Form-driven Approach, Proc. of Fourth Working Conf. on Reverse Engineering, 184 (1997)