Vous êtes sur la page 1sur 105

01/11/2022

SYSTÈME D’INFORMATION DÉCISIONNEL(BI)


IBTISSAM CHOUJÂ

OBJECTIFS

 Apprendre les étapes et les concepts de base d’un système d’information décisionnel de la conception à la
restitution de l’information décisionnelle.

1
01/11/2022

OBJECTIFS :
 Tâches du manager /responsable

PLAN DU MODULE

 Système d’information
 Merise2 (Approche données/ Traitement)
 Base de données Oracle
 Le modèle multidimensionnel
 Architecture d’un système d’information décisionnel
 Conception d’entrepôts de données(Datawerhouse)

2
01/11/2022

Système d’Information

Notion de Système d’Information


de Gestion
❑ C'est la mémoire de l’activité de l’entreprise,

Exemple:
 Une usine de montage de voitures.
Pièces détachées Automobiles
Système
Entrées Sorties

 Modèle d’un atelier de fabrication :

Matières premières Produits finis


Système
Entrées Sorties

3
01/11/2022

Notion de Système d’Information de


Gestion
 Modèle d’une organisation (ou entreprise) selon la théorie des systèmes :

Système de Pilotage

Système d’Information

Entrée Sortie
Système Opérant
7

SOUS SYSTÈMES

Système

 Système opérant : correspondant à l’activité


Système de pilotage
de l’entreprise (transformation de flux)

communication

Système
d’information

communication

Système opérant 8

4
01/11/2022

SOUS SYSTÈMES

Système
 Système de pilotage : système de prise de
Système de pilotage décision permettant de réaliser les objectifs
fixés.

communication

Système
d’information

communication

Système opérant 9

SOUS SYSTÈMES
Système

Système de pilotage  Système d’information


 Composé de :
communication  Personnes
 Ordinateurs
Système  Méthodes
d’information  Règles
 …
communication
 Assure l’interface entre SO et SP, le stockage et
traitement de l’information.
Système opérant
10

10

5
01/11/2022

Notion de Système d’Information de


Gestion

 Le système d’information (SI) est un système qui stocke et traite de façon plus efficace les informations
relatives aux système opérant afin de les transmettre au système de pilotage.
 Le SI est composé d’éléments divers (employés, ordinateurs, règles et méthodes, etc.)

11

NOTION DE SYSTÈME D’INFORMATION DE GESTION

Le SI possède deux aspects :


 Aspect statique (ou aspect données) :
 Base d’information,
 Modèle (ou structure) de données.
 Aspect dynamique (ou aspect traitement) :
 Circulation de l’information entre les différents acteurs,
 Evolution chronologique et causale des opérations provoquées par des évènements.

12

6
01/11/2022

NOTION DE SYSTÈME D’INFORMATION DE


GESTION
 Exemple d’un modèle d’une entreprise qui assemble et commercialise des PC :

Direction

Nouveaux produits Statistiques de ventes


et de pannes

Service commercial et comptable


Commandes Facture
Paiement
PC Assemblés Ordre de Panne
et livrés fabrication

Fournisseur
Pièces
Atelier Livraison
Client
13

CONCEPTION DES SYSTÈMES D’INFORMATION

 Savoir analyser la demande du client pour concevoir un système d’information répondant à ses besoins
 Comprendre le système existant pour pouvoir l’utiliser /l’adapter (idéalement avec les documents de l’analyse
initiale)
➔ Utilisation d’une méthode de conception
➔ Utilisation de standards (MERISE, UML)

14

14

7
01/11/2022

CONCEPTION D’UN SYSTÈME D’INFORMATION

 La conception d’un SI consiste en:


 une modélisation de l’entreprise (pour une vision globale : modèle systémique),
 une modélisation de ses aspects statiques (données : entités et association inter-entités);
 une modélisation de ses aspects dynamiques (traitements : opérations déclenchées par des événements).
 Cette conception nécessite une approche progressive (niveaux d’abstraction).

15

CONCEPTION D’UN SYSTÈME D’INFORMATION

16

8
01/11/2022

Merise

17

MERISE

 Méthode d’Étude et de Réalisation Informatique par les Sous-Ensembles ou pour les


Systèmes d’Entreprise.
 Merise née en 1970
 Hubert Tardieu, Georges Panet et Gérard Vahée
 Centre Technique Informatique du Ministère de l’industrie.
 Début des années 90 ➔ Merise/2
 Analyse Systémique

18

18

9
01/11/2022

POURQUOI UTILISER MERISE

 Merise est une méthode de conception de système d’information


 On peut dire aussi c’est une méthode d’analyse de système d’entreprise dans le but de réaliser une application
informatique permettant d’automatiser les tâches et les activités de l’entreprise.

19

19

MERISE
 Analyse systémique
 Séparation des données et des traitements
 Décomposition en niveaux

Choix de Définition des info.


Conceptuel gestion et des activités
SIO
Choix Types de ressources
Organisationnel
d‘organisation et affectations

Choix logiciels Moyens


Logique
et ressources informatiques
SII
Physique Choix Ressources effectives 20
techniques

20

10
01/11/2022

CONCEPTION D’UN SYSTÈME D’INFORMATION


Différencier données et traitements
➢ Données
 Entité (objet ou individu). Représentation dans un SI d’un objet de l’entreprise.

Exemple : Client, commande, produit, etc.


 Association (ou relation) : Lien entre les entités.

Exemple : Client passe une commande.


 Attribut (propriété ou donnée): Rubrique de description d’une entité ou d’une association.

Exemple : Nom et adresse du client (attribut de l’entité «client»); date de la commande (attribut de l’association passation de commande»).

➢ Traitement
Opération déclenchée par un évènement.
 Exemple : l’arrivée d’une commande d’un client déclenchera la mémorisation de celle-ci et la recherche des produits commandés

21

LES DIFFÉRENTS MODÈLES

Concepts manipulés
Niveau de description
Données Traitements
Conceptuel MCD MCT Quoi? Quelle donnée?
Organisationnel MOD MOT Qui? Où ? Quand?
Logique MLD MLT Avec Quoi?
Physique MPD MOPT Comment?

22

22

11
01/11/2022

LE CYCLE DE VIE DU SI

Propositions et évaluations de solutions d’organisation


Etude préalable
et de solutions techniques pour le SI

Etude détaillée Spécification complète du futur SIO du point de vue


de l’utilisateur (extérieur)

Etude technique Spécification complète du futur SII du point de vue


du réalisateur (interne)

Production logicielle Ecriture des programmes, générations des fichiers,


des BD et réalisation de tests

Mise en service Installation de l’application et mise en place de la


nouvelle organisation

23

Maintenance Rectification des anomalies, améliorations, évolutions

23

MODÈLE CONCEPTUEL DE
COMMUNICATION
MCC

24

24

12
01/11/2022

LE DIAGRAMME ACTEUR/FLUX (DAF) MCC

 Modèle Conceptuel de Communication (MCC)


 Analyse des flux dans :
 Une organisation (entreprise, administration, association,…)
 Un domaine d’une organisation (service de paie, service commercial …)
 Objectifs :
 Inventaire des acteurs
 Inventaire des échanges d’informations (flux)
 Facilite la communication entre le client et l’analyste

25

25

LE DIAGRAMME ACTEUR/FLUX (DAF) MCC

 C’est La première étape de l’étude de l’existant.


 C’est l’étape de modélisation des habitudes de travail dans l’organisation concernée.
 Il permet de :
 Délimiter le domaine étudié
 Réduire la complexité en identifiant les sous problème traités individuellement
 Identifier les acteurs externes et internes.
 Modéliser les échanges d’informations entre les différents acteurs.

26

26

13
01/11/2022

LE DIAGRAMME ACTEUR/FLUX (DAF)

27

