Re: Another view on analysis and ER

From: David Cressey <>
Date: Wed, 05 Dec 2007 12:38:28 GMT
Message-ID: <8Zw5j.3633$QS.288_at_trndny03>

"Jan Hidders" <> wrote in message
> On 5 dec, 02:10, JOG <> wrote:

> > Ok so one might summarize the following steps:
> > 1) initial analysis of business processes and important concepts.
> > 2) Formulation of an initial conceptual model (that is necessarily
> > slanted to a certain viewpoint of the UoD).
> You might want to add here that sometimes in this step you have to
> integrate several different UoDs that do not necessarily agree on the
> overlapping parts. I think that is mainly what Ruud is talking about,
> plus the fact that at this stage you might want to anticipate a bit on
> other UoDs that might have to be integrated in the future. You could
> call that "making it more objective" but I think "making it less
> subjective" is more precise. ;-)

Excellent point. Integrated previously disjoint UofDs is a major step that precedes effective information sharing. And the need for integration generally eludes the people who have maintained their own data within their own private fiefdom.

I don't agree that integrated data is "less subjective" than data from separate Uof Ds. I think that what we achieve when we integrate UofDs is to substitute one "catholic" subjective viewpoint for several "parochial" subjective viewpoints.

My vision of database design is biased towards considering this the central problem in database design. My bias comes from my history with database development. When I was first coming up to speed on database matters, it was impossible to build a database of any size or significance whatsoever without obtaining data that was previously tucked away in files-and-records applications that did not talk to each other. Neither the users nor the programmers had the remotest idea of what integrated data would look like or why it would be useful.

So coming up with an integrated UofD that everyone could more or less accept was critical to the success of the database project. I think this is still true if you think of databases as serving multiple applications, some of which are not yet conceived, as a couple of people have pointed out in this topic. Too many databases today are as parochial in their mission as files of records were in my day.
> > 3) Translation into a nicely normalized logical model, that's query
> > neutral.
> Normalization is really only a very minor issue here IMO. I've not had
> that much personal practical experience in my life but I did work
> briefly for two big Dutch companies that both had an organization in
> charge of maintaining the global company data model that integrated
> all data models from the applications and databases they had. I worked
> with the guys that did this, and I remember being completely blown
> away buy how much variation there was in concepts such as employee and
> order, even within a single company. I still admire these guys.

"Normalization" as such is a corrective measure against data that turns out to have been designed in an unfortunate manner. As such, it's a bottom up approach. The approach I outlined above is a top down approach, and results in a normalized model (at least up to 3NF) with no effort at nromalization as such. The ER model i neither normalized not denormalized.

I strongly suspect that Bob Badour's approach, centered on propositions, is also a top down approach, and that the appropriate binding of attributes into relvars is a natural consequence of discovering well formed propositions rather than a corrective measure taken after an initial design that deviates from normalization. But I don't have up close experience with Bob's approach, so I'll defer to Bob's comments in this regard.

> > 4) On demand, extract data back out from the neutral logical model,
> > shaping it either the original conceptual view, or other conceptual
> > views as needs arise from new applications.
> >
> > Great. This all makes perfect sense, and is very clear to boot. A
> > simple process for creating a thorough yet flexible system. It seems
> > obvious even, right?
> >
> > So why on earth would /anyone/ want to drop step 3? I'm at a loss as
> > to why certain cdt'ers (who are clearly intelligent people) seem to be
> > advocating this. An absolute loss I tell you.
> I'm not sure that is what Ruud is saying. Anyone else?

I'm not sure who the poeple in c.d.t. that want to drop step 3 are. I'm surely not one.

I suspect that if anyone wants to drop step 3 it would be someone who wants to use ER for database design purposes, or someone who wants to use a pervasive object model to substitute for a relational logical model. Does anyone here hold either of these views?

> -- Jan Hidders
Received on Wed Dec 05 2007 - 13:38:28 CET

Original text of this message