Normalization and Database Design Problems
Although normalization is the only component of database design based in provably correct mathematics, it also retains some of the more subjective elements common to other aspects of database design. For example, it is usually possible to normalize a database schema in multiple ways. Normalization theory does not guarantee, or even suggest, that it produces a canonical set of relations for any given database. Instead, it guarantees that a fully normalized database schema is free of a number of problems that otherwise cannot be excluded, the most widely known of these problems being update anomalies.
This topic, which is slightly modified from the presentation given by Date (1998), describes some of the problems commonly encountered in database design that cannot be solved merely by fully normalizing the database schema.