DOMAINE

 Le domaine présente les frontière de l’étude de l’existant.


 C’est une partie du système d’information global de l’organisation
 Exemple :
 une entreprise (qui est un domaine) se compose des domaines Vendre, Produire, Gérer le personnel
 Ses partenaires sont Client, Etat, …
 Le domaine Produire peut se décomposer en sous domaines Maintenir (la production), Approvisionner (les usines), …

28

28

14
01/11/2022

ACTEUR

 Entité active dans l’organisation (acteur interne) ou en relation avec lui (acteur externe)
 Un acteur est un rôle plutôt qu’une personne physique.
 Exemples
 Acteur interne: Guichet, Service informatique, Administrateur…….
 Acteur externe: Client, Fournisseur……

Client Guichet

29

29

FLUX

 Echange (généralement d’information) entre deux acteurs


 Livraison d’un article
 Paiement
 Facture

Emetteur Facture Récepteur


(producteur) (utilisateur)

30

30

15
01/11/2022

EXEMPLE MCC

31

31

EXERCICES : TD1

32

32

16
01/11/2022

VALIDATION

 Les acteurs doivent être "types"


Fournisseur
Gestion « Dupond &
stock Cie »

Fournisseur
« SARL
Durand »

Gestion
stock Fournisseur
33

33

VALIDATION
 Les flux doivent être conceptuels

commande téléphone

commande courrier
Service Client
commercial
commande internet

commande
Service Client
commercial
34

34

17
01/11/2022

VALIDATION

 On ne prend en compte que les acteurs qui traite le flux

fiche visée fiche visée


secrétaire Chef
Client
atelier
(1) (2)

fiche visée Chef


Client
atelier
secrétaire 35

35

VALIDATION

Lorsque le service commercial reçoit une commande non réalisable, sa réponse est un courrier de
refus au client sinon, si elle est réalisable, sa réponse est l’envoi de la facture...

commande réalisable

commande
commande
non réalisable

Serv Cal refus


Client

facture
36

36

18
01/11/2022

VALIDATION

 Les flèches indique le sens du flux inutile de le préciser


Facture
Expédition facture
Service
Client
commercial
Réception commande
Commande

37

37

VALIDATION

 On ne fait pas de référence aux traitements

lettre de relance si pas de règlement dans délai


lettre de relance

Service
Client
commercial

relevé compte
relevé compte envoyé sur demande ou tous les deux mois

38

38

19
01/11/2022

MODÈLE CONCEPTUEL DE
TRAITEMENT
MCT

39

39

DÉFINITION MCT

 Le Modèle Conceptuel des Traitements représente les activités exercées par le domaine : On décrit ce qui est fait
et comment cela est fait.
 Il se base sur le flux de l’information entre le domaine et son environnement.
 C’est la description des transformations de l’information.
 Il décrit le fonctionnement du SI d’une organisation au niveau conceptuel :
 on fait abstraction des contraintes d’organisation et techniques
 on ne décrit que les règles fondamentales de gestion (les invariants,‘le métier’ de l’organisation). Description la plus stable.

40

20
01/11/2022

MODÉLISATION MCT

 MCT représente sous forme schématique, les activités exercées par le domaine d’étude
indépendamment des contraintes d’organisation techniques.
 MCT est un ZOOM sur MCC
 MCC représente les messages échangés entre le domaine et les acteurs externes.
 MCT représente comment un acteur de l’organisation réagit quand il reçoit ce message et quelle opération il effectue.

41

MODÉLISATION MCT

42

21
01/11/2022

MODÉLISATION MCT : EVÈNEMENT

 L’arrivée d’un fait nouveau pour le SI qui :


Evènement 1 Evènement 2
 Provoque une réaction du SI sous la forme d’un traitement
 Porteur d’information utile pour le SI a b
 Deux types:
 Externe : issu de l’univers extérieur.
 Interne : produit par le SI
Opération
 Exemple :
 Arrivée de bon de commande Règle 1 Règle 2
 Fin du mois
Résultat 2 Résultat 2

43

MODÉLISATION MCT : SYNCHRONISATION

Evènement 1 Evènement 2
 Condition dont la présence est indispensable au déclenchement
d’une opération. a b
 S’exprime sous forme d’une proposition logique( ET/ OU par
défaut ET).
 Exemple:
 Opération « Traitement du dossier » est déclenchée par deux Opération
évènements: Demande de candidature et Validation du
dossier Règle 1 Règle 2

Résultat 2 Résultat 2

44

22
01/11/2022

MODÉLISATION MCT : OPÉRATION

Evènement 1 Evènement 2

 L'ensemble d'actions est ININTERRUPTIBLE c'est-à-dire non a b


soumis à l'attente de nouveaux événements.
 Seules les opération effectuées par l’organisation, les intervenants
internes sont analysées.
Opération

Règle 1 Règle 2

Résultat 2 Résultat 2

45

MODÉLISATION MCT : RÈGLES

Evènement 1 Evènement 2

 Conditions aux quelles est soumise l'émission du résultat. a b


 Une même condition peut déclencher plusieurs résultats
 Des conditions différentes peuvent déclencher un même résultat

Opération

Règle 1 Règle 2

Résultat 2 Résultat 2

46

23
01/11/2022

MODÉLISATION MCT : RÉSULTAT

Evènement 1 Evènement 2

a b
 Réponse du SI générée par une opération.
 Une opération peut générer plusieurs résultats.

Opération

Règle 1 Règle 2

Résultat 2 Résultat 2

47

MODÉLISATION MCT : EXEMPLE

Validation de la direction Demande d’inscription

a b
 Réponse du SI générée par une opération.
 Une opération peut générer plusieurs résultats. ET

Création d’un dossier

Valide Non Valide

Envoie d’un email Envoie d’un refus

48

24
01/11/2022

MODÉLISATION MCT : LA VÉRIFICATION

 Règles syntaxiques
 Un acteur émet au moins un événement ou recoit un résultat
 Un événement provient d'au moins un acteur ou est lié à un problème de temps.
 Une opération est toujours déclenchée par une synchronisation (même vide)
 Une expression logique liée à une synchronisation ne doit pas être toujours fausse

49

49

MODÉLISATION MCT : LA VÉRIFICATION

 Il faut rendre le modèle le plus propre possible en supprimant les redondances


 On peut élargir certaines opération et supprimer des opérations semblables (avec les même actions)
 Vérifié la réalité des attentes

50

50

25
01/11/2022

EXERCICES : TD

51

51

Concevoir une base de données

52

26
01/11/2022

CRÉATION D'UNE BASE DE DONNÉES (BD)

53

NOTION DE MODÉLISATION DES DONNÉES

54

27
01/11/2022

MODÉLISATION DES DONNÉES ET


SCHÉMAS

 La modélisation est l’activité d’élaboration d’une représentation structurée de la réalité


 La modélisation des données est l’élaboration des structures de données pour les données
qui seront enregistrées dans une BD.

55

MODÉLISATION CONCEPTUELLE

 Objectif: représenter la réalité telle qu'elle est perçue par les utilisateurs
 Le processus de modélisation et la définition de son résultat sous forme d'un
schéma conceptuel est appelé conception de la base de données
 La qualité de la conception de la BD est un facteur critique de réussite

56

28
01/11/2022

L’APPROCHE BASE DE DONNÉES

Situation Analyse de
initiale la situation et
à informatiser des données

Implantation Modélisation
de la base de la base
de données de données

57

L’APPROCHE BASE DE DONNÉES

Situation Analyse de
initiale la situation et
à informatiser des données

Implantation Modélisation
de la base de la base
de données de données

58

29
01/11/2022

DICTIONNAIRE DU DONNÉES

 Le dictionnaire des données est un document qui permet de recenser, de classer et de


trier toutes les informations (les données) et règles de gestions (calcul d’un taux de
remise par exemple) collectées lors des entretiens ou de l’étude des documents.

59

EXEMPLE DICTIONNAIRE DU DONNÉES

Elémentaire Calculé

60

