CONCEPTION D’UN MODELE DE DONNÉES

 

 

Plan du cours (cliquez sur un lien pour aller directement sur la partie qui vous intéresse)

I-MODELE CONCEPTUEL DE DONNEES(MCD)

II-MODELE LOGIQUE DES DONNEES (MLD)

EXERCICES AVEC CORRIGES

 

Introduction

La phase de conception d’un système d’information nécessite des méthodes permettant de mettre en place un modèle sur lequel on va s’appuyer. La modélisation consiste à créer une représentation virtuelle d’une réalité de façon à faire ressortir les points auxquels on s’intéresse.

Pour réaliser l’informatisation d’un système d’information, on utilise une méthode d’analyse de système d’information ou analyse informatique. Ce travail est à la base du métier d’analyste informaticien.

L’objet de l’analyse informatique est de mettre en évidence les informations nécessaires aux divers traitements permettant d’obtenir les résultats recherchés.

Il existe plusieurs méthodes d’analyse informatique :

-MERISE (Méthode de d’Etude et de Réalisation Informatique pour les Systèmes d’Entreprise) adaptée aux projets internes aux organisations se limitant à un domaine précis.

-UML (Unified Modeling Language) qui a été développée dans le but de définir la notation standard pour la modélisation des applications construites à l’aide d’objets.

-OMT (Object Modeling Technic) qui permet de couvrir l’ensemble des processus d’analyse et de conception en utilisant le même formalisme

-SADT (Structured Analysis Design technic)

-AXIAL(Analyse et Conception de système d’Information Assistée par Logiciels).

< h2 id="mcd">I-MODELE CONCEPTUEL DE DONNEES(MCD)

 

Le modèle conceptuel des données fournit une représentation des informations totalement indépendante de la technologie. Il décrit les données à gérer sans se soucier des choix d’organisations et des choix techniques. C’est à travers les MCD que l’utilisateur exprime, d’une manière générale, ses besoins en données.

Il existe différents formalismes pour représenter les MCD, nous retiendrons dans le cadre de ce cours le modèle ENTITE-ASSOCIATION. Le MCD est l’élément le plus connu de la méthode de MERISE.

Le formalisme ENTITE-ASSOCIATION repose sur trois concepts de base : la propriété (attribut), l’entité(individu) et l’association (relation).

1-Vocabulaire des MCD

a) Propriété

La propriété est une donnée qui peut accepter une ou plusieurs valeurs. C’est le plus petit élément d’information, bref la particule élémentaire d’un système d’information.

Exemples :

NOM D’UN CLIENT : propriété simple

ADRESSE CLIENT : propriété composée de plusieurs propriétés simples (NOM DE RUE, CODE POSTAL, VILLE…)

 

·         Occurrences : Les occurrences d’une propriété sont les valeurs que prend cette propriété.

Exemple : Pour la propriété DATE DE LA COMMANDE, 12.10.2019 ou 23.11.2019 sont deux valeurs de cette propriété ou deux occurrences de cette propriété.

b) Entité :

     Une entité est l’objet, le concept, l’événement que l’on veut décrire. Elle est décrite par des propriétés. C’est en fait un ensemble de propriétés, un regroupement d’informations certes variables, mais communes à une même classe d’objets.

Une entité peut être soit un individu, soit un objet concret ou abstrait non manipulable, mais pourvu d’une existence propre. Les données de base constituant les entités sont des propriétés ou attributs.

Exemples :

- Entité Individu : professeur

- Entité objet concret : la voiture

- Entité objet abstrait : le vent

 

Identifiant : L’identifiant est une propriété particulière qui permet à partir de sa valeur de retrouver une entité sans ambigüité et sans redondance (répétition). Un identifiant peut être simple c.-à-d. non composé ou bien articulé c.-à-d. concaténé (ou juxtaposé). Il est toujours placé en tête de la propriété et souligné.

Exemples d’identifiants : code, référence, numéro matricule, numéro carte d’identité, Numéro de la plaque d’immatriculation d’une voiture…

Toute entité doit avoir au moins une propriété qui est l’identifiant.

Symboliquement, une entité sera représentée par un rectangle où figure le nom de l’entité, puis la liste des propriétés en commençant par l’identifiant.

Zone de Texte: ETUDIANTZone de Texte: N°matricule
Nom
Prénom
                                                                      

 

 

 

 

 

Une entité sera complètement définie par :

-son nom

-son identifiant

-une liste de ses propriétés.

 

c)Associations ou relations 

Les associations sont des liaisons logiques entre les entités. Une relation n’a pas d’existence propre et le plus souvent il s’agit d’un verbe.

Exemples :

-A chaque sinistre, il faut établir un constat, on peut définir une association avec le verbe « établir »

-L’étudiant a obtenu des diplômes, on peut définir une association avec le verbe « obtenir ».

