A Normalisation Hint

Date last modified: 08 May, 2012

Back to home page

how to get lots of marks for very little effort!

This note assumes you have studied the relevant course material on functional dependencies and normalisation and you understand the term superkey.  If you've had difficulty with that material, then you might like to try my attempt to clarify it, here

A typical normalisation exercise in M359 gives a relation and a list of functional dependencies and then asks you to:

(a)        derive further nontrivial FDs

(b)        show that the given relation is not in 2NF

(c)        decompose the given relation to yield two or more relations that are in 2NF

(d)        state, with explanation, which of the 2NF relations is not in 3NF

(e)        decompose those that aren't in 3NF to yield relations that are in 3NF

Step (e) might be followed by further steps (f) and (g) in case some 3NF relation is not in BCNF.

Note that if a relation is in BCNF, then by definition it is also in 2NF and 3NF.  Also, the definition of BCNF is very simple—it just requires the determinant of every nontrivial, left-irreducible FD to be a key. 

So, your solution to part (c) can simply give a list of relations that are in BCNF.  What's more, you don't necessarily have to understand Heath's theorem that shows how decomposition is done.  Many people find that intuition is reliable enough.  Just obtain a set of relations that will contain all the information that is contained in the given relation but without any duplication.  Then, you can obtain all the marks for (d) and (e) by saying that all your relations in (c) are in BCNF (because every determinant is a superkey) and therefore in 3NF.

Back to home page