30
01/11/2022

DÉPENDANCE FONCTIONNELLE

 Le rôle de l’établissement des dépendances fonctionnelles est de nous aider à comprendre


les liens existants entre chaque donnée.
 Cette activité étant la première dans l’élaboration de l’analyse, si elle est négligée c’est
tout l’ensemble qui en subira les conséquences.

61

DÉPENDANCE FONCTIONNELLE

 Définition de dépendance fonctionnelle


 Dépendance fonctionnelle élémentaire
 Dépendance fonctionnelle directe.

62

31
01/11/2022

DÉPENDANCE FONCTIONNELLE

 Soit 2 attributs A et B, on dit que B dépend fonctionnellement de A (A →B) si, à chaque valeur de A ne
correspond qu’une seule valeur de B.
 Exemples :
 CIN -> Nom (Nom dépond du CIN car il n’y a pas 2 personnes avec le même CIN)
 Par contre Nom->CIN est fausse : le CIN ne dépond pas fonctionnellement du Nom

63

DÉPENDANCE FONCTIONNELLE ÉLÉMENTAIRE

 Soient 2 attributs A et B, la DF(A →B) est élémentaire s’il n’existe pas C contenu dans A tel que (C →B).
 Exemple :
 n°commande, n°article→nom_article(non élémentaire)
 n°article→nom_article(élémentaire)
 n°commande, n°article→qté_commandée(élémentaire)

64

32
01/11/2022

DÉPENDANCE FONCTIONNELLE DIRECTE

 Soient 2 attributs A et B, la DF(A →B) est directe s’il n’existe pas C tel que (A →C) et (C →B).
 Exemples :
 nous possédons, entre autres, les attributs suivants : n°client, nom_client, n°commande
 n°commande→nom_client(non directe) la première information donne bien la seconde, mais un intermédiaire parait
logique :
 n°commande→n°client(directe)
 n°client→nom_client(directe)

65

EXERCICE:
Voici les attributs disponibles : n°client, nom_client, adr_client, n°article, nom_article, prix, n°commande,
date_commande, qte_commandée
DF élémentaire Directe
Nom_client -> adr_client Non
N°client -> adre_client Oui Oui Oui
N°commande, n°client -> qte_commandée Non
N°commande, n°article -> prix Oui Non Oui
N°commande,n°article-> qte_commandée Oui Oui Oui
N°commande ->date_commande Oui Oui Oui
N°commande -> nom_client Oui Oui Non
N°commande -> nom_article Non

66

33
01/11/2022

MODÈLE CONCEPTUEL DE
DONNÉES
MCD

67

67

MCD

 Objectif : le MCD a pour but de modéliser les données mémorisées dans le système d’information .

 Caractéristiques : Représentation graphique des données à un niveau conceptuel, c’est-à-dire, sans se


préoccuper ni des contraintes d’organisation, ni du gestionnaire de bases de données utilisé, ni des traitements .

 MCD Merise : correspond au modèle Entité - Association.

68

34
01/11/2022

LE CONCEPT D’ENTITÉ

 Représentation d’un objet matériel ou immatériel.


 Par exemple un employé, un projet, un bulletin de paie
 Une occurrence d’une entité est une instance (un représentant) de l’entité dans le monde réel.
 Par exemple l’employé nommé DUPONT est une instance ou occurrence de l’entité EMPLOYE
 L’identifiant d’une entité est une propriété (ou un ensemble de plusieurs propriétés) de l’entité telle que, à
chaque valeur de l’identifiant, correspond une et une seule occurrence de l’entité.

69

LES PROPRIÉTÉS

 Données élémentaires relatives à une entité, Par exemple, un numéro d’employé, une
date de début de projet
 On ne considère que les propriétés qui intéressent un contexte particulier
 Les propriétés d’une entité sont également appelées des attributs, ou des
caractéristiques de cette entité

70

35
01/11/2022

L’IDENTIFIANT

 Propriété ou groupe de propriétés qui sert à identifier une entité


 L’identifiant d’une entité est choisi par l’analyste de façon à ce que deux occurrences
de cette entité ne puissent pas avoir le même identifiant
 Par exemple, le numéro d’employé sera l’identifiant de l’entité EMPLOYE

71

ENTITÉ : REPRÉSENTATION SCHÉMATIQUE

Etudiant
Identifiant N°_étudiant
Nom_étudiant
Prénom_étudiant
Identifiant
Propriété
Adresse_étudiant
Etc

72

36
01/11/2022

ENTITÉ : OCCURENCES

Etudiant Etudiant Etudiant


026854M 017895E 026547Z
DUPONT MARTIN MARTIN
Martin Laurent Béatrice
Versailles Courbevoie Versailles
Etc Etc Etc

73

LES ASSOCIATIONS

 Représentation d’un lien entre deux entités ou plus


 une association peut avoir des propriétés particulières

 exemple:

74

37
01/11/2022

ASSOCIATION : REPRÉSENTATION
SCHÉMATIQUE
Nom de l’association

Etudiant Formation
N° étudiant Inscription Code formation
Nom_étudiant Nom_formation
Etc Etc

Pattes

Entités de la collection
75

75

ASSOCIATION : IDENTIFIANT

 Il est implicite !
 C’est un n-uplet composé des identifiants des entités-types concernées.
 Exemple : l’identifiant de Inscription est le couple (N° étudiant, Code formation).

Etudiant Formation
N° étudiant Inscription Code formation
Nom étudiant Nom formation
Etc Etc
76

76

38
01/11/2022

ASSOCIATION : LES CONTRAINTES


DE CARDINALITÉ

 Une cardinalité est une précision apportée sur une patte d’une association.
 Elle indique combien de fois l’entité peut intervenir dans l’association.
 Pour un MCD, est utile de savoir :
 la cardinalité minimale ➔ Si une occurrence de l’entité est obligatoirement concernée
par une (au moins) occurrence de l’association ;
 la cardinalité maximale ➔ Si une occurrence de l’entité peut (éventuellement) être
concernée par plusieurs occurrences de l’association.

77

77

ASSOCIATION : CARDINALITÉ MINIMALE

Elle peut prendre deux valeurs :

 0, signifie que l’entité peut ne pas intervenir dans


l’association.
 1, signifie au contraire qu’elle intervient obligatoirement
une fois.

78

78

39
01/11/2022

ASSOCIATION : CARDINALITÉ MAXIMALE

Elle peut prendre deux valeurs :

 1, signifie que l’entité ne peut intervenir plus d’une seule fois


dans l’association-type ;
 n, signifie au contraire qu’elle peut intervenir plusieurs fois
dans l’association.

79

79

LES CARDINALITÉS

 La cardinalité 0,3 indique qu’un adhérent peut être associé à 0, 1, 2 ou 3 livres, c’est à dire qu’il peut emprunter au maximun
3 livres.
 A l’inverse un livre peut être emprunté par un seul adhérent, ou peut ne pas être emprunté.

80

40
01/11/2022

ASSOCIATION : C’EST LE 1 QUI REPRÉSENTE LA


CONTRAINTE
Une patte sans contrainte aura
pour cardinalités : (0, n)

Etudiant Formation
N° étudiant Inscription Code formation
0,n 0,n
Nom étudiant Nom formation
Etc Etc

81

81

EXEMPLE

• un employé peut suivre (0) ou plusieurs (n) affaires


• une affaire est suivie par un (et un seul) employé
• une affaire est passée avec un (et un seul) client
• un client passe une (sinon ce n’est pas un client) ou plusieurs (n) affaires
La cardinalité minimale à 1 ou à 0 dépend des règles de gestion.

82

41
01/11/2022

RÈGLE 1
 Deux entités qui doivent être reliées entre elles le seront par le biais d’une
relation

CLIENT FACTURE
À ne pas
faire

1:N
CLIENT FACTURE
1,n 1,1
OK *NoClient Reçoit *NoFacture
NomClient Date

