Re: Too add a new table or not

From: Bernard Peek <bap_at_shrdlu.com>
Date: Tue, 6 Nov 2001 21:35:49 +0000
Message-ID: <FHZwKzM1eF67EwUb_at_shrdlu.com>


In message <NCVF7.14844$xS6.20479_at_www.newsranger.com>, Lennart Jonsson <lennart_at_kommunicera.umea.se> writes

>I was more thinking about an initial design - and to make things simpler - only
>the logical model. Lets say I have identified the structures mentioned earlier,
>should I aim for 1 or more entities? I'm participating in a project where we
>have similar structures, thus interested in what is considered the apropiate
>thing to do.

If your modelling system supports subtypes and you know they exist then it would be a mistake to leave them out of your logical structure.

But entities and tables aren't the same thing. Once you start considering how to implement the database as tables you have left the entities of the logical structure behind. The same logical structure can be implemented in different ways and usually every choice is both right and wrong in different ways. You have to make some compromises and each implementation choice makes a different compromise.

You want to optimise development costs, development time, maintainability, storage space and processing time. You can't have them all. Do you want it better, faster or cheaper? Make your choice. If you choose cheaper do you want it cheaper to develop, cheaper to maintain or cheaper to run? Make your choice.

Once you have prioritised all of the constraints on the development process you need to consider how your implementation choices affect your costs. Should you front-load the costs, burning up developer time to make the long-term running costs lower, or should you throw something together in ten minutes and live with higher maintenance costs later? In practise the compromise is somewhere between the two. Exactly where depends on your priorities and only you know what those are.

-- 
Bernard Peek
bap_at_shrdlu.com

In search of cognoscenti
Received on Tue Nov 06 2001 - 22:35:49 CET

Original text of this message