Symboliquement, une association sera représentée par une ellipse, placée sur une ligne joignant les entités associées.

 

 

 

 

 

 

 

 

 


                                  

 

·         Identifiant 

L’identifiant d’une association est formé par la concaténation des entités liées.

·         La patte est le trait reliant une entité à une association.

·         Occurrence :

L’occurrence d’une association représente le nombre de fois qu’une entité participe à cette association.

·         Dimension :

Sa dimension est le nombre d’occurrence des entités concernées par une occurrence de l’association. Une relation binaire (de dimension 2) associe deux entités, une relation ternaire (de dimension 3) associe 3 entités.

·         Cardinalités :

La cardinalité est le nombre d’occurrences maximum et minimum d’une entité qui participe aux occurrences d’une association.

-La cardinalité minimum peut avoir pour valeur 0

Exemple : Un homme épouse au plus une femme d’où le minimum (cardinalité) sera 0, le maximum 1

 -La cardinalité minimum peut être 1

Exemple : Un étudiant obtient un et un seul diplôme. Le cardinal minimum est 1, le maximum 1.

-La cardinalité minimum peut être égal à n.

Exemple :Le cours de Maths débute s’il y a au moins 15 élèves. Le cardinal minimum est 15.

-La cardinalité maximum peut avoir pour valeur 1.

Exemple : Chaque élève appartient à une seule classe. Le cardinal maximum est 1.

-La cardinalité maximum peut être n.

Exemple : un étudiant a plusieurs diplômes

sens « étudiant » vers « diplôme » : 1 minimum et n maximum

sens « diplôme » vers « étudiant » : 1 minimum et 1 maximum

Pour dire qu’un étudiant peut avoir plusieurs diplômes, mais qu’un diplôme donné ne peut appartenir à plusieurs étudiants.

Symboliquement, les cardinalités seront placées au-dessus de la ligne de l’association, les deux valeurs maximum et minimum entre parenthèses de chaque côtZone de Texte: N°matricule
Nom :
Prénom :
Age : 
Sexe 	

Zone de Texte: ETUDIANTZone de Texte: Code Diplôme
Session
Centre
Zone de Texte: DIPLOMEZone de Texte: obtenirZone de Texte: (0,1)Zone de Texte: (1,1)é.

 

 

 

 

 

 

 

 

 

 

 

 

 

 


2-Construction d’un MCD

2.1-Recensement des propriétés

On cherche à recueillir des informations nécessaires au sujet traite. C’est la première phase de l’informatisation d’un système.

Ø  Classification des données :

On peut classer les données en trois catégories :

·         Les données élémentaires(E) c-à-d les données non décomposables.

Exemple : La donnée nom n’est pas décomposable, c’est une donnée élémentaire.

·         Les données calculées (CA) ou déduites : Elles sont obtenues par l’application d’un traitement arithmétique ou logique.

Exemple :  le prix de revient qui est composé du prix d’achat + charges.

·         Les données composées (CO): certaines données sont regroupées en une même entité sémantique.

Exemple : La donnée adresse est décomposable en BP+numero+nom de la ville.

Ø  Types des données :

Parmi les types on peut trouver les données :

·         Alphabétique(A), composée uniquement des lettres.

·         Alphanumérique (AN), composée des lettres et des chiffres.

·         Numérique(N), composée uniquement des chiffres.

·         Booléen, qui ne prennent qu’une valeur sur deux. Les données logiques qui ne prennent qu’une valeur sur deux, par exemple ADMIS ou REFUSE. Elles sont une conséquence d’une condition ou d’une règle.

Exemple : marie ? peut être oui ou non.

·         Date

 

Dictionnaire De Données (DDD) :

Le Dictionnaire De Données (DDD) permet de recenser dans un tableau les principales propriétés à manipuler. Il est obtenu à partir des documents de l’entreprise. Le Dictionnaire De Données est un document qui regroupe toutes les données qui vont être conservées dans la base de données.

 

Le DDD a pour en-tête :

-Les mnémoniques : abréviations qui ne doivent pas dépasser 8 caractères, pas d’espaces.

Exemple : NUMCLI pour numéro client.

-Description : Signification

Exemple : Nom du client, Numéro client

-Type de donnée :

-Taille : C’est le nombre de caractères maximum nécessaires pour représenter les valeurs d’une donnée.

-Nature :

- Parfois on peut ajouter une colonne pour les observations sous forme de contrainte.

Remarque :

Seules les données élémentaires doivent dans la plupart des cas se retrouver dans le DDD.

 

Exemple : DDD pour une Facture client

Champ

Description

Type de donnée

Taille

Nature

Observations

NUMFACT

Numéro facture

Numérique

8

E

 

DATFACT

Date de facturation

Date

10

E

 

NUMCOM

Numéro de commande

Numérique

