Vous êtes sur la page 1sur 118

 LES BASES DE DONNEES ET LES SGBD

 RAPPEL MODELE ENTITE ASSOCIATION


 RAPPEL MODELE RELATIONNEL
 RAPPEL LANGAGE SQL
 DU MODELE ENTITE AU MODELE LOGIQUE
 BASES DE DONNEES ACTIVES (PROCEDURE
STOCKEES, TRIGGERS)
 ADMINISTRATION ET SECURITE DE LA BD
 PROJET: CONCEPTION D’UNE BD POUR LA
GESTION DES AGENCE DE VOYAGE
Proposé par Berlin DJIONANG (Consultant en sécurité) 2
 COURS MAGISTRAL (10)
 TRAVAUX DIRIGES (8)
 TRAVAUX PRATIQUES (7)
 EXPOSES (0)
 PROJET (1 )
 CONTRÔLE CONTINU (2 cc)
 EXAMEN (1 ou 2)

Proposé par Berlin DJIONANG (Consultant en sécurité) 3


 Respecter les heures de cours;
 Respecter vos camarades;
 Vos téléphones doivent êtres éteints;
 On ne mange pas en classe;
 Partager vos incompréhensions avec les
autres et l’enseignant;
 Vos questions…..?

Proposé par Berlin DJIONANG (Consultant en sécurité) 4


 JP MATHERON, COMPRENDRE MERISE
OUTILS CONCEPTUEL ET ORGANISATIONNELS
EYROLLES 1996
 JP MATHERON, EXERCICES ET CAS POUR
COMPRENDRE MERISE, EYROLLES 1996
 HF. KORTH, A SILBERSCHATZ, SYSTEME DE
GESTION DE BASE DE DONNES, MC GRAND,
HILL, 1988
 G . GARDARIN, BASES DE DONNEES, LES
SYSTEMES ET LEUR LANGAGE, EYROLLES 1986
 Cours base de données: Odile Papini

Proposé par Berlin DJIONANG (Consultant en sécurité) 5


 ENJEUX
 DEFINITIONS
 CONCEPT DE BASE
 ARCHITECTURE D’UN SGBD:
L’architecture ANSI/SPARC
 MODELISATIONS D’UNE BD
 SURVOL DES DIFFÉRENTS MODÈLES DE
DONNÉES
 BREF HISTORIQUE, PRINCIPAUX SGBD

Proposé par Berlin DJIONANG (Consultant en sécurité) 7


Diversité
Augmentation
des produits
Augmentation de la qualité
de la concurrence
Diminution des
coûts de
fabrication.
Augmentation
de la réactivité
Ouverture des
marchés

Quels outils donner au décideur pour comprendre,


dimensionner, piloter, et gérer ces systèmes

Proposé par Berlin DJIONANG (Consultant en sécurité) 8


 Un système est un ensemble d’éléments
matériels ou immatériels (hommes,
machines, méthodes, recettes, règles,
etc.) unis par des relations qui
transforme, par un processus, des
éléments (les entrées) en d’autres
éléments (les sorties).
 Processus : séquence de phénomènes dynamiques (mouvements,
réactions chimiques, activités cellulaires, opérations techniques,
actions ou comportements, interactions humaines) menant à
des résultats déterminables. En analyse des systèmes : tout
changement dans le temps de matière, d'énergie ou d'information
qui se produit dans le système, traitant ces variables d'entrée et les
menant aux variables de sortie.

Proposé par Berlin DJIONANG (Consultant en sécurité) 9


 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

Proposé par Berlin DJIONANG (Consultant en sécurité) 10


 Le système correspondant à l’activité de
l’entreprise (transformation de flux) est
appelé système opérant (SO).
 L’entreprise a aussi besoin d’un système
de prise de décision lui permettant de
réaliser les objectifs fixés. Ce système est
appelé système de pilotage (SP).

Proposé par Berlin DJIONANG (Consultant en sécurité) 11


Système de Pilotage
Informations Décision sur le SO
sur l’état du SO

Flux entrant Flux sortant


Système Opérant

Proposé par Berlin DJIONANG (Consultant en sécurité) 12


 Avec l’augmentation en quantité et en
complexité des informations échangées
entre ces deux systèmes, on a besoin
d’avoir un autre système qui stocke et
traite de façon plus efficace ces
informations. Ce système est appelé
système d’information (SI).

Proposé par Berlin DJIONANG (Consultant en sécurité) 13


 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
14
Proposé par Berlin DJIONANG (Consultant en sécurité) 14
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,
› évolution chronologique et causale des
opérations provoquées par des évènements.
Proposé par Berlin DJIONANG (Consultant en sécurité) 15
 Le SI est composé d’éléments divers
(employés, ordinateurs, règles et
méthodes, etc.) chargés de stocker et
de traiter les informations relatives au
système opérant (SO) afin de les mettre
à la disposition du système de pilotage
(SP).

Proposé par Berlin DJIONANG (Consultant en sécurité) 16


 base de données (BD) : Une base de données est un ensemble
d'informations sur un sujet qui est :
› exhaustif,
› non redondant,
› structuré,
› persistant.
 système de gestion de base de données (SGBD) : Un système
de gestion de base de données est un logiciel qui permet de :
› décrire,
› modifier,
› interroger,
› administrer,
 les données d'une base de données.

 Un fichier est un ensemble de données qui peut être manipulé


par plusieurs utilisateurs ayant une vue unique des données
(format du fichier).

Proposé par Berlin DJIONANG (Consultant en sécurité) 17


 Donnée : Enregistrement dans un code convenu
d’une observation, d’un objet ou d’un phénomène
(donnée factuelle), d’une image, d’un son, d’un
texte. C’est un fait, une notion, une instruction
représenté sous forme conventionnel, convenant à
une communication, une interprétation ou un
traitement soit par l’homme soit par les moyens
informatiques.
 L’information: C’est tout le signifiant que l’on attache
