Robert L. Stewart
rl_stewart at highstream.net
Tue May 25 09:37:38 CDT 2004
Arthur, I agree in part with you. One thing that no one has said that I think is essential to "good" database design is imagination. And, you are correct in that there really is only one "perfect" design, with many that are close, and even more that are flawed. I think that the imagination is where the "art" comes in. There is nothing more artistic than a nice E size plot of a good database design. ;-) Most db designers will not go past 3rd normal form. Sorry guys, but that falls into the "close" category. There is a reason that there is 6 normal forms defined. 1 - 5 and Boyce-Codd. Sometimes the "art" is in how we ask the questions to determine the correct design. I have a friend that is extremely good at OLAP design. He was working with me on an OLTP system. When I sketched out the design, he looked at it and said, "Yeah, it looks right, but how did you get there?" When I explained all the steps that I went through in my head, he was amazed at the jumps that I make in the design mentally. Art? Maybe, or maybe just a different way of thinking. The other thing that I told him is that I had reduced all of the 5 numbered normal forms to a single question. "Can there ever be more than one?" If the answer is not "No," then you need another table. Following this faithfully will get you fully normalized. He thought about this over the weekend, thinking that I had simplified it too much. He went and read the requirements for each normal form. When he came back on Monday, he said that he could not find an instance where my way of thinking about design would not work. Maybe the art is in the questions we ask to get the design we get. I like to think that at least a little of what I do is art and not just pure logic. :-)) Or maybe it has to do with the fact that I am ADD. Might be some good questions... How many of you that consider yourselves good programmers are ADD? How many of you that consider yourselves good db architects are ADD? Robert P.S. I think that this has been a great discussion. It shows the diversity of opinions from an educated group of developers. At 06:21 AM 5/25/2004 -0500, you wrote: >Date: Mon, 24 May 2004 22:46:44 -0400 >From: "Arthur Fuller" <artful at rogers.com> >Subject: RE: [AccessD] On DB Bloat, Bad DB Design, and various >To: "'Access Developers discussion and problem solving'" > <accessd at databaseadvisors.com> >Message-ID: <000401c44202$83eef560$6601a8c0 at rock> >Content-Type: text/plain; charset="us-ascii" > >This is equivocation pure and simple, Drew... Though if you wish to >persist with it go ahead. There is IMO no comparison between designing a >bridge and writing a sonnet. Not least because in the former case if you >f**k up many people will die, while in the latter case no one will read >you. > >I grant you that GUI design is art. But database design is pure science. > >Arthur