15

E

 

ADRCLI

Adresse de facturation

Alphanumérique

10

CO

 

NOMCLI

Nom du client

Alphabétique

20

E

 

 

2.2-Dépendances Fonctionnelles (DF) entre les propriétés

D’une manière générale, nous dirons que deux propriétés P1 et P2 sont en dépendance fonctionnelle (DF) si, à tout instant, la connaissance d’une valeur de la première détermine la connaissance d’une et une seule valeur de la seconde.

On écrit : P1          P2   et on lit : P1 détermine P2 ou P2 dépend fonctionnellement de P1.

P1 est la propriété « source », P2 est la propriété « cible ».

Autrement dit, à une valeur de P1 correspond toujours une et une seule valeur de P2. La réciproque n’est pas vraie. Par exemple, le numéro de la CNI est unique et détermine le nom et toutes les autres informations concernant la personne mais on ne peut pas connaitre le numéro de la CNI à partir du nom d’une personne.

 

Contrainte d’Intégrité Fonctionnelle

La contrainte d’intégrité fonctionnelle (CIF) traduit l’existence d’une dépendance fonctionnelle entre propriétés de différentes entités.

Par exemple, soit la relation « un véhicule appartient à une personne », on a : Pour une valeur du numéro d’immatriculation d’un véhicule, il y a toujours un et un seul nom de personne, donc il existe une Dépendance Fonctionnelle entre les propriétés des deux entités.

                                                       Numero_immatriculation→ Nom_personne

 

 

On peut dire par la suite qu’il existe une Contrainte d’intégrité fonctionnelle entre les deux entités VEHICULE et PERSONNE.

            On symbolise la Contrainte d’Intégrité Fonctionnelle par un cercle dans lequel il y a le sigle CIF, un lien qui part de l’entité VEHICULE   et un lien fléché vers l’entité cible PERSONNE.

 

 

 

 

 

 

 


           

 

 

 

 

Notons que les deux propriétés appartiennent à des entités différentes. On ne parle pas de DF entre entités mais de CIF entre entités. Une CIF est aussi appelée une association creuse. La CIF existe entre une entité esclave et une entité maître.

Rôle : Le CIF permet de vérifier la cohérence d’une base de données.

Remarques :

1-Pour une association binaire, la CIF consiste simplement en une cardinalité (1,1) sur l’une des pattes.

2-Les associations qui comportent une cardinalité (1,1) ne sont jamais porteuse de propriétés. Celles-ci migrent sur l’entité déterminante. 

3- L’existence d’une CIF peut aussi permettre de simplifier le nombre de pattes d’une association.

Exemple :

Zone de Texte: N°représentant
Nom
                                                                              

 

 

 

 

 

 

 

 

 

 

 

 

 


Une propriété dépend fonctionnellement de l’identifiant de l’objet sur lequel elle figure. Heure Rendez-vous doit dépendre fonctionnellement de N°Représentant et N°Commande (identifiant implicite de l’association). Or N°représentant dépend lui-même de N°Commande du fait de la cardinalité (1,1). Heure Rendez-vous ne dépend directement que de N°Commande. Elle est donc superflue et il est souhaitable de l’envoyer dans COMMANDE.

 

3-Validation d’un modèle ENTITE-ASSOCIATION au niveau des MCD

Règles de validation :

Règle N° 1 :

Une propriété non identifiante d’une entité doit dépendre fonctionnellement de l’identifiant.

 

 

 

 

 

 

 

 

 

 

 

 


Dans cet exemple, Nom et Adresse dépendent fonctionnellement du N°Client qui est l’identifiant. N°Commande ne dépend pas fonctionnellement de N°Client puisqu’un client peut passer plusieurs commandes de numéros différents. Cette propriété est à écarter pour que l’entité soit valide.

Règle N°2 :

Une propriété dans une association doit dépendre fonctionnellement des deux identifiants des entités qui participent à cette association.

Par exemple, soit la relation

 « une commande concerne un article », on a le MCD suivant 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Connaissant un numéro de commande et un N°Article de cette commande, on peut avoir une et une seule quantité commandée. Ainsi la propriété quantité commandée dépend fonctionnellement des entités COMMANDE et ARTICLE, c’est pourquoi on l’écrit entre les deux.

 

II- LE MODELE LOGIQUE DES DONNEES (MLD)

 

            Le Modèle Logique de données (MLD) définit l’organisation logique des données traduisant les MCD. L’objectif ici est d’arriver aux tables d’une base de données relationnelle.

1-Passage du niveau conceptuel au niveau logique

Lors du passage du MCD au MLD Relationnel,

·         Une propriété du MCD devient un attribut (champ) du schéma relationnel.

·         Une entité des MCD devient une table.

·         L’identifiant devient la clé primaire.

·         Une occurrence devient un enregistrement.

 