83

RÈGLE 2
 Deux relations ne peuvent jamais être directement reliées entre elles

PERSONNE IMMEUBLE
À ne pas Gère Possède
faire

1:N
0,n 1,1
Gère
PERSONNE IMMEUBLE
OK
N:M
0,n 1,n
Possède

84

42
01/11/2022

RÈGLE 3

 Le nom de la relation doit représenter d’une manière concrète et significative


l’information que l’on veut obtenir

PERSONNE IMMEUBLE
À ne pas Concerne
faire

1:N
PERSONNE IMMEUBLE
0,n 1,1
Gère
OK

85

RÈGLE 4
 Un attribut est unique à une entité ou à une relation
N:M
PROFESSEUR COURS
0,n 0,n
*NoProfesseur Peut donner *NoCours
À ne pas NomProfesseur Description
faire PrénomProfesseur NomProfesseur
Adresse

N:M
PROFESSEUR COURS
0,n 0,n
*NoProfesseur Peut donner *NoCours
OK
NomProfesseur Description
PrénomProfesseur
Adresse

86

43
01/11/2022

RÈGLE 5
 Les entités et les relations ne doivent contenir que des données élémentaires,
donc ne pas contenir des résultat de calcul/traitement

N:M
FACTURE PRODUIT
1,n 0,n
Contient
À ne pas *NoFacture *NoProduit
QtéFacturée
faire Date
PrixFacturé
Description

TotalFacture TotalParProduit

N:M
FACTURE PRODUIT
1,n 0,n
*NoFacture
Contient *NoProduit
QtéFacturée
OK Date
PrixFacturé
Description

87

RÈGLE 6

 Pour une occurrence donnée, une seule valeur doit être attribuée à chaque
attribut de l’entité ou de la relation

CLIENT
*NoClient
À ne pas NomClient
faire Facture1
Facture2
...
Facturen

1:N
CLIENT FACTURE
1,n 1,1
*NoClient Reçoit *NoFacture
NomClient
OK Date

88

44
01/11/2022

RÈGLE 7

 Pour conserver l’historique d’une donnée d’une entité, on forme une nouvelle entité avec cette donnée et on
ajoute une période d’application
PERSONNE
*NoPersonne
À ne pas Nom
faire Adresse1
Adresse2
...
Adressen

1:N
PERSONNE ADRESSE
1,n 1,1
*NoPersonne Habite à *NoAdresse
Nom
OK DateDébut
DateFin
Adresse

89

EXERCICE

90

45
01/11/2022

NORMALISATION D’UNE BD

91

NORMALISATION, DÉFINITION:

 Définition: une base de données est dite normalisée si elle est au moins en troisième forme normale (3 FN)
 Pourquoi normaliser ?
 Pour réduire la redondance de données. →facilité de mise à jour
 Avoir une bonne structure des données
 Mettre en évidence les relations entre les données.
 Comment normaliser une base de données ?
On procède à la normalisation en appliquant les règles de normalisation. C’est-à-dire
 D’abord obtenir la première Forme Normale (1FN)
 Ensuite obtenir la deuxième Forme Normale (2FN)
 Et enfin obtenir la troisième Forme Normale (3FN)
 Il y a d’autres FN (FNBC pour la forme normal de Codd,4FN,5FN,).

92

46
01/11/2022

NORMALISATION, LA PREMIÈRE FN

 La 1FN est appelée la CLÉ.


 la relation possède une clé (donc tous les autres attributs de la relation sont en DF avec la clé).
 Exemple :
 Commande (n°commande, n°article, qte, date, nom_client)

93

NORMALISATION, LA DEUXIÈME FN

 Deuxième forme normale (2NF) : la relation est en 1NF et les DF entre les attributs et la clé sont élémentaires.
Exemple :
 Commande (n°commande, date, nom_client)

94

47
01/11/2022

NORMALISATION, LA TROISIÈME FN

 la relation est en 2NF et les DF entre les attributs et la clé sont directes.