et que l’on peut déduire d’un ensemble de donnée,
de certaines associations entre données.
 L’information est à la fois une matière première
et un matériau stratégique.

Proposé par Berlin DJIONANG (Consultant en sécurité) 18


 Les données sont des faits bruits qui n’ont
pas été disposé et organisé de façon
structuré.
 L’information est la présentation utile des
données.
 L’accès à l’information au moment
opportun peut permettre a ces
membres de s’adapter aux
changements
Proposé par Berlin DJIONANG (Consultant en sécurité) 19
Proposé par Berlin DJIONANG (Consultant en sécurité) 20
 Le rapport ANSI-SPARC de 1976 considérait qu’une base de
données doit satisfaire à 5 critères
 C1 ) La bonne représentation du monde réel
› Image fidele de la réalité
› Donnée fiables et à jour
 C2) Non redondance de l’information : une donnée doit être
situé physiquement à une seule place.
 C3) Indépendance des programmes d’application par rapport
aux données : la base est l’image du réel. Les programmes sont
construits après la structure.
 C4) Sécurité et confidentialité de donnée
› Sécurité physique (sauvegarde)
› Accès aux données autorisé uniquement aux personnes habilités.
 C5) Performance des applications et des requêtes
› Possibilité de réponse rapide (la capacité de répondre aux requêtes)
› Organisation spécifique pour améliorer le temps de traitement.

Proposé par Berlin DJIONANG (Consultant en sécurité) 21


 Avant l’apparition des BD, chaque service disposait de ses
fichiers personnalisés. Les dangers de cet état de chose
étaient les suivants :
› Données redondantes : une même donnée pouvait apparaitre
dans plusieurs fichiers éventuellement code sous forme
différentes. (C2)
› Une mise à jour d’une de ces données par un service entraine
des incohérences entre fichiers contenant des données (C1 et
C2)
› Une mise œuvre d’une nouvelle application était la bête noire
des informaticiens. Un traitement pouvait nécessiter d’utiliser les
fichiers de services différents. Pb : de format de fichier,
incohérences de données etc (C3 et C5)
› La base de données devenant le recevoir commun des
données, il y a nécessité de gérer l’accès aux données. Priorité :
droit d’accès en lecture, en écriture, modification etc.

Proposé par Berlin DJIONANG (Consultant en sécurité) 22


 Décrire les données indépendamment des
applications
 Manipuler les données
 Contrôler les données
 Partage
 Sécurité :reprise après panne, journalisation
 Performance d’accés
 Indépendance physique
 Indépendance logique
Proposé par Berlin DJIONANG (Consultant en sécurité) 23
Proposé par Berlin DJIONANG (Consultant en sécurité) 24
 Le concept de vue permet d'obtenir
l'indépendance logique
 La modification du schéma logique
n’entraîne pas la modification des
applications (une modification des vues est
cependant nécessaire)
 Chaque vue correspond à la perception
d’une partie des données, mais aussi des
données qui peuvent être synthétisées à
partir des informations représentées dans la
BD (par ex. statistiques)
Proposé par Berlin DJIONANG (Consultant en sécurité) 25
 il contient la description des données et
des contraintes d’intégrité (Dictionnaire
de Données)
 le schéma logique découle d’une
activité de modélisation

Proposé par Berlin DJIONANG (Consultant en sécurité) 26


 il correspond aux structures de stockage
et aux moyens d’accès

Proposé par Berlin DJIONANG (Consultant en sécurité) 27


Proposé par Berlin DJIONANG (Consultant en sécurité) 28
Proposé par Berlin DJIONANG (Consultant en sécurité) 29
Proposé par Berlin DJIONANG (Consultant en sécurité) 30
Proposé par Berlin DJIONANG (Consultant en sécurité) 31
Cycle
d’Abstraction

• Analyse
• Conception
• Mise en œuvre
• Maintenance
• Mort
Cycle
(Obsolescence) de Décision

• Découpage en domaines
• Orientations majeures (gestion,
Cycle organisation, technologie)
de Vie • Planification du développement
• Procédures manuelles, automatisées
• Procédures temps-
temps-réel, différé
• Postes de travail
• Règles de gestion
• États, écrans
Proposé par Berlin DJIONANG (Consultant en sécurité) 32
 Un SIG doit être durable et adaptable
aux changements.
 Par exemple, un changement de
machine ne doit pas entraîner une
modification majeure du système.
 Il est donc nécessaire de dégager des
niveaux correspondant aux
préoccupations différentes.

Proposé par Berlin DJIONANG (Consultant en sécurité) 33


 A ce niveau, sont représentées
› les informations et leurs relations,
› les utilisations qui en sont faites et les contraintes associées.
 Ce niveau définit les finalités de l’entreprise, c.-à-d.
la réponse à la question « que fait le système? »
 C’est le niveau le plus stable, il est invariant.
Recueillir, organiser et structurer l’information
 Modèle Conceptuel de Donnée
 Modèle Conceptuel de Traitement

Créer l’architecture
Proposé par Berlin DJIONANG (Consultant en sécurité) 34
 Ce niveau est moins stable.
 Il définit l’organisation à mettre en place
dans l’entreprise : il répond aux questions
«comment?», « qui fera quoi, où et quand? »

 Modèle Logique de Donnée


 Modèle Organisationnel de Traitement

Envisager les solutions


organisationnelles et logiques
possibles face aux contraintes posées
Proposé par Berlin DJIONANG (Consultant en sécurité) 35
 Ce niveau est le moins stable.
 Il est souvent mis en cause par le changement du
matériel et/ou des logiciels.
 Il définit l’ensemble des moyens techniques,
composé de machines, de programmes et de
fichiers, pour répondre aux objectifs posés.

 Modèle Physique de Donnée


 Modèle Physique de Traitement

Faire le choix du matériel et des


logiciels compatibles avec les
solutions proposées.
Proposé par Berlin DJIONANG (Consultant en sécurité) 36
Niveau Données Traitements
Conceptuel MCD MCT
Logique et
Organisationnel
MLD MOT
Physique
(opérationnel ou MPD MPT
technique)

