Merise: Guide Pratique

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

Merise

(modélisation des données et des traitements, manipulations avec le langage SQL,


conception d’une application mobile)
Ce livre sur la méthode Merise s’adresse tout particulièrement aux étudiants Les chapitres du livre
en premier cycle d’informatique, aux étudiants en école de gestion et à toute
personne souhaitant une information simple, directe et pratique sur la Avant-propos • Présentation de la méthode

Merise
méthode Merise et le langage SQL. Merise • Les dépendances fonctionnelles •

Merise - Guide pratique


Au travers des chapitres sur la méthode Merise, vous découvrirez comment : Le Modèle Conceptuel des Données  • Le
- Réaliser les différents modèles (modèles conceptuels, modèles logiques, Modèle Logique des Données • Le Modèle
modèles physiques) mais aussi les modèles spécifiques aux traitements Physique des Données  • Les formes
(modèles conceptuels des traitements, modèles organisationnels des normales • Les diagrammes des flux • Les
traitements…). Modèles Conceptuels des Traitements • Le
Modèle Organisationnel des Traitements  •
- Modéliser avec les extensions Merise/2.
Les extensions Merise/2  • Le cycle de vie
- Comparer certains modèles Merise à certains diagrammes UML. des objets  • Merise et UML  • SQL
Dans un chapitre dédié, le langage SQL est présenté de façon progressive et (Structured Query Language) • Étude de cas
est illustré par de nombreux exemples. Vous y apprendrez à : détaillée  • Exercices  • Mise en œuvre des

Guide pratique
- Manipuler, filtrer, trier, regrouper les données. concepts
- Créer, modifier, supprimer des tables.
- Affecter ou enlever des droits à certains utilisateurs.
L’auteur n’a volontairement gardé que le côté concret de la méthode Merise
et du langage SQL, pour permettre au lecteur une immersion immédiate. Il
propose également de nombreux exercices dont une étude de cas détaillée
et guidée pour faciliter cette assimilation.
(modélisation des données et des traitements,
Cette nouvelle édition du livre s’enrichit d’un chapitre vous offrant la possibilité
de mettre en pratique les notions étudiées à travers la conception et le Téléchargement
manipulations avec le langage SQL,
conception d’une application mobile)
développement d’une application mobile avec WINDEV Mobile. www.editions-eni.fr
.fr

Jean-Luc BAPTISTE sur www.editions-eni.fr :

3 édition
b Le code source de l’application e
Ancien responsable informatique et développeur d’applications stratégiques,
mobile développée.
Jean-Luc BAPTISTE a également créé et géré une société de service en
informatique pendant plusieurs années. Il est aujourd’hui professeur en
informatique, en filière BTS SIO, au Lycée Jean Lurçat de
Perpignan. Très proche des interrogations des apprenants et
fort de son expérience pédagogique et de ses compétences
techniques, il propose au lecteur un ouvrage efficace et complet Pour plus

Nouvelle édition
ISBN : 978-2-409-01534-2

pour s’initier à la méthode Merise. d’informations :


29,90 €

Jean-Luc BAPTISTE
Table des matières 1

Les éléments à télécharger sont disponibles à l'adresse suivante :


http://www.editions-eni.fr
Saisissez la référence ENI de l'ouvrage RI4MER dans la zone de recherche et
validez. Cliquez sur le titre du livre puis sur le bouton de téléchargement.

Avant-propos
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2. Historique de la méthode Merise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Chapitre 1
Présentation de la méthode Merise
1. Présentation générale de la méthode Merise. . . . . . . . . . . . . . . . . . . . 15
2. La systémique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1 Les caractéristiques d'un système . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2 La représentation schématique des systèmes de l'entreprise . . . 16
2.2.1 Le système de pilotage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.2 Le système d'information. . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.3 Le système opérant. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3. La séparation des données et des traitements. . . . . . . . . . . . . . . . . . . 18
3.1 Les données (ou informations) . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.1 L'interview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.2 L'étude des documents internes. . . . . . . . . . . . . . . . . . . . . 19
3.1.3 L'étude des documents externes . . . . . . . . . . . . . . . . . . . . 19
3.2 Les différents types d'informations . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.1 Les informations élémentaires et mémorisables. . . . . . . . 19
3.2.2 Les informations calculées . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2.3 Les traitements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2 Merise
Guide pratique

