Les associations : Participations et cardinalités

Les associations : Participations et cardinalités

Objectif

Complément de cours pour ne pas se tromper avec les cardinalités caractérisant les types d'associations

Vocabulaire

Association
Une association définit un type de lien, un type de relation, entre deux ou plusieurs entités.
Une association correspond à une ou plusieurs règles générales d'organisation ou de logique du système d'information à modéliser. Le nom de l'association est en général un verbe.
Dimension d'une association
La dimension d'une association est le nombre d'entités qui interviennent.
L'association peut être réflexive (une seule entité), binaire, ternaire, n-aire
Participation à une association
Si z est un association particulière entre les deux entités x et y, alors il faut dire : les entités x et y "participent" à l'association z. Chaque occurrence (ou réalisation) d'une association se réalise par la réalisation des diverses entités qui "participent" à cette association.
Cardinalité d'une association
Une cardinalité caractérise le lien entre une entité et une association.
Elle est constituée de deux bornes : le minimum et le maximum du nombre de fois qu'une occurrence d'une entité participe aux occurrences de l'association
  • le minimum (en général 0 ou 1) joue sur la contrainte d'intégrité
  • le maximum (en général 1 ou n) a un effet sur la création de la base
  • Exemples

    Une association entre deux entités est hiérarchique si la réalisation de l'une des entités détermine la réalisation de la seconde.

    Exemple 1 :
    La gestion des commandes clients obéit à une règle tout à fait générale qui est :
    une commande n'est passée que par un seul client.
    Une deuxième règle de gestion est : chaque commande est identifiée par un numéro.
    Il résulte de ces deux règles que la connaissance d'un numéro de commande permet la connaissance du client qui a passé cette commande.
    L'inverse n'est pas possible bien sûr.
    La relation "une commande est passée par un client" sera donc représentée par une association hiérarchique.
    Exemple 2 :
    Dans les établissement scolaires on trouve ces deux règles de gestion :
  • un élève appartient obligatoirement à une classe ;
  • un élève n'appartient qu'à une seule classe.

  • L'identification de l'élève entraînera l'identification de sa classe.
    L'inverse n'est pas possible.
    La relation "un élève fait partie d'une classe" sera donc représentée par une association hiérarchique.
    Exemple 3 :
    C'est un peu le même un exemple avec 2 types d'association que l'on peut trouver pour gérer des profils d'élèves :
    On considère ici que la thématique principale de la formation précédente d'un étudiant détermine qu'il doit suivre les cours prévus pour les profils A, B ou C. La conception de la base de données s'appuie sur les règles suivantes :
  • tout élève a un profil unique
  • un cours peut être prévu pour les étudiants qui proviennent d'1, de 2 ou de tous les profils
  • L'identification de l'élève entraînera l'identification de son profil : c'est-à-dire que si on connait l'élève, alors on peut connaître son profil.
    L'inverse n'est pas possible : c'est-à-dire que si on se fixe un profil, on ne peut, avec les seules informations concernant les profils, identifier 1 étudiant. ou encore : un numéro de profil ne permet par de désigner 1 étudiant et un seul, il ne le caractérise pas, n'est pas assez discriminant.
    La relation "un élève a tel profil" sera donc représentée par une association hiérarchique.
    Exemple 4 :
    C'est l'exemple de référence : la relation père-fils. Elle est régie par les règles
  • un père peut avoir plusieurs fils
  • un fil n'a qu'un seul père
  • L'identification du fils entraînera l'identification du père : "C'est le père de Machin".
    L'inverse n'est pas possible : on ne sait pas choisir entre les frères si on dit "C'est le fils de Bidule"
    La relation "père-fils" est l'exemple caractéristique d'une association hiérarchique.
    On dit souvent "relation père-fils" pour "relation hiérarchique".

    Terminologie

    La terminologie est à connaître.

    Une "association hiérarchique" est aussi appelée "Contrainte d'intégrité fonctionnelle" (CIF).
    Elle est aussi appelée "Relation père-fils" car, vous l'avez constaté dans les deux exemples ci-dessus, la relation d'identification ne fonctionne que dans un sens.

    Un fils n'a qu'un père ; un père a plusieurs fils.
    Un élève n'appartient qu'à une classe ; une classe comporte plusieurs élèves.

    Une "association maillée" est ...
    Elle impose la création d'une table pour mémoriser toutes occurences de l'association.

    Caractéristiques particulières

    L'occurrence de la relation hiérarchique est unique.
    Par exemple, la relation élève-classe ne peut exister qu'une fois pour chaque élève. Il en résulte :

    Représentation

    Remarque : les cardinalités (ex : 1,1 ; 1,n) sont expliquées ci-dessous.



    Dans la table fils, l'identifiant de la table père est une clef externe.

    Correspondance avec Access

    Comme les CIF n'ont pas besoin de tables, elles n'apparaissent pas visuellement sur les écrans de Access.

    Elles sont créées par l'installation d'un lien (trait visuel) entre la clef primaire de la table père et la clef externe de la table fils, sur le schéma général des relations, ou sinon au moment de créer une requête.

    Concrètement, on clique glisse l'Identifiant P de la table père (clef primaire) vers l'Identifiant P de la table fils (clef externe).

    Explications des cardinalités

    Une cardinalité, dans une association, exprime le nombre de participations possibles d'une occurrence de chaque entité à l'association.
    Ce nombre étant variable, on note la cardinalité minimum et la cardinalité maximum.
    Comme il y a deux entités (au moins) associées, la cardinalité est précisée pour chaque entité.



    L'association "Ecrire" est une association normale.

    Exemple : un éditeur gère sur système informatique, son catalogue de livres et leurs auteurs. Beaucoup d'ouvrages sont élaborés par plusieurs auteurs sans dépasser huit pour le même ouvrage. Bien entendu, un ouvrage est élaboré par au moins un auteur.
    Les cardinalités sont les suivantes:

    Un livre est écrit par 1 à 8 auteurs

    Chaque auteur participe à l'écriture de 1 à "n" livres.
    "n" veut dire que le maximum n'est pas déterminé. Le chiffre
    1 veut dire que les personnes de la base auteurs sont auteurs d'au moins "1" livre, sinon elles ne seraient pas dans la base.
    "1" est le minimum. Ceci est une règle de gestion évidente implicite dans de nombreuses bases.

    Cardinalité de l'association hiérarchique

    La cardinalité de l'entité fils est "1,1".


    (Remarque : Electre est une base de données utilisées par les documentalistes, les libraires ou les particuliers. Elle affiche les titres de ouvrages et le nom de l'éditeur.)

    Règles de gestion :
    Un ouvrage est publié par un éditeur et un seul.

    Référence de la source de cet extrait de cours

    Le cours est inspiré et construit à partir d'extraits de http://www.ac-grenoble.fr/ecogest/pedago/administration/prodpeda/mcd.htm. de ???

    Recherche dans Google qui donne en résultat en particulier cette page :
    "modèle conceptuel" cardinalités

    Lien sur les modèles conceptuels de la méthode Merise dans l'encyclopédie Wikipédia : http://fr.wikipedia.org/wiki/MERISE#Le_MCD_mod.C3.A8le_conceptuel_des_donn.C3.A9es