Analyse descendante : information globale

information élémentaire

Proposé par Berlin DJIONANG (Consultant en sécurité) 37


Proposé par Berlin DJIONANG (Consultant en sécurité) 38
 Modèle de données :ensemble de
› concepts permettant la description et la
manipulation des données du monde réel
› règles d'utilisation de ces concepts
 les concepts d’écrivent les aspects :
› Statiques : structure des données
› Dynamiques : opérations sur les données +
contraintes explicites
 Schéma :
› description de la BD obtenue en utilisant un
modèle de données
Proposé par Berlin DJIONANG (Consultant en sécurité) 39
 De la réalité perçue à la représentation

Proposé par Berlin DJIONANG (Consultant en sécurité) 40


Proposé par Berlin DJIONANG (Consultant en sécurité) 41
 1960
› Uniquement des systèmes de gestion de fichiers plus ou moins
sophistiqués.
 1970
› Début des systèmes de gestion de bases de données réseaux et
hiérarchiques proches des systèmes de gestion de fichiers. Ces
systèmes de gestion de bases de données avaient rempli
certains des objectifs précédents mais on ne pouvait pas
interroger une base sans savoir où était l'information recherchée
(on "naviguait") et sans écrire de programmes. Sortie du papier
de CODD sur la théorie des relations, fondement de la théorie
des bases de données relationnelles.
 1980
› Les systèmes de gestion de bases de données relationnels
apparaissent sur le marché.
 1990
› Les systèmes de gestion de bases de données relationnels
dominent le marché. Début des systèmes de gestion de bases
de données orientés objet.

Proposé par Berlin DJIONANG (Consultant en sécurité) 42


 Définition et Objectifs
 Les concepts de base du modèle
 Notion de modélisation
 Représentation graphique
 Occurrence et Identifiant
 Notion de cardinalité
 Dépendance fonctionnelle
 Dictionnaire de données
 Exercice d’application et Fiche de TD
Proposé par Berlin DJIONANG (Consultant en sécurité) 44
 Le modèle EA est un modèle qui permet
d’exprimer la sémantique des données
mémorisables et ou véhiculables à l’aide
des concepts : d’entité, d’association,
d’attributs, de contraintes d’intégrité.
 Dans une organisation, l’information
constitue une ressource vitale au même
titre que les personnes, les moyens
financiers ou les équipements. Elle peut être
« matière première », « produit en cours »
vis-à-vis des processus de traitement de
l’information et de la communication.
Proposé par Berlin DJIONANG (Consultant en sécurité) 45
 Les objectifs d’avoir un modèle de structuration des
informations sont:
› aider les concepteurs et les analystes à comprendre le
besoin
› aider les réalisateurs du SI à comprendre cette
sémantique en vue d’une organiser un stockage adéquat
des données et de créer des procédures d’accès
efficaces ainsi que les programmes d’applications
correctes.
› Procurer aux exploitants du SI la définition précise des
informations qu’ils manipulent ainsi que leurs conditions
d’utilisation.
› Fournir une représentation opérationnel des bases de
données du SI directement exploitable à l’aide des
langages d’interrogation de haut niveaux et les langage
dit de quatrième génération (Ex : LI SQL, L4G, Visual Basic)

Proposé par Berlin DJIONANG (Consultant en sécurité) 46


 Entité
 Association
 Attributs
 Contraintes d’intégrité

Proposé par Berlin DJIONANG (Consultant en sécurité) 47


 entité: représentation d'un objet du monde
réel ayant une existence propre
 type d'entités (TE) : représentation d'un
ensemble d'entités perçues comme similaires
et ayant les mêmes caractéristiques
 Exemple: un service commerciale gère les
commandes reçurent des clients et
comportant des produits à livrer.
› une chambre de commerce organise des salons
perfectionnes pour une entité « client ». chaque
client particulier est dit « occurrence de
l’entité client »

Proposé par Berlin DJIONANG (Consultant en sécurité) 48


 Une association est définie par une correspondance entre
deux ou plusieurs entités dépourvues d’existence propre et
conforme au choix de gestion de l’entreprise
 type d'associations (TA): représentation d'un ensemble
d'associations ayant la même sémantique et décrites par les
mêmes caractéristiques

Proposé par Berlin DJIONANG (Consultant en sécurité) 49


 La passation de la commande 13 par le client KAMGA (Association
binaire). L’affectation de l’employé ATANGANA au projet dans le cadre
du contrat C (Association ternaire)
 Le mariage de l’entité personne X avec l’entité personne Y. il s’agit
d’une association cyclique d’une entité personne avec elle-même. (X le
mari épouse Y, Y la femme épouse X)
 Exercice :
 Un club sportif organise des stages de foot d’une journée pour ses
membres (nom, prénom, numéro, date_naissance, adresse,
code_postal, ville). Des moniteurs professionnels sont recrutés et payé
pour l’encadrement. Les stages ont un nom qui change chaque
année : étoile, cristal, paillette, colonne, granule, dentrile, aiguille pour
la saison 1998-1999. Ils ont un niveau, un contenu, une date, un lieu etc.
Un stage n’est encadré que par un seul moniteur. Un adhérent peut
suivre plusieurs stages pendant une saison. Les deux derniers phrases de
l’exercice ci-dessus sont des règles de gestion ou d’organisation.
 Trouver les entités, les attributs, les idées de relation, les idées de
codification

Proposé par Berlin DJIONANG (Consultant en sécurité) 50


 C’est le nombre d’entité non
nécessairement distinct sur lequel
l’association est définie.
 Exemple :
 CONJOINT (PERSONNE, PERSONNE) est
de degré 2
 AFFECTATION (EMPLOYE,
PROJET,CONTRAT) est de degré 3
 RQ : plusieurs associations peuvent être
