Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesReverse Engineering


June 1997 / Special Report / A Career in Data Modeling / Reverse Engineering

So, you think that models might provide some useful insights and lead to better-designed databases. But what if you're faced with legacy databases created over time by different development teams for different applications, and n o models exist? Most modeling tools provide just what's needed to atone for these past sins: reverse engineering.

When you reverse-engineer a database, the modeling tool inputs schema descriptions from a relational DBMS and produces a model for the database. It does this by creating an entity for each table an d creating relationships by using the connections shown by keys that appear in multiple tables. You can then use the model to clarify the semantics in the database that guide you to modifications or integrate this database with another (see the figure "Backward and Forward" ). Reverse engineering also allows you to compare two different databases by creating a model for each and comparing them -- or, in a development environment, to compare two versions of the same database to identify differences, additions, and deletions.

Some tools support a dynamic connection between the physical database and a model representation (e.g., ERWin's Server FRE [for Forward-and-Reverse Engineering]). The model becomes a live representation used to monitor the physical database. You can then use the model to implement changes (forward) or to observe them (reverse). This provides a database administrator with an easy way to manage and control the database. Using graphical representations of tables and t he relationships among them (rather than database-description-language [DDL] code) simplifies the task of maintaining the database.


Backward and Forward

illustration_link (20 Kbytes)

Here's how a databse-modeling tool might reverse-engineer a database.


Up to the Special Report section contentsGo to previous article: A Career in Data ModelingGo to next article: Object Modeling vs. ER ModelingSearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network