Actualites��Forum��Archives
Le magazine des d�cideurs et webmasters qui gagnent !
�Inscription | Livre d'or | Plan du site | 20� visiteurs actifs �
��
���� A la Une
� Actualit�
� Dossiers
� Communiqu�s
� Coin Technique
� Agenda des salons
� Emploi
� Echange de liens

���� Archives
� S�lection
� Exp�rience qui parle
� Internet quotidien
� Tous les dossiers

���� Forum
� Forum SAM-MAG

���� Guides
� Check-list de la promotion des sites
� Promouvoir et r�f�rencer les sites web

���� Contact
� Nous contacter
� Newsletter
� La protection des donn�es personnelles

���� Login
���
����
Inscription

Mot de passe oubli�?

�� Sondage
Vous v�rifiez votre r�f�rencement :
22%�tous les trimestres
17%�tous les mois
18%�toutes les semaines
21%�tous les jours
23%�jamais

���� Rechercher
����
���

Recherchez maintenant !
En partenariat avec amazon.fr
Google
Powered by FullXML
�Actualit�


Merise : 2�me partie
Apr�s avoir con�u le Mod�le Conceptuel de Donn�e (MCD), il est maintenant temps de le transposer en Mod�le Logique de Donn�es Relationnelles (MLDR). Ce MLDR est en fait le dernier pas vers le Mod�le Physique de donn�e(MPD), c'est � dire la description de la base qui va �tre cr�e. Et l�, deux solutions s'ouvrent � vous : soit vous laissez � un programme le soin de transformer votre MCD, soit vous le fa�tes vous-m�me. Dans les deux cas, il est utile d'avoir un minimum de connaissance th�orique sur le sujet. Apr�s avoir d�finis les notions de cl� primaire et de cl� �trang�re, nous �tudierons plus particuli�rement aujourd'hui les 6 r�gles strictes, n�cessaires et suffisantes pour passer d'un MCD � un MLDR, et nous les appliquerons ensuite au sch�ma de Newsletter que nous avons �cris la derni�re fois.

Préliminaires : le Mod�le Logique de Donnée (MLD)

Il s'agit du passage entre le Modèle Conceptuel de Donnée et l'implémentation physique de la base. Le MLD est lui aussi indépendant du matériel et du logiciel, il ne fait que prendre en compte l'organisation des données. C'est d'ailleurs le point primordial de la modélisation : si l'organisation des données est relationnelle (si elles sont "liées" entre elles), alors le MLD est Relationnel et devient le MLDR, ou Modèle Logique de Donnée Relationnel. Pour la petite histoire, le MLDR a été inventé par Codd en 1970, et repose sur la Théorie Ensembliste...

Un peu de vocabulaire : Les données sont stockées dans des relations. Une relation est un ensemble de T-uple, et un T-uple est définis par un ou plusieurs attributs. Dans la pratique, la relation est en fait la table, un
T-uple
est une ligne (ou enregistrement), et les attributs sont les colonnes.

Exemple de la table NEWSLETTER :



Cette table est décrite par :
NEWSLETTER (id_newsletter, Sujet, DateEnvoie, Contenu, #id_rubrique)

Chaque enregistrement doit être identifié de manière unique (voir la notion d'identifiant abordée dans l'article précédent). L'attribut qui permet d'identifier de façon unique chaque ligne est appelée la Clé Primaire. Elle peut être composée, c'est à dire comprendre plusieurs attributs. Ici, il s'agit de l'attribut id_newsletter.

La table Newsletter comprend un attribut provenant de la table RUBRIQUES, l'attribut id_rubrique. Cet attribut est appelé Clé Etrangère.

Dans le formalisme, la clé primaire est soulignée, et la clé étrangère est précédée du signe #. D'o� l'�criture d�finitive :

MATABLE (Cle_Primaire, Colonne1, Colonne2, #Cle_Etrangere)

Dans notre exemple :

Rubrique (id_rubrique, Nom)
Newsletter (id_newsletter, Sujet, DateEnvoie, Contenu, #id_rubrique)

Ici, id_rubrique est la Clé Primaire de la table RUBRIQUE, et est une Clé Etrangère dans la table NEWSLETTER.

Une fois assimil�e ces notions de cl�s primaires et de cl�s �trang�res, nous pouvons maintenant �noncer les r�gles suivantes :

1 : Une entit� se transforme en une relation (table)

Toute entit� du MCD devient une relation du MLDR, et donc une table de la Base de Donn�e. Chaque propri�t� de l'entit� devient un attribut de cette relation, et dont une colonne de la table correspondante. L'identifiant de l'entit� devient la Cl� Primaire de la relation (elle est donc soulign�e), et donc la Cl� Primaire de la table correspondante.

<==> CLIENT (id_client, Nom_Client, Tel_client)

2 : Relation binaire aux cardinalit�s (X,1) - (X,n), X=0 ou X=1

La Cl� Primaire de la table � la cardinalit� (X,n) devient une Cl� Etrang�re dans la table � la cardinalit� (X,1) :

Exemple de Syst�me d'Information (SI) :

Un employ� a une et une seule soci�t�. Une soci�t� a 1 ou n employ�s.

Mod�le Conceptuel de Donn�e (MCD) :


Mod�le Logique de Donn�e Relationnelle (MLDR) :

EMPLOYE (id_Employe, Nom_Employe, #id_Societe)
SOCIETE (id_Societe, Nom_Societe)

Mod�le Physique de Donn�e (MPD), ou sch�ma de base :

3 : Relation binaire aux cardinalit�s (X,n) - (X,n), X=0 ou X=1

Il y a cr�ation d'une table suppl�mentaire ayant comme Cl� Primaire une cl� compos�e des identifiants des 2 entit�s. On dit que la Cl� Primaire de la nouvelle table est la concat�nation des Cl�s Primaires des deux autres tables.
Si la relation est porteuse de donn�e, celles ci deviennent des attributs pour la nouvelle table.

S.I. :

Une commande est compos�e de 1 ou n produits distincts en certaine quantit�. Un produit est pr�sent dans 0 ou n commandes en certaine quantit�.

MCD :


MLDR :

COMMANDE (id_Commande, Date_commande)
PRODUIT (id_Produit, libelle)
COMPOSE (id_Commande, id_Produit, qantit�)

MPD :

4 : Relation n-aire (quelles que soient les cardinalit�s).

Il y a cr�ation d'une table suppl�mentaire ayant comme Cl� Primaire la concat�nation des identifiants des entit�s participant � la relation.
Si la relation est porteuse de donn�e, celles ci deviennent des attributs pour la nouvelle table.

S.I. :

Un �tudiant parle une ou plusieurs langues avec un niveau. Chaque langue est donc parl�e par 0 ou n �tudiants avec un niveau. Pour chaque niveau, il y a 0 ou plusieurs �tudiants qui parlent une langue.

MCD :

MLDR :

ETUDIANT (id_Etudiant, Nom_Etudiant)
NIVEAU (id_Niveau, Nom_Niveau)
LANGUE (id_Langue, Nom_Langue)
PARLE (id_Etudiant, id_Niveau, id_Langue)

MPD :

5 : Association R�flexive.

  • Premier cas : cardinalit� (X,1) - (X,n), avec X=0 ou X=1.


  • La Cl� Primaire de l'entit� se d�double et devient une Cl� Etrang�re dans la relation ou nouvelle table. Exactement comme si l'entit� se d�doublait et �tait reli�e par une relation binaire (X,1) - (X,n) (Cf r�gle 2).

    S.I. :

    Prenons l'exemple d'une soci�t� organis�e de mani�re pyramidale : chaque employ� a 0 ou 1 sup�rieur hi�rarchique direct. Simultan�ment, chaque employ� est le sup�rieur hi�rarchique direct de 0 ou plusieurs employ�s.

    MCD :


    MLDR :

    EMPLOYE (id_Employe, Nom_Employe, #id_Sup_Hierarchique)

    #id_Sup_Hierarchique est l'identifiant (id_Employe) du sup�rieur hi�rarchique direct de l'employ� consid�r�.

    MPD :



  • Deuxi�me cas : cardinalit� (X,n) - (X,n), avec X=0 ou X=1.


  • De m�me, tout se passe exactement comme si l'entit� se d�doublait et �tait reli�e par une relation binaire (X,n) - (X,n) (Cf r�gle 3). Il y a donc cr�ation d'une nouvelle table.

    S.I. :

    Prenons cette fois l'exemple d'une organisation de type familiale : chaque personne a 0 ou n descendants directs (enfants), et a aussi 0 ou n descendants directs (enfants).

    MCD :


    MLDR :

    PERSONNE (id_Personne, Nom_Personne)
    PARENTE (#id_Parent, #id_Enfant)

    #id_Parent est l'identifiant (id_Personne) d'un ascendant direct de la personne. #id_Enfant est l'identifiant (id_Personne) d'un descendant direct de la personne.
    La table PARENTE sera en fait l'ensemble des couples (parents-enfants) pr�sent dans cette famille.

    MPD :

6 : Relation binaire aux cardinalit�s (0,1) - (1,1).

La Cl� Primaire de la table � la cardinalit� (0,1) devient une Cl� Etrang�re dans la table � la cardinalit� (1,1) :

S.I. :

Dans ce centre de vacances, Chaque animateur encadre en solo 0 ou 1 groupe, chaque groupe �tant encadr� par un et un seul animateur.

MCD :


MLDR :

ANIMATEUR (id_Animateur, Nom_Animateur)
GROUPE (id_Groupe, Nom_Groupe, #id_animateur)

MPD :

CONCLUSION

Ces 6 r�gles repr�sentent TOUS les cas que vous pourrez rencontrer. Il ne faut surtout pas se laisser impressionner par le nombre de sch�mas, ni se laisser intimider par le cot� inhabituel du processus de mod�lisation. Il est tr�s simple � acqu�rir. En fait, au bout de quelques mod�lisations et d'un ou deux d�veloppements, vous vous rendrez compte que finalement tout ceci est tr�s logique et d'une �vidence rare... Et surtout, surtout, votre base de donn�e correspondra EXACTEMENT au syst�me d'information d�cris dans le cahier des charges. De plus, �crire le MCD, le valider avec votre client, puis en d�duire le MLDR et donc le Mod�le Physique vous fera rentrer compl�tement dans le chantier. Vous irez ensuite beaucoup plus vite, avec tr�s peu de risque d'�tre hors sujet. Apr�s, la majorit� du travail restant ne sera plus qu'une question de requ�tes, de mise en forme et d'ergonomie, avec une bonne gestion d'Entr�e/Sortie de l'information...

Allez, si vous �tes encore avec moi, vous avez bien m�rit� la fin de l'analyse de notre Newsletter du mois de d�cembre :


Entra�ne le MLDR suivant :

MOTIVATIONS ( id_Motivation, Intitule)
ABONNES ( id_Abonne, #id_Motivation, Nom, Prenom, Age, Sexe, Profession, Rue, CodePostal, Ville, Telephone, Email)
S_INSCRIT ( id_Abonne, id_Rubrique)
RUBRIQUES ( id_Rubrique, Nom_Rubrique)
NEWSLETTERS ( id_Newsletters, #id_Rubrique, Sujet, DateEnvoie, Contenu)


Qui nous m�ne au Mod�le Physique de Donn�e (MPD) ou sch�ma de la
Base :


<<Lire la 1ère partie  

Stéphane Lambert
http://www.vediovis.fr/

Sp�cialis� dans le d�veloppement Web, St�phane LAMBERT
a fond� VEDIOVIS PRODUCTIONS en Mai 2000.
Son exp�rience couvre essentiellement les sites � fortes audiences,
institutionnels ou audiovisuels.

Tous droits réservés - Reproduction même partielle interdite sans autorisation préalable

�Imprimer�Donner votre avis

Les r�actions


Merci
par�[08.01.2003�09:47 - eliseafpa]
Merci pour cette magnifique synth�se p�dagogique.
Je l'ai conseill� � mes stgiaires (futurs Webmasters...)
J'esp�re toute fois qu'il restera en ligne, car d�ontologiquement pour l'instant je me refuse � l'aspirer. Laissons � C�sar..

remerciements
par�[24.12.2002�15:53 - aniya]
je tiens � vous remercier pour ce support de cours que je compte utiliser pour actualiser mes enseignements au futurs techniciens superieurs en informatique.

tres bonne presentation
par�[23.12.2002�09:50 - Slayer]
Juste un petit message de f�licitation pour ce petit cours sur MERISE.Encore Merci

Conception
par�[13.12.2002�18:49 - moonsmileparis]
Felicitation pour ce cours, vraiment clair.
Il faudrait aussi dire au neophytes pour eviter de faire des betises:
1) Toute clef doit etre unique.
2) Tout Attribut (non clef) ne doit dependre que de la clef (Et jamais d'une partie de cette derniere ou d'un autre attribut).

l'age
par�[30.10.2002�18:28 - chipo]
Bonjour
tout d'abord je souhaite vous f�liciter pour ce cours.
Je souhaite aussi apporter une remarque concernant la partie 1, l'entit� ABONNES :
Vous y mettez l'attribut "age". chaque ann�e, pour obtenir l'age exacte d'un abonn�, il va falloir ajouter 1 a tt les ages des abonn�s.
Ne serait-il pas plus judicieux d'y mettre la date de naissance ?

�
�� news
Tendance
Les outils de recherche adoptent une mode plus light :
visuel d�pouill�
recherche facilit�e
Voila
Yahoo!
AltaVista


�� Le R�f�renceur
�� Optimisation
�� R�f�rencement
�� Soumissions Express
�� R�f�rencement international
�� R�f�rencement Publicitaire
�� Suivi
�� Offres on line
�� Devenir revendeur

�� Diagnostic
�� Calcul de popularit�
�� Pr�sence WEB
�� WebPage Alerte
�� Google position

�� Promotion
�� Sponsoring de la newsletter Sam-Mag
�� Contacter les m�dias

�� Services
�� Audit juridique
�� Contenu �ditorial
�� H�bergement plateforme Microsoft
�� H�bergement plateforme Linux
�� Webmastering / D�veloppement

�� Top pages
�
�
�
�
�

�

Ce site respecte la loi Informatique et Libert�s.
Pour en savoir plus sur la protection des donn�es personnelles, cliquez

liste de liens
�
WebmasterCopyright 2002 � ACORUS - SAM-NETWORK - all rights reserved