définies sur les mêmes entités
Proposé par Berlin DJIONANG (Consultant en sécurité) 51
Proposé par Berlin DJIONANG (Consultant en sécurité) 52
Proposé par Berlin DJIONANG (Consultant en sécurité) 53
 Sur les entités PERSONNE et VOITURE, on
peut définir les associations PROPRIETAIRE,
CONDUCTEUR, PASSAGER, … etc
 Entité PERSONNE et VOITURE de manière
formelles on peut dire :
 E1={P1, P2, P3} E2={V1, V2, V3}
 Association PROPRIETAIRE et CONDUCTEUR
 A1(E1, E2)= {(P1, V1), (P2, V2), (P3, V3)}
 A2(E1, E2)= {(P1, V1), (P2, V2), (P3, V3)}
 Association réflexive (degré 2)
Proposé par Berlin DJIONANG (Consultant en sécurité) 54
 Un attribut est une donnée élémentaire
conforme au choix de gestion de l’entreprise.
Les attributs sont utilisés pour décrire les entités
et les associations
 Une valeur est un symbole utilisé pour
représenter un fait élémentaire : Nombre, date,
chaine de caractère
 Exemples
› COULEUR= {rouge, blanc, rose}
› JOURS_OUVRABLES= {lundi, mardi, mercredi, jeudi,
vendredi, samedi}
› AGE= {x/ 0<x<110}
› NOM= {x/ x est une chaine de caractères alphabétiques}
Proposé par Berlin DJIONANG (Consultant en sécurité) 55
 Attribut simple ou répétitif
› Un attribut est simple si pour toute entité ou association, il ne peut prendre qu’une
seule valeur. Il est répétitif s’il peut prendre plusieurs valeurs d’un même type. Ex : les
attributs Nom_personnes et date_naissance sont simple tandis que l’attribut
LANGUE_PARLEES est répétitif.

 Attribut élémentaire ou décomposable


› Un attribut est décomposable si à une entité ou une association, il fait correspondre un
groupe de valeur de type différents et peut être décomposé au plus en autant d’attribut
qu’il y a de groupe différent dans le groupe de valeur. Un attribut nom décomposable est
élémentaire.
› Ex : ADRESSE est un attribut décomposable pourquoi ? adresse=(numeroville,
boitepostale, numerorue, numeromaison)

 Attribut obligatoire ou facultatif


› Considérons l’entité PERSONNE caractérisé par les attributs
PERSONNE(Nom_de_famille, Nom_jeune_fille, prenom, Adresse_personne, Sexe)

 Valeur Inconnue
› Lorsqu’une valeur d’attribut existe pour une occurrence d’un type donné mais est
inconnue à la date d’observation, on attribuera à cette occurrence la valeur
inconnue. EX (TOTO, NULL, JEAN, BP812,M)

Proposé par Berlin DJIONANG (Consultant en sécurité) 56


 Un des avantages du modèle EA au plan de la
communication est de ce prêté à une
représentation graphique, très significative qui
permet notamment de bien mettre en
évidence la structure des concepts. Il est
d’usage d’adopter les conventions suivantes :
 Une entité est représentée par un rectangle
comportant une cartouche dans laquelle
figure le nom de l’entité
 Une association est représenté par un
hexagone relié par des segments de droite au
rectangle qui représenté les entités.
Proposé par Berlin DJIONANG (Consultant en sécurité) 57
 OCCURRENCE D’UNE ENTITE
 L’entité recouvre un ensemble d’individu, ainsi une entité de n attributs sera l’ensemble de
tous les groupes de n occurrences d’attributs ayant une existence propres. Chacun de ces
groupes sera une occurrence de l’entité.
 OCCURRENCE D’UNE ASSOCIATION
› Une occurrence d’une association est constituée : d’une et une
seule occurrence de chacune des entités associées.
› Occurrence de chacun des attributs aux occurrences des entités associées.
› Pour designer une entité ou une association avec leurs attributs, on adopte
les notations suivantes :
 Pour l’entité
› E(A1, A2,…, An) Ex : CLIENT(Num_client, Nom_client,
Adresse_client)
 Pour l’association
› A(E1, E2,…, En, A1, A2,…, An) Ex : EVALUATION(ELEVE,MATIERE,
Note), LIGNE_COMMANDE(COMMANDE, PRODUIT,
Qte_Commande)

Proposé par Berlin DJIONANG (Consultant en sécurité) 58


 L’identifiant est un groupe minimal d’attribut et/ou
de rôles tel qu’a chaque combinaison de valeur prise
par ce groupe correspond au plus des entités de ce
type. Une entité peut être doté d’au plus un
identifiant.
 CLIENT(Code_client,Nom,Prénom,Adresse)
› Ex : si l’attribut code_client est déclaré identifiant de client
alors à chaque valeur de code_client correspond au plus
une occurrence de client. Graphiquement, l’identifiant
sera toujours souligné.

 Une association sera identifiée par le produit


cartésien des identifiants des entités qu’elles relient.
› L’identifiant de cette association est (Matricule,
Code_matiere)

Proposé par Berlin DJIONANG (Consultant en sécurité) 59


 Les cardinalités d’une entité dans une association
indiquent le nombre minimum et maximum de
partition d’une occurrence à l’association. Notation :
(min, max)
 Interprétation : les valeurs les plus fréquentées utilisées
pour le couple d’entier sont les suivantes :
› (0,1) : une occurrence de l’entité ne participe plus d’une
fois dans l’association ;
› (1,1) : une occurrence de l’entité ne participe jamais plus
d’une fois dans l’association
› (1,n) : une occurrence de l’entité participe toujours au
moins une fois à l’association
› (0,n) : aucune restriction qu’a la participation des
occurrences de l’entité à l’association

Proposé par Berlin DJIONANG (Consultant en sécurité) 60


Avoir pour note
 Exemple
6
Elève Matière
Etoundi Albert Avoir pour note Compta.

14
Elève Matière
Avoir pour note
Hamadou Math.
James 8
Elève Avoir pour note Matière
Kamga Noémie Info
15

