II.                LES DEPENDANCES FONCTIONNELLES

Introduction

 

Les dépendances fonctionnelles traduisent des liens pouvant exister entre les propriétés. La mise en évidence des dépendances fonctionnelles est un moyen de contrôler la validité d’un MCD

 

A.                Définition

Soient deux propriétés P1 et P2, on dit que P2 dépend fonctionnellement de P1 si et seulement si une valeur (occurrence) de P1 permet de connaître une et une seule valeur de P2.

 

Notation : :    P1                               P2

 

 

 

 

 

 

 

1.                  Dépendances fonctionnelles au sein d’une entité

Soit les faits suivants :

 

Dans un lycée, les professeurs sont caractérisés par un numéro, leur nom, leur prénom et leur discipline (une seule discipline par professeur)

 

T.A.F. :

Recensez toutes les dépendances fonctionnelles

 

- NUM PROF                                        NOM PROF

 

-  NUM PROF                                      PREN PROF

 

- NUM PROF                                       Discipline

 

 

 

Conclusion : Toutes les propriétés d’une entité « dépendent fonctionnellement » de l’identifiant

 

 

 

2.                  Dépendances fonctionnelles existant entre deux entités reliées par une association de type père-fils

 

Soit les faits suivants : les élèves, caractérisés par un numéro, un nom et un prénom, appartiennent à une classe (numéro et nom de classe)

 

Activité :

 

a) Mettre en évidence toutes les  dépendances fonctionnelles.

- Num eleve                                     Nom éleve

- Num eleve                                      Prén eleve  

- Num classe                                  Nom classe

- Num eleve                                   Num classe      

b) En déduire le M.C.D.

 

       

        ELEVE                   1,1                                    1,n                CLASSE

  Num eleve                                      Appartenir                     Num classe    

 

 

 

Conclusion :

 

Lorsqu’il existe une DF entre les identifiants de deux entités, cela se traduit par une association Pére-Fils L’association traduit une contrainte d’intégrité fonctionnelle

 

 

 

 

 

3.                  Dépendances fonctionnelles entre deux entités reliées par une association de type non hiérarchique

 

On veut modéliser les faits suivants :

 

Dans l’entreprise JENBOND, les produits (caractérisés par un code et une désignation) peuvent soit être fabriqués par l’entreprise ou provenir de différents fournisseurs (caractérisés par un numéro et un nom).

Un même produit peut provenir de plusieurs fournisseurs à des prix d’achat différents. Un fournisseur peut livrer plusieurs produits.

 

ACTIVITE :

a) Présentez le M.C.D. correspondant à cette situation

 


   PRODUIT                0,n             PROVENIR       1,n            FOURNISSEUR

  Code prod                                                                            Num fourn

  Désign prod                                 Px achat                           Nom Four

 

 

b) Quel est l’identifiant (ou clé primaire) de l’association ? L’identifiant d’une association non hiérarchique est constituée de la concaténation des identifiants des entités liées par l’association

CODE PROD+Num four

 

L’association traduit ici une contrainte d’intégrité multiple (CIM)

c) Recensez les dépendances fonctionnelles

 

-   Code prod      Désign prod                               - Code prod+Num four              Code prod

-   Num four        Nom four                                   - Code prod+Num four              Num four

-                                                                           - Code prod+Num four              Px achat

 

 

B.                Règles de détermination des dépendances fonctionnelles

 

REGLE 1 :

 

Toutes les propriétés autres que les identifiants doivent être buts d’une dépendance fonctionnelle (Lorsqu’une propriété ordinaire n’est pas but d’une D.F. soit cette propriété est inutile, soit il s’agit d’un paramètre).

 

REGLE 2 :

Les dépendances fonctionnelles doivent être pleines : les propriétés « but » (autre que les identifiants) doivent dépendre de la totalité de l’identifiant « source » et non d’une partie de ce dernier.

 

exemples : A partir de  l’application du III/ A/3, indiquez ci dessous les DF pleines

 

