Cours SI Et BDD

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 25

Préambule

Ce support de cours intitulé « Systèmes d’Information et Base de Données » est destiné


aux étudiants du semestre S4 de la deuxième année de DEUST MIP de la Faculté des Sciences
et Techniques, Université Sultan Moulay Slimane, Béni Mellal. Ce cours a été enseigné aux
étudiants de la licence en Informatique durant l’année 2020-2021. Le format de ce cours est
composé de deux séances de 2h de cours associées à deux séances de travaux dirigés et une
séance de 4h de travaux pratiques.

Ce cours permet d’acquérir les éléments de base sur les systèmes d’information et
gestion de données.
Les connaissances et les compétences visées à travers ce cours sont les suivantes:
 Qu’est-ce qu’une base de donnée ?
 Quand est ce qu’on utilise les bases de données ?
 Qu’est-ce qu’un Système de Gestion de Bases de Données (SGBD) ?
 Le processus de développement d’une base de données.
 Savoir élaborer un modèle entité-association.
 Savoir passer d’un modèle entité-association à un modèle relationnel.
 Savoir écrire des requêtes SQL.
 Savoir implémenter le modèle relationnel en utilisant un SGBD cible.
 Quels sont les étapes à suivre afin d’élaborer un modèle conceptuel de
données.

Pour que nos objectifs soient atteints, nous avons synthétisé les informations les plus
pertinentes en s’appuyant sur des sources variées (notes de cours, ouvrages, sites internet,
etc.) tout en respectant le descriptif officiel approuvé par le ministère de l’enseignement
supérieur, de la recherche scientifique et l’innovation.

Béni Mellal, 02 Octobre 2020


Prof. Dr. Driss AIT OMAR
Table des matières
Chapitre 1: Introduction au Système
d’information et Base de Données
1. Système d’information

1.1 Introduction
Né dans les domaines de l’informatique et des télécommunications, le concept
de système d’information s’applique maintenant à l’ensemble des organisations.
Le système d’information coordonne grâce à l’information et les activités de
l’organisation et lui permet ainsi d’atteindre ses objectifs, il est le véhicule de la
communication dans l’organisation. De plus, le système d’information
représente l’ensemble des ressources (les hommes, le matériel, les logiciels)
organisées pour : collecter, stocker, traiter et communiquer les informations.
Un système d’information représente l’ensemble des éléments participant à la
gestion, au traitement et à la diffusion de l’information au sein de l’organisation.

1.2 Notion de système


Un système est un ensemble d’éléments rassemblés pour réaliser un objectif : produire
des sorties par transformation d’un ensemble d’entrées. Une entreprise par exemple est
un système (composé d’hommes, de matériels, de méthodes…) qui transforme de la
matière première en produit finis. Un système peut être représenté par le schéma suivant
:

Entrée Système Sortie


s

Figure 1.1 : Représentation d’un système

1.3 Système d’entreprise


Un système d’entreprise est composé de trois systèmes : Le système opérant qui constitue la
machine proprement dite de production et de transformation des entrées en produits finis, le
système de pilotage appelé aussi système de gestion qui pilote l’organisation et constitue son
cerveau pensant et enfin le système d’information.
Système de pilotage

Système d’information

Entrées Système opérant Sorties

Figure 1.2 : La composante d’un systme d’information

Le système opérant : C’est ce qui est à la base de toute organisation, c’est ce