Elève Avoir pour note


Lobe Sophia 12

Cardinalité de l’entité « élève » : (0,2).


Cardinalité de l’entité « matière » : (0,3). 61
Proposé par Berlin DJIONANG (Consultant en sécurité)
61
Proposé par Berlin DJIONANG (Consultant en sécurité) 62
 Une contrainte d’intégrité (CI) est une propriété non représenté par les
concepts de base du modèle qui doit satisfaire les données
appartenant à la mémoire du SI. On distingue les contraintes d’intégrité
statique et les contraintes d’intégrité dynamique.

 Une contrainte d’intégrité statique est une propriété qui doit être
vérifié à tout moment c-a-dire indépendant de changement d’état
de la BD.
› Ex : pour une personne mariée : date_de_mariage>date_naissance, la
quantité en stock d’un produit>=0
 C’est une propriété qui définir la validité de changement d’état d’une
BD. C’est la règle de transition qui défini les séquences possibles de
changement d’état de la BD.
› Ex : dans la fonction publique, le salaire d’un fonctionnaire ne peut
décroitre. Cette contrainte n’est applicable qu’au moment ou on
modifie le salaire d’un fonctionnaire ou lors d’un changement de grande
ou de corps. Il s’agit bien d’une contrainte de transition. Elle ne concerne
que les états successifs de la donnée salaire d’un fonctionnaire.

Proposé par Berlin DJIONANG (Consultant en sécurité) 63


 Elles portent sur un attribut et peuvent
concerner soit son format, soit son
domaine.
 Exemples:
› Prix d’un produit doit être un nombre réel
positif.
› Une date doit prendre le format JJ/MM/AA.

Proposé par Berlin DJIONANG (Consultant en sécurité) 64


 Elles portent sur la cohérence des sens de
plusieurs attributs et s’appliquent soit à
› des attributs de la même entité ou association,
› des attributs d’entités ou associations différentes.
 Exemples
› Dans l’entité « Vol » (N° vol, Date vol, Heure
départ, Heure arrivée), Heure départ > Heure
arrivée.

Proposé par Berlin DJIONANG (Consultant en sécurité) 65


 En mathématiques, la notion de DF entre deux
ensemble A et B exprime le fait qu'à chaque élément a
de A correspond un seul élément b de B.
A  B
 En Modélisation Conceptuelle des Données sous
MERISE, cette notion de DF, appelée parfois Contrainte
d'Intégrité Fonctionnelle (CIF), s'applique dans les cas
suivants :
 DF intra-entité : il s'agit d'une DF entre l'identifiant d'une
entité et les autres attributs de l'entité.
 DF intra-relation : il existe une DF entre l'identifiant
obtenu par concaténation des identifiants des entités
de la collection d'une association et les éventuels
attributs de l'association.
 Il existe des "DF triviales" entre l'identifiant de
l'association et les identifiants des entités qu'elle relie.
 On appelle collection d'une association la liste des
entités liées.

Proposé par Berlin DJIONANG (Consultant en sécurité) 66


 Il existe des DF inter-entités si l'une des cardinalité maximum
de l'association est égale à 1. Dans ce cas, il est possible
d'orienter le lien entre les entités et de remplacer l'association
par une DF.
 On parle de DF forte (resp. DF faible) lorsque la cardinalité
minimum de l'entité source de la DF est égale à 1 (resp. 0).
 Exemple : enfant (moins de 16 ans) et classe

ENFANT
N° SS DF CLASSE
Nom 1,1 0,n
N° Classe
Prénom Nom établis sement

ENFANT
N° SS DF CLASSE
Nom 0,1 0,n
N° Classe
Prénom Nom établis sement

Proposé par Berlin DJIONANG (Consultant en sécurité) 67


 Lorsqu'il existe de part et d'autre d'une association
binaire des cardinalités maximales égales à 1, une
règle de modélisation stipule que l'entité source de la
DF est celle dont les occurrences apparaissent
postérieurement.
 Exemple : appel de cotisation et le règlement
correspondant.
REGLEMENT
APPEL COTISATION
N° règ lement DF
1,1 0,1 N° Classe
Date règlement
Nom établis sement

 Une DF liant deux entités est également appelée CIF


(Contrainte d’Intégrité Fonctionnelle)
REGLEMENT
APPEL COTISATION
N° règ lement CIF
1,1 0,1 N° Classe
Date règlement
Nom établis sement
68
Proposé par Berlin DJIONANG (Consultant en sécurité) 68
 Une DF ou une CIF est un lien non porteur de propriété. Une
association binaire ayant une cardinalité maximale de 1,
porteuse de propriété peut toujours être remplacée par une DF
ou une CIF.
C ON TRAT SOUSCRIPTEUR
SOUSC RIRE
N ° co ntrat 1,1 0,n N ° so uscripteu r
D ate souscription

 Les DF sous-jacentes sont les suivantes :


N° contrat  N° souscripteur
N° contrat, N° souscripteur  Date souscription

 La propriété de pseudo-transitivité permet de déduire la DF


suivante :
N° contrat  Date souscription
CONTRAT CIF SOUSCRIPTEUR
N° co ntrat 1,1 0,n N° so uscripteu r
Date souscription

69
Proposé par Berlin DJIONANG (Consultant en sécurité) 69
 Le concept de dépendance fonctionnelle utilisé par
codd comme élément de base de la théorie du
modèle relationnel à joué un rôle important dans les
travaux relatifs à la conception des BD relationnelle.
 Ex : on note la relation : OUVRIER (Matricule,
ancienneté, qualification, barème, salaire_horaire)
 Contrainte d’intégrité :
› Matricule est un attribut identifiant
› A une valeur de qualification qui correspond à un seul
barème
› A une valeur du couple (qualification, ancienneté)
correspondant au plus une de salaire horaire
 Ces deux dernières contraintes traduisent un même