Formalisme : Le formalisme d’une table obéit à la syntaxe suivante :

Nom-de-la-table (Clé primaire, Attributs,Clé  étrangère# ou secondaire)

Notations :

1 :1 (un à un) si aucune des deux cardinalités maximales n’est n. Par exemple (0,1) ou (1,1) de chaque côté.

1 : n (un à plusieurs) si une de deux cardinalités maximales est n. Par exemple (0,1) d’un côté et (1,n) de l’autre.

n : m (plusieurs à plusieurs) si les deux cardinalités maximales sont n. Par exemple (0,n) d’un côté et (0,n) de l’autre.

Remarque : Un schéma relationnel ne peut faire la différence entre (0,n) et (1, n). Par contre, il peut la faire entre (0,1) et (1,1).

 

Règles de passage des MCD en MLD :

Règle 1 : Transformation des entités en table

Toute entité devient une table dans laquelle les attributs deviennent des colonnes de cette table. L’identifiant de l’entité constitue alors la clé primaire de la table.

 

Exemple :

 

 

 

 


                                                                                  R(PRODUIT)

N° Produit

Désignation

Prix

Unitaire

Poids

 

 

 

 

 

 

 

 

 

Table :

PRODUIT (N° Produit, Désignation, Prix Unitaire, Poids)

·         Cas d’une association binaire de type un à plusieurs (1 : n).

Une association 1 : n doit avoir sur une patte les cardinalités (0,1) ou(1,1) et sur l’autre patte (0,n) ou (1,n).Elle est de type hiérarchique si d’un côté la cardinalité maximale est 1 et de l’autre côté la cardinalité maximale n.

 

Règle 2 : Destruction de la relation 1 :n

Une association de type 1 : n disparait au profit d’une clé étrangère dans la table du côté (0,1) ou (1,1) qui référence la clé primaire de l’autre table. Cette clé étrangère ne peut pas recevoir la valeur vide si la cardinalité est (1,1).

 

 

 

 

 

 

 

 

 

 

 


                                                                                                                                             

 

 

 

 

 

RELATION R1 (PRODUIT)                                                     RELATION R2 (FAMILLE)

Code

Produit

Dési-

Gnation

Prix

Unit

Prix

Vente

Famille

 

 

 

 

Famille

Taux

TVA

Nom

Famille

Code

Marge

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Tables :

PRODUIT (Code Produit, Désignation, Prix Unit, Prix vente, N°Famille#)

FAMILLE (N° Famille, Taux TVA, Nom-Famille, Code marge)

 

Code Prod ici est la clé primaire, N°Famille# est la clé étrangère

·         Cas d’une association binaire de type plusieurs à plusieurs (n : n).

Une association de type n :n doit avoir sur ses pattes de chaque côté les cardinalités  (0,n) ou (1,n).

Règle 3 : Transformation de la relation n : m en table

Une association binaire de type n : m devient une table supplémentaire (parfois appelé table de jonction, table de jointure ou table d’association) dont la clé primaire est composée de deux clés étrangères référençant les relations correspondantes aux entités liées par l’association. Les attributs de l’association deviennent des colonnes de cette nouvelle table.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


On a les tables suivantes :

ARTICLE (Référence,Désignation,Prix Unitaire)

ACHETER (#Référence,#Code-Client, N°Facture, Quantité, Date-Fact,)

CLIENTS (Code-Client, Nom, Ville)

 

·         Cas d’une association de type un à un (1 : 1)

 

Règle 4 : destruction de la relation 1 :1 et application de la contrainte d’unicité sur la clé étrangère.

Une association de type 1 :1 est traduite comme une association de type 1 : n sauf que la clé étrangère se voit imposer une contrainte d’unicité, en plus d’une éventuelle contrainte de non vacuité. (Cette contrainte d’unicité impose à la colonne correspondante de ne prendre que des valeurs distinctes).

Exemple : Soit la relation « un étudiant peut obtenir un diplôme » symbolisée par le MCD suivant :

 

                             

 

 

 


                                                                                                          

 

 

 

 

 

 

 

 

Tables :

ETUDIANT (N°matricule, Nom)

DIPLOME (Code diplôme,Session, N°Matricule#)      //Ici N°Matricule# est unique et non vide

Lorsqu’il y a une entité maître et une entité esclave, l’association disparait et ses éventuelles propriétés migrent vers l’entité esclave qui aura pour clé secondaire, la clé primaire de l’entité maître.

A partir de l’identifiant de l’entité esclave, on peut déterminer  les propriétés de l’entité maître. L’entité maître est  généralement porteuse des cardinalités (0, n) ou (1, n) sur sa patte. L’entité esclave est porteuse des cardinalités (0, 1) ou (1, 1).

 

Cas particulier : Lorsqu’il y a parité au niveau des pattes c.-à-d. lorsqu’elles sont porteuses du couple soit (0, 1) et (0,1) ; soit (1,1) et (1,1) l’association ne disparait pas, elle devient une table dont la clé primaire est composée des clés primaires des deux entités.

 

·         Cas d’une association non binaire

Règle 5 :

            Une association non binaire est traduite par une table supplémentaire dont la clé primaire est composée d’autant de clés étrangères que d’entités en association. Les attributs de l’association deviennent des colonnes de cette nouvelle table.

 

Exemple :

            On donne le MCD suivant pour une société de réparation des photocopieurs :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


On a les tables suivantes :

PHOTOCOPIEUR (N°série,Marque,Modèle)

INTERVENIR (N°série#,Matricule#,Date-du-jour#,Heure)

TECHNICIEN(Matricule,Nom,Prénom)

DATE(Date-du-jour)

 

APPLICATION :

Soit à représenter l'activité d'une bibliothèque disposant d'un ensemble de livre qu'elle met à la disposition de ses abonnés. Chaque livre de la bibliothèque est décrit à l'aide d'un code unique, un titre, un auteur, un éditeur et une date de parution. L'enregistrement d'un nouvel abonné consiste à renseigner son numéro qui servira comme identifiant, son nom et prénom, son adresse et son numéro de téléphone. Chaque abonné peut emprunter le même livre plusieurs fois. A chaque emprunt on enregistre le code du livre, le numéro de l'abonné et la date d'emprunt. Au retour du livre on enregistre la date de retour.

Questions :

1 - En utilisant les informations de l’énoncé ci-dessus, proposez le modèle ENTITE-ASSOCIATION correspondant à cette situation

2 –Donner une représentation symbolique du MCD.

3- Utiliser les règles de passage du MCD en MLD pour établir la liste des tables.

 

Résolution :

A partir des informations tirées de l’énoncé on peut déduire le Dictionnaire des Données suivant :

Code mnémonique

Description

Type de donnée

Taille

Nature

Observations

Code_livre

Code unique d’un livre

Caractère

10

Stable

Livres

Titre

Titre du livre

Caractère

50

Stable

Livres

Auteur

Auteur du livre

Caractère

50

Stable

Livres

Editeur

Nom de la maison d’Edition

Caractère

30

 

Livres

Date_parution

Date de sortie du livre

Date

 

 

Livres

Num_abonné

Numéro abonne

Numérique

5

 

Abonnés

Nom_abonné

Nom de l’abonné

Caractère

20

 

Abonnés

Prénom_abonné

Prénom de l’abonné

Caractère

20

 

Abonnés

Adresse

Adresse de l’abonné

Caractère

50

 

Abonnés

Tel

Numéro téléphone

Numérique

20

 

Abonnés

Date_emp

Date de l’emprunt

Date

 

 

Emprunts

Date_retour

Date de retour du livre emprunté

Date

 

 

Emprunts

 

A partir du Dictionnaire des Données ci-dessus, déterminons les entités mises en jeu.

 

à-La connaissance d’une valeur du Code_livre permet de connaitre une et une seule valeur du titre, de l’auteur, de l’éditeur et de la date de parution. Donc Code_livre détermine titre, auteur, éditeur et date de parution.

On écrit :

Code_livre                       titre, auteur, éditeur, date de parution

                                                        

On définit l’entité LIVRE ayant pour :

-Clé primaire: code_livre

-Propriétés : titre, auteur, éditeur, date de parution

 Il est dit dans le texte que le code de chaque livre est unique. On peut alors l'utiliser comme clé primaire.

 

b-La connaissance d’une valeur du Num_abonné permet de connaitre une et une seule valeur du Nom de l’abonné, de son prénom, de son adresse et de son numéro de téléphone. Donc Num_abonné détermine Nom_abonné, prénom_abonné, adresse et téléphone.

On écrit :

Num_abonné                      Nom_abonné, prénom_abonné, adresse et téléphone.

 

On définit l’entité ABONNE ayant pour :

-Clé primaire: Num_abonné        

-Propriétés : Nom_abonné, prénom_abonné, adresse et téléphone.

  Il est également mentionné dans le texte que le numéro de l'abonne sert comme identifiant. On peut donc l'adopter comme clé primaire.

 

c-Liens entre les entités :

D'après l'énoncé, un emprunt est relatif à un livre et un abonné. Ainsi, on déduit les deux liens suivants :

• un lien entre EMPRUNTet LIVRE.

• un lien entre EMPRUNTet ABONNE 

Autrement dit, la connaissance du code d’un livre emprunté et du numéro d’abonné emprunteur permet de connaitre une et une seule valeur de la date d’emprunt et de la date du retour. Donc code_livre et Num_abonné détermine date-emp et Date_retour.

Ainsi, un emprunt est identifié par le livre emprunté et l'abonné qui a emprunté ce livre. On peut donc supposer que la clé primaire de cette table est composée des deux colonnes Code_liv et Num_abonné.

On écrit :

Code_livre, Num_abonné             Date_emp, Date_retour

 

On définit l’entité EMPRUNT ayant pour :

-Clé primaire: Code_livre  ,  Num_abonné        

-Propriétés : Date_emp, Date_retour

 

 

d- On définit une association entre LIVRE et ABONNE par le verbe « emprunter », ce qui nous emmène au modèle ENTITE-ASSOCIATION suivant :

 

Représentation du modèle :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


On lit le formalisme par la phrase suivante : un abonné emprunte un livre.

-Un abonné, jusqu’à présent n’a pas emprunté de livre (cardinalité minimale) ou il a emprunté un  livre plusieurs fois (cardinalité maximale).

-Un livre, peut jusqu’à présent ne pas avoir été emprunté (cardinalité minimale) ou avoir été emprunté plusieurs fois (cardinalité maximale).

 

Passage aux tables

Au cours du passage des MCD au MLD, les entités deviennent des tables et les identifiants des clés primaires. Ici, on a une relation de type 1 :1 avec parité au niveau des pattes.

 On obtient les tables suivantes :

 

LIVRE (Code_livre, Titre, Auteur, Editeur, Date_parution)

EMPRUNT (Code_liv#, Num_ab#, Date_emprunt, Date_retour)

ABONNE (Num_abonne, Nom_abonne, Prenom_abonne, Adresse, Tel)

 

 

EXERCICES

 

CONTROLE DE CONNAISSANCES :

1. Définir : modèle, modélisation.

2. Citer un modèle permettant la conception d’un système d’information.

3.Le formalisme ENTITE-ASSOCIATION repose sur trois concepts de base. Lesquels ?

4.a-Quel est l’objectif du modèle conceptuel des données (MCD).

   b-Quel est l’objectif du modèle logique des données(MLD).

5. Soit la relation « est marié à », donner les cardinalités de cette relation dans les deux cas suivants :

a-Cas de monogamie

b-Cas de polygamie

 

EXERCICE I :

Dans une entreprise,

-un article est caractérisé par un code-article, une désignation et un prix unitaire.

-un client par un code-client, un nom et une ville. On définit une relation entre un article et un client par le verbe « acheter »

1-Représenter symboliquement l’entité ARTICLE

2-Représenter symboliquement l’entité CLIENT

3-Sur un schéma unique, représenter cette association en précisant :

a-l ’identifiant de chaque entité

b- les cardinalités

c- le symbole de l’association.

 

EXERCICE II :

Trois situations de MCD sont présentées dans les lignes qui suivent. Donner pour chaque situation :

a) Les identifiants

b) Les cardinalités

c) Donner les représentations textuelles des tables.

 

SITUATION I : Soit la relation « livrer » représentée par le MCD suivant :

 

FOURNISSEUR                                  Livrer                                 LIVRAISON

 


N°Fournisseur                                                                                N°Livraison

Nom Contact                                                                                   Date livraison

N° Téléphone                                                                                  Nom du livreur

 

 

SITUATION II : Soit la relation « diriger » définie par le MCD suivant :

 

 

       EMPLOYE                                     diriger                                     SERVICE

 

 


     N°Employé                                                                                     N°Service

     Nom_employé                                                                                Nom_service

 

 

SITUATION III :

Soit la relation « à un sinistre, on établit un constat » représentée par le MCD suivant :

 

 

Zone de Texte: CONSTAT
N°Constat
Nom-const


   SINISTRE

                                                  

    N°Sinistre

    Nom_sin                                 Etablir                

 

 

 


.

 

 

EXERCICE III : Soit la relation représentée par le MCD suivant : « Le professeur enseigne un module dans une salle »

 

 

.      PROFESSEUR                                                                       SALLE

 


      Code_Prof                                 enseigne.                                  N°Salle

      Nom-prof

 

 

 

 

 


                                                              MODULE

 


                                                        Code-matière    

 

 

 

1-Définir l’expression ‘‘association ternaire’’.

2-Donner les cardinalités de l’association.

3-Donner le modèle relationnel conforme à ce MCD

 

EXERCICE IV:

Soit à représenter l'activité d'une bibliothèque disposant d'un ensemble de livres qu'elle met à la disposition de ses abonnés. Chaque livre de la bibliothèque est décrit à l'aide d'un code unique, un titre, un auteur, un éditeur et une date de parution. Chaque livre existe en un seul exemplaire et ne peut être emprunté qu’une seule fois par le même abonné. L’enregistrement d'un nouvel abonné consiste à renseigner son numéro qui servira comme identifiant, son nom et prénom, son adresse et son numéro de téléphone. Pour être enregistré, chaque abonné doit avoir emprunté au moins un livre.

Questions :

1-Citer 03 méthodes d’analyse pouvant être utilisé pour modéliser le système d’information de cette bibliothèque.

2-Donner une représentation symbolique du MCD.

3-Utiliser les règles de passage du MCD en MLD pour établir la liste des tables.

 

EXERCICE V :

.           Un vidéoclub dispose d'un grand nombre de cassette vidéo. Le volume de ces
ressources est devenu si important que la tâche de recherche des films est devenue laborieuse.
.          Pour résoudre ce problème, le responsable du vidéoclub décide d'automatiser la gestion des prêts de cassettes vidéo. La cassette est caractérisée par un code, le titre du film, le réalisateur, le héros, la date de sortie, l’état de la cassette, la durée du film et le type. , Chaque cassette peut faire l'objet d'un prêt d'au maximum 24h.Au-delà, le responsable décide du montant d'amende que le client doit payer pour ce retard.

Un abonné est caractérisé par un code, son nom, prénom, téléphone, et adresse. Il peut emprunter plusieurs fois la même cassette. Au moment de l’emprunt, on enregistre la date d’emprunt et à la remise, on enregistre la date de retour.

Questions :

            A partir de la description ci-dessus et de vos connaissances en systèmes d’informations, répondez aux questions suivantes :

1. Définir : occurrence d’une association.

2. Produire le MCD décrivant ce fonctionnement en représentant

a- Les entités et leurs propriétés

b- Les relations entre entités ainsi que les éventuelles propriétés

c- Les cardinalités

3-En appliquant les règles de passage du MCD vers le MLD, déduire le MLD correspondant au fonctionnement de ce système.

 

EXERCICE VI :

Une agence « LV » de location de voitures gère manuellement son parc, composé d'une centaine de véhicules à partir d'un paquet de fiches cartonnées.

Le responsable de la société « LV » décide d'implanter une base de données pour améliorer la gestion de son parc de voitures. Après étude, une voiture est décrite par le numéro d'immatriculation comme identifiant, une marque, un type, une couleur, une puissance, un kilométrage, un âge de voiture, un prix par jour et un type de carburant.          Chaque client est identifié par un numéro client, un nom et une adresse. Il peut louer plusieurs voitures.

A chaque location un enregistrement sera effectué : Le numéro d'immatriculation de la voiture, le numéro du client et la date de location.

Le kilométrage de retour et la date de retour (date fin location) seront enregistrés au retour de la voiture. Il peut louer la même voiture plusieurs fois.

 Les voitures sont gardées dans plusieurs parkings différents. Chaque parking est identifié par un numéro de parking sa superficie. Il peut recevoir plusieurs voitures.

Questions :

            A partir de la description ci-dessus et de vos connaissances en systèmes d’informations, répondez aux questions suivantes :

1. Identifier les entités et les propriétés.

2. En déduire le MCD décrivant ce fonctionnement en représentant

a- Les entités et leurs propriétés

b-  relations entre entités ainsi que les éventuelles propriétés

c- Les cardinalités.                                                                     

3-En appliquant les règles de passage du MCD vers le MLD, déduire le MLD correspondant au fonctionnement de ce système.

 

CORRIGES

CONTROLE DE CONNAISSANCES :

1. -Un modèle est une représentation abstraite et simplifié d'un objet du
monde réel en vue de le décrire, de l'expliquer, ou de le prévoir.

        -la modélisation est la conception et l’utilisation d’un modèle.

2-Le modèle ENTITE-ASSOCIATION

3.- Propriété (attribut) : La propriété est une donnée qui peut accepter une ou plusieurs valeurs.  C’est le plus petit élément d’information, bref la particule élémentaire d’un système d’information.

   -Entité (individu) : Une entité est l’objet, le concept, l’événement que l’on veut décrire. Elle est décrite par des propriétés. C’est en fait un ensemble de propriétés, un regroupement d’informations certes variables, mais communes à une même classe d’objets.  

  -Association (relation) : Les associations sont des liaisons logiques entre les entités.

4.a- Le modèle conceptuel des données (MCD) permet à l’utilisateur d’exprimer, d’une manière générale, ses besoins en données.

NB : Le MCD fournit une représentation des informations totalement indépendante de la technologie. Il décrit les données à gérer sans se soucier des choix d’organisations et des choix techniques.

   b- Le Modèle Logique de données (MLD) définit l’organisation logique des données traduisant les MCD.

NB : L’objectif des MLD est d’arriver aux tables d’une base de données relationnelle.

5 - a)(1,1) du côté Homme et (1,1) du côté Femme

     b)(1,n) du côté Homme et (1,1) du côté Femme

 

EXERCICE I :

         ARTICLE                                Acheter                                            CLIENT

                                (0,1)                                                           (0,n).      Code-client

     Code_article                                                                                        nom client

     Désignation                                                                                         ville client

     Prix unitaire

 

.

EXERCICE II :

 

SITUATION I :

a) No-FOURNISSEUR est l’identifiant pour l’entité FOURNISSEUR

     No-LIVRAISON est l’identifiant pour l’entité LIVRAISON

