Tuesday, July 12, 2005

Ten Commandments for Database Design

We're moving. The office where I work, that is. Shifting through old contracts, articles and designs, I came across a ten year old series by R.J. Veldwijk, called the Ten Commandments for Good Database Design.
They still are true, and probably always will be. Here they are, in short form. I could elaborate, as I have, and keep, the articles, but I'll give the condensed version here for now:

  1. Thou shalt not allow non-atomic data in thy database.
  2. Thou shalt normalize thy design.
  3. Thou shalt strive towards minimizing thy constraints.
  4. Thou shalt not create hierarchical generalizations.
  5. Thou shalt fear the problem of history.
  6. Honour thy documentation: that thy days may be long upon thee.
  7. Thou shalt not fear the modeling of functional aspects.
  8. Thou shalt strive for abstract data models.
  9. Thou shalt take care of thy application structure.
  10. Thou shalt not take gurus' advice for granted.
I like the last one; take good notice of it!

No comments: