DÉVELOPPEMENT D'APPLICATIONS AVEC ...






NORMALISATION






EXEMPLE


En étudiant un système de distribution, vous notez qu'il existe une chose, un objet, une entité qui s'appelle une "Commande d'achat". Ce document est réel, il existe et le préposé aux ventes s'en sert lorsqu'il doit saisir une commande provenant d'un client. Cependant, pour inclure cet objet dans notre système PB, il faut identifier l'information contenu dans le document et non le morceau de papier. On pourrait résumé l'information comme ceci:

COMMANDE-ACHAT
   Nom-client
   Adresse-client
   Date-commande
   Nom-fournisseur
   Adresse-fournisseur
   Produits-commandés *
      Code-produit
      Description
      Prix-de-vente
      Quantité
      Montant
   Sous-total-commande
   Taxe-provinciale
   TPS
   Total-commande

Afin de construire un système relationnel selon les règles, il faut d'abord normaliser cette structure.

En 1NF:
Commande-achat (Num-commande, Date-commande, Nom-client, Adresse-client, Nom-fournisseur, Adresse-fournisseur, Sous-total-commande, Taxe-provinciale, TPS, Total-commande)

Produits-commandés (Num-commande, Code-produit, Description, Prix-de-vente, Quantité, Montant)



En 2NF:
Commande-achat (Num-commande, Num-client, Num-fournisseur, Date-commande, Sous-total-commande, Taxe-provinciale, TPS, Total-commande)

Produits-commandés (Num-commande, Code-produit, Prix-de-vente, Quantité, Montant)

Client (Num-client, Nom-client, Adresse-client)

Fournisseur (Num-fournisseur, Nom-fournisseur, Adresse-fournisseur)

Produit (Code-produit, Description)




En 3NF:
Commande-achat (Num-commande, Num-client, Num-fournisseur, Date-commande)

Produits-commandés (Num-commande, Code-produit, Prix-de-vente, Quantité)

Client (Num-client, Nom-client, Adresse-client)

Fournisseur (Num-fournisseur, Nom-fournisseur, Adresse-fournisseur)

Produit (Code-produit, Description)