b)(0, n) du côté FOURNISSEUR et (1,1) du côté LIVRAISON pour dire qu’un fournisseur peut faire zero ou plusieurs livraisons tandis qu’une livraison donnée ne peut se faire que par un et un seul fournisseur.

NB : Le cas des livraisons partielles sont exclus.

c)Tables

 FOURNISSEURS (N°Fournisseurs, Nom contact, N°Téléphone)

LIVRAISONS (N°Livraison, Date livraison, Nom livreur, N°Fournisseur #)

 

SITUATION II :

a)N°Employé est l’identifiant pour l’entité EMPLOYE.

N°Service est l’identifiant pour l’entité SERVICE.

b)(0,1) du côté de EMPLOYE et (1,1) du côté de SERVICE

c)Tables

EMPLOYES (N° Employé, Nom)

SERVICES (N° Service, Nom service, N°Employé#)

NB : on suppose qu’un employé peut diriger un seul service au plus.

 

SITUATION III :

a)N°Sinistre est l’identifiant de l’entité SINISTRE

   N°Constat est l’identifiant de l’entité CONSTAT

b) (1,1) de chaque côté (un sinistre conduit à un et un seul constat et un constat est consécutif à un et un seul sinistre).

c)  Tables

SINISTRE (N°Sinistre,Nom_sinistre)