4. Une approche par niveaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21


4.1 Le niveau conceptuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2 Le niveau organisationnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.3 Le niveau logique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.4 Le niveau physique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.5 Tableau récapitulatif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5. Les apports de Merise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Chapitre 2
Les dépendances fonctionnelles
1. Des données aux dépendances fonctionnelles . . . . . . . . . . . . . . . . . . 25
1.1 Le dictionnaire des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2. Les dépendances fonctionnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.1 Dépendances fonctionnelles composées . . . . . . . . . . . . . . . . . . . 31
2.2 Dépendance fonctionnelle élémentaire . . . . . . . . . . . . . . . . . . . . 31
2.3 Dépendance fonctionnelle élémentaire directe. . . . . . . . . . . . . . 32
2.4 Méthodologie d'élaboration des dépendances fonctionnelles . . 33
3. Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.1 Dictionnaire des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2 Détermination des dépendances fonctionnelles ou DF . . . . . . . 36
3.3 Graphe des dépendances fonctionnelles . . . . . . . . . . . . . . . . . . . 38
3.4 Matrice des dépendances fonctionnelles. . . . . . . . . . . . . . . . . . . 38
4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Chapitre 3
Le Modèle Conceptuel des Données
1. Introduction au Modèle Conceptuel des Données. . . . . . . . . . . . . . . 41
1.1 Les propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
1.2 Les entités ou objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.2.1 L'identifiant. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Table des matières 3

1.3 Les relations ou associations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43


1.3.1 Les cardinalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.3.2 Les relations porteuses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
1.3.3 Les relations réflexives . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
1.4 Règles d'usages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
1.5 Notion d'entité forte et d'entité faible. . . . . . . . . . . . . . . . . . . . . 51
1.5.1 Entité forte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
1.5.2 Entité faible. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
1.6 Notion de contrainte d'intégrité fonctionnelle. . . . . . . . . . . . . . 52
1.7 Notion d'identifiant relatif. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2. Conception d'un Modèle Conceptuel des Données pas à pas . . . . . . 55
2.1 Le dictionnaire des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.2 Les dépendances fonctionnelles . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.2.1 Dépendances élémentaires . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.2.2 Dépendances isolées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.3 Élaboration du Modèle Conceptuel des Données. . . . . . . . . . . . 61
2.4 Recherche d'identifiants relatifs . . . . . . . . . . . . . . . . . . . . . . . . . 68
3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Chapitre 4
Le Modèle Logique des Données
1. Introduction au Modèle Logique des Données . . . . . . . . . . . . . . . . . . 71
1.1 Cas (0, n), (1,1) ou (1,n), (0,1) . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
1.2 Cas (0,n), (0,n) ou (1,n), (1,n) . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
1.3 Modèle Logique des Données sur une relation réflexive . . . . . . 76
1.4 Règles simples de passage du MCD au MLD . . . . . . . . . . . . . . . 77
2. Conception d'un Modèle Logique des Données pas à pas . . . . . . . . . 78
3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4 Merise
Guide pratique

Chapitre 5
Le Modèle Physique des Données
1. Introduction au Modèle Physique des Données . . . . . . . . . . . . . . . . . 85
2. Transcription SQL du modèle physique . . . . . . . . . . . . . . . . . . . . . . . 88
3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

Chapitre 6
Les formes normales
1. Introduction aux formes normales . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
1.1 1FN - Première forme normale . . . . . . . . . . . . . . . . . . . . . . . . . . 91
1.2 2FN - Deuxième forme normale . . . . . . . . . . . . . . . . . . . . . . . . . 93
1.3 3FN - Troisième forme normale . . . . . . . . . . . . . . . . . . . . . . . . . 94
1.4 BCNF - Forme normale de Boyce - Codd . . . . . . . . . . . . . . . . . . 96
1.5 4FN - Quatrième forme normale . . . . . . . . . . . . . . . . . . . . . . . . . 97
1.6 5FN - Cinquième forme normale. . . . . . . . . . . . . . . . . . . . . . . . . 99
2. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Chapitre 7
Les diagrammes des flux
1. Introduction aux diagrammes des flux . . . . . . . . . . . . . . . . . . . . . . . 101
1.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
1.1.1 Domaine d'étude. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
1.1.2 L'acteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
1.1.3 Les flux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
1.2 Représentation graphique des acteurs. . . . . . . . . . . . . . . . . . . . 102
2. Conception d'un diagramme des flux pas à pas . . . . . . . . . . . . . . . . 104
2.1 Identification des flux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
2.2 Diagramme finalisé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Table des matières 5