- Codeprod+N°four                       Px achat

 

- Code prod+N° Four                    Code prod

 

Contre-exemple : A partir de  l’application du III/ A/3, indiquez ci dessous les DF non pleines et justifiez la réponse

Df non pleine car Nom four dépend du seul N° Four et nom four n’est pas un identifiant

 
 


- Code prod+ N° four                    Nom four

 

 

 

REGLE 3 : Les dépendances doivent être directes c’est à dire non transitives

 

 

EXEMPLE : d’après l’exemple du III/A/2, déterminez les dépendances directes

 

- Num eleve                         Num classe

 

Contre-exemple : Num eleve                         NomClasse est une DF Transitive. Justifiez pourquoi !

 

- Num eleve                         Nom classe : DF transitive car Num eleve               N° classe  et N° classe             Nom classe   

 

APPLICATION

 

On veut modéliser l’occupation des salles d’un lycée compte tenu des règles de gestion suivantes :

 Les salles sont occupées par une ou plusieurs classe en fonction d’un ou plusieurs horaires. On a relevé les dépendances fonctionnelles suivantes :

Dépendances fonctionnelles

D.F. à éliminer ou à conserver : justification

NUM SALLE --> CAPACITE SALLE

 

à conserver : DF directe (Capacité salle dépend directement de NUM SALLE) et DF Pleine

NUM CLASSE -> NOM CLASSE

 

DF directe et pleine

NOM CLASSE -> NBRE ELEVES

 

à éliminer : DF transitive

NUM CLASSE -> NBRE ELEVES

 

DF directe et pleine

NUM SALLE+NUMCLASSE+HEURE DEBUT --> DUREE COURS

DF pleine et directe

NUM SALLE+NUMCLASSE+HEURE DEBUT --> NUM SALLE

 

OK car num salle est un identifiant

NUM SALLE+NUMCLASSE+HEURE DEBUT --> CAPACITE SALLE

à éliminer DF non pleine (Capacité salle dépend de Num salle)

NUM SALLE+NUMCLASSE+HEURE DEBUT --> NUM CLASSE

OK

NUM SALLE+NUMCLASSE+HEURE DEBUT --> NOM CLASSE

DF non pleine à éliminer

NUM SALLE+NUMCLASSE+HEURE DEBUT --> HEURE DEBUT

DF directe et pleine

 

ACTIVITE

a) Quelles sont les entités qui se dégagent des règles de gestion ?

b) Que représente NUM SALLE+NUM CLASSE+HEURE DEBUT

c) Barrez les dépendances fonctionnelles non pleines et les dépendances fonctionnelles transitives et justifiez en complétant la deuxième colonne du tableau

 

C.                La Matrice des Dépendances fonctionnelles (M.D.F.)

 

1.                  Définition :

La matrice des dépendances fonctionnelle est un tableau comportant :

- en ligne les propriétés buts d’une dépendance fonctionnelle

- en colonne, les propriétés sources d’une dépendance fonctionnelle.

La MDF met en évidence toutes les DF pleines et directes entre les propriétés du MCD.

 

 

 

 

 

2.                  Méthode de construction de la M.D.F. :

a)    Noter dans la 1ère colonne(titres de ligne) toutes les propriétés du système d’information et souligner les identifiants

b)    Reporter dans la 1ère ligne tous les identifiants (titres de colonnes)

c)     déterminer toutes les DF tre enles identifiants et les propriétés appartenant aux mêmes entités ( avec le chiffre 1 ou 0-1 dans le cas d’association oui-non)

d)    Déterminer les C.I.F. (DF entre les identifiants) avec un 1 dans un triangle)

e)     Déterminer les C.I.M. (associations non hierarchiques) : On ajoute une ligne composée d’une clé concaténée.

Très important  les propriétés isolées sont soit :

- inutiles ,

- des paramètres,

- des propriétés d’une association et dépendent donc d’une clé concaténée


f) vérifier l’absence de transitivité et déterminer les niveaux au brouillon à l’aide d’un graphe

 