CONSTAT (N°Constat,Nom_constat)

ETABLIR (N°Sinistre,N°Constat

 

EXERCICE III:

1-C’est une association qui possède trois entités.

2-(0,n) sur chaque patte.

3-       PROFESSEUR (Code_prof, Nom_Prof)

          SALLE (N°Salle)

          MODULE (Code_Matière)

          ENSEIGNE (Code_Prof#~, N°Salle#, Code_Matiere#)

 

EXERCICE IV:

1- MERISE, UML, AXIAL, etc…

2- .Représentation du modèle :

  ABONNE                                         .   emprunter                                           LIVRE

 Num_abonné             (1,n)                                                              (0,1)       Code_livre

Nom_abonné                                                                                                 Titre   

Prénom_abonné                                                                                              Auteur

  Adresse                                                                                                       Editeur

  Téléphone                                                                                                   Date de parution

 

 

3- Passage aux tables

        LIVRE (Code_livre, Titre, Auteur, Editeur, Date_parution, #Num_abonne)

       ABONNE (Num_abonne, Nom_abonne, Prenom_abonne, Adresse, Tel)



EXERCICE V :

1-  L’occurrence d'une association représente le nombre de fois qu’une entité participe à cette association.

2-a)b) et c)

Représentation du modèle :

  CASSETTE                                       emprunter                                             ABONNE

 Code-cass                 (0,n)                                                                (0,n)      Code_Ab

 Titre-film                                                                                                         Nom-Ab 

 Réalisateur                                   date-emprunt                                             Prenom-Ab

  Héros                                           date-retour                                                Tel

 Date-sortie                                                                                                      Adresse

 Etat

 Durée

 Type

                                                                                                

                                                                                                           

