Re: Canonical DB (was: The wisdom of the object mentors)
Date: Wed, 21 Jun 2006 16:53:04 -0500
>> mAsterdam, parafrasing Robert Martin, said: >> >>> "Applications should not strongly >>> depend on a navigational format unless that >>> format IS the most convenient form for them.": >>> a matter of convenience for some applications >>> at the cost of convenience for other applications. >> >> And so each application programmer needs to decide >> what form the data is most convient in, and convert from the canonical >> DB form to that convenient form.
> This only raises new nuances to my original
> questions about your statements.
> "the canonical DB" is what, and gets designed how?
> When? To start by converting from it the DB design
> must be finished before the application design
> starts - is that part of your method(ology)?
I was thinking of a mature enterprise system that has a well worn RM holding the enterprise data, and a constantly changing set of applications that use that data.
If I were starting a system from scratch I would grow the RM and a few applications concurrently, evolving them together.
> You snipped my original questions.
> I'll re-state them in the current context this time:
> Earlier you said:
> "Because it [asymmetric navigational structure]
> also makes some computations easier."
> And I asked "Which (or which types of)
> computations are easier [with a
> navigational structure]?"
Things like tree searches, graph walks, etc.
> Also you said:
> "An application will often reform data into a
> non-relational structure that eases computation."
> In order to clearly understand what you meant by that,
> I asked: '"non-relational" as a synonym to "navigational"
> or did you have something else in mind?'
The term "navigational" doesn't mean a lot to me. I'm thinking of in-memory data structures managed by the application language.
-- Robert C. Martin (Uncle Bob) | email: unclebob_at_objectmentor.com Object Mentor Inc. | blog: www.butunclebob.com The Agile Transition Experts | web: www.objectmentor.com 800-338-6716 |Received on Wed Jun 21 2006 - 23:53:04 CEST