système qui permet la transformation de l’information dont l’objectif est de la
restituer à la bonne personne, il correspond aux différents services d’une
entreprise.
Exemple : Si l'on considère une université (qui est un exemple typique d'une
organisation), le système opérant est constitué des services et des
départements qui organisent le concours d'entrée, les délibérations et les jurys,
les cours, les examens, les corrections de copies. Les élèves qui suivent les
cours, qui passent des examens … etc. font aussi partie de ce système opérant.
C'est l'obtention du diplôme après cinq ans d'étude qui est - entre autre -le
produit final du système opérant à l'université. Le flux physique est donc
constitué des élèves, des concours, des cours, des examens, des résultats
scolaires, des rapports publiés, … etc.
Le système de pilotage : c’est ce qui va contrôler et piloter le système opérant,
il se situe donc à la tête du système d’information fixant les objectifs et prenant
les décisions.
Toute organisation est pilotée par une direction, une équipe dirigeante. Ce
système de pilotage a pour mission de conduire l'organisation vers des
objectifs qui lui sont fixés, et de vérifier que ces objectifs ont bien été atteints.
Ce qui nécessite souvent un contrôle continu du fonctionnement du système
opérant et d'éventuelle modifications (recrutement, investissement, nouveaux
développements, … etc.) à apporter au système opérant. Parallèlement donc
au flux physique, il y a un flux de décision. Ce flux correspond aux décisions
prises par la direction de l'organisation pour que celle-ci fonctionne dans les
meilleures conditions et puisse atteindre ses objectifs. Et toute organisation est
soumise à des contraintes extérieures et intérieures qui contraignent son action
et l'empêche d'évoluer librement. En considérant toujours la même université,
les décisions prises par le système de pilotage concernent le nombre d'élèves
qui seront admis chaque année à l'université, le seuil d'admissibilité, la
définition des programmes des études, la définition des modalités d'examen
et le règlement des études, les développements futures de l'université tels que
l'augmentation du nombre d'élèves création de nouvelles filières, les
ouvertures de postes de recrutement, les investissements en matériel et en
logiciel, … etc.
Le système d’information : C’est ce qui intervient entre les deux autres
systèmes. Ce système s’occupe de collecter, stocker, transformer et diffuser
des données et informations dans le système opérant et de pilotage.
Dans le système opérant, cette information va permettre à celui-ci de
fonctionner. Car chaque individu et chaque tâche ont besoin d'être informés
sur le flux physique qui la traverse.
En général, cette information est très détaillée, ne concerne qu'un petit élément de
l'organisation, et elle est tournée vers le présent.
Dans le système de pilotage, l'information va permettre à celui-ci de prendre
les bonnes décisions en étant constamment informé de ce qui se passe dans le
système opérationnel.
Cette information a tendance à être très synthétique, elle concerne une grande
partie de l'organisation (si ce n'est toute l'organisation, tel que le chiffre
d'affaire annuel), et elle est tournée vers le passé et/ou le futur. La tâche
principale du SI est donc de fournir un flux d'information qui d'une part,
reflète le plus fidèlement possible le flux physique, et d'autre part fournit au
système opérationnel les éléments nécessaires pour son fonctionnement
quotidien et au système de pilotage les éléments nécessaires à une prise
correcte de décision.
Ainsi, le flux d'information est une image du flux physique. Il représente sous
une forme plus ou moins réduite, tous les événements survenus dans le
système opérant ainsi que tous les éléments d'information qui permettent de
traiter ces événements.
Cette image est forcément une réduction de la réalité, elle ne concerne que les
aspects pertinents ayant une incidence et/ou un rôle dans le fonctionnement
de l'organisation.
En reprenant l'exemple de l'université, on trouvera dans son SI toutes les
informations sur les élèves qui y sont inscrits : nom prénom, adresse des
parents, date de naissance, parcours scolaire précédent, n° sécurité sociale, …
etc. mais on ne trouvera pas ni la couleur des yeux ni le groupe sanguin (qui
est une information non pertinente pour le fonctionnement de l'université).
Plus précisément, on dit que dans le SI il y a des modèles de la réalité
organisationnelle.
Ces modèles ont été construits par ceux qui mettent en place le SI. La validité
et la pertinence de ces modèles sont indispensables au fonctionnement du SI
lui-même, et elles garantissent la qualité de l'information fournie.

Décision Système de pilotage Informations


s (Coordonner, fixer les collectées
objectifs)

Système d’information
(Collecter, mémoriser,
traiter, restituer)
Décisions
Informations
collectées
Système opérant
Flux (Produire agents
Entran d’exécution) Flux
t sortant
Figure 1.3 : Architecture d’un système d’information
1.4. Le fonctionnement d’un système d’information

Le système d’information réalise alors quatre fonctions essentielles :

• Collecter les informations provenant des autres éléments du système ou de


l’environnement extérieur du système.

• Mémoriser les données collectées par le système


• Traiter les données stockées par le système
• Transmettre les informations vers les autres composants du système.
La figure ci-dessous résume les 5 fonctions de base d'un système d'information.
Remarquez que la communication s'effectue autant avec les systèmes de pilotage
qu'avec le système opérant.

Système de pilotage

Restitution
Traitemen
Stockage

Saisie

Flux physique Système opérant Flux physique


entrant sortant

Figure 1.4 : Les cinq fonctions de base d'un système d'information

1.5 Rôle d’un système d’information dans la performance d’une entreprise


Le système d’information a deux finalités : Fonctionnelle et Sociale :
Finalité Fonctionnelle : Le système d’information est un outil de
communication entre les différents services d’une entreprise et a un rôle
opérationnel et stratégique.
Finalité Sociale : Il permet l’intégration des salariés dans la culture de l’entreprise
en favorisant la vie sociale pour la diffusion de l’information.
2. Base De Données (BDD)

2.1. Définition
Une base de données est une entité dans laquelle il est possible de stocker des
données de façon structurée et avec le moins de redondance possible. Autrement dit,
elle permet de mettre des données à la disposition d’utilisateurs pour une
consultation, une saisie ou bien une mise à jour. Il est possible d’accéder à la base de
données par plusieurs utilisateurs simultanément. Une base de données peut être
locale ou bien répartie où les données sont stockées sur des machines distantes.

Nous donnons quelques exemples :


- Organisation : Une bibliothèque
Données : Les livres, les emprunts, les emprunteurs

- Organisation : Une Université


Données : Les étudiants, les enseignants, les cours, etc.

2.2. Caractéristiques
Une base de données répond généralement à trois critères suivants :
L’exhaustivité : Implique la présence dans la base des données, de tous les
renseignements qui ont trait aux applications en question.
La non-redondance : Implique la présence d’un renseignement donné une et une
seule fois.
La structure : Implique l’adaptation du mode de stockage des renseignements aux
traitements qui les exploiteront et les mettront à jour, ainsi qu’au coût de
stockage dans l’ordinateur.

2.3. Rôles des Base de Données (BDD)


Les bases de données ont les rôles suivant :
Décrire les données qui seront stockées ;
Manipuler ces données (Mise à jour des informations) ;
Consulter les données et traiter les informations obtenues (sélectionner, trier,
calculer, agréger,...) ;
Définir des contraintes d’intégrité sur les données (contraintes de domaines,
d’existence,.) ;
Assurer les protections d’accès (mots de passe, autorisations d’accès...) ;
Résoudre les problèmes d’accès multiples aux données (blocages, inter blocages) ;
Prévoir des procédures de reprise en cas d’incident (sauvegardes, journaux,...).

3. Systèmes de Gestion de Base de Données (SGBD)

3.1 Définition
La gestion de la base de données se fait grâce à un système appelé SGBD (Système
de Gestion de Bases de Données) ou en anglais DBMS (DataBase Management
System).
Le SGBD est un ensemble de services (applications logicielles) permettant la
manipulation des bases de données. Un système de gestion de base de données
peut être défini comme un ensemble de logiciels prenant en charge la
structuration, le stockage, la mise à jour et la maintenance des données.
Autrement dit, il permet de décrire, modifier, interroger et administrer les
données. C’est, en fait, l’interface entre la base de données et les utilisateurs.
Exemples: MySQL, PostgreSQL, Oracle, Microsoft SQLServer, etc.
Dans ce cours, on va utiliser un outil de bureautique de gestion de bases de données
MS-ACCESS.

3.2. Objectifs des SGBD


L’objectif essentiel d’un SGBD est de garantir l’indépendance des données par
rapport aux programmes (La possibilité de modifier les schémas conceptuel et
interne des données sans modifier les programmes par exemple). Le but est
d’éviter une maintenance coûteuse des programmes lors des modifications des
structures logiques et physiques des données. Par cela, on trouve l’indépendance
physique et logique.
En plus, pour assurer une meilleure indépendance des programmes aux données
il est important de manipuler les données aussi bien en interrogation qu’on mise
à jour via des langages. De ce fait, l’accès aux données reste invisible aux
programmes d’application. Les descriptions de données sont établies par les
administrateurs des données, donc, le SGBD doit faciliter cette tâche.
Lorsque le SGBD met en commun les données d’une entreprise dans une BDD, et
que plusieurs utilisateurs accèdent simultanément aux données, il est nécessaire
de garantir : l’efficacité des accès, le partage des données, la protection de la BDD contre
les mises à jour erronées ou non autorisées et la sécurité des données en cas de
panne.
On peut donc résumé les objectifs des SGBD comme suit:

Indépendance physique : Possibilité de modifier l'organisation physique (accès) sans


modifier les programmes (modifier l'organisation physique des fichiers, ajouter ou
supprimer des méthodes d'accès) sans changer le schéma conceptuel. Cela
présente deux avantages : le fait de ne pas manipuler des entités complexes rend
les programmes d’application plus simples à écrire, la modification des
applications n’est pas obligatoire dans le cas de modification des caractéristiques
du niveau physique.
Indépendance logique : Le SGBD permet de modifier le schéma conceptuel
et interne des données sans changer le programme d'application. Donc le
niveau conceptuel peut être modifie sans remettre en cause le niveau physique
« sans modifier des schémas externes).
Manipulation des données : Permettre à tous types d’utilisateurs d’accéder
à la base selon leurs besoins et connaissances. Par conséquent, un ou plusieurs
:

- Administrateurs : Ils ont la possibilité de décrire les données aux niveaux interne
et logique,

- Développeurs d’applications écrivent des programmes d’application pour les


utilisateurs finaux ou pour eux-mêmes, cela est à partir du niveau conceptuel ou
externe,
- Utilisateurs peuvent manipuler les données via un langage simple dont ils ont
besoin.
Administration facilitée des données :
La centralisation des descriptions de données faites par un groupe spécialisé
entraine une difficulté d’organisation. Le SGBD permet de décentraliser cette
description à travers des outils. Pour cela, un dictionnaire de données dynamique
peut aider les concepteurs de BDD.
Redondance contrôlée des données :
La suppression des données redondantes permet d’assurer la cohérence de
l'information ainsi que la simplification des mises à jour. En effet, avec les BDD
réparties, il est préférable de gérer par le système des copies multiples de
données. L’objectif est d’optimiser les performances en interrogation tout en
évitant les transferts sur le réseau et permettre le parallélisme des accès.
Conséquemment, parfois la redondance gérée par le SGBD est nécessaire
spécialement au niveau physique des données.
Par contre, il faut éliminer la redondance anarchique qui force les programmes
utilisateurs à mettre à jour une même donnée plusieurs fois.
Donc, il faut bien contrôler la redondance.
Cohérence des données :
Dans une approche BDD, les données ne sont pas indépendantes (par
exemple, il peut exister certaines dépendances entre ces données). En d’autres
termes, souvent une donnée ne peut pas prendre une valeur quelconque.
Exemples : Une note doit être supérieur ou égale à 0 et ne doit pas dépasser
20, un salaire mensuel doit être supérieur à 40 000 Dinar et doit
raisonnablement rester inférieur à 200 000 Dinar.
Un SGBD doit veiller à ce que ces règles soient respectées par les applications
lors des modifications des données et ainsi assurer la cohérence des données.
Ces règles sont appelées contraintes d’intégrité.
Partage des données :
L’objectif est ici de permettre le partage des données entre différents
utilisateurs et applications. Un utilisateur n'a pas à se soucier si quelqu'un
d'autre travaille sur les mêmes informations au même moment et peut accéder
aux données en consultation ou en mise à jour comme s'il était seul. Le système
doit gérer les conflits en refusant ou en retardant éventuellement un ou
plusieurs accès. Il faut assurer que le résultat d’une exécution simultanée de
transactions est le même que celui d’une exécution séquentielle. Par exemple,
on ne pas autoriser la réservation du même siège pour deux passagers
différents.
Sécurité des données :
La sécurité des données consiste à :

• Refuser les accès aux personnes non autorisées ou mal intentionnés. Le


système doit présenter un mécanisme de vérification des droits d'accès aux
objets de la base.
Par exemple : Un employé peut connaître seulement les salaires des personnes
qu’il dirige mais pas le salaire des autres employés de l’entreprise.

• Protéger les données contre les pannes. Le système doit garantir des reprises
après panne tout en restaurant la BDD dans le dernier état cohérent avant la
panne.
Efficacité des accès aux données :
Offrir la possibilité aux utilisateurs de manipuler les données à partir de langages
hôtes (Pascal, Fortran, C, Java...) tout en assurant une efficacité et rapidité au
niveau des accès sur les supports.
Avant qu’une BDD prenne sa forme finale (par exemple, une forme utilisable par
un SGBD), il faut passer par une étape de conception afin de décrire les objets de
la réalité ainsi que les relations entre ces objets. Pour cela, la modélisation à travers
des modèles est nécessaire.

3.3. Type d’une SGBD


On distingue plusieurs modèles de bases de données ; la différence entre ces
modèles est la représentation des liens entre les données de la base. Nous
essayerons de parler de modèle hiérarchique, réseau, relationnel et le modèle
objet.
3.3. 1. Les SGBD hiérarchiques
Ce sont les premiers SGBD apparus (notamment avec IMS d’IBM). Ces systèmes de
gestions de bases données font partie des SGBD navigationnelles constituées d’une
gestion de pointeurs entre les enregistrements. Le schéma de la base de données est
une arborescence.

Figure 1.5: Les SGBD Hiérarchique


3.3. 2. Les SGBD réseaux
Les SGBD réseaux viennent juste après le SGBD hiérarchique, elles ont très
vite détrôné le SGBD réseaux dans les années 70. Ce sont aussi des SGBD
navigationnelles qui gèrent des pointeurs entre les enregistrements. Cette fois-
ci le schéma de la base de données est beaucoup plus ouvert. Sans doute les
SGBD réseaux sont plus rapides que SGBD hiérarchiques.

Figure 1.6 : Les SGBD Réseaux

3.3. 3. Les SGBD relationnelles


A l’heure actuelle, les SGBD relationnelles sont les plus utilisées. Les données
sont représentées en des tables. Elles sont basées sur l’algèbre relationnelle et
un langage déclaratif (généralement SQL).

3.3. 4. Les SGBD déductives


Dans les SGBD déductives, les données sont aussi représentées en tables, le
langage d’interrogation se base sur le calcul des prédicats et la logique du
premier ordre.

3.3. 5. Les SGBD objets


Les données sont représentées sous forme d’objets au sens donné par les
langages orientés objet : pour simplifier, les données (au sens habituel) sont
enregistrées avec les procédures et fonctions qui permettent de les manipuler.
Les SGBD Orientés Objet (SGBDOO) supportent aussi la notion d’héritage
entre classes d’objets. Ces dernières années le développement rapide des
langages orientés objet a mis en avant les SGBDOO qui permettent la
sauvegarde directe des objets manipulés par ces langages. De plus les
manipulations de données à structures complexes, en particulier dans les
traitements qui font intervenir le multimédia, sont facilitées avec les SGBDOO.
Le modèle relationnel a montré ses limites pour ce type de données. On verra
en particulier que les structures de données complexes sont éclatées par le
modèle relationnel et la reconstitution de la structure nécessite des opérations
(jointures) lourdes et coûteuses en performance. Cependant les SGBDOO ne
sont utilisés actuellement que pour des usages bien spécifiques et il n’existe
pas encore de normes communément admises. Les SGBDR ont aussi leurs
atouts. Ils reposent sur une théorie formelle plus solide que les SGBDOO. Ils
sont aussi plus souples pour répondre aux interrogations de la base non
prévues au départ. La recherche est active dans le domaine des SGBDOO.
Pour garder leur part du marché et répondre aux besoins des utilisateurs, les
grands SGBD relationnels ajoutent progressivement une couche objet à leur
noyau relationnel.
Les données sont stockées sous forme d’objets, c’est-à-dire de structures
appelées classes présentant des données membres. Les champs sont des
instances de ces classes.
3.4 Quelques SGBD reconnus
 Oracle

 DB2

 Sybase

 SQL Server

 Ingres

 Informix

 O2

 Gemstone

 ObjectStore

 Jasmine Access, …..

4. Conception d’une base de données


La conception d’une base de données est un processus qui consiste en
l’observation d’une situation réelle pour aboutir à la définition de la base de
données correspondante.
Le monde informatique dispose de plusieurs méthodes de modélisation de base
de données. Parmi les méthodes utilisées, nous citons la méthode MERISE.
La méthode MERISE (Méthode d’Etude et de Réalisation Informatique pour les
Systèmes d’Entreprise)
Est une méthode de conception, de développement et de réalisation de projets
informatiques. Elle est basée sur la séparation des données et des traitements à
effectuer en plusieurs modèles.
Merise utilise une démarche de modélisation à trois niveaux. A chaque niveau
correspondent à un modèle pour la représentation des données et à un modèle
pour la représentation de traitements, un formalisme de
représentation est associé à chaque modèle. La méthode Merise distingue 3 niveaux
d’abstractions :

 Au niveau conceptuel, il s’agit de répondre aux questions : quoi ? que veut-on


faire ? avec quelles données ?
On développe à ce niveau le modèle conceptuel des données (MCD) et le modèle
conceptuel des traitements(MCT)

 Le niveau logique/organisationnel : permet de tenir en compte les problèmes


organisationnels à partir des modèles conceptuels de données et en faisant
intervenir les contraintes d’organisations, on élabore le modèle logique de
données (MLD) et le modèle organisationnel des traitements(MOT).

 Le niveau Physique/Opérationnel : Le niveau physique est caractérisé par la prise


en compte des contraintes technologiques : matériel, logiciel, humain, …A ce
niveau, on élabore le modèle physique des données et le modèle opérationnel
des traitements.
Chapitre 2 : Le Modèle Conceptuel de
données (MCD)

1. Introduction
Un système d’information est défini par deux composantes : les données qui
constituent l’aspect statique et les traitements qui constituent l’aspect dynamique.
Merise possède l’avantage qui est d’ailleurs l’un des points clés de sa réussite, de
décrire les données indépendamment des traitements. L’objectif poursuivi est la
définition et l’élaboration de la structure globale des données de manière
indépendante de toute contrainte organisationnelle ou technologique. La
structure est appelé modèle conceptuel des donnés.
Au niveau conceptuel de la méthode on élabore pour les données, le Modèle
Conceptuel des Données (MCD) et pour les traitements, le Modèle Conceptuel des
Traitements (MCT).
On va s’intéresser dans ce cours aux modèles de représentation des données.

2. Concepts de base

2.1 Entité
Une entité est un objet concret ou abstrait qui a une existence propre, elle est aussi
appelée INDIVIDU dans le formalisme individuel.

Exemple entité concrète :


Le client Mohamed
Le fournisseur Ali
L’exemplaire du livre « Programmation Matlab »
Une table, Une machine

Exemple entité abstraite :


La matière « Anglais »
Le service vente d’une société.

2.2 Association
Une association est une relation qui met en liaison deux ou plusieurs entités Exemple
:
« Mohamed est marié avec Fatima », L’association mariage lie les deux entités
Mohamed et Fatima.
Amir appartient à la classe 3ieme année moyenne.
L’association appartenance lie les deux entités Amir et Classe.

2.3 Propriété
Elle définit l’entité ou association. Autrement dit, elles apportent l’information
nécessaire au système d’information.
Voici quelques exemples de propriétés :
- L’entité Client est définit par les propriétés : code client, nom, téléphone,…..
- L’entité Commande est définit par les propriétés : N°commande, date
commande,…
- L’entité Facture est définit par les propriétés : N° Facture, Montant_facture,….

2.4. Identifiant Entité


L’identifiant est la propriété particulière pour chaque entité. Il permet de désigner
chaque occurrence de manière unique.

Exemples :
Le matricule est un identifiant de l’entité « Voiture ». Autrement dit, ce n’est pas
possible d’avoir deux voitures avec le même matricule.

3 Représentation schématique

Nous présentons dans ce qui suit comment représenté schématiquement un modèle


selon la méthode de MERISE.

3.1 Schématisation (Entité-Association)


Une entité est représentée par un rectangle divisé en deux parties, une partie
supérieure contient le nom de l’entité et la partie inférieure porte la liste des
propriétés.
L’identifiant est repéré dans la liste des propriétés de la manière suivante :
Il figure en première position dans la liste des propriétés. Il
est souligné.
Clients

RefClient Identifiant
Nom
Fonction
Adresse
Ville Liste de propriétés
Sex

Figure 2.1 : Représentation schématique (Entité-Association)

L’association est schématisée par une ellipse. On trouve comme dans la


représentation schématique d’entités deux parties, une partie supérieure inscrit le
nom de l’association et dans l’autre partie, la liste des propriétés.

Conduit

Figure 2.2 : Représentation schématique (Association)

Exemples :
La figure 2.3 représente deux entités Etudiant et Classe liées par une association
d’appartenance. On peut facilement lire qu’un étudiant appartient à une classe.

Etudiant Classe
NumClasse
RefEtudiant
Adresse Appartient
Ville
Sex

Figure 2.3 : Deux entités Etudiant et Classe liées par une association d’appartenance

En fonction du nombre d’entité relié par l’association on peut déterminer la notion


d’une dimension d’une association

3.2. Dimension d’une association


C’est le nombre d’entités participant à l’association :
Une association entre deux entités est appelée association binaire.
Une association entre trois entités est appelée association ternaire.
Une association entre n entités est appelée association n-n’aire.

Les figures suivantes représentent un exemple d’une association binaire et ternaire :

Etudiant Classe
N°inscription Code classe
Nom Libellé
Prénom Appartient
Date-Naissance

Ouvrier Elément

NumClient RefElément
Fabriquer Désignation
Nom
Quantité
Prénom
Date Naiss

Date Fabrication

Date

Figure 2.4 : Exemple d’une association binaire et ternaire

On passe maintenant à définir la notion de cardinalité, quelle est son rôle et qu’est ce
qu’elle permet d’apporter dans ce modèle :

3.3. Les cardinalités


Les cardinalités apportent des informations importantes sur les associations dans le
modèle conceptuel de données.
Prenons l’exemple précédent :
Si un étudiant peut appartenir à une ou plusieurs classes. Dans ce cas, on ne peut pas
savoir si une classe contient un ou plusieurs étudiants.

Etudiant Classe
Code classe
N°inscription Appartient Libellé
Nom
Prénom
Date-Naissance
Figure 2.5 : Exemple de deux entités Etudiant et Classe

La cardinalité d’une association pour une entité constituante est constituée d’une
borne minimale et d’une borne maximale :

Cardinalités Minimum : nombre minimum de fois qu’une occurrence de l’entité


participe aux occurrences de l’association, généralement 0, 1 ou C.
Cardinalités Maximum : nombre maximum de fois qu’une occurrence de l’entité
participe aux occurrences de l’association, généralement 1, N ou C. Autrement
dit, les combinaisons des cardinalités sont des couples qui peuvent prendre
comme valeur :
(0,1 ou C) (aucun ou 1 seul), où C est une constante (C>1);
(0, N ou C ) (aucun ou plusieurs), où C est une constante (0<C<N) ;
1,1 (un et 1 seul)
0, N (au moins un ou plusieurs)
Le premier chiffre correspond au minimum, le second correspond au maximum
Prenons l’exemple suivant :

Exemplaire
Adhére nt
(0, 1)
(0, C)
Emprunter
Date d’emprunt

Figure 2.6 : Exemple sur les cardinalités

• La cardinalité 0,C indique qu’un adhérent peut être associé à 0, 1, 2 ou C livres,


c’est à dire qu’il peut emprunter au maximun C livres.

• A l’inverse un livre peut être emprunté par un seul adhérent, ou peut ne pas être
emprunté.

• Les cardinalités maximum sont nécessaires pour concevoir le schéma de la base


de données
• Les cardinalités minimums sont nécessaires pour exprimer les contraintes
d’intégrité
Voici des exemples avec des cardinalités différentes :

 Exemple1 : Association de type (1, N) : Un étudiant réside dans un seul et un seul


département et un département peut contenir 0 ou plusieurs étudiants.

Etudiant
N°d’étudiant Département
Nom (1,1) (0,N)
N°département
Prénom Libdept
Date-Naissance Appartient

Figure 2.7 : Exemple association de type (1, N)

 Exemple2 : Association de type (N, N) : Un étudiant pratique un ou plusieurs


sports, et un sport est pratiqué par un ou plusieurs étudiants

Etudiant Sport
(1,N) (1,N) Num sport
N°d ’étudiant
Nom Appartient Libsport
Prénom
Date-Naissance

Figure 2.8 : Exemple association de type (N, N)

 Association de type (N, N) porteuse d’information :


Remarque : Un étudiant apprend plusieurs matières et une matière peut être
enseignée à plusieurs étudiants
La propriété moyenne de l’association Noter est en relation avec les deux entités
Etudiant et Matière.
Etudiant Matière
N°d ’étudiant (1,N) Code matière
(1,N
Nom Noter LibMatière
Prénom
Date-Naissance Moyenne

Figure 2.9 : Exemple association de type (N, N) porteuse d’information


+

 Voici d’autres exemples d’association spéciale :


Association réflexive : C’est l’association d’une entité sur même.
Exemple : Considérons l’entité-Employé d’une entreprise et l’association
conjoint.

(0,1)
Employé Conjoint
N°employé Nom (0,1)

Figure 2.10 : Exemple association réflexive

(0) : Un employé peut ne pas avoir de conjoint employé dans l’entreprise


(1) : Un employé peut avoir au maximum un conjoint qui est lui-même employé dans
l’entreprise.
Association Multiple : Deux entités distinctes peuvent avoir plusieurs liens de
dépendance. Dans ce cas elles vont être reliés par plusieurs associations .c’est ce
qu’on appelle association multiple.
Exemple :
Posséder
Date
d’acquisition
Prix d’achat
(0, N)
(1,1)

Résider1
Personnes (0,N) Logement
(0,1) Date d’entrée N°Logement
N°Personnel
Montant du Adresse
Nom loye r
PrénomDate-
Naissance
(0,N)
(0,N) Résider2
Date d’entrée
Montant du
loyer

Figure 2.11 : Exemple association Multiple

Dans cet exemple issu d’une agence immobilière, une personne peut être
propriétaire, résider principalement ou résider secondairement dans un
logement géré par l’agence.

Vous aimerez peut-être aussi