3.                  application : Cas MicroPouce

La société MicroPouce vend du matériel informatique.  On a relevé les règles de gestion suivantes relatives au suivi des devis :

- Les clients appartiennent à un secteur géographique déterminé

- Chaque représentant suit plusieurs secteurs, mais un secteur est suivi par un seul représentant

- Un devis ne concerne qu’un seul client. Un devis porte sur un ou plusieurs produits

- Un produit appartient à une seule catégorie de produit.

 

Les données du système d’information vous sont données dans la M.D.F.

 

Activité :

1) Complétez la M.D.F.


 

Propriétés sources

 

 

Propriétés buts

1

6

8

10

12

14

17 10+12

 

 

Niveau

1

NUM CLI

*

 

 

1

 

 

 

 

 

2

2

NOM CLI

1

 

 

 

 

 

 

 

 

 

3

RUE CLI

1

 

 

 

 

 

 

 

 

 

4

CP CLI

1

 

 

 

 

 

 

 

 

 

5

VILLE CLI

1

 

 

 

 

 

 

 

 

 

6

NUM REP

1

*

1

 

 

 

 

 

 

4

7

NOM REP

 

1

 

 

 

 

 

 

 

 

8

CODE SECTEUR

1

 

*

 

 

 

 

 

 

3

9

LIBELLE SECTEUR

 

 

1

 

 

 

 

 

 

 

10

NUM DEVIS

 

 

 

*

 

 

1

 

 

1

11

DATE DEVIS

 

 

 

1

 

 

 

 

 

 

12

CODE PROD

 

 

 

 

*

 

1

 

 

1

13

DESIGN PROD

 

 

 

 

1

 

 

 

 

 

14

CODE CAT

 

 

 

 

1

*

 

 

 

2

15

LIBELLE CAT

 

 

 

 

 

1

 

 

 

 

16

QUANTITES COMM

 

 

 

 

 

 

1

 

 

 

17

Num devis+code prod

 

 

 

 

 

 

*

 

 

0

           Détermination des niveaux : (au brouillon)

 

 

 


Num devis+Code produit                                  Num devis                              code produit

                   N 0                                                 N1                                    N1

 

 

 

                                                                       code cli                                 code cat

                                                                       N2             Transitivité           N2

 

 

 

                                                                      code secteur                          num rep

                                                                          N3                                        N4

 

 

D.                La structure d’accès théorique (S.A.T.)

1.                  Définition

La S.A.T. est une représentation graphique des dépendances fonctionnelles. Elle se construit plus facilement après avoir établi la M.D.F. et déterminé les niveaux de dépendances fonctionnelles. La S.A.T. permet de déceler les transitivités

2.                  Application

A partir de la M.D.F. du cas MicroPouce, présentez la S.A.T. et en déduire le M.C.D.

 

 

 N0     Num devis+code prod

                                                                                        Qtes comm

 

 


N1              Num devis                                                                                 Code prod

                                            - Date devis                                                                               - Désign prod

 

 

 


                    N2              Nume cli                                                                                      Code cat

                                          - Nom cli                                                                                     - Libellé cat

                                          - Rue cli    

                                          - CP cli

                                          - Ville cli

 

 

                    N3           Code secteur

                                           - Libellé secteur

                                      

 


                    N4           Num rep  

                                           - Nom rep

 

MCD : Lorsque la SAT est correctement déterminé, on obtient la  position exacte des entités sans efforts .

 

 

FIGURER

Qtes comm

 

 
                                                       1,n                                                               1,n

 

 

 

 

 

 


                                              1,1                                                                                           1,1

 

 

 


                                             1,n (o,n)                                                                                    1,n   

 

 

 

 

 

 

 


                                            1,1 

 

 


SECTEUR

Code Secteur

Libelle Secteur

 

REPRESENTANT

Num Rep

Nom Rep

 
                                           1,n

VISITER

 
                                                           1,1                                              1,n