Re: Table design - reducing number of entities

From: David Cressey <david.cressey_at_earthlink.net>
Date: Sat, 03 Dec 2005 06:20:08 GMT
Message-ID: <sOakf.12492$aA2.4406_at_newsread2.news.atl.earthlink.net>


"frugalprogrammer" <sillydeveloper_at_gmail.com> wrote in message news:1133552593.110782.98470_at_g49g2000cwa.googlegroups.com...

> I was thinking along the lines of some of the developers I have worked
> with who do not use such a process, and literally do pull tables out of
> a hat, and no, they are not as cute as a bunny as usually I am the one
> tasked with cleaning up years of data.

I concur.

>
> Roy, what tools do you use for modelling, out of curiosity? I've been
> looking for migration / analysis tools, actually, and have resorted to
> building one myself.

PMFJI, A few years back the tool I liked the best was Data Architect, part of the Power Designer suite from Sybase.
If deals with two different data models, the Conceptual Data Model (CDM) and the Physical Data Model (PDM).
Later versions added a third model, an Object model (OODM), but I don't need to go into that.

The CDM is basically like an Entity-Relationship model, with a few additions that were new to me at the time. One addition deals particularly elegantly with modeling generalization-specialization hierarchies, which are relevant to this thread.

The PDM is DBMS product specific, and is basically a model of the objects you create with SQL CREATE statements.
DA divides these objects into Schema objects, like Tables, and Database objects, like Tablespaces.

What's really nice is the ability to reverse engineer: from the CREATE Script for an existing database, it's easy to create a PDM, and then reverse engineer to a CDM, which is product independent. Then you can forward engineer to a PDM for a different DBMS, and generate a new CREATE script.

It behooves you to make a few manual fixups along the way, but it handles the grunt work very nicely.
I don't know what's happened to the product in the last five years. Received on Sat Dec 03 2005 - 07:20:08 CET

Original text of this message