2.3 Remarques et règles d'usages . . . . . . . . . . . . . . . . . . . . . . . . . . . 106


2.3.1 Un flux ne doit pas être bidirectionnel . . . . . . . . . . . . . . 106
2.3.2 Le flux ne doit pas être réflexif . . . . . . . . . . . . . . . . . . . . 106
2.3.3 Pas de flux entre des acteurs externes . . . . . . . . . . . . . . . 106
3. Le modèle de contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
3.1 Le Modèle de Flux Conceptuel (de niveau 1, de niveau N) . . . 108
4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Chapitre 8
Les Modèles Conceptuels des Traitements
1. Le Modèle Conceptuel des Traitements . . . . . . . . . . . . . . . . . . . . . . 111
1.1 Objectifs du Modèle Conceptuel des Traitements. . . . . . . . . . 111
1.1.1 Les évènements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
1.1.2 Les opérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
1.1.3 La synchronisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
1.1.4 Représentation schématique
d’un Modèle Conceptuel des Traitements . . . . . . . . . . . 113
2. Conception d'un Modèle Conceptuel des Traitements pas à pas . . 114
3. Le Modèle Conceptuel des Traitements Analytiques . . . . . . . . . . . 117
4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

Chapitre 9
Le Modèle Organisationnel des Traitements
1. Introduction au Modèle Organisationnel des Traitements . . . . . . . 121
1.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
2. Conception d'un Modèle Organisationnel
des Traitements pas à pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
2.1 Le diagramme des flux (ou modèle conceptuel
de communication) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
2.2 Le Modèle Conceptuel des Traitements . . . . . . . . . . . . . . . . . . 124
6 Merise
Guide pratique

2.3 Le Modèle Organisationnel des Traitements . . . . . . . . . . . . . . 125


3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