Exemple :
 Client (n°client, nom_client)
 Commande (n°commande, date, #n°_client)

95

NORMALISATION, FNBC POUR LA FORME NORMAL DE CODD

 La relation en 3FN
 Pour les identifiants composés de plusieurs propriétés, ces dernières ne doivent pas être dépendantes d'une autre
propriété de l'entité.
 La forme normale de Boyce-Codd impose que toutes les parties gauches des DF sont des clés
 Contre exemple : (A,B) -> C et C->B en 3FN mais pas en FNBC
 Exemple:
 Etudiant(CNE, nom, prenom, ville, region)
 CNE-> ville
 Ville-> region
 Solution : Etudiant(CNE, nom, prenom) et Ville(id_ville, region)

96

48
01/11/2022

TD CONCEPTION D’UN MCD

97

MODÈLE RELATIONNEL DE DONNÉE MLD

98

49
01/11/2022

MLD

 Transformation du modèle conceptuel des données.


 C’est une présentation de la structure des données dans le niveau logique.
 La transformation d ’applique en respectant un ensemble de règles de passage du MCD vers MLD
 Le MLD peut être présenté sous forme graphique ou textuelle.

99

GÉNÉRATION D’UN MLD RELATIONNEL

 Transformation des entités

une entité ➔ une table

l’identifiant la clé primaire

les propriétés les attributs


CLIENT CLIENT

n°Client n°Client
nom nom
adresse adresse

table CLIENT(n°Client, nom, adresse)

100

50
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 1
FACTURE FACTURE
n°Facture n°Facture
date date
1, 1
CIF
1, n
CLIENT CLIENT
n°Client n°Client
nom nom
adresse adresse

101

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 1
FACTURE
clé externe
FACTURE
n°Facture n°Facture (ou étrangère)
date date
n°Client #
1, 1
CIF
1, n
CLIENT CLIENT
n°Client n°Client
nom nom
adresse adresse

102

51
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 1
clé externe
FACTURE
n°Facture (ou étrangère)
date
1, 1
table CLIENT(n°Client, nom adresse)
CIF
1, n
table FACTURE(n°Facture, date, n°Client #)
CLIENT
n°Client
nom
adresse

103

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 2
FACTURE AGENCE FACTURE
1, 1 0, n nomAg AGENCE
n°Facture n°Facture
CIF adresseAg date nomAg
date
adresseAg
1, 1
CIF
1, n
CLIENT CLIENT
n°Client n°Client
nom nom
adresse adresse

104

52
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 2
FACTURE AGENCE FACTURE
1, 1 0, n nomAg AGENCE
n°Facture n°Facture
CIF adresseAg date nomAg
date
nomAg # adresseAg
1, 1 n°Client #
CIF
1, n
CLIENT CLIENT
n°Client n°Client
nom nom
adresse adresse

105

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 2
FACTURE AGENCE
1, 1 0, n nomAg
n°Facture
CIF adresseAg
date
1, 1
CIF
table CLIENT(n°Client, nom adresse)
1, n
table AGENCE(nomAg, adresseAg)
CLIENT table FACTURE(n°Facture, date, nomAg #, n°Client #)
n°Client
nom
adresse

106

53
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 3 (identifiant composé)


ABSENCE EMPLOYE
n°Bordereau nom
1, 1 0, n
date prénom
CIF
durée adresse
motif

ABSENCE
EMPLOYE
n°Bordereau
date nom
durée prénom
motif adresse

107

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple 3 (identifiant composé)


ABSENCE EMPLOYE
n°Bordereau nom
1, 1 0, n
date prénom
CIF
durée adresse
motif

ABSENCE
EMPLOYE
n°Bordereau
date nom
durée prénom
motif adresse
nom #
prénom #

108

54
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des CIF simples (x,n)-(x,1)

 exemple
LECTEUR
LIVRE
n°Lecteur
réfLivre 0, 1 0, n nom
CIF
titre prénom
adresse

LIVRE LECTEUR
réfLivre n°Lecteur
titre nom
n°Lecteur # prénom
adresse

109

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations binaires (x,n)-(x,n)

 exemple 1 : porteuses de propriétés


ARTICLE
COMMANDE
réfArticle
n°Commande 1, n Comporter 0, n
libellé
date quantité
prixU

COMMANDE ARTICLE
n°Commande réfArticle
date COMPORTER libellé
n°Commande # prixU
réfArticle #
quantité

110

55
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations binaires (x,n)-(x,n)

 exemple 1 : porteuses de propriétés


ARTICLE
COMMANDE
1, n Comporter réfArticle
0, n
clé primaire n°Commande
date quantité
libellé
prixU
composée de 2
clés étrangères
table COMMANDE(n°Commande, date)
table ARTICLE(réfArticle, libellé, prixU)
table COMPORTER(n°Commande #, réfArticle #, quantité)

111

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations binaires (x,n)-(x,n)

 exemple 2 : non porteuses de propriétés


MEMBRE
COMPETITION
0, n Inscrire n°Licence
n°Compétition 1, n
nom
date
adresse

COMPETITION MEMBRE
n°Compétition n°Licence
date nom
INSCRIRE
adresse
n°Compétition #
n°Licence #

112

56
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations binaires (x,n)-(x,n)

 exemple 2 : non porteuses de propriétés


MEMBRE
COMPETITION
0, n Inscrire n°Licence
n°Compétition 1, n
nom
date
adresse

table COMPETITION(n°Compétition, date)


table MEMBRE(n°Licence, nom, adresse)
table INSCRIRE(n°Compétition #, n°Licence #)

113

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations ternaires (et plus)

 exemple 1 :

PROFESSEUR MATIERE
codeProf 0, n 0, n codeMat
nom libellé
Enseigner
volumeH

0, n
GROUPE
n°Groupe
effectif

114

57
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations ternaires (et plus)

 exemple 1 : non porteuses de CIF

PROFESSEUR MATIERE
codeProf codeMat
ENSEIGNER
nom libellé
n°Groupe #
codeMat #
codeProf #
clé primaire volumeH
composée de 3
clés étrangères GROUPE
n°Groupe
effectif

115

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations ternaires (et plus)

 exemple 1 : non porteuses de CIF

table PROFESSEUR(codeProf, nom)


table MATIERE(codeMat, libellé)
table GROUPE(n°Groupe, effectif)
table ENSEIGNER(n°Groupe #, codeMat #, codeProf #,
volumeH)

116

58
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations ternaires (et plus)

 exemple 2 : porteuses d’une CIF

PROFESSEUR MATIERE
codeProf 0, n 0, n codeMat
nom libellé
Enseigner
volumeH

n°Groupe, codeMat 0, n
➔ codeProf GROUPE
n°Groupe
effectif

117

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations ternaires (et plus)

 exemple 2 : porteuses d’une CIF

PROFESSEUR MATIERE
codeProf codeMat
ENSEIGNER
nom libellé
n°Groupe #
codeMat #
volumeH
clé primaire composée codeProf #
de 2 clés étrangères
(sources de la CIF)
GROUPE
n°Groupe
effectif

118

59
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Traduction des relations ternaires (et plus)

 exemple 2 : porteuses d’une CIF

table PROFESSEUR(codeProf, nom)


table MATIERE(codeMat, libellé)
table GROUPE(n°Groupe, effectif)
table ENSEIGNER(n°Groupe #, codeMat #, codeProf #,
volumeH)

119

GÉNÉRATION D’UN MLD RELATIONNEL

 Quelques situations particulières...

 relation binaire réflexive


0, n (mère)
SOCIETE
n°RegistreCom Détenir
raisonSociale %Capital
capital
0, n (filiale)

SOCIETE DETENIR
n°RegistreCom n°RegistreCom(mère) #
raisonSociale n°RegistreCom(filiale) #
capital %Capital

120

60
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL : CAS


PARTICULIER

Utilisateur Compte
 Cas association (1,1)-(1,1) n°utilisateur login
1, 1 1, 1
nom Posseder PWD
adresse Date_création

Utilisateur Compte Utilisateur Compte


n°utilisateur login n°utilisateur login
nom
1, 1 Possede 1, 1 PWD nom 1, 1
Possed
1, 1
PWD
adresse r Date_création adresse er Date_création
#login #n°utilisateur

121

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet
date ADHERENT
LIVRE
0, 1 codeLivre nomAdh
0, n 1, n 0, n nom
CIF titre
adresse
1, n Emprunter
1, n
rendu EDITEUR
AUTEUR
n°Editeur
n°Auteur Compter
nomEditeur
nomAuteur nbExemp
0, n
1, n
COLLECTION
codeCollection 1, 1
1, n nomCollection CIF

122

61
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Un exemple complet DATE


date ADHERENT
LIVRE
0, 1 codeLivre nomAdh
0, n 1, n 0, n nom
CIF titre
adresse
1, n Emprunter
1, n
rendu EDITEUR
AUTEUR
n°Editeur
n°Auteur Compter
nomEditeur
nomAuteur nbExemp
0, n
1, n
COLLECTION
codeCollection 1, 1
1, n nomCollection CIF

123

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet date
LIVRE
codeLivre ADHERENT
titre nomAdh
nom
adresse

AUTEUR
n°Auteur EDITEUR
nomAuteur n°Editeur
nomEditeur
COLLECTION
codeCollection
nomCollection

124

62
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet
date ADHERENT
LIVRE
0, 1 codeLivre nomAdh
0, n 1, n 0, n nom
CIF titre
adresse
1, n Emprunter
1, n
rendu EDITEUR
AUTEUR
n°Editeur
n°Auteur Compter
nomEditeur
nomAuteur nbExemp
0, n
1, n
COLLECTION
codeCollection 1, 1
1, n nomCollection CIF

125

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet date
LIVRE
codeLivre ADHERENT
titre nomAdh
n°Auteur # nom
adresse

AUTEUR
n°Auteur EDITEUR
nomAuteur n°Editeur
nomEditeur
COLLECTION
codeCollection
nomCollection
n°Editeur #

126

63
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet
date ADHERENT
LIVRE
0, 1 codeLivre nomAdh
0, n 1, n 0, n nom
CIF titre
adresse
1, n Emprunter
1, n
rendu EDITEUR
AUTEUR
n°Editeur
n°Auteur Compter
nomEditeur
nomAuteur nbExemp
0, n
1, n
COLLECTION
codeCollection 1, 1
1, n nomCollection CIF

127

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet date
LIVRE
codeLivre ADHERENT
titre nomAdh
n°Auteur # nom
adresse

AUTEUR
n°Auteur EDITEUR
nomAuteur COMPTER n°Editeur
codeLivre # nomEditeur
codeCollection # COLLECTION
nbExemp
codeCollection
nomCollection
n°Editeur #

128

64
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

 Un exemple complet DATE


date ADHERENT
LIVRE
0, 1 codeLivre nomAdh
0, n 1, n 0, n nom
CIF titre
adresse
1, n Emprunter
1, n
rendu EDITEUR
AUTEUR
n°Editeur
n°Auteur Compter
nomEditeur
nomAuteur nbExemp
0, n
1, n
COLLECTION
codeCollection 1, 1
1, n nomCollection CIF

129

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet date
LIVRE
codeLivre ADHERENT
titre nomAdh
EMPRUNTER
n°Auteur # nom
codeLivre # adresse
nomAdh #
AUTEUR date #
n°Auteur rendu EDITEUR
nomAuteur COMPTER codeCollection # n°Editeur
codeLivre # nomEditeur
codeCollection # COLLECTION
nbExemp
codeCollection
nomCollection
n°Editeur #

130

65
01/11/2022

GÉNÉRATION D’UN MLD RELATIONNEL

DATE
 Un exemple complet date
LIVRE
codeLivre ADHERENT
titre nomAdh
EMPRUNTER
n°Auteur # nom
codeLivre # adresse
nomAdh #
AUTEUR date #
n°Auteur rendu EDITEUR
nomAuteur COMPTER codeCollection # n°Editeur
codeLivre # nomEditeur
codeCollection # COLLECTION
nbExemp
codeCollection
nomCollection
n°Editeur

131

GÉNÉRATION D’UN MLD RELATIONNEL

 Un exemple complet
LIVRE
codeLivre ADHERENT
titre nomAdh
EMPRUNTER
n°Auteur # nom
codeLivre # adresse
nomAdh #
AUTEUR date
n°Auteur rendu EDITEUR
nomAuteur COMPTER codeCollection # n°Editeur
codeLivre # nomEditeur
codeCollection # COLLECTION
nbExemp
codeCollection
nomCollection
n°Editeur #

132

66
01/11/2022

RÉSUMÉ RÈGLES

Règle
Règle 1 : Transformation des entités Une entité devient une table
Règle 2 Transformation des associations Création d’une clé étrangère dans la
(x,1)-(x,n) table de la cardinalité (x,1)
Règle 3 Transformation des associations Création d’une table avec les clés
(x,n)-(x,n) étrangères
Cas particulier 1 Transformation des associations Création d’une table avec les clés
(0,1)-(0,1) étrangères
Cas particulier 2 Transformation des associations Création d’une clé étrangère dans
(1,1)-(1,1) une table
Cas particulier 3 Transformation des associations Création d’une clé étrangère dans la
(0,1)-(1,1) table de la cardinalité (1,1)
Cas particulier 4 Transformation des associations Création d’une table avec les clés
ternaires étrangères

133

TD

134

67
01/11/2022

MODÈLE ORGANISATIONNEL DE TRAITEMENT

135

MODÈLE ORGANISATIONNEL DES TRAITEMENTS MOT

 Le modèle organisationnel des traitements est une réorganisation du


MCT qui prends en compte :
 La représentation des traitements entre l'homme et la machine;
 La période de déroulement de chaque tâche;
 Répartition de la responsabilité de ces traitements (tâches) au niveau des
microstructures : services, départements, divisions, poste de travail, bureaux, …

136

68
01/11/2022

 MOT= Période( Quand) + Acteur(Qui)+ Type( Comment)

137

➢Acteurs :
➢ Qui exécute ? Acteurs (MCC)

➢Période :
➢ Quand exécute-t-on l’opération ?
➢ Agencement temporel

➢Type d’opération :
➢ Manuelle
➢ Automatique
➢ Semi-automatique

138

69
01/11/2022

MOT EXEMPLE

Période Acteur1 Acteur n Type


Date j …. Manuelle /auto/ semi-auto

139

CRÉATION DU MOT

 Importer la liste des acteurs du MCC


 Importer le MCT

140

70
01/11/2022

EXERCICE

141

EXTENSION MERISE2

142

71
01/11/2022

 Pour s’adapter aux nouvelles technologies logicielles, notamment la percée des langages
orientés objets et du
 langage UML, la méthode Merise a dû s’enrichir et évoluer.

143

HÉRITAGE (GÉNÉRALISATION –SPÉCIALISATION)

 Une maison de santé reçoit des patients, deux types de personnel sont salariés : les
médecins qui réalisent
 les consultations et les infirmiers administrent les soins.
 Les médecins ont une spécialisation (médecin du sport, gérontologue…) et un tarif à l’acte.
 Les infirmiers ont des primes d’astreintes.
 Les patients sont juste référencés par leur numéro de sécurité sociale.

144

72
01/11/2022

HÉRITAGE (GÉNÉRALISATION –SPÉCIALISATION)


 Exemple 1 MCD:

attributs dupliqués
entre les deux
entités médecins et
infirmiers (le nom, le
prénom, l’adresse…).

145

HÉRITAGE (GÉNÉRALISATION –SPÉCIALISATION)


 Exemple 2 :

certaines rubriques
seront vides :
• Spécialisation et tarif
pour les infirmiers.
• Prime pour les
médecins.

146

73
01/11/2022

HÉRITAGE (GÉNÉRALISATION –SPÉCIALISATION)

 Solution : Pour résoudre ces problèmes, nous allons utiliser


l’héritage.
 Le principe global de l’héritage est de factoriser les propriétés
identiques dans une entité commune.
 Cette entité commune est aussi nommée entité générique ou
surtype d’entité.
 Les propriétés spécifiques seront contenues dans une entité
spécialisée nommée aussi soustype.

147

HÉRITAGE (GÉNÉRALISATION –SPÉCIALISATION)

 Chaque soustype hérite des propriétés et des associations du


surtype.
 Généralisation c’est La relation qui fait correspondre un soustype
à son surtype
 Spécialisation c’est La relation qui fait correspondre un surtype à
son soustype

148

74
01/11/2022

HÉRITAGE (GÉNÉRALISATION –SPÉCIALISATION) EXEMPLE


• Tous les attributs communs entre Médecins et
Infirmiers sont les propriétés de l’entité générique
Employés.
• Médecins et Infirmiers sont des entités
spécialisées d’Employés. Chacune aura comme
propriétés ses propres attributs.
• L’identifiant de Médecins et d’Infirmiers est celui
d’Employés : les entités spécialisées héritant des
propriétés de l’entité générique, on ne fait pas
apparaître l’identifiant des entités spécialisées.

149

EXEMPLE 2

 Une multinationale gère ses salariés ainsi que des salariés de l’entreprise SSII.
 Réaliser le modèle conceptuel qui en découle.

150

75
01/11/2022

EXEMPLE 2

151

LIEN IDENTIFIANT

 Un dossier concerne un client et est constitué de fiches d'intervention. Les fiches sont numérotés à partir de 1
par dossier (1ère fiche du dossier, 2ème fiche du dossier...).
 Problème :"Les dossiers comportent des fiches dont la numérotation redémarre à 1 pour chaque dossier.«

152

76
01/11/2022

LIENS IDENTIFIANTS

 Solution Merise2: Le numéro de la fiche doit être composé de l'identifiant du


dossier + un numéro séquentiel.
 Ils permettent d'éliminer les entités temporelles et de numérotation. Ils ont été créés
avec la version Merise/2.

153

LIEN IDENTIFIANT

 DOSSIER (n°dossier, date_ouverture)


 n°dossier: clé primaire

 FICHE (n°dossier, n°fiche, description)


 n°dossier, n°fiche: clé primaire
 n°dossier: clé étrangère en référence à n°dossierde DOSSIER

154

77
01/11/2022

AGRÉGATION

 Les voitures ont un prix différent selon leur couleur. Il faut gérer les commandes avec
les quantités
 Solution :
 La ligne de commande concerne une commande d'un côté, et le couple
meuble/couleur de l'autre.

155

AGRÉGATION (DÉFINITION)

 L’agrégation consiste à percevoir comme un objet unique


l’association de plusieurs autres objets.

156

78
01/11/2022

AGRÉGATION

Voiture Couleur
Matricule 0, n Relationnel :
Tarif 0, n Id couleur
Modele nom ligneCmd(id_commande,
PU
nom matricule, id_couleur, qté)
0, n L’entité commande est liée
directement au tarif et non
pas au Voiture et Couleur.
On peut lier les 3
Commande
entités par une seule
relation ligneCmd mais c
ligneCmd 0, n Id commande
pas pertinent vue que Qté date
les voitures ne sont pas
présentées dans toutes
les couleurs.

157

AGRÉGATION (AUTRE PRÉSENTATION)

Voiture Couleur
Matricule 0, n
Tarif 0, n Id couleur
Modele nom
PU
nom

0, n

Commande
ligneCmd 0, n Id commande
Qté date

158

79
01/11/2022

AGRÉGATION (EXEMPLE 2)

 Dans une compagnie d’aviation, les pilotes font voler des avions
dans différents pays. Mais un avion pour un pays donné n’est piloté
que par un seul pilote. Cette règle de gestion est absurde, et ne
peut être exprimée qu’à travers l’agrégation.

159

AGRÉGATION (EXEMPLE 2)

Attention : ce modèle
ne prends pas en
considération la règle de
gestion; indispensable
d’utiliser l’agrégation
160

80
01/11/2022

AGRÉGATION ( SOLUTION EXEMPLE 2)

161

CONTRAINTES

162

81
01/11/2022

QU'EST-CE QU'UNE CONTRAINTE ?

 Elle apporte des informations complémentaires sur les dépendances


entre des propriétés ou des objets.
 L’entité concernée par la contrainte est appelée le pivot de la
contrainte.
 Il existe 2 types de contraintes :
 contraintes sur sous-types
 contraintes sur associations

163

EFFETS SUR BD?

 Structure de la base de données : aucun changement.


 C'est la programmation qui prend en compte les contraintes :
 soit directement dans l'application (mauvaise idée la contrainte permet de garder
la BD stable ce qui n’est pas garantis au cas ou la BD est utilisée par plusieurs
programmes)
 soit directement dans la base de données : sous forme de triggers et procédures
stockées.

164

82
01/11/2022

CONTRAINTES ENSEMBLISTES

 L’ensemble des contraintes est formé à partir de deux contraintes


ensemblistes de base :
 La contrainte de couverture.
 La contrainte de disjonction.

165

COUVERTURE
 Chaque tuple se retrouve dans au moins un objet.
 Toute occurrence de l’entité générique appartient au moins à l’un des sous types.

166

83
01/11/2022

DISJONCTION

 Un tuple ne peut pas appartenir à plus d'un objet.


 Toute occurrence de l’entité générique doit appartenir à un seul sous type : les sous
types sont mutuellement exclusifs.

167

CONTRAINTES SUR HÉRITAGE (SOUS TYPE)

 La totalité (T): couverture + non disjonction.


 La partition (XT) ou (+) : couverture + disjonction.
 L’exclusion (X) : non couverture + disjonction.
 Aucune contrainte : non couverture + non disjonction.
Couverture Non couverture
Disjonction Partition XT ou + Exclusion X
Non Disjonction Totalité T Aucune contrainte

168

84
01/11/2022

CONTRAINTES SUR ASSOCIATION

 Les contraintes sur héritage.


 Contraintes d’égalité ou simultanéité
 Contraintes d’inclusion

169

PARTITION (SUR HÉRITAGE)

 Couverture + disjonction
 Exemple : un employé est soit un employé interne soit externe
mais pas les deux à la fois

170

85
01/11/2022

PARTITION (SUR ASSOCIATION)

 Une personne participe nécessairement et exclusivement à l’une des deux


associations (couverture et disjonction)

171

TOTALITÉ (SUR HÉRITAGE)

 Couverture + non disjonction


 Exemple : un employé peut être à la fois cadre et technicien
(non disjonction ). Il est au moins l’un ou l’autre
(couverture)

172

86
01/11/2022

TOTALITÉ (SUR ASSOCIATION)


 D’après la contrainte d’intégrité nous voyons qu’un apprenti
participe à au moins une des deux associations (couverture et non
disjonction). Soit il travaille dans une entreprise, soit il apprend
dans un centre de formation, soit il étudie et apprend.

173

EXCLUSION (SUR HÉRITAGE)

 non couverture +disjonction


 Exemple : une voiture est soit une berline soit une coupée
mais pas les deux à la fois. Il peut existes d’autres types de
voiture.

174

87
01/11/2022

EXCLUSION (SUR ASSOCIATION)


 Un personnel ne peut pas être à la fois formateur et stagiaire d'un même stage.
 Pivot =clé concernée par la contrainte
 Il y a exclusion entre Formateur et Stagiaire sur le couple (idstage, idperso)
 Il y a <contrainte> entre <les associations> sur <le pivot>.

Le couple (idpersonnel, idstage)


ne peut pas se retrouver à la fois
dans Formateur et dans
Stagiaire.

175

EXCLUSION (SUR ASSOCIATION)

Attention au sens de pivot :


 Un stage a soit des stagiaires, soit des formateurs, pas les 2 !

176

88
01/11/2022

EXCLUSION (SUR ASSOCIATION)

 Un personnel est soit toujours formateur, soit toujours stagiaire !

177

AUCUNE CONTRAINTE (SUR HÉRITAGE)

 Exemple: un employé peut être un cadre ou un technicien (non


disjonction). Il peut être aussi un administratif (non couverture).

178

89
01/11/2022

ÉGALITÉ (SEULEMENT SUR ASSOCIATION)


 Toute occurrence qui participe à l’association A, participe également
à l’association B ; se note = ou S ;
 Exemple : Une personne qui pratique un sport fait partie d'une
équipe, et vice versa.

179

INCLUSION (SUR ASSOCIATION SEULEMENT)

 Toutes les occurrences d’une association A sont également


occurrences d’une association B ; se note I.
 Exemple :Les inscrits à un stage sont sélectionnés parmi les
demandeurs de ce même stage.

180

90
01/11/2022

Bases de données

181

HISTORIQUE DES BASES DE DONNÉES

182

91
01/11/2022

HISTORIQUE DES BASES DE DONNÉES

Structure et type de données

183

HISTORIQUE DES BASES DE DONNÉES

Exemples de SGBD

184

92
01/11/2022

DES FICHIERS AUX BASE DE DONNÉES

Séparation des données et des programmes


FICHIER Base de données
Les données des fichiers sont décrites Les données de la BD sont décrites hors
dans les programmes des programmes dans la base elle-
même

La multiplication des fichiers entraînait la redondance des données, ce qui rendait difficile les mises à jour.

185

DES FICHIERS AUX BASE DE DONNÉES

 Travailler directement sur un fichier présente plusieurs inconvénients :


 Manipulation de données lourde et compliquée. Il faut être expert en
programmation
 Le programmeur doit connaître la localisation physique des fichiers, la structure
physique des enregistrements, le mode d’accès à ces fichiers
 Toute modification de la structure des enregistrements (ajout d’un champ par
exemple) entraîne la réécriture de tous les programmes qui manipulent ces
fichiers

186

93
01/11/2022

DES FICHIERS AUX BASE DE DONNÉES

 Un SGBD est un intermédiaire entre les utilisateurs et les fichiers physiques


 Un SGBD :
 facilite la gestion de données, avec une représentation intuitive simple sous forme de
tables.
 la manipulation de données. On peut insérer, modifier les données et les
structures sans modifier les programmes qui manipulent la base de données

187

DÉFINITION D’UNE BASE DE DONNÉES

 Une base de données est un ensemble structuré de données (1) enregistrées sur des
supports accessibles par l’ordinateur (2) pour satisfaire simultanément plusieurs
utilisateurs (3) de manière sélective (4) en un temps opportun (5).
 (1) : Organisation et description de données
 (2) : Stockage sur disque
 (3) : Partage des données
 (4) : Confidentialité
 (5) : Performance
Une BD est faite pour enregistrer des faits, des opérations au sein d'un organisme
(administration, banque, université, hôpital, ...)

188

94
01/11/2022

DÉFINITION D’UNE BASE DE DONNÉES

Le concept de base de données comprend essentiellement deux aspects :


 Un ensemble structuré d'information
 Un composant logiciel appelé système de gestion de bases de données et qui
permet l’utilisation de ces données simultanément par plusieurs utilisateurs et
programmes

189

PRINCIPES FONDAMENTAUX
BD et SGBD doivent respecter au mieux les principes suivants :
 Fidélité: La BD doit donner une image fidèle de la réalité qu'elle modélise.
 Unicité: Il ne doit pas y avoir redondance d'information dans la BD, chaque donnée doit être située
physiquement à un seul endroit.
 Indépendance: Le SGBD doit être indépendant du modèle de stockage pour favoriser les évolutions
et améliorations.
 Concurrence: Le SGBD doit pouvoir gérer plusieurs accès simultanés à une même donnée.
 Performance: Les réactions du SGBD doivent se faire dans un temps raisonnable, des améliorations
techniques peuvent être mises en œuvre pour cela.
 Confidentialité: Toutes les données ne doivent pas forcément être accessibles à tous les utilisateurs
du SGBD.
 Intégrité: La BD et le SGBD doivent offrir des garanties de fiabilité et de cohérence.
 Robustesse :Le SGBD doit être tolérant aux problèmes matériels, logiciels ou humains.
190

95
01/11/2022

Modèles de représentation de données


 Les modèles les plus connus

Modèle hiérarchique Modèle réseau Modèle objet

191

MODÈLE RELATIONNEL

Organisation des données sous forme de tables et exploitation à l’aide d’un


langage déclaratif (ex: Oracle, mySQL,Access).
 SGBD relationnels (notation : SGBDR) :
 modèle relationnel
 modèle mathématique de base : présence d'une algèbre
 structure de tableaux
 langage de requêtes indépendant du système de stockage
 Exemples : Oracle, Focus, Ingres, Sybase, DB2, MySQL, Postgres

192

96
01/11/2022

STRUCTURE D’UNE BD RELATIONNELLE

 Une BD relationnelle est composée d’un ensemble de tables (ou


relations)
 Une table est composée de
 Lignes qu’on appelle enregistrements (ou tuples)
 Colonnes représentant chacune un champ (ou un attribut)
 Chaque table a un nom
 Chaque champ a un nom et un type
 Texte, numérique, date, …
193

193

EXEMPLE DE TABLE
Nom de la table 3 champs

Commande N°Commande DateCommande Montant


27 13/2/2007 120

65 12/1/2008 34

2 10/06/2006 27
34 14/12/2007 1500

N°Commande est du type numérique entier


4 enregistrements
Montant est du type numérique réel
DateCommande est du type date 194

194

97
01/11/2022

SGBD
 Un système de gestion de bases de données est un ensemble d'outils logiciels
qui permet la manipulation de BD.

195

DÉFINITION ET RÔLE D’UN SGBD

 Un ensemble de logiciels systèmes permettant:


 Décrire les données qui seront stockées
 Manipuler ces données (ajouter, modifier, supprimer des informations)

 Consulter les données et traiter les informations obtenues (sélectionner, trier,


calculer,...)

 Définir des contraintes d'intégrité sur les données (contraintes de domaines,


d'existence,... )
 Définir des protections d'accès (mots de passe, autorisations,...)
 Résoudre les problèmes d'accès multiples aux données (blocages, interblocages)
 Prévoir des procédures de reprise en cas d'incident (sauvegardes, journaux,...)
196

98
01/11/2022

ARCHITECTURE DE BASE

▪ Architecture de base
▪ se compose de trois couches :
▪ SGBD Externe
▪ SGBD Interne
▪ Gestionnaire de fichier

197

SGBD, TROIS COUCHES

 Système de gestion de fichiers :


 gère le stockage de l'information
(dépendant du matériel utilisé)

 SGBD interne :
 organise le placement et l'assemblage de données, gère les liens et l'accès rapide.
 il gère l'ordonnancement des informations

 SGBD externe :
▪ il représente l'interface avec l'utilisateur
▪ présentation et manipulation des données (langages de requêtes, outils de présentation)

198

99
01/11/2022

OBJECTIFS DES SGBD


I Indépendance
Physique
II- Indépendance
X - Standards Logique
IX - Gestion de la
confidentialité III – Langage de
manipulation
VIII Concurrence BD IV - Gestion
d’accès des vues

VII - Gestion V-Optimisation


des pannes des questions
VI - Gestion de
la cohérence

199

INDÉPENDANCE PHYSIQUE

 Indépendance des programmes d'applications vis à vis du modèle


physique :

 Possibilité de modifier les structures de stockage (fichiers, index, chemins


d'accès, …) sans modifier les programmes.

200

100
01/11/2022

INDÉPENDANCE LOGIQUE

 Un même ensemble de données peut être vu différemment par des utilisateurs


différents. Toutes ces visions personnelles des données doivent être intégrées dans
une vision globale.

201

ACCÈS AUX DONNÉES

 L’accès aux données se fait par l’intermédiaire d’un Langage de Manipulation de


Données (LMD). Il est crucial que ce langage permette d’obtenir des réponses aux
requêtes en un temps « raisonnable ». Le LMD doit donc être optimisé, minimiser le
nombre d’accès disques, et tout cela de façon totalement transparente pour
l’utilisateur.

202

101
01/11/2022

ADMINISTRATION CENTRALISÉE DES DONNÉES (INTÉGRATION)

 Toutes les données doivent être centralisées dans un réservoir unique commun à
toutes les applications. En effet, des visions différentes des données (entre autres) se
résolvent plus facilement si les données sont administrées de façon centralisée.

203

NON REDONDANCE DES DONNÉES

 Afin d’éviter les problèmes lors des mises à jour, chaque donnée ne doit être
présente qu’une seule fois dans la base.

204

102
01/11/2022

COHÉRENCE DES DONNÉES

 Les données sont soumises à un certain nombre de contraintes d’intégrité qui


définissent un état cohérent de la base. Elles doivent pouvoir être exprimées
simplement et vérifiées automatiquement à chaque insertion, modification ou
suppression des données. Les contraintes d’intégrité sont décrites dans le Langage de
Description de Données (LDD).

205

PARTAGE DES DONNÉES

 Il s’agit de permettre à plusieurs utilisateurs d’accéder aux mêmes données au même


moment de manière transparente. Si ce problème est simple à résoudre quand il
s’agit uniquement d’interrogations, cela ne l’est plus quand il s’agit de modifications
dans un contexte multi-utilisateurs car il faut : permettre à deux (ou plus) utilisateurs
de modifier la même donnée « en même temps » et assurer un résultat
d’interrogation cohérent pour un utilisateur consultant une table pendant qu’un
autre la modifie.

206

103
01/11/2022

SÉCURITÉ DES DONNÉES

 Les données doivent pouvoir être protégées contre les accès non autorisés. Pour
cela, il faut pouvoir associer à chaque utilisateur des droits d’accès aux données.

207

RÉSISTANCE AUX PANNES

 Que se passe-t-il si une panne survient au milieu d’une modification, si certains


fichiers contenant les données deviennent illisibles ? Il faut pouvoir récupérer une
base dans un état « sain ». Ainsi, après une panne intervenant au milieu d’une
modification deux solutions sont possibles : soit récupérer les données dans l’état
dans lequel elles étaient avant la modification, soit terminer l’opération interrompue.

208

104
01/11/2022

LES FONCTIONS DES SGBD


 DEFINITION DES DONNEES
⇒ Langage de définition des données (DDL)
(conforme à un modèle de données)
 MANIPULATION DES DONNEES
Interrogation
Mise à jour
insertion, suppression, modification
⇒ Langage de manipulation des données (DML)
(langage de requête déclaratif)
 CONTRÔLE DES DONNEES
Contraintes d'intégrité
Contrôle des droits d'accès
Gestion de transactions
⇒ Langage de contrôle des données (DCL)

209

LES INTERVENANTS DANS UN SGBD


 Opérateurs/Utilisateurs
 Utilisent les applications conçues par les concepteurs
 Entrent, modifient, suppriment et consultent les données
 Concepteurs
 De bases de données : conçoivent les modèles de données et créent la structure
de la base de données
 D’applications : développent des programmes qui gèrent les bases de données
 Administrateurs (DBA)
 Gèrent le système, les utilisateurs (opérateurs et concepteurs), les objets et les
privilèges

210

105

Vous aimerez peut-être aussi