Re: OO and relation "impedance mismatch"

From: Gene Wirchenko <genew_at_mail.ocis.net>
Date: Sun, 03 Oct 2004 11:10:05 -0700
Message-ID: <f5e0m0144tutc7t86dqgvh86iqcf81ihlj_at_4ax.com>


"Dawn M. Wolthuis" <dwolt_at_tincat-group.comREMOVE> wrote:

[snip]

>Constraint information is needed throughout applications and not just at the
>point of commiting data. In fact, that's way too late to apply the
>constraints. If you can lock out all transactions & queries with the
>database that do not go through designated APIs (such as web services)
>rather than locking them using the proprietary DBMS, then you don't need to
>have the database apply these constraints since they will be applied up
>front of that necessarily.

     Not necessarily.

  1. Someone could skip them for the sake of so-called efficiency.
  2. Someone could simply forget to insert them, or more likely one of them.

     Either case can affect every app using the database.

     With the constraints scattered over the apps using the database, how are you going to:

  1. verify that the constraints are correct?
  2. change the constraints should the business rules change?

     If the rules are in one place, that makes it far easier. I am sruggling with an app that I wrote where, for expedience, the rules are in the app. The system has changed considerably over the years, and some changes are very difficult due to all the changes I have to make to the app-level validation.

From my sig collection:

"As a software development model, Anarchy does not scale well." -- Dave Welch

Sincerely,

Gene Wirchenko

Computerese Irregular Verb Conjugation:

     I have preferences.
     You have biases.
     He/She has prejudices.
Received on Sun Oct 03 2004 - 20:10:05 CEST

Original text of this message