type de phénomène désigné sur le nom de
dépendance fonctionnelle.
Proposé par Berlin DJIONANG (Consultant en sécurité) 70
 Etant donné une entité ou une association, un attribut B dépend
fonctionnellement d’un attribut A si à tout moment, à chaque
valeur A correspond au plus une valeur de B (Notion
d’application). A est le déterminant et B est le déterminé.
 Notation : A--- B, on lit A détermine fonctionnellement B ou B
dépend fonctionnellement de A.
 On étend la définition en considérant qu’on déterminant ou un
déterminé peut être constitué d’un groupe de plusieurs attributs.
 Ex : Qualification-- barème
 (Qualification, ancienneté)---- salaire_horaire (*)
 Une dépendance fonctionnelle est dite Total si elle cesse
d’exister dès qu’on enlève un attribut du group déterminant. Ex :
si on enlève la qualification dans *, on ne pourra plus dire que
ancienneté détermine salaire.
 Par définition, il existe une dépendance fonctionnelle entre un
identifiant et chaque attribut non identifiant.

Proposé par Berlin DJIONANG (Consultant en sécurité) 71


 Transitivité : si A--B et B--C alors A---
C
› Ex : Numcde--Numcli et Numcli-Nomcli
alors Numcde--Nomcli
 UNION
› Si A-B et A--C alors A----(B,C)
 DECOMPOSITION
› Si A----(B,C) alors A-B et A--C
 REFLEXIVITE
› A Ϲ B alors B--A
Proposé par Berlin DJIONANG (Consultant en sécurité) 72
Proposé par Berlin DJIONANG (Consultant en sécurité) 73
La mise au propre du MCD s'effectue à
travers 3 opérations :
 la vérification,
 la normalisation,
 la décomposition.

Proposé par Berlin DJIONANG (Consultant en sécurité) 74


 Règle de non-répétitivité : à toute occurrence de
l'entité ou de l'association correspond au plus une
valeur de tout attribut qui lui est associé.
 Règle d'homogénéité : les attributs rattachés à une
entité ou à une association doivent avoir un sens pour
toutes les occurrences de l'entité ou de la association.
 Règle de distinguabilité : les occurrences d'une entité
doivent être distinguables. Cela induit la
compréhension de l'entité et se traduit par le choix de
l'identifiant.
 Règle de normalisation d'une relation : chaque attribut
d'une association doit dépendre fonctionnellement de
la totalité des entités formant la collection de
l'association .
 Respect des règles de gestion : les règles de gestion
relatives aux données, dégagées lors de l'étude de
l'existant, doivent avoir été traduites dans le MCD
(cardinalités, etc.).

Proposé par Berlin DJIONANG (Consultant en sécurité) 75


 Cas 1 : Attribut répétitif
Professeur
Matricule
Nom
Matière

L'attribut "Matière" peut prendre plusieurs valeurs si


le prof. peut enseigner plusieurs matières.
Solution

Professeur Matière
1,n Enseigner
Matricule 1,n Code
Nom Matière

Proposé par Berlin DJIONANG (Consultant en sécurité) 76


 Cas 2 : Attribut sans signification
Personnel
Matricule
Nom
Matière
L'attribut "Matière" ne prend pas de valeur pour
une secrétaire ou un surveillant.
Solution

Personnel
Matricule
Nom

Proposé par Berlin DJIONANG (Consultant en sécurité) 77


 Cas 3 : Dépendance incomplète
Commande Produit
N° Bon 1,n Concerner
Réf 1,n
Qté Date
Désign.
P.U.
L'attribut "Date" ne dépend pas du produit et l'attribut "Qté" peut
prendre plusieurs valeurs.
Solution

Commande Produit
N° Bon 1,n Concerner
1,n Réf
Date Qté Désign.
P.U.
Proposé par Berlin DJIONANG (Consultant en sécurité) 78
Proposé par Berlin DJIONANG (Consultant en sécurité) 79
 Objectifs
 1èreForme Normale (1FN)
 2ème Forme Normale (2FN)
 3ème Forme Normale (3FN)
 Forme Normale Forme normale de
Boyce-Codd

Proposé par Berlin DJIONANG (Consultant en sécurité) 80


 Permet d'affiner une conception de
schéma
 Peut se coupler avec une démarche de
conception "à la Merise«
 Inconvénient majeur : on suppose qu'on
possède une couverture minimale des DF
(si on a oublié une DF tout est faux)
 Autres formes normales avec d'autres
types de dépendance
 Peut être remis en cause au niveau
physique (dénormalisation)

Proposé par Berlin DJIONANG (Consultant en sécurité) 81


 Une relation est en première forme
normale si tous ses attributs sont
atomiques (inhérent au modèle
relationnel)
 Un attribut atomique n’est pas :
multivalué (liste de valeurs)
composé (structuré en sous-attributs)

Proposé par Berlin DJIONANG (Consultant en sécurité) 82


 1ère Forme Normale (1FN) : élémentarité des
attributs et existence de l'identifiant.
Tous les attributs doivent être élémentaires par
rapport au choix de gestion et il doit y avoir un
identifiant à chaque entité.

ETUDIANT ETUDIANT
Nom N° étudiant
n'est pas 1FN est 1FN
Prénom Nom
Age Prénom
Adresse Age

Proposé par Berlin DJIONANG (Consultant en sécurité) 83


 Pilote(ID, Nom, Avions)
456, BOB, [A330, A380]
 N'est pas de première forme normale,
l'attribut avion n'est pas atomique.

Proposé par Berlin DJIONANG (Consultant en sécurité) 84


 Une relation est en deuxième forme
normale ssi :
› elle est en première forme normale
› tout attribut non clé dépend de la totalité
de toutes les clés

Proposé par Berlin DJIONANG (Consultant en sécurité) 85


 2ème Forme Normale (2FN) : DF élémentaire