3- CASSETTE (code-cass, titre-film,realisateur,heros,date-sortie,etat;duree,type)

    EMPRUNT (#code-cass, #code-ab, date-emprunt, date-retour)

    ABONNE (code-ab, nom-ab, prénom-ab, tel, adresse)

EXERCICE VI :

1-. Entité CLIENT ayant pour propriétés numéro client, nom et adresse,

     Entité VOITURE ayant pour propriétés numéro d’immatriculation, marque, type, couleur, puissance et kilométrage.

     Entité PARKING ayant pour propriétés   numéro parking et superficie.

2. Représentation du modèle :

  

CLIENT                                                  VOITURE                                                  PARKING

                                                                             

Numclient.               Louer                    Nummatri                    garder                     numpark

 Nom.          (1,n) date_location (0,n). Marque               (1,1)                       (0,n)

Adresse               Date-retour             Type_voitur                                                   

                             Kilom_retour           Couleur.                                                         superficie

                                                           Puissance

            .                                               kilométrage,                                     

                                                           Age

 

                                                             Prix-jour

                                                            Type-carburant

 

 

3-

   CLIENT (Numclient, Nom, Adresse)

   LOCATION (#Num-imatriculatio, #Num-client, Date_location, Date-retour,kilom_retour)

   VOITURE (Numimatri, Marque, Type,   Couleur, Puissance, kilométrage, Age, Prix-jour, Type-carburant, #Numpark)        

   PARKING (Numpark,superficie)