© Éditions Eyrolles
67
chapitre n° 1
Le niveau conceptuel : face à face Merise/UML
Figure 1-65 Règle de non-redondance
Première forme normale
Première forme normale
Chaque attribut d’une classe, d’une association ou d’une classe-association possède au plus
une seule valeur à un instant t.
Pour respecter cette normalisation, le schéma ne doit pas contenir d’attribut multivalué (ayant
plusieurs valeurs, comme une liste), contrairement aux attributs monovalués qui contiennent au
plus une valeur de tout type (chaîne de caractères, date, entier, etc.). Le problème c’est que UML
permet de définir des attributs multivalués.
À moins que vous ne maîtrisiez le concept de collections (étudié au chapitre 3) et que vous
desiriez l’appliquer à bon escient à une base de données objet-relationnelle, il est conseillé de
ne pas utiliser d’attribut multivalué.
Rapport avec les dépendances fonctionnelles
Une classe est en première forme normale si chaque attribut est en dépendance fonctionnelle
avec l’identifiant de la classe. En d’autres termes, à une valeur de l’identifiant, on a au plus une
valeur de tout autre attribut de la classe.
Pour que le diagramme 1-66 (dans lequel on suppose que l’attribut a est identifiant) soit en
première forme normale, il faut qu’à une valeur de a soit associé au plus une valeur de b et de c.
Sinon, on est en présence d’attributs multivalués qu’il faut décomposer.
Exemple
Des postes de travail identifiés par un numéro sont connectés au réseau à travers des segments
caractérisés par un indicatif IP, un nom et la longueur du câble. L’exemple 1-67 décrit le passage en
C1
C2
C3
b
*
*
b
a
b
67
chapitre n° 1
Le niveau conceptuel : face à face Merise/UML
Figure 1-65 Règle de non-redondance
Première forme normale
Première forme normale
Chaque attribut d’une classe, d’une association ou d’une classe-association possède au plus
une seule valeur à un instant t.
Pour respecter cette normalisation, le schéma ne doit pas contenir d’attribut multivalué (ayant
plusieurs valeurs, comme une liste), contrairement aux attributs monovalués qui contiennent au
plus une valeur de tout type (chaîne de caractères, date, entier, etc.). Le problème c’est que UML
permet de définir des attributs multivalués.
À moins que vous ne maîtrisiez le concept de collections (étudié au chapitre 3) et que vous
desiriez l’appliquer à bon escient à une base de données objet-relationnelle, il est conseillé de
ne pas utiliser d’attribut multivalué.
Rapport avec les dépendances fonctionnelles
Une classe est en première forme normale si chaque attribut est en dépendance fonctionnelle
avec l’identifiant de la classe. En d’autres termes, à une valeur de l’identifiant, on a au plus une
valeur de tout autre attribut de la classe.
Pour que le diagramme 1-66 (dans lequel on suppose que l’attribut a est identifiant) soit en
première forme normale, il faut qu’à une valeur de a soit associé au plus une valeur de b et de c.
Sinon, on est en présence d’attributs multivalués qu’il faut décomposer.
Exemple
Des postes de travail identifiés par un numéro sont connectés au réseau à travers des segments
caractérisés par un indicatif IP, un nom et la longueur du câble. L’exemple 1-67 décrit le passage en
C1
C2
C3
b
*
*
b
a
b