Chapitre 10
Les extensions Merise/2
1. Introduction aux extensions Merise/2 . . . . . . . . . . . . . . . . . . . . . . . 127
1.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
1.2 L'héritage (ou la généralisation - spécialisation) . . . . . . . . . . . . 128
2. Contraintes ensemblistes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
2.1 La contrainte de couverture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
2.2 La contrainte de disjonction . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
3. La formalisation des contraintes entre associations. . . . . . . . . . . . . 134
3.1 La totalité (couverture + non-disjonction) . . . . . . . . . . . . . . . 135
3.2 Partition (couverture + disjonction). . . . . . . . . . . . . . . . . . . . . 136
3.3 Exclusion (non-couverture + disjonction) . . . . . . . . . . . . . . . . 136
3.4 Égalité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
3.5 Inclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
4. Agrégation sur les associations (ou associations d'associations) . . . 138

Chapitre 11
Le cycle de vie des objets
1. Introduction au cycle de vie des objets . . . . . . . . . . . . . . . . . . . . . . . 141
1.1 Les objectifs de la gestion du cycle de vie d'un objet . . . . . . . . 141
1.1.1 État de l'objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
1.1.2 Événement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
1.1.3 Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
1.2 Mise en œuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
1.2.1 L'itération . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
1.2.2 La transition conditionnelle. . . . . . . . . . . . . . . . . . . . . . . 143
1.2.3 La création. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Table des matières 7

1.2.4 La suppression. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144


2. Conception d'un CVO pas à pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
3. Positionnement du CVO par rapport au MCTA . . . . . . . . . . . . . . . 145

Chapitre 12
Merise et UML
1. UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
1.1 Présentation d'UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
1.1.1 Les diagrammes statiques. . . . . . . . . . . . . . . . . . . . . . . . . 148
1.1.2 Les diagrammes comportementaux. . . . . . . . . . . . . . . . . 148
1.1.3 Les diagrammes dynamiques . . . . . . . . . . . . . . . . . . . . . . 149
2. Merise par rapport à UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
2.1 Une séparation des données et des traitements . . . . . . . . . . . . 150
3. Analogie Merise/UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
3.1 Modèle de contexte (diagramme des flux) -
Diagramme des cas d'utilisation . . . . . . . . . . . . . . . . . . . . . . . . 150
3.2 Le diagramme des cas d'utilisation . . . . . . . . . . . . . . . . . . . . . . 151
3.3 Modèle Conceptuel des Données/Diagramme de classes . . . . 155
3.3.1 Les cardinalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
3.3.2 Associations porteuses . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
3.3.3 Associations ternaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
3.3.4 Représentation de la réflexivité . . . . . . . . . . . . . . . . . . . . 159
3.3.5 L'héritage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
3.4 Les contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
3.4.1 La contrainte de partition . . . . . . . . . . . . . . . . . . . . . . . . 162
3.4.2 L'exclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
3.4.3 La contrainte de totalité. . . . . . . . . . . . . . . . . . . . . . . . . . 164
3.4.4 Aucune contrainte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
3.5 Le Modèle Conceptuel des Traitements . . . . . . . . . . . . . . . . . . 166
3.6 Le Modèle Organisationnel des Traitements . . . . . . . . . . . . . . 166
8 Merise
Guide pratique

Chapitre 13
SQL (Structured Query Language)
1. Présentation du langage SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
1.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
1.2 Structuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
2. Le langage de manipulation des données . . . . . . . . . . . . . . . . . . . . . 173
2.1 Sélection des données. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.1.1 La projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
2.1.2 La restriction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
2.1.3 Les tris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
2.1.4 Les jointures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
2.1.5 Les fonctions statistiques. . . . . . . . . . . . . . . . . . . . . . . . . 185
2.1.6 Les opérations portant sur des ensembles. . . . . . . . . . . . 186
2.1.7 Les regroupements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
2.1.8 Les sous-requêtes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
2.2 L'insertion des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
2.2.1 Insertion simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
2.2.2 Insertion en masse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
2.3 La modification des données . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
2.4 La suppression des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
3. Le langage de définition des données . . . . . . . . . . . . . . . . . . . . . . . . 194
3.1 La création de tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
3.1.1 Définition de la clé primaire . . . . . . . . . . . . . . . . . . . . . . 194
3.1.2 Définition des clés étrangères . . . . . . . . . . . . . . . . . . . . . 195
3.2 La suppression physique de tables. . . . . . . . . . . . . . . . . . . . . . . 195
3.3 Modification d'une structure de table . . . . . . . . . . . . . . . . . . . . 195
3.3.1 Ajouter un champ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
3.3.2 Redimensionner un champ . . . . . . . . . . . . . . . . . . . . . . . 196
3.3.3 Supprimer un champ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
3.3.4 Supprimer une clé sur une table existante . . . . . . . . . . . 196
3.4 Renommer une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Table des matières 9

4. Le langage de contrôle des données . . . . . . . . . . . . . . . . . . . . . . . . . . 197


4.1 L'ordre GRANT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
4.2 L'ordre REVOKE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
5. Mise en pratique avec MySQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
5.1 Installation du serveur de base de données. . . . . . . . . . . . . . . . 200
5.2 Création d'une base de données. . . . . . . . . . . . . . . . . . . . . . . . . 202

Chapitre 14
Étude de cas détaillée
1. Étude des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
2. Analyse des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
3. Le dictionnaire des données complet. . . . . . . . . . . . . . . . . . . . . . . . . 223
4. Les dépendances fonctionnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
4.1 Dépendances fonctionnelles élémentaires et directes . . . . . . . 226
4.2 Dépendances fonctionnelles à partie gauche composée. . . . . . 226
5. Création du Modèle Conceptuel des Données avec WinDesign . . . 227
5.1 Conception du Modèle Conceptuel des Données . . . . . . . . . . 227
5.2 Conception du Modèle Logique des Données. . . . . . . . . . . . . . 233
5.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

Chapitre 15
Exercices
1. Exercices applicatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
2. Premier exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
2.1 Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
2.1.1 Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . 242
2.1.2 Le Modèle Logique des Données . . . . . . . . . . . . . . . . . . . 244
2.1.3 Le modèle relationnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
10 Merise
Guide pratique

3. Deuxième exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246


3.1 Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
3.1.1 Le Modèle Logique des Données . . . . . . . . . . . . . . . . . . . 247
3.1.2 Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . 248
4. Troisième exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
4.1 Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
4.1.1 Dictionnaire des données simplifié . . . . . . . . . . . . . . . . . 250
4.1.2 Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . 251
4.1.3 Le Modèle Logique des Données . . . . . . . . . . . . . . . . . . . 252
4.1.4 Le Modèle Physique des Données . . . . . . . . . . . . . . . . . . 253
5. Quatrième exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
5.1 Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
5.1.1 Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . 254
5.1.2 Le Modèle Logique des Données . . . . . . . . . . . . . . . . . . . 254
5.1.3 Le Modèle Physique des Données . . . . . . . . . . . . . . . . . . 254
6. Cinquième exercice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
6.1 Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
6.1.1 Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . 256
6.1.2 Le Modèle Physique des Données . . . . . . . . . . . . . . . . . . 257
7. Sixième exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
7.1 Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
7.1.1 Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . 259
7.1.2 Le Modèle Logique des Données . . . . . . . . . . . . . . . . . . . 260
8. Septième exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
8.1 Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
8.1.1 Le dictionnaire des données . . . . . . . . . . . . . . . . . . . . . . . 262
8.1.2 Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . 263
8.1.3 Le Modèle Logique des Données . . . . . . . . . . . . . . . . . . . 267
8.1.4 Le modèle relationnel des données . . . . . . . . . . . . . . . . . 270
8.1.5 Le modèle de contexte de niveau 0 . . . . . . . . . . . . . . . . . 270
Table des matières 11

8.1.6 Le modèle de flux conceptuel de niveau 1. . . . . . . . . . . . 271


8.1.7 Le Modèle Organisationnel des Traitements . . . . . . . . . 272
8.1.8 Requête SQL listant l'ensemble des sportifs
habitant Perpignan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273

Chapitre 16
Mise en œuvre des concepts
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
1.1 Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
2. Le Modèle Conceptuel des Données . . . . . . . . . . . . . . . . . . . . . . . . . 276
3. Création de l’application sous WINDEV Mobile . . . . . . . . . . . . . . . 277
3.1 Le modèle logique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
3.2 Création du MLD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
4. Création de l’interface de l’application . . . . . . . . . . . . . . . . . . . . . . . 294
4.1 Création d’une requête. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
4.2 Remplissage d’une combobox . . . . . . . . . . . . . . . . . . . . . . . . . . 316
4.3 Gestion des matériels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
4.4 Création d’une procédure locale . . . . . . . . . . . . . . . . . . . . . . . . 318
5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
41

Chapitre 3
Le Modèle Conceptuel
des Données
Le Modèle Conceptuel des Données

1. Introduction au Modèle Conceptuel des Données


Le Modèle Conceptuel des Données introduit la notion d'entités, de relations
et de propriétés. Nous allons commencer par voir certains aspects
« théoriques » avant de plonger dans la pratique. Il décrit de façon formelle les
données utilisées par le système d'information. La représentation graphique,
simple et accessible, permet à un non-informaticien de participer à son élabo-
ration. Les éléments de base constituant un modèle conceptuel des données
sont :
– les propriétés
– les entités
– les relations

1.1 Les propriétés

Les propriétés sont les informations de base du système d'information.


Un client possède un numéro de client, un nom, un prénom, habite à une
adresse précise, etc. Ces informations élémentaires essentielles sont des pro-
priétés.
42 Merise
Guide pratique

Les propriétés disposent d'un type. Elles peuvent être numériques, représenter
une date, leur longueur peut être aussi définie. Par exemple : le nom est une
propriété de type alphabétique et de longueur 50, c'est-à-dire que la valeur
saisie ne comportera aucun chiffre et ne dépassera pas cinquante caractères.
Les types ne sont pas décrits au niveau conceptuel, car ce niveau est trop
proche de la définition du système physique. Nous y reviendrons plus tard.

1.2 Les entités ou objets

Comme il est aisé de le constater, les clients sont définis par certaines proprié-
tés (numéro, nom, prénom…). Le fait de les regrouper amène naturellement à
créer une entité Clients. Le symbolisme retenu est le suivant :

1.2.1 L'identifiant
Une de ces propriétés a un rôle bien précis, c'est l'identifiant nommé aussi la
clé.
L'identifiant permet de connaître de façon sûre et unique l'ensemble des pro-
priétés qui participent à l'entité. Par exemple, le fait de connaître la ville d'un

© Editions ENI - All rights reserved


client permet-il de connaître son nom ? La réponse est non. La connaissance
du nom du client permet-elle de connaître sa ville ? La réponse est toujours
non, car en cas d'homonymie la confusion entre un Durand Max et un Durand
Raymond est totale.
Il faut donc trouver, ou inventer, une propriété qui lorsque sa valeur est
connue permet la connaissance de l'ensemble des valeurs qui s'y rattachent de
façon formelle.
Le Modèle Conceptuel des Données 43
Chapitre 3

Ainsi, lorsque le numéro du client est connu, son nom, son prénom et toutes
les valeurs des autres propriétés qui s'y rattachent sont connues de façon sûre
et unique.
Au niveau du formalisme, cette propriété se souligne.
Voici le schéma modifié de l'entité Clients.

1.3 Les relations ou associations

Nous avons vu que les entités regroupaient un ensemble d'informations élé-


mentaires. Les entités sont souvent liées entre elles.

Par exemple :

Un client peut commander des articles.


Si nous analysons cette phrase, on distingue deux entités (clients et articles)
et un verbe (commander) qui indique un lien entre clients et articles. Forma-
lisons cette phrase avec Merise.
44 Merise
Guide pratique

Voilà la première étape, première car la lecture du schéma doit être améliorée
en incorporant une notion importante : les cardinalités.

1.3.1 Les cardinalités


Elles expriment le nombre de fois ou l'occurrence d'une entité participe aux
occurrences de la relation.
Dans notre exemple on peut se poser les questions suivantes :
– Combien de fois au minimum un client peut-il commander un article ?
– Combien de fois au maximum un client peut-il commander un article ?
À la première question, nous pouvons répondre qu'un client, pour être client,
doit commander au moins un article.
À la deuxième question, nous pouvons répondre qu'un client peut commander
plusieurs articles.
Voici comment symboliser cet état :

© Editions ENI - All rights reserved


Le n représente la notion de « plusieurs » ; ici nous avons représenté le fait
qu'un client peut commander un ou plusieurs articles.
Le Modèle Conceptuel des Données 45
Chapitre 3

Il faut que nous nous posions les mêmes questions pour l'article :
– Combien de fois au minimum un article peut-il être commandé par un
client ?
– Combien de fois au maximum un article peut-il être commandé par un
client ?
Pour le minimum, nous pouvons l'interpréter de la façon suivante :
A-t-on des articles qui ne peuvent jamais être commandés ?
Si nous répondons oui dans ce cas la cardinalité minimale est 0.
Pour le maximum :
A-t-on des articles qui peuvent être commandés plusieurs fois ?
Nous pouvons espérer que oui, dans ce cas la cardinalité maximale sera n.
Voici le schéma finalisé :

Définitions

La cardinalité minimale (0 ou 1) exprime le nombre de fois minimum qu'une


occurrence d'une entité participe aux occurrences d'une relation.
La cardinalité maximale (1 ou n) exprime le nombre de fois maximal qu'une
occurrence d'une entité participe aux occurrences de la relation.
46 Merise
Guide pratique

Remarque
Si le maximum est connu, il faut inscrire sa valeur. Par exemple, si dans les
règles de gestion le client n'a le droit de commander qu'un maximum de 3
articles en tout et pour tout, dans ce cas-là les cardinalités s'exprimeront de
cette façon : 1,3.

Autre exemple :

Modélisons le fait qu'une mère élève des enfants.


Nous avons deux entités, Mères et Enfants :

Une relation Elever :

Des cardinalités :
Une mère peut élever un ou plusieurs enfants.
Un enfant peut être élevé par une et une seule mère.

© Editions ENI - All rights reserved

Vous aimerez peut-être aussi