database normalization using dependencies graph fotache_m_strimbei_c__ibima2008
DESCRIPTION
Presentation for IBIMA 2008 Conference (https://www.researchgate.net/publication/267271447_Back_to_Simplicity_An_Old-Looking_New_Database_Design_Methodology). This paper develops a database design methodology which is based on the graphical representation of dependencies among database attributes. Rooted in the papers of Bernstein, Smith, Mannila and Raiha, Ausiello, D’Atri and Sacca, the methodology lacks the formalistic bedrock so abundant in normalization papers. It is intentionally less rigorous but more relevant to the database designers.TRANSCRIPT
Marin Fotache, Catalin StrimbeiIBIMA2008
Back to Simplicity: An Old-Looking New Database Design
Methodology
An “ancient” problemHow to design a database schema for a real-
world application ?Modeling, analysis & design approaches
E/RUnified Process (UML)Agile methodologiesEtc
Normalization
Two methodologies of Normalization
Decomposition (Codd, 1972 & co)Splitting repeatedly the Universal Relation
into relations in order to remove partial and transitive functional dependencies, multivalued and join dependencies
1NF 2NF 3NF BCNF 4NF 5NF...
Synthesis (Bernstein, 1976)
The proposed guide - pillars
Keeping some repeating groups and splitting the others
Functional dependenciesRemoving simmetrical FD’sUsing surrogate keys for:
Identification problemsTransforming MVDs
Inclusion dependencies (IS-A roles)Graphical representation
A FD chart (graph)
A simplified version of the chart
Representing Inclusion Dependencies
Comparison
Surrogation for “fixing” the chart
A “hard surrogation” case
Accepting insular attributes
BCNF transformation
BCNF transformation - example
Trick and surrogates
(Another) Trouble with FDs
A FD/IND based solution
MVD’s – (a R.Fagin’s example)
Emp#
SpouseID
ChildID
Year
SalaryHireDate
EmpDept
PersNameYearOfBirth
Removing MVDs – two solutions