de l'identifiant.
Tout attribut d'une entité doit dépendre de
l'identifiant de cette entité par une
dépendance fonctionnelle élémentaire.
ETUDIANT
Code_Option, N°_étudiant n'est pas 2FN
Nom
Prénom
Nom option

ETUDIANT
N°_étudiant SUIVRE OPTION
Nom 0,n 0,n
Code_option
est 2FN
Prénom Nom option

Proposé par Berlin DJIONANG (Consultant en sécurité) 86


Proposé par Berlin DJIONANG (Consultant en sécurité) 87
Proposé par Berlin DJIONANG (Consultant en sécurité) 88
 Objectif : élimination des redondances
dues aux dépendances fonctionnelles
déduites par transitivité
 Une relation est en troisième forme
normale ssi :
› elle est en deuxième forme normale
› il n’existe aucune DF entre attributs non clé

Proposé par Berlin DJIONANG (Consultant en sécurité) 89


 3ème Forme Normale (3FN) : DF élémentaire et
directe.
Tout attribut d'une entité doit dépendre de
l'identifiant
ETUDIANT par une DF élémentaire et directe.

Code_étudiant n'est pas 3FN


Nom
Prénom
Code_option
Nom_option

est 3FN
ETUDIANT
N°_étudiant SUIVRE OPTION
Nom 0,n 0,n
Code_option
Prénom Nom option

Proposé par Berlin DJIONANG (Consultant en sécurité) 90


 Pilote (IDPilote, Nom, NumVol,
VilleDepart, Ville Arrivée)
 N’est pas de troisième forme normale.

Pilote (IDPilote, Nom)


Vol (NumVol, VilleDepart, Ville Arrivée)
 Est de troisième forme normale.

Proposé par Berlin DJIONANG (Consultant en sécurité) 91


Proposé par Berlin DJIONANG (Consultant en sécurité) 92
Proposé par Berlin DJIONANG (Consultant en sécurité) 93
Proposé par Berlin DJIONANG (Consultant en sécurité) 94
 Une relation R est en forme normale de Boyce-
Codd (FNBC) si, pour chaque dépendance
fonctionnelle non triviale X → Y, X est une super-clé
de R.
 La forme normale de Boyce-Codd implique la 3e
forme normale.
 La forme normale de Boyce-Codd est la forme
idéale relativement aux dépendances
fonctionnelles, mais malheureusement elle peut ne
pas préserver les dépendances fonctionnelles.

Proposé par Berlin DJIONANG (Consultant en sécurité) 95


Proposé par Berlin DJIONANG (Consultant en sécurité) 96
 toute relation a au moins une
décomposition en 3e forme normale qui
préserve les dépendances fonctionnelles
et qui est sans perte ;
 toute relation a au moins une
décomposition en forme normale de
Boyce-Codd qui est sans perte, mais qui
peut ne pas préserver les dépendances
fonctionnelles.
Proposé par Berlin DJIONANG (Consultant en sécurité) 97
1FN : élémentarité des attributs et existence de l'identifiant.

2FN : DF élémentaire de l'identifiant.

3FN : DF directe de l'identifiant.

4FN : DF complète de l'identifiant : si l'identifiant


est concaténé, un composant ne doit pas être en
DF avec un autre attribut.

98
Proposé par Berlin DJIONANG (Consultant en sécurité) 98
L'étude de l'existant

 Interview de la direction (Système de Pilotage).


› Objectifs principaux.
› Liste des postes de travail.
› Délimiter le champs de l’étude.
 Interview des postes de travail (Système Opérant) .
› Recenser et décrire les tâches exécutées.
› Observer la circulation des informations.
› Apprendre le langage de l’entreprise.
 Etablissement d’une liste des règles de gestion.
 Construction d’un dictionnaire de données (DD).
Proposé par Berlin DJIONANG (Consultant en sécurité) 99
 Epuration du dictionnaire des données (DD) en
enlevant
› les synonymes (les données identifiées différemment et
ayant le même sens);
› les polysèmes (les données utilisant les mêmes
orthographes mais décrivant des réalités différentes) : il
faut leur attribuer des noms différents.
 Construction du GDF (Graphe des Dépendances
Fonctionnelles).
› Extraire du DD la liste des attributs qui ne sont ni
concaténés, ni calculés.
› Ne pas considérer les DF transitives pour obtenir un GDF
avec une couverture minimale (répondant à la 3FN).
 Transformation du GDF en MCD.
 Mise au propre du MCD.
Proposé par Berlin DJIONANG (Consultant en sécurité) 100
Informatisation du SI d’une société de vente

Une société de vente souhaite informatiser son SI


actuel (manuel) qui contient essentiellement des
données figurant sur des bons de commande ou
factures du type :
N°Bon …………………… Date ……………………
Nom client ………………………………………………………………
Adresse ………………………………………………………………………
………………………………………………………………………………….

Nom représentant …………………………………………

Réf. Design. Qté PU Montant


………… ………… …… ……… …………
………… ………… …… ……… …………

Total …………
101
Proposé par Berlin DJIONANG (Consultant en sécurité) 101
En utilisant le schéma de construction détaillé
précédemment, établir le MCD de leur nouvelle base de
données. On suppose que certaines opérations ont déjà été
effectuées :
 Recueil des informations (interview du SI existant)
› R1 : un client peut passer une ou plusieurs commandes ou ne passer
aucune commande;
› R2 : une commande concerner au moins un produit;
› R3 : une commande concerne un et un seul client;
› R4 : une commande est assurée par un et un seul représentant qui
n’est pas toujours le même pour un client donné.
 Construction d'un dictionnaire de données (DD) : établissement
de la liste des attributs à partir des informations recueillies. Comme le SI
actuel est manuel, il n’existe pas nécessairement des codifications, on
imaginera qu’il existe des codes pour identifier les entités évidentes …
Par exemple, « Cocli » pour CLIENT et « Corep » pour REPRESENTANT
seront créées, on les marquera d’un (*) pour signifier qu’elles n’existent
pas encore.

