Re: Databases as objects

From: David Cressey <dcressey_at_verizon.net>
Date: Mon, 25 Dec 2006 18:00:04 GMT
Message-ID: <EkUjh.2278$175.316_at_trndny05>


"Thomas Gagne" <tgagne_at_wide-open-west.com> wrote in message news:mMWdnfvPC4g4YBfYnZ2dnUVZ_t2tnZ2d_at_wideopenwest.com...

> I'm not advocating objects over relations. In fact, through the
> preference of procedures I'm enabling (ney--promoting) the exploitation
> of relational operations.

I disagree. (I should mention in passing that I agree with much of what you've been saying in the thread.

In addition to the Object Relational mismatch, there is another mismatch that is possibly older and more pervasive than it.

It's the data-centric versus the process-centric world view. For my first twenty years in computing, I was firmly entrenched in the process-centric world view, without even being aware that I had made a choice. My transition to a data-centric world view was one of the rockiest transitions I ever made in my professional life. It started out by being transferred from a boss that was techno-centric to a boss that was business-centric. It proceeded through a little language called Datatrieve (DEC, late 1970s and early 1980s), and on into relational DBMSes with SQL interfaces.

But the real shock for me was the difference between the data-centric and process-centric world views was the way you go about analyzing the requirements for a proposed system based on the current way of doing business. I can't do justice to the topic. It's amazing.

The object-oriented paradigm actually has room in it for both a data-centric world view and a process-centric world view. But the majority of object-oriented SW designers focus on object analysis and design at the expense of message analysis and design. They tend to treat the design of messages as a relatively trivial portion of overall system design. Nothing could be further from the truth.

Yes, but what does all of this have to do with the quote I was responding to?

Just this: when you use procedures as the primary intervace to the database you have committed yourself to the process centric world view at the expense of the data centric world view. When you call a procedure, you invoke a process, by name. When you invoke a view, you invoke some data by name. I have more to say, but I need to stop and think. Received on Mon Dec 25 2006 - 19:00:04 CET

Original text of this message