Re: Another view on analysis and ER

From: rpost <rpost_at_pcwin518.campus.tue.nl>
Date: Thu, 06 Dec 2007 20:02:28 +0100
Message-ID: <15fe6$47584744$839b4533$5626_at_news1.tudelft.nl>


David Cressey wrote:

>> Apropos this distinction: As to whether marriage is a relationship or an
>> entity, you said that one should listen to the subject matter experts. I
>> have never had such an expert say to me, "No, that's not a relationship,
>> that's an entity!" or vice versa. Have you?
>
>Not in so many words. But they have said things like "a reservation for a
>certain car, on a certain date, by a certain customer has a way of
>identifying it.

Maybe not even that. Maybe they just use the word "reservation", a noun, which implies that it apparently has some way of being identified. As NIAM says: nouns -> entities, verbs -> relationships. (Not a hard and fast rule, of course.)

>We call it a 'reservation number'.

To me this is an independent step: establishing the attributes on our entity (or relationship), and whether they are compulsory and/or identifying.

>What you have now
>learned is that the UofD people think of a reservation as a thing in and of
>itself and not just an association between a customer and a car on some
>future date.

Funny, "thing" is exactly the word Chen uses in his paper, but I think what it really means in this context is: whether it can be identified independently.

>This tells you something you need to know about the problem statement: The
>database has to store reservation numbers.

If they mention reservation numbers, yes. If not, better ask them how they (reliably) identify reservations, before you end up using a surrgate.

[...]

>In some cases, the business rules will make the design decision for you. In
>other cases, the business rules are silent on this score.

In other cases, we end up carrying whole databases around of what should really be database-internal surrogate ids just because the database designers found it easier to make us remember which ids we happen to have have in their databases, than to provide us with identification facilities in terms we already use. And I can't even blame them.

-- 
reinpost_at_win.tue.nl aka rpost_at_campus.tue.nl aka r.d.j.post_at_tue.nl aka ......


>
>
>
>
Received on Thu Dec 06 2007 - 20:02:28 CET

Original text of this message