Proposé par Berlin DJIONANG (Consultant en sécurité) 102


 Le dictionnaire des données (DD)
SIGNIFICATION TYPE (1) LONGUEUR NATURE REGLE DE CALCUL
(2) (3) OU INTEGRITE (4)

NoBon N° de bon de Cde N 4 E M


Date Date Cde N 6 E M Forme jj/mm/aa (5)

*CoCli Code client ? ? E SIG A créer


NomCli Nom client A 30 E SIG
Adresse Adresse client AN 60 CON SIG Rue + Ville
RueCli Rue client AN 30 E SIG
Vilcli Ville client A 30 E SIG
*CoRep Code représentant ? ? E SIG A créer
NomRep Nom représentant A 30 E SIG
Réf Réf. de produit AN 5 E SIG 1 lettre + 3 chiffres
Désign Désignation produit A 30 E SIG
Qté Quantité commandée N 3 E M Entier > 0
PU Prix unitaire N 7 E SIG Forme : 9999,99
Montant Montant ligne N 8 CAL M PU  Qté
Total Total commande N 9 CAL M Somme des montants

(1) A(lphanumérique) N(umérique) A(lpha)N(umérique)


(2) E(lémentaire) CON(caténé) CAL(culé)
(3) M(ouvement) SIG(nalétique) SIT(uation)
(4) Règle de calcul pour les attributs calculés ou contraintes d’intégrité syntaxique éventuelles
(5) jj : 01 à 31, mm : 01 à 12, aa : 00 à 99.
103
Proposé par Berlin DJIONANG (Consultant en sécurité) 103
 Le dictionnaire des données est à la fois le support de
travail et le résultat de la recherche et analyse des
données. Il se présente sous la forme d’un tableau.
 Présentation
› Dans ce tableau, chaque donnée est représenté par :
› Son nom informatique
› Une description
› Son type numérique
› Sa dimension en nombre de caractère
› Et éventuellement les calculs qui permettent de la générer

 L’outil informatique est bien attendu pour élaborer le


dictionnaire de donnée. En générale, il est élaboré au
stade de l’analyse du problème puis complète au
moment de la modélisation si on a besoin de créer des
identifiant pour les entités.

Proposé par Berlin DJIONANG (Consultant en sécurité) 104


› Les données à ne pas prendre en compte
dans un MCD sont, en général, les données
calculées et concaténées.
› Seront supprimées : Adresse, Montant et
Total.

Proposé par Berlin DJIONANG (Consultant en sécurité) 105


Ref NoBon

Design PU Date
Qté

CoRep CoCli

NomRep NomCli RueCli VilleCli

106
Proposé par Berlin DJIONANG (Consultant en sécurité) 106
Ref NoBon

Design PU Date
Qté

CoRep CoCli

NomRep NomCli RueCli VilleCli

107
Proposé par Berlin DJIONANG (Consultant en sécurité) 107
Règles de transformation

› R1 : les données sources d'au moins une DF


(celles qui sont soulignées sur le GDF)
représentent les identifiants des entités dont les
attributs sont les cibles de ces DF.
› R2 : Les flèches restantes deviennent des
associations. Les données déterminées par une
DF conjointe deviennent des attributs portés par
l’association.
› R3 : Les règles de gestion doivent permettre de
trouver les cardinalités.
Proposé par Berlin DJIONANG (Consultant en sécurité) 108
PRODUIT COMMANDE

Ref NoBon
Design Date
PU Qté

CLIENT
REPRESENTANT
CoCli
CoRep NomCli
NomRep RueCli
VilleCli

109
Proposé par Berlin DJIONANG (Consultant en sécurité) 109
Application des règles R2 et R3

PRODUIT COMMANDE
0,n CONCERNER 1,n
Ref NoBon
Design Qté Date
PU

1,1
1,1
OBTENIR PASSER

0,n
0,n
CLIENT
REPRESENTANT
CoCli
CoRep NomCli
NomRep RueCli
VilleCli

110
Proposé par Berlin DJIONANG (Consultant en sécurité) 110
 Enfin, les règles de vérification, de
normalisation et de décomposition
doivent permettre la mise au propre du
MCD.

Proposé par Berlin DJIONANG (Consultant en sécurité) 111


 DÉCOMPOSITION EN ENTITÉS
› Inventaire des éléments de la réalité
› identification d'éléments indépendants
› Détermination des attributs pour chaque entité
› liste des données atomiques, avec leurs formats de valeurs
› Choix de l'identifiant
› un ou plusieurs des attributs

 IDENTIFICATION DES ASSOCIATIONS
› Associations existantes
› associations entre deux entités
› Détermination des caractéristiques de chaque association ses cardinalités
 VALIDATION DU MODÈLE CONCEPTUEL

› Elimination des redondances


› redécomposition d'entité si besoin
› Détermination des contraintes
› Valeurs possibles, obligatoire ou facultative
› Confrontation aux besoins
› vérification de l'adéquation vis-a-vis de tous les besoins recensés

Proposé par Berlin DJIONANG (Consultant en sécurité) 112


Proposé par Berlin DJIONANG (Consultant en sécurité) 113
Proposé par Berlin DJIONANG (Consultant en sécurité) 114
Proposé par Berlin DJIONANG (Consultant en sécurité) 115
 Voir fiche 1 du cours

 Voir fiche 2 du cours

Proposé par Berlin DJIONANG (Consultant en sécurité) 116


 Chap 3: DU MODELE CONCEPTUEL AU
MODELE LOGIQUE
 Chap 4: LE MODELE RELATIONNEL
 Chap 5: LE LANGAGE SQL
 Chap 6: ADMINISTRATION ET SECURITE DE
LA BD
 Chap 7: PROJET: CONCEPTION D’UNE BD
POUR LA GESTION DES AGENCES DE
VOYAGES
Proposé par Berlin DJIONANG (Consultant en sécurité) 117
Proposé par Berlin DJIONANG (Consultant en sécurité) 118

Vous aimerez peut-être aussi