NORMIT: a data normalization tutor

Overview of NORMIT

NORMIT is an ITS that teaches data normalization. NORMIT is a problem-solving environment, in which students can improve their skills. We assume that students would already be familiar with the data normalization theory from lecture, but the system does provide some support for acquiring domain knowledge. We require the student to go through the following steps in NORMIT:

  • Determine candidate keys: the student needs to analyze the given table and functional dependencies in order to determine all candidate keys. A candidate key is an attribute or a set of attributes that has two properties: uniqueness (its value is unique within the table) and irreducibility (no attribute can be removed from the key so that each value of the key is still unique).
  • Determine the closure of a set of attributes: if the student is unsure whether a set of attributes makes a candidate key, he/she may compute the closure of that set under the given set of functional dependencies.
  • Determine prime attributes (a prime attribute is an attribute that belongs to any candidate key).
  • Simplify functional dependencies: if any of the given functional dependencies has more than one attribute on the right-hand side, the student needs to turn it into as many dependencies as there are attributes on its right-hand side (this step is the application of the decomposition rule).
  • Determine the normal form the table is in. During this task, when necessary, the student will also be asked to specify functional dependencies that violate normal forms.
  • If necessary, decompose the table so that all tables are in the Boyce-Codd normal form. For decomposition, we use the relational synthesis algorithm.

NORMIT is an adaptive system. The tailoring of instruction is done in two ways: by adapting the level of complexity of problems and by generating informative feedback messages. The architecture of the system is illustrated in the following figure.


The interface of the system was developed by Li Chen and Melinda Marshall.

Evaluation study

NORMIT was used in COSC226 (the introductory database course) for the first time in 2002. The results of the evaluation are available from the NORMIT Workshop paper (PDF) presented at the Workshop on Meta-cognition and self-regulation in learning with metacognitive tools, associated with the 11th international conference on Artificial Intelligence in Education, AIED 2003 (Sydney, July 20-24, 2003).