Vous êtes sur la page 1sur 134

1

AVANT PROPOS

Le présent support est élaboré dans le but de servir comme « Aide-mémoire


du cours des méthodes d’analyse informatique II et SGBD, compte tenu de la
diversité des notions que regorgent la discipline d’analyse informatique.
En effet, ce document n’est, ni un manuel complet de la méthode d’analyse
informatique (M.A.I), ni même de Bases de données, moins encore un essai
scientifique mais un support du cours mis à la disposition des étudiants de
troisième graduat informatique et pour les chercheurs en informatique. Il est le
fruit des théories de plusieurs cours d’analyse informatique.
Le cours de Méthodes d’Analyse Informatique se donne en deux parties, la
première partie en G2 informatique (MAI I) et la deuxième partie en G3
informatique (MAI II).
Dans ce cours, l’accent sera beaucoup plus focalisé sur l’analyse
informatique dans le but de faire comprendre aux étudiants que l’analyse
informatique est similaire aux études d’ingénieur, aboutissant à la production du
logiciel. Mais dans la pratique, la décision d’automatiser le traitement des
informations devient un projet informatique qu’il faut définir, concevoir,
développer, réaliser et maintenir.
En résumé, dans le cours de Méthodes d’analyse informatique II, il sera
question de faire une analyse très approfondie des problèmes liés à
l’informatisation des entreprises ou organisations.
Pour conclure, nous demandons à toute personne de nous contacter en cas
d’erreurs sur ce manuel ou pour toutes les recommandations, afin d’améliorer
ce document.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
2

OBJECTIFS ET CONTENU DU COURS

0.1 OBJECTIFS DU COURS


A l’issu de ce cours, l’étudiant (e) devra être capable de (d’) :
- Apprendre à bien faire les analyses informatiques et choisir la démarche
d’informatisation appropriée pour automatiser le traitement des
informations au sein des entreprises (ou organisation) ;
- Avoir une connaissance approfondie sur la conception du nouveau
système d’information avec Merise (ou modélisation des bases de
données) ;
- Maîtriser les notions des bases de données, y compris les opérations
fondamentales de l’algèbre relationnelle (Model Relationnel) ;
- Savoir manipuler les bases de données grâce à la formalisation des
requêtes SQL (Langage SQL).

0.2 CONTENU DU COURS


I. Analyse et méthodologie d’informatisation
II. Approche d’informatisation par Base de données
III. Etude approfondie sur Merise
IV. Notions sur les Systèmes de Gestion des Bases de données (SGBD)
V. Etude de cas

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
3

Chapitre I
ANALYSE ET METHODOLOGIE D’INFORMATISATION
I.1 NOTION SUR LES SYSTEMES D’INFORMATION

I.1.1 Description des concepts de base


L’automatisation (informatisation) des applications informatiques pose
des problèmes d’organisation, de conception, de développement, de réalisation
et de mise en œuvre, sans oublier la maintenance.
Cet ensemble des travaux est regroupé sous le nom d’analyse
informatique.
D’où l’analyse informatique est liée aux méthodes, procédures de conduite
d’une application informatique.
L’analyse en informatique s’effectue dans des organismes, des
entreprises ou institutions appelées très souvent : « systèmes ».
Un système :
1. Définition

 C’est un ensemble d’éléments en interaction dynamique poursuivant


un but commun (Joël de ROSNAY) ;
 C’est un ensemble d’éléments matériels et immatériels (hommes,
machines, procédures) en interaction, transformant par un processus
des éléments en entrée pour avoir d’autres en sortie. Les trois éléments
recensés, à savoir les entrées, les traitements et les sorties forment les
trois composantes interactives du système. (Jean Patrick MATHERON)
 Jean Louis LEMOIGNE définit le système comme suit :
 Un ensemble d’éléments identifiables avec leurs attributs,
 Qui a une activité ou une fonction,
 Qui est doté d’une structure,
 Qui évolue dans le temps,
 Qui est inséré dans un environnement et qui a une frontière ; les
éléments des autres systèmes pouvant être affectés par ce
système ou l’affecter eux-mêmes,
 Qui a une finalité (c’est-à-dire des objectifs),

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
4

Nous ajoutons à cela :


 Le concept de totalité,
 Un réseau d’informations et de communications,
 Des entrées (input) et des sorties (output).

Il simplifie cette définition de la manière suivante :


- Quelque chose (n’importe quoi identifiable) ;
- Qui fait quelque chose (activité ou fonction) ;
- Qui est doté de quelque chose (d’une structure) ;
- Qui évolue dans le temps ;
- Dans quelque chose (environnement) ;
- Pour quelque chose (but à atteindre).

2. Typologie des systèmes d’information

Un système peut être :


 Ouvert ou fermé. Il est ouvert s’il est en interaction avec son
environnement d’où il reçoit les éléments à traiter. Il est fermé s’il ne
reçoit pas d’éléments input venant d’ailleurs (exemple : certaines sectes) ;
 Naturel ou artificiel. Il est naturel s’il existe par la volonté divine (système
nerveux, solaire, etc.). Par contre, il est artificiel s’il est créé par l’homme
qui l’a doté de l’habilité nécessaire pour fonctionner selon les opérations
dictées par ce dernier.

Partant de ces définitions, nous pouvons dire que l’entreprise peut être
considérée comme un système constitué d’éléments en interaction.
Ces éléments ne sont pas statiques, mais dynamiques et poursuivant un
but ou des objectifs commun.
On peut aussi définir le système comme un ensemble des moyens
matériels, financiers, humains en interaction structuré, organisé, dynamique
poursuivant un but en fonction des objectifs prédéfinis.

I.1.2. Structure organisationnelle d’un système


Dans les entreprises, le système est organisé en différents systèmes,
appelés sous-systèmes.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
5

Si nous reprenons l’analogie anatomique, et si nous comparons


l’entreprise à un corps humain, nous pouvons réduire l’entreprise à un cerveau
qui pilote, à un muscle qui opère et des nerfs qui font transiter l’information.
Toute organisation a une action concrète sur des flux qu’elle échange avec son
environnement et que, pour ce faire, elle comporte un système de pilotage, un
système opérant et un système d’information qui constitue le lien dynamique
entre les deux premiers systèmes.

Environnement Système de
pilotage

Information Information
mémorisée à mémoriser

Système
d’information

Information
Information
mémorisée
à mémoriser

Flux des données entrantes Système Flux des données sortantes


opérant

- Système de pilotage :
Le système de pilotage est constitué des décideurs de l’organisation. Il
définit les missions et les objectifs, organise l’emploi des moyens, contrôle
l’exécution des travaux. Il assigne les objectifs à l’organisation, analyse
l’environnement et le fonctionnement interne à l’organisation, contrôle le
système opérant, et est relié aux autres systèmes par des flux
d’informations internes. Il prend, en effet, des décisions en ce qui
concerne le plan stratégique, c’est-à-dire la politique d’organisation, le
développement de l’organisation à court, moyen et long terme.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
6

- Le système d’information

Il est le trait d’union entre le système de pilotage et le système


opérant. Le système d’information est constitué des ressources humaines,
techniques et financière qui fournissent, utilisent, compilent, traitent et
distribuent l’information de l’organisation.
- Le système opérant

Le système opérant prend en charge la réalisation des opérations qui


sont la raison d’être de l’organisation. Ce système est l’ensemble des moyens
humains, matériels et organisationnels qui exécute les ordres du système de
pilotage.

I.1.3. Système d’information


L’activité d’une entreprise ou d’une organisation repose sur un ensemble de
données qui vont être mémorisées, transformées quotidiennement pour
constituer "un recueil d’informations" (documents, tableaux de bord,
graphiques, photos…).
Si nous examinons l’architecture et la gestion de ces "recueils d’informations",
nous nous apercevons qu’ils présentent les caractéristiques d’un système et
qu’ils sont dotés de fonctionnalités ou qu’ils sont basés sur des technologies leur
permettant de fournir une information de qualité, d’où l’appellation plus
appropriée de Système d’Information (SI).
Le périmètre du Système d’Information délimite les informations nécessaires à
l’activité de l’entreprise. Ce périmètre peut être localisé à l‘implantation
géographique de l’entreprise ou peut être plus vaste tout en étant clos (par
exemple : les réseaux extranet).
I.1.3.1. Définition
Un Système d’information peut être défini comme étant l’ensemble des
informations circulant dans l’entreprise ou l’organisation (informations internes
et externes).
Nous pouvons aussi définir un Système d’Information comme étant un ensemble
de ressources matérielles, logicielles ou humaines permettant d’acquérir, de
stocker, de traiter ou de communiquer les données qui vont représenter des
informations pour les utilisateurs. C’est le trait d’union entre le système de
pilotage et le système opérant.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
7

I.1.3.2. Qualités d’un système d’information


Tout système d’information doit posséder des qualités ci-après :
 La fiabilité : Le système d’information doit fournir des informations
fiables, sans erreurs, autrement dit un bon système d’information doit
contenir moins d’erreurs possibles ;
 La rapidité : Un bon système doit mettre à temps, dans un délai court les
informations ou résultats à la disposition des utilisateurs ;
 La pertinence : Un bon système doit être capable de fournir des
informations utiles en son sein ;
 La sécurité : Un bon système doit être capable d’assurer une sécurité
pour les informations en son sein ;

D’où le rôle du système d’information est de :


1. Collecter et Analyser les données internes et externes recueillies pour ne
retenir que celles jugées nécessaires ;
2. Traiter les données pertinentes retenues (mise à jour, tri, fusion, calcul,
etc.) ;
3. Stocker les résultats sur des supports appropriés ;
4. Diffuser les résultats obtenus auprès des utilisateurs.

I.1.3.3. Types des systèmes d’information (S.I)


1. Selon les moyens utilisés
 S.I FORMEL : Information écrite ;
 S.I INFORMEL : Information sous forme quelconque ;
 S.I MANUEL : Sans recours à des machines ;
 S.I AUTOMATISE : Assuré par l’ordinateur sans intervention
humaine ;
 S.I ASSISTE : Dialogue homme – machine. (La conduite est assurée
par l’homme).
2. Selon le type d’utilisation
 S.I INDIVIDUEL : Satisfait le besoin d’un individu à son poste de
travail. (Exemple : Micro-ordinateur avec tableur) ;
 S.I ORGANISATIONNEL : Plusieurs individus dans l’organisation
utilisent le système ;

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
8

 S.I INTER-ORGANISATIONNEL : Plusieurs individus appartenant à


des entreprises différentes partagent le même SI ;
 S.I TRANSACTIONNEL : Evènements élémentaires ;
 S.I STRATEGIQUE : Niveau de décision.
 S.I OPERATIONNEL : Niveau exécutif ;
 S.I TACTIQUE : Niveau intermédiaire ;

I.1.3.4. Système d’Information Informatisé


Un système d’information peut être manuel ou informatisé.

En effet, un système d’information manuel est un système d’information où les


données ou encore les informations sont prélevées, traitées et stockées à main
nue dans des grands registres qui constituent des bases des données. C'est-à-
dire que les données sont disponibles que sur des supports non informatiques.
Ce système présente beaucoup plus des lacunes entre autres la redondance, le
manque de standardisation dans la méthode, la lenteur dans le traitement, mais
aussi la dépendance entre les données et les traitements. Le système
d’information manuelle a précédé le système d’information informatisé.

A la différence d’un système d’information manuel, un système d’information


informatisé (SII) est un système d’information où le prélèvement des données et
leur traitement sont assistés par un ordinateur. Ces premières sont stockées
dans une base des données virtuelle. Cependant, en termes de la crédibilité, les
systèmes d’informations informatisés sont beaucoup plus crédibles. Ils sont
fiables et efficaces dans le traitement sans oublier la rapidité dont ils font montre
dans les recherches opérationnelles des données préalablement saisies et
stockées en leurs seins. Ces systèmes sont réputés d’avoir beaucoup plus des
qualités : le non acceptation de la redondance, l’exhaustivité et la structuration.

Ces systèmes d’information informatisés ne peuvent être une réalité sans


l’existence d’une base des données virtuelle qui se chargera du stockage et du
rendement des données en cas de besoin par l’entremise des appareils
automatiques. Cependant pour aboutir à un système d’information, il y a
beaucoup des procédés d’élaboration ou encore méthodes.

I.1.3.5. Positionnement de la base de données dans le Système d’Information


Avoir un Système d’Information pertinent, performant, évolutif et fiable passe
obligatoirement par la réalisation d’un bon Système Informatique. Le Système
Informatique est le "squelette" technique du Système d’Information.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
9

Le Système Informatique est constitué de deux composants principaux : du


matériel (serveurs, stations clientes, réseau) et des logiciels (système
d’exploitation, gestionnaires de fichiers ou de bases de données, applications
métiers).

Nous noterons toutefois que la qualité de l’information du SI sera assurée par la


mémorisation et le traitement des données via une base de données et plus
précisément par la mise en œuvre d’un Système de Gestion de Bases de Données
Relationnelles (SGBDR) : Oracle, DB2 d’IBM…

I.1.4. Système informatique


I.1.4.1. Définition
C’est un sous-ensemble du système d’information. Ainsi, le système
informatique peut être défini comme : l’ensemble des méthodes, algorithmes,
ressources humaines, matériels, logiciel permettant l’automatisation de
traitement des informations. Exemple : Windows, Word …
Tout système d’information n’est pas obligatoirement informatisé. En
effet un certain nombre d’informations se prête mal à un usage informatique.
D’autre part, informatiser à 100% une entreprise a parfois un coût prohibitif,
alors que pour un coût plus faible, on peut traiter par l’informatique 80% des
problèmes et laisser à l’homme les traitements les plus complexes.
Cependant, on confond souvent les deux aspects (système d’information
et système informatique) car la grande majorité des systèmes d’informations
sont des systèmes informatiques. En effet, l’informatique a apportée au
traitement de l’information :
 L’économie du temps.
 La fiabilité des traitements.
 La vitesse de traitement, rapidité de transmission.
 Le stockage facile sur des mémoires de masse.
 La disparition des tâches ennuyeuses et répétitives.
 Plus d’information pour un coût inférieur.

I.1.4.2. Contenu d’un système informatique


a. Le matériel informatique : c’est un équipement électronique et
mécanique permettant de réaliser les entrées et les sorties, les mémoires
de masse pour le stockage des données et des programmes ; le processeur
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
10

central pour le traitement, le réseau de processeur central pour le


traitement, le réseau de communication pour la transmission des données
ou message.
b. Le logiciel : ce terme désigne les instructions qui dirigent les opérations du
matériel informatique.
c. Les bases de données : une base de données contient toutes les données
utilisées par le logiciel d’application. La mémorisation physique des
données est assurée par des équipements de stockage utilisés pour la
mémoire secondaire.
d. Les procédures : les procédures sont décrites dans des manuels à l’usage
des membres de l’entreprise. Il existe trois types de documentation
concernant les procédures liées à l’informatique : le guide de l’usage, les
instructions pour la préparation des données d’entrée, le manuel
d’instructions pour l’exploitation du système.

I.1.4.3. Types de systèmes informatiques


Dans la pratique, il existe différents types de systèmes
informatiques :

Il existe plusieurs critères de classification des systèmes informatiques.


Ils peuvent être classés selon le degré d’organisation : système indépendant ou
intégré ; selon l’architecture de traitement : système informatique centralisé,
décentralisé ou distribué ; et selon le degré d’automatisation.
A. Selon le degré d’organisation

 Le système indépendant : Dans le système indépendant, chaque


service dispose de son propre système informatique, c’est-à-dire, ses
propres applications, matériels, logiciels et progiciels. L’indépendance
est l’avantage de ce système. Toutefois, il comporte un
inconvénient qui n’est rien d’autre que la multiplicité des matériels,
d’où peut générer la possibilité d’incompatibilité entre matériels.

 Le système intégré : Ce système recourt à l’approche base de données


et réseaux. On dispose d’un site de traitement où a été implantée une
base des données à laquelle peuvent accéder les différents services
reliés au serveur central dans un environnement client/serveur. Son

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
11

avantage est qu’il offre une intégration des données dans une base de
données, et permet l’échange des données entre services utilisateurs,
ainsi que la comptabilité des matériels et les informations.

B. Selon le degré d’automatisation

 Le système à traitement manuel ;


 Le système à traitement mécanique : on utilise les auxiliaires mécaniques.
Tels que les machines à écrire, calculatrice ;
 Le système à traitement automatique : ici, tout le travail est réalisé à l’aide
d’une machine électronique programmable (Ordinateur, machine à
lessive, etc.)
C. Selon l’architecture de traitement

 Le système centralisé : on utilise un seul site de traitement ; les différents


services envoient leurs travaux au centre de traitement informatique. Ce
qui rend l’utilisateur esclave.

 Le système décentralisé ou réparti : chaque utilisateur a son poste de


travail qui peut fonctionner en autonomie ou relié en réseau avec d’autres
points d’organisation pour les échanges des données ; un ordinateur
pouvant, dans ce cas, être considéré comme serveur et d’autres clients.

 Le système mixte ou distribué : dans ce système, le traitement s’effectue


en un site central alors que la saisie et la diffusion peuvent être
décentralisées.

NOTA : Il existe une différence entre les concepts suivants : application,


projet et domaine.
En effet,
- Les applications sont liées à l’automatisation des tâches,
- Le projet informatique englobe plusieurs applications.
- Le domaine informatique englobe plusieurs projets et applications
informatiques.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
12

Exemple.
DOMAINES DES
APPROVISIONNEMENTS

GESTION STOCKS (PROJET INFORMATIQUE)

 GESTION DES MATIERES PREMIERES APPLICATION


 GESTIONS DES PIECES DE RECHANGE INFORMATIQUE

GESTION DES
(PROJET INFORMATIQUE)
COMMANDES

 GESTION DES FOURNISSEURS EXTERNES APPLICATION


 GESTION DES FOURNISSEURS INTERNES INFORMATIQUE

I.1.5. Les systèmes interactifs d’aide à la décision (S.I.A.D.)


Ce sont des systèmes qui fournissent une aide à la décision dans des
processus faiblement structurés. Ils permettent de combiner les capacités de
jugement de l’homme et les capacités de l’ordinateur pour retrouver et traiter
les informations. Ils sont interactifs car ils reposent sur un dialogue homme
machine.
Les applications d’un S.I.A.D.
 Calcul et Simulation
 Recherche de données
 Edition sur Ecran

Les systèmes experts


Ce sont des systèmes imitant le « comportement intelligent » de l’être
humain. Autrement dit, c’est un ensemble de programmes informatiques
destinés à annuler le raisonnement des experts dans un domaine de
connaissance donné. C’est le domaine de l’intelligence artificielle.
Exemples des systèmes experts :
MYCIN : diagnostic des maladies.
PROSPECTOR : aide à la recherche de minerais.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
13

I.2 METHODOLOGIE D’INFORMATISATION


Cette méthodologie s’articule autour de trois axes, à savoir : les problèmes des
entreprises, l’analyse informatique et l’approche d’informatisation.
Roadmap
Cahier de ou feuille
charge de route
Problème des Analyse Approche
entreprises informatique d’informati
sation

I.2.1 Problématique des entreprises


Les entreprises doivent reformuler les problèmes liés à l’informatisation ou leur
état de besoin en matière d’informatisation dans un document appelé « cahier
de charge ». Et dans les lignes qui suivent, on verra un peu en profondeur
certains détails sur le cahier des charges et son élaboration.
I.2.2 Analyse informatique
I.2.2.1 Analyse du système d’information
Les problèmes dans les entreprises étant complexes, il est difficile
d’entreprendre immédiatement l’écriture des programmes (instructions). Pour
informatiser un Système d’Information, il faut avoir écouté et compris les
besoins des futurs utilisateurs. Et l’expression claire, nette et exhaustive des
besoins par la Maîtrise d’OuvrAge (MOA) ainsi que leur compréhension et leur
prise en compte par la Maîtrise d’OEuvre (MOE) sont un des facteurs clés de
réussite d’un projet informatique. En effet, la bonne compréhension de tous les
besoins des utilisateurs va permettre de circonscrire exactement le domaine et
les informations qui seront gérées, mais aussi celles qui transiteront, dans le
futur système d’information. À partir de la connaissance de ces informations, il
sera possible de recenser exhaustivement les données à gérer et de les
structurer.
Ensuite, l’informaticien (concepteur ou Analyste-Programmeur) prendra
connaissance du cahier de charge utilisateur pour un examen approfondi du
problème (analyse informatique) enfin de dégager un cahier de charge
technique.
Mais tout d’abord, pour une meilleure compréhension du problème, nous
devons savoir trois analyses sont recommandées : Analyse de l’existant, analyse

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
14

technique et analyse détaillée y compris l’aspect économique, dans le but de


bien comprendre le système actuel, de savoir si une telle informatisation est
possible ; d’avoir une idée sur son équipement du travail et le coût de cette
application enfin de présenter les pistes des solutions sous forme d’un document
appelé « feuille de route ou cahier de charge technique » avec les exigences de
la réalisation de cette application pour une approbation auprès des responsables
de l’entreprise (décideurs).
I.2.2.2 Analyse du problème par les Symboles de traitement des informations
Certains symboles sont utilisés en programmation, d’autres en analyse et
conception.

1 2 3 4

5 6 7 8 9

10 11
12

14 1 16 17

13

22 23
21
1 1
8 20

27
25 26
24

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
15

1. Document 11. Paquets de cartes perforées 21. Début en fin

2. Plusieurs documents 12. Clavier 22. Opération

3. Ecran 13. Imprimante 23. Souris

4. Clavier écran 14. Connections 24. Sous-programme

5. Traitement 15. Texte 25. Entrée & Sortie

6. Disquettes 16. Commentaire 26. Classement

7. Disque dur 17. Transmission ou distance 27. Archivage

8. Base de données 18. Symbole de tri

9. Bande magnétique 19. Partition

10. Carte perforée 20. Fusion

EXEMPLE D’UTILISATION DES SYMBOLES INFORMATIQUES


Soit à construire la chaine organique de traitement sur ordinateur d’une
application de facturation. Les données d’entrées sont :
Fiche produit (FIPRO sur le disque dur)
Fiche commande (FICOM)
Fiche client (FICLI le disque dur).
Fiche de statistique des ventes (STATV)
Le traitement à effectuer est la réalisation des factures (ou la facture) :
SOLUTION :
FICOM

FIPRO
FICLI

EDITION
UT 01 FACTURES &STOCKAGE
DE DONNEES DANS UN
FICHIER ARCH

FICH UT 02
FAC ARCH

STATV

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
16

I.2.2.3 Analyse technique et détaille du problème d’informatisation


- Lors de l’analyse informatique, il faut aussi tenir compte de la contrainte de
réalisation de l’application (contrainte d’informatisation). Les contraintes les
plus utilisés sont :
 Les contraintes financières ;
 Les contraintes relatives aux personnels
 Les contraintes de délai (le respect de timing)
- L’analyse technique se focalise beaucoup plus sur l’aspect technique de
l’informatisation. Ici il est recommandé de vérifier les rubriques suivantes :
 La faisabilité de l’application sur le plan technique (étude de faisabilité) ;
 La disponibilité des matériels en tenant compte des problèmes ci-après :
 Capacité mémoire
 Type des processeurs
 Nombres des périphériques (Entrée/Sortie)
 Système réseau (tenir compte de l’architecture des moyens de
traitement : architecture centralisée, décentralisée et distribuée)
- L’analyse détaillée présente l’application à réaliser sous forme d’un projet
informatique (objectif, délai, ressources).
 Objectifs (objectif principal et objectifs secondaires)
 Délai (timing du projet ou la durée du projet)
 Ressources (financières, matérielles, logicielles, humaines)
NOTA : Les ressources financières représentent les aspects économiques de la
mise en œuvre de l’application (Budget d’informatisation). Ce budget doit tenir
compte de certaines contraintes en se basant sur les rubriques suivantes :
 Le coût de réalisation de l’application (le coût de l’étude préalable, le
coût de conception et le coût d’implémentation) ;
 Le coût de la formation des informaticiens et utilisateurs
 Le coût d’installation des équipements (et/ou le système réseau)
 Le coût d’implantation de l’application et autres.
I.2.2.4 Analyse du problème sous forme du projet informatique
- Nous pouvons définir le projet informatique comme étant un ensemble destiné
à répondre aux objectifs prescrits dans un temps limité en rassemblant les
ressources financières, matérielles, logicielles et humaines nécessaire suivant un

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
17

processus cohérent. D’où, la nécessité de présenter le problème


d’informatisation sous forme d’un projet informatique.

Ici, il faut :
 Définir les objectifs du projet (principal et secondaire) et savoir s’il s’agit
d’un projet à court terme (< 1 an), à moyen terme (1 – 3 ans) ou à long
terme (> 3 ans).
 Connaître la durée d’exécution de ce projet
 Former ton équipe de travail de travail en plaçant à la place qu’il faut
l’homme qu’il faut (la méritocratie) ;
 Faire la planification des tâches et savoir la durée de finissage de chaque
tâche. Tenir compte des affectations des personnes de ton équipe par
tâche.
I.2.2.5 Analyse du problème et élaboration du cahier de charges
- Le cahier des charges est un document (contrat), mentionnant les délais, les
coûts, les devoirs et les obligations de chacune des parties au contrat. Ce
document engage donc le concepteur et le promoteur de l’automatisation.
- Le cahier représente, un document qui contient les besoins de l’entreprise en
matière d’informatisation associé à la réalisation du projet. Les grandes lignes
d’un cahier des charges sont : Besoin en équipement, Besoin en matériels,
Besoin en ressources humaines et Estimation du projet.
NOTA : De manière générale, nous distinguons deux types de cahier des charges,
à savoir : le cahier de charge utilisateur, ce document est élaboré par le
responsable de l’entreprise et le cahier de charge technique, est élaboré par
l’ingénieur informaticien. Voici un modèle du cahier de charge technique :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
18

EXEMPLE DE CAHIER DES CHARGES TECHNIQUES


1 - Contexte et définition du projet

[Expliquez ici les raisons de l’existence de ce projet]

2 - Objectif du projet

[Exprimez les résultats attendus]

3 - Périmètre du projet

[Fixez les limites]

4 - Description fonctionnelle des besoins

[Explicitez votre besoin en termes de fonctionnalités]

5 - Enveloppe budgétaire

[Précisez le montant financier que vous allouez au projet]

6 - Délais de réalisation

[Fixez la date de livraison attendue de votre projet]

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
19

I.2.3 Démarche d’informatisation


La démarche d’informatisation (ou approche d’informatisation), est un
ensemble des outils ou méthodes permettant d’automatiser ou numériser le
traitement des informations dans une entreprise ou organisation.
En informatique, nous distinguons plusieurs démarche ou approches
d’informatisations mais les plus utilisées sont : Approche fichier, Approche Base
de données (ou Data Base), Approche Entrepôt de données (ou Data
Warehouse) et Approche Big Data. Mais actuellement, l’approche Base de
données est la plus utilisée en ce qui concerne les problèmes liés à
l’informatisation. D’où, la nécessité de choisir l’approche base de données.
NOTA : Dans ce cours de MAI II, nous allons utiliser uniquement l’approche
d’informatisation par les bases de données. Voici certains modèles liés à cette
approche (y compris ses étapes) :

1ère Modèle. 2èmeModèle. 3ème Modèle.

PROBLEME A RESOUDRE PROBLEME A RESOUDRE PROCESSUS D’AUTOMATISATION


(PROBLEME A RESOUDRE)

ETUDE PREALABLE ETUDES PREALABLES


ANALYSE, CONCEPTION

SOLUTIONS LOGICIELLES SOLUTIONS PROGICIELLES


MODELE AUTOMATISABLE
MISE EN ŒUVRE & REALISATION TRAITEMENT ALGORITHMIQUES
ETUDES CONCEPTUELLES

ETUDES DE DEVELOPPEMENT PROGRAMMATION


RESULTAT

REALISATION RESULTAT

RESULTAT

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
20

Chapitre II
APPROCHE D’INFORMATISATION PAR BASE DE DONNEES

II.1 NOTION SUR LES BASES DE DONNEES


II.1.1 Définitions
- Une base de données, est un ensemble structuré de données archivées dans
des mémoires accessibles à l’ordinateur pour satisfaire un ou plusieurs
utilisateurs simultanément en mêmes temps opportuns et qui répond aux trois
critères suivants : l’exhaustivité, la non-redondance et la structure.
- Une base de données est définie comme un grand fichier dans lequel on
retrouve des petits fichiers ayant des liens entre eux, renfermant des
informations nécessaires, non répétitives et permettant à plusieurs utilisateurs
d’y accéder simultanément.
- Un SGBD (Système de Gestion de Base des données) : est logiciel qui permet
d’interagir avec une base de données. Il permet à un utilisateur de définir des
données, de consulter les données ou de les mettre à jour.
II.1.2 Modèles de base de données
Les différents modèles de bases de données sont : le modèle hiérarchique, le
modèle réseau, le modèle relationnel, modèle par déduction et modèle objet.
 Modèle hiérarchique : c’est un modèle dont les informations sont
organisées de manière arborescente, accessible uniquement à partir de
l’arbre hiérarchique. Le problème est que les points d’accès à
l’information sont trop restreints.
 Modèle réseau : c’est un modèle où toutes les informations peuvent être
associées les unes aux autres et servir des points d’accès. Le problème est
la trop grande complexité d’une telle organisation.
 Modèle relationnel : ici toutes les relations entre les objets contenant les
informations sont décrites et représentées sous la forme de tableau à
deux dimensions. Le succès de ce modèle est que, la gestion de données
fonctionne selon la théorie mathématique de l’algèbre relationnelle.
 Modèle par déduction : comme dans le modèle relationnel les données
sont décrites et représentées sous la forme du tableau à deux dimensions.
La gestion de données (insertion, extraction, etc.) fonctionne selon la

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
21

théorie mathématique du calcul dans la logique des prédicats. Il ne semble


exister des SGBD commercial directement basé sur ce concept. Mais il est
possible de considérer un programme Prolog (Programmation logique)
comme une base de données car il intègre une description des données.
Ce sont plutôt les logiciels de réseaux sémantiques qui sont concernés par
cette approche. (Exemple : logiciel AXON).
 Modèle Objet : ici les données sont décrites comme des classes et
représentées sous forme d’objets, un modèle relationnel-objet devrait à
terme devenir le modèle de base.
NOTA : L’expérience montre que, le modèle relationnel s’est imposé parce qu’il
était le plus simple en termes d’indépendance des données par rapport aux
applications et facilite la représentation des données.

II.1.3 Modèles de données relationnelles


II.1.3.1 Description
- Ce modèle est défini par EF Codd de la société IBM dès 1970 et il a été amélioré
et rendu opérationnel dans les années 80 sous la forme de SGBD-R (SGBD
Relationnel).
- Voici une liste non exhaustive de SGBD-R : ORACLE, ACCESS DE MICROSOFT,
MYSQL, SQL SERVER, DB2 D’IBM, INFORMIX, SYBASE, INTERBASE DE BORLAND
POSTGRESQL, etc.
II.1.3.2 Normalisation d’une relation
II.1.2.3.2.1 Description et définition
- La normalisation est un processus qui consiste à éliminer les dernières
redondances et les valeurs nulles c’est-à-dire limiter le risque d’incohérences
potentielles.
Sur ce, le concepteur applique un algorithme de normalisation ou la théorie de
normalisation. Dans ce processus de normalisation, nous allons nous appuyer
sur les notions de dépendance fonctionnelle, dépendance multivaluée et
dépendance de jointure qui tirent leurs origines dans les contraintes du monde
réel. Ainsi, la dépendance fonctionnelle permet de définir les premières formes
normales jusqu’à la forme normale de Boyce-Codd (1FN, 2FN, 3FN ou BC et 4FN).

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
22

Par ailleurs, la dépendance multivaluée permet de définir la quatrième forme


normale (4FN) et la dépendance de jointure, la cinquième forme norme (5FN).
- On appelle schéma de relation la donnée d’un ensemble de relations liées à un
même domaine, soit cela peut représenter les dépendances fonctionnelles entre
les attributs de ces relations.
Un schéma relationnel est normalisé pour une certaine forme normale si les
relations qui le composent, sont toutes dans la forme normale spécifiée.
II.1.2.3.2.2 Règles de normalisation d’une relation
- Il est toujours conseillé dans la pratique de normaliser une relation pour éviter
la redondance de données dans la base de données.
- Les principales règles de normalisations appelé parfois « les formes normales »
sont :
 1FN (Première Forme Normale) : une relation est dite en 1FN si, chaque
attribut est représenté par un identifiant unique c’est-à-dire une table est
en 1FN si, elle a une clé primaire et que ses attributs non clés sont
atomiques (élémentaires).
 2FN (Deuxième Forme Normale) : une relation est dite en 2FN si, elle est
en 1FN et si chaque attribut qui n’est pas une clé, dépend entièrement de
tous les attributs qui composent la clé primaire.

 3FN (Troisième Forme Normale) : Une relation est dite en 3FN si, elle est
en 2FN et si chaque attribut qui ne compose pas la clé primaire dépend
directement de son identifiant et à travers une dépendance fonctionnelle.
Autrement dit, une table est 3FN lorsqu’elle est déjà en 2FN et que les
attributs non clés de la table ne dépendent pas transitivement de la clé
primaire. Garder dans la table initiale les attributs dépendant directement
de la clé primaire. Regrouper dans une autre table, les attributs dépendant
transitivement de la clé primaire. Cette forme normale est parfois appelée
« Forme normale de BOYCE-CODD ou BCFN).

NOTA : La mise en forme de BOYCE-CODD permet d’éviter des


redondances dues à l’existence de dépendances fonctionnelles autres que
celles de la clé vers des attributs non clés.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
23

II.1.3.3 Algèbre relationnelle


- Le mot algèbre nous ramène à la mathématique. De ce fait, l’algèbre
relationnelle est un support mathématique cohérent sur lequel repose modèle
relationnel. Elle a été inventée par E. Codd. L’objectif poursuivi dans l’algèbre
relationnel est d’effectuer des opérations qui pourront produire des nouvelles
relations.
- Une algèbre relationnelle est une famille d’opérateurs binaires ou unaires dont
les opérandes sont des relations. Alors une question se pose : « Pourquoi
l’algèbre relationnelle ? » C’est parce que le SGBD-R est le plus utilisé
actuellement et cela a comme fondement l’algèbre des relations dans le
domaine mathématique. D’où, l’appellation « les opérateurs sur les SGBD-R »
(Algèbre relationnelle).
- Les principaux opérateurs de l’algèbre relationnelle sont :
 Union
 Intersection
 Différence
 Projection
 Sélection ou Restriction
 Produit cartésien
 Jointure

II.2 ETAPES D’INFORMATISATION PAR APPROCHE BASE DE DONNEES


IL est important de retenir trois grandes étapes pour réaliser une application
sous l’approche base de données, à savoir :
 Etude d’opportunité
 Conception du nouveau système
 Implémentation du système (Application).
II.2.1 Etude d’Opportunité
L’étude d’opportunité ou de faisabilité, va permettre d’étudier le projet
d’automatisation et de décider de sa faisabilité technique, humaine ou
financière. Cette étude peut être décomposée en étapes qui sont :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
24

 Etude préalable
 Analyse de l’existant
 Diagnostic de l’analyse et scénario de mise en œuvre

II.2.1.1 Etude Préalable

II.2.1.1.1 Description et Définition

En informatique, tout problème d’informatisation commence par une étude


préalable qui représente la première étape d’informatisation. C’est ainsi, nous
disons que, l’étude préalable est la première étape d’informatisation d’une
application qui consiste à étudier profondément le système existant afin de
déceler des anomalies constatées en vue de pouvoir prendre des décisions
d’amélioration et d’informatisation de ces anomalies constatées.
En effet, l’étude préalable peut être définie comme étant un ensemble
d’investigation menée dans le but de comprendre le fonctionnement du système
pour enfin proposer des solutions qui permettent à la hiérarchie de l’entreprise
de se décider oui ou non sur l’informatisation de l’application. Cette étude a pour
but d’exposer correctement le problème à résoudre. D’où, l’étude préalable a
pour objectif de répondre à la question « oui ou non doit on informatiser ? ».
Pour cela, il est nécessaire d’étudier le système actuel c’est-à-dire le système
existant.
II.2.1.1.2 Procédure à suivre

 Présentation de l’entreprise ou organisation


 Prise en compte du cahier de charge utilisateur
 Description des objections
 Formation du groupe de travail
 Planification des travaux
 Elaboration du cahier de charge technique

Voici certains détails sur ces différents points :

1. Présentation de l’entreprise

Ici il est important de connaître les éléments suivants :


 Historique de l’entreprise ;
 Situation géographique ;

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
25

 Structure organisationnelle et fonctionnelle ;


 Domaines d’activité, etc.

2. Cahier de charge utilisateur

Il est nécessaire de prendre connaissance du cahier de charge utilisateur,


détaillant le vrai problème qui nécessite l’informatisation. Pour une meilleure
procédure, il faut appliquer les techniques de récoltes des données.

La récolte des données


Les techniques utilisées lors de l’analyse de l’existant pour recueillir
les données sont multiple, cependant en informatique, on utilise les techniques
telles que :
 L’interview ;
 L’observation ;
 Documentaire ;
 Questionnaires (Enquête).

(1) L’interview
C’est la technique la plus utilisée pour étudier le système existant. La technique
d’interview nécessite une préparation, ainsi l’analyste doit établir avant
l’interview, les différentes questions à poser aux interlocuteurs. Ces questions
sont souvent conçues à l’aide d’outils informatiques. Cependant l’expérience de
l’analyste compte beaucoup.
Recommandations :

 Ne pas utiliser les termes trop techniques


 Être bien habillé
 Préparer les questions
 Rappeler toujours le but de votre visite
 Ne pas interrompre celui qui parle
 Promettre toujours de passer une fois le travail terminé
 Maitriser la langue du travail.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
26

(2) L’observation
L’observation nécessite la présence de l’analyste dans les différents postes de
travail concernés par l’application. On recommande toujours au niveau de
chaque poste de travail, un délai d’au moins deux semaines pour observer (voir)
la façon de travailler de l’agent ainsi que les documents traités.
Cette méthode est applicable dans les entreprises où l’organigramme, fiche et
manuel des procédures n’existent pas. Elle permet de mieux comprendre la
nature exacte du travail réalisé et les conditions réelles du fonctionnement.

(3) Technique documentaire


Cette méthode est utilisée dans le cas où l’entreprise garde des archives, ainsi
on peut toujours se référer à ces archives, pour récolter les données désirées.
Dans le cas où une partie du travail est déjà automatisée, la documentation de
dossier d’analyse et de programmation permet de prendre connaissance de
l’organisation de traitement (organigramme des données, organigramme
détaillé) et des informations (saisie, fichier, sortie).
(4) Technique de questionnaires
Cette technique nécessite des moyens financiers énormes, liés aux problèmes
des ressources humaines et autres : En outre, cette technique nécessite la
présence des spécialistes dans l’élaboration des questions qui peuvent être du
type fermé ou ouverts.

Remarques :
 Les étapes évoquées ci-dessus sont appelées préliminaires ou travaux
organisationnels ;
 Après avoir défini les objectifs, formé des groupes d’études, planifié les
travaux, choisi la(les) technique(s) de récolte de données, on peut alors
passer à l’analyse du système existant.

La formalisation de l’étude des flux, des stations qu’ils traversent, et des divers
documents rencontrés peut se faire selon plusieurs méthodes : diagramme des
flux, schéma de circulation des informations, tableau de flux d’information,
selon que l’on s’intéresse aux seuls flux et stations rencontrés lors de l’étude ou
que l’on entend également faire apparaitre les divers documents rencontrés et
les traitements qu’ils subissent au niveau des stations traversées.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
27

Plus simplement il faut produire un document, le plus clair et le plus explicite


possible. Clair, pour celui qui le conçoit certes, mais surtout pour tous ceux qui
pourront être amenés à s’en servir… En analyse informatique, on utilisera la
plupart du temps le schéma de circulation des informations ou de diagramme
des flux.
3. Description des objectifs

Avant d’informatiser une application en informatique ou un projet, le premier


problème à résoudre est la description ou la définition des objectifs. Les
objectifs sont initiés par les responsables du projet ou de l’application. Ils
peuvent être à court, moyen et long terme.
4. Formation du groupe de travail

Le travail en informatique, notamment au niveau d’informatisation du


système d’information est toujours mené en équipe. Ainsi, l’analyse doit avoir
les objectifs, consulter le groupe d’étude chargé de conduire l’application.
Le groupe d’étude ne doit pas être constitué des seuls informaticiens mais
doit impliquer également les futurs utilisateurs, ainsi que des organisateurs.
Un responsable du groupe d’étude sera nommé qui suivra généralement le
déroulement de l’automatisation jusqu’à sa mise en place.
Le groupe d’étude est constitué comme suit :
 L’informaticien (Responsable du projet) ;
 Différents membres des services ou des départements concernés par
le problème ;
 Un consultant extérieur ;
 Quelques utilisateurs ;
 Ingénieur en organisation ;
 Un membre de comité de gestion/Direction.
L’informaticien responsable du projet et les différents membres de service
plus un membre du comité de gestion ou de direction vont constituer le
comité informatique. Ce comité constitue le trait d’union entre la
direction générale et les utilisateurs, notamment pour le suivi de conduite
et de la réalisation du projet ou application.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
28

Remarque : Après avoir formé le groupe d’étude, le responsable du projet


ou de l’application doit organiser les séances de formation et
d’information.
Les séances de formation sont destinées aux membres du groupe pour
leur expliquer le bien-fondé de l’automatisation et les séances
d’information sont destinées au personnel concerné par l’automatisation.

5. Planification des travaux (Etablissement d’un planning prévisionnel)

La conduite et la réalisation d’une application informatique nécessite


l’ordonnancement des tâches et la planification des travaux.
Ainsi la planification concerne les domaines des études préalables,
conceptuelles, de mise en œuvre et de maintenance. Il existe différentes
méthodes de planification en informatique. La plupart de ces méthodes
découlent de la recherche opérationnelle (RO).
On peut citer les méthodes telles que :
 DIAGRAMME de GANTT
 Méthode des Potentiels Métra (MPM) ;
 P.E.R.T (Program Evaluation and Review Technic, Technique d’évaluation
et de contrôle des programmes ou encore l’évaluation et la révision
Technique du Programme)

 DIAGRAMME DE GANTT

C’est un graphe de planning et de prévision ayant pour but de mettre en


évidence les durées et de permettre ainsi le contrôle, à tout moment, de
l’évolution du projet, par comparaison des réalisations aux prévisions.
PERIODE MOIS
TACHES JANV FEV MARS Avril MAI
A.P
A.C
REAL
MAINT

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
29

 METHODE DES POTENTIELS METRA (méthode française)


46 61
35
46 AC

20
96 96 116 116
0 0
MAINT FIN
AP

50
46
46 46

REAL

 METHODE PERT (méthode américaine)

81 96

AC 3

35

AP REAL MAINT
0 0 46 46 96 96 116 116

50 20
1 46 2 4 5

AP : Analyse Préalable
AC : Analyse Conceptuelle
REAL : Réalisation
MAINT : Maintenance

II.2.1.2 Analyse de l’existant

Cette analyse a pour but des recueillir les données qui vont servir pour élaborer
le diagnostic en vue de la recherche et de choix des solutions ou de la solution
future permettant l’amélioration du système actuel.
En effet, l’analyse de l’existant est nécessaire car elle permet de répondre à la
question « Oui ou Non faut-il informatiser ? » car tout problème ne pas
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
30

informatisable. Dans le cas de « Oui », quelle solution alors faut-il choisir ?


Apporter ? D’où l’informatisation ne s’impose pas. Ici nous faisons les analyses
suivantes :
 Analyse de la structure et des activités du système existant
 Analyse des documents utilisés
 Analyse des postes de travail
 Analyse er schéma de circulation des informations

1. Analyse de la structure et des activités du système existant

L’analyse ou l’étude de la structure est souvent réalisée à partir de


l’organigramme de l’entreprise ou de l’organisation.
Dans le cas où l’entreprise (organisation) n’a pas de structure, l’analyste
(informaticien) doit lui-même reconstituer l’organigramme en utilisant la
technique d’interview ou de questionnaire.
Par exemple :
Je reçois les ordres de …
Mon chef est …
Je transmets les documents à …

Au cours de l’analyse de la structure de l’entreprise, l’analyste s’efforce de


déceler les liens qui existent entre les services, entre les agents (liens formels et
informels), l’organisation mise en place.
Dans la pratique, l’analyse de la structure permet de déceler les anomalies
existant au niveau de l’organisation de l’entreprise ou de l’institution.
Les activités des entreprises doivent être aussi recensées. Ceci permet de voir la
taille et la complexité de l’entreprise ou de l’institution à informatiser.
2. Analyse des documents utilisés

Nous devons distinguer tout d’abord les documents internes à l’entreprise,


relatifs à son domaine, sa politique, son engagement, et les documents externes
pour pouvoir prendre en compte les exigences et les évolutions à l’entreprise.
Ces documents permettent à l’informaticien d’identifier par le moyen de chacun
de ceux-ci, les informations appropriées pour ses entretiens, afin de comprendre

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
31

le fonctionnement de l’entreprise dans le but de concevoir un système


d’information qui va répondre aux besoins spécifiques de celle-ci. Cette étude
permet de faire l’inventaire de toutes les informations existantes qui circulent
au sein de l’entreprise.
Cas concret :
1. La carte d’élève
a) Rôle
La carte d’élève sert a identifié l’élève à l’extérieur de l’école pour le
différencier des autres élèves. Elle est un document qui prouve que l’élève est
en ordre.
b) Modèle

REPUBLIQUE DEMOCRATIQUE DU CONGO


MINISTERE DE L’EPSP
PHOTO
Collège Sainte Rita

Carte d’élève
Matricule:……………………………………………………………………………………………
Noms :…………………………………………………………………………………………………
Classe :……..………………………………………………………………………………………...
Lieu et Date de Naissance :…………………………………………………………….......
Sexe :…..........................
Age :……………………….......
Année scolaire :………………………………………/………………………………………….
Signature du Préfet :……………………………………
Signature du directeur des études……………….

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
32

C) Description du document
N° Nom rubrique Code Type Taille
rubrique Rubrique
1 Matricule Matéelev Text 10
2 élève Noms Text 30
3 Noms Classe Text 10
4 Classe LieuN Text 15
5 Lieu de Nais. DateN Date -
6 Date de Nais. Sexe Text 1
7 Sexe Age Text 10
8 Age Date Date -
9 Date Ann Num 10
10 Année Signature signature signature
scolaire
Signature

2. Reçu
a) Rôle
Le reçu sert à prouver que l’élève a payé ses frais. C’est le seul document officiel approuvé
par le collège qui renseigne sur le paiement effectué par l’élève (acompte ou solde).

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
33

b) Modèle

DIOCESE DE KINSATU N° : ………………………………..


Congrégation des Frères de Saint
Joseph de Kinshasa MONTANT (en chiffres)
COLLEGE SAINTE RITA
Cité Mpumbu-C/Mont-Ngafula …………………………………

Recu de :…………………………………………………………………………………………………………………………………..

La somme de : (en chiffres)

(En lettres)……………………………………………………………………………………………………….

Pour :………………………………………………………………………………………………………………………………………..

Description

N° Nom rubrique Code Type Taille


rubrique document
1 Numéro Reçu NumeroR Text 10
2 Montant Chiffre MontantC Num -
3 Noms éleve NomsE Text 30
4 Classe Classe Text 10
5 Somme en SommeC Num -
6 Chiffre SommeL Text 30
7 Somme en Lettre Motif Text 20
8 Motif DateElab Date -
9 Date élaboration Ann Num 10
10 Année scolaire Signature Signature signature
signature

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
34

3. Analyse des postes de travail

Après avoir analysé la structure de l’entreprise, on peut alors procéder à l’étude de poste
de travail. Un poste de travail est défini comme une entité qui exerce une activité au sein
d’un service, département.
Le poste de travail concerne chaque service et chaque département. Ainsi, l’analyste,
pour réaliser ce travail, aura comme point de référence, la structure de l’entreprise. Lors
de l’étude de poste, les informations telles que :
 Le nom du poste ;
 La modification mnémonique du poste (abréviation du code) ;
 Le travail réalisé au sein de chaque poste ;
 Le responsable du poste de travail, ainsi que sa qualification ;
 Les moyens matériels utilisés ;
 Le nombre de document traités à chaque poste … doivent être recensées.

Pour faciliter la récolte de ces informations, on établit une fiche appelée : « fiche
descriptive d’analyse de poste » dont voici le modèle :

FICHE DESCRIPTIVE DE POSTE DE TRAVAIL (ATTRIBUTION)


APPLICATION : GESTION DE STOCK Analyste : Jean-jacques
DOMAINE : APPROVISIONNEMENT Date : le 25/12/2012
N° Nom Nom Travaux
Responsable Moyens Nombre Obs
Poste Effectués
du poste de D’exemplaire
Mnémonique (grade) traitement
01 Facturation FAC Etablissement Mr DAVID Manuel 500/jour
Des factures
Contrôle

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
35

Les informations recueillies au cours de l’analyse de postes vont permettre à élaborer le


diagnostic de l’existant ou à choisir la (les) solution (s) appropriées d’organisation de ce
poste.
Remarque :
Lors de l’étude de poste, l’analyse de la rubrique « travaux effectués » ainsi que la
rubrique « responsable du poste » permet de mieux situer les attributions de chacun
dans le service.

4. Analyse de flux d’information

Le flux d’information constitue l’ensemble d’informations circulant dans l’entreprise ou


l’ensemble d’informations échangées entre département, service et environnement
extérieur.
L’analyste est tout d’abord appelé à narrer la situation vécue au sein de l’entreprise.
a. Narration
La narration consiste ici à raconter sous forme textuelle la circulation des informations
telle que vécue dans différents services de l’entreprise.
Exemple
Le processus de traitement pour l’élaboration des factures et de livraison des
marchandises se présente comme suit :
Lorsque le client émet le bon de commande, le service de réception établit 4 exemplaires
de bon de commande de client (liste de bon de commande). La liste de bon de commande
est ensuite envoyée au service vente. Le service vente établit le bon de commande valide
après vérification des marchandises disponibles au service magasin. Le service magasin
reçoit du service vente le bon de commande valide et procède à l’établissement de bon
de livraison en deux exemplaires, l’un sera envoyé au client et l’autre exemplaire au
service de facturation. Les informations provenant du bon de livraison envoyé au service
facturation sont saisies à l’aide d’un clavier pour constituer un fichier bon de livraison. Le
fichier bon de livraison sur disquette va servir à éditer les factures sur une unité centrale
en plusieurs exemplaires. Un exemplaire est envoyé au service comptable pour passation
d’écriture, un autre vers le client et un autre au service vente.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
36

b. Dictionnaire de données
Recensement des postes de travail Dictionnaire des données
 Client  BC= Bon de Commande
 Réception  BCV= Bon de commande
 S. vente valide
 S. Magasin  BL= Bon de Livraison
 S. Facturation  FBL= Fichier Bon de
 S. Comptable Livraison
 Fac= Facture

c. Analyse schématique de flux d’information


Dans la pratique, le flux d’information est souvent représenté sous forme de document
ou autre support d’information.
L’analyse de flux d’information peut être réalisée sous différentes formes :
1. Diagramme de flux d’information ;
2. Matrice de flux d’information ;
3. Tableau de flux d’information ;
5. Schéma de circulation de flux d’information.

Lors de l’étude de document, on distingue, la classification suivante :


- Les documents internes : Sont des documents traités au sein de différents services
de l’entreprise
- Les documents externes : Sont des documents provenant de l’environnement
externe
- Les documents intermédiaires : Sont des documents utilisés pour un traitement
temporaire appelés aussi « document de situation ».

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
37

Tableau de flux d’information


Le tableau d’analyse de flux d’information permet au niveau de l’analyse de l’existant de
recenser les différents documents traités pour l’application concernée.
Ainsi, ce tableau met en évidence le type de document utilisé, leur système de
codification (nom mnémonique) la désignation en claire de ce document, l’origine et la
destination des documents. Les informations véhiculées.

N° Nom du CODE Informations ORIGINE Destination Observat


document Véhiculées ion
01 Facture FAC  Info sur le Vente Comptabilit
client
é
 Qté, PU, Nom
du produit
vendu

Remarque :
Dans le cas où le système est déjà informatisé, on parlera alors de l’étude de documents
et fichiers. Dans ce cas, il faudra étudier les fichiers et bases de données :
- Le support, le contenu, les modalités de MAJ,
- La fréquence d’utilisation, le taux d’activité, le volume.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
38

Diagramme de flux d’information

Service
Commande LBC
Vente
1
Réception
BC
Fac BC 2
BCV 3
8
4

BL
BL
Service Magasin 5
Fac Facturatio 6

7
Fac
9

Service
Comptable

Diagramme des Flux

Schéma de circulation des informations

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
39

Client Réception S. vente S. Magasin S. Facturation S. Comptable
100 200 300 400 500 600

201 301 402 5


101

Fac
BC LBC BC
BL

1 - Réception client - Réception LBC - Réception du BC - Réception du BL Réception Fac


Présentation à la Réception - Saisie Passation d’écriture
- Etablissement LBC - Envoie d’une copie de BC - Vérification produits commandés
Archivage

BC BC
401 302 Compte
401 LBC
FBL
402 302
201 BL BC
BCV
301

2 Réception & Classement du BL - Réception paiement - Réception BCV sauvegarde des informations
édition & envoie Fac
client - Etablissement et envoie des
- Etablissement & envoie BL
BCV

BL BCV

BL Fac
502 502

402
102
Fac BC 501 303
601 103
03
3 Réception & Paiement Facture Réception Facture
classement Livraison marchandises
Archivage

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
40

Fac
Fac

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
41

5. Analyse des moyens de traitement

Les moyens à traiter les informations se subdivisent en 2 grandes catégories :


- Moyens matériels
- Moyens humains
- Moyens financiers
a. Les moyens matériels

Cette analyse consiste à recenser les différents matériels au sein de l’entreprise


ou de l’organisation pour traiter les informations (données) de l’application
étudiée.
Dans la pratique pour faciliter l’analyse des moyens matériels, on établit des
fiches appelées « fiche d’analyse des moyens de traitement » dont voici le
modèle :

FICHE D’ANALYSE DES MOYENS MATERIELS

PROJET…….
ANALYSTE…….
DATE…………………
N° MATERIEL QUANTITE DATE DUREE ETAT
D’ACQUISITION D’AMMORT
01 Machine à écrire 2 27/09/2004 8 ans Mauvais

02 Ordinateur 1 11/11/2005 6 ans En panne


PENTIUM M
03 Registres 8 07/10/2015 2 ans Bon
04 Tables 5 01/01/2011 7 ans Bon
05 Armoires 5 01/01/2011 7 ans Bon

Commentaires
A partir des informations des moyens de traitement, l’analyse peut lors de la
recherche de solution proposée, le type de solutions appropriées pour les
matériels futurs à utiliser pour traiter les informations.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
42

Ainsi, par exemple l’ordinateur qui a été acheté le 11/11/2005 a déjà vieilli. D’où
la nécessité d’acquérir d’autres ordinateurs beaucoup plus performants. Il se
peut aussi que la capacité normale de l’ordinateur au niveau de RAM soit
insuffisante, etc…
Remarques :
Avant de proposer le matériel, il faut d’abord analyser les moyens matériels
existants.
En dehors de ces informations, il est aussi nécessaire dans le cas où l’entreprise
est déjà automatisée, de recueillir les informations ci-après :
 Les systèmes d’exploitation utilisés ;
 Le type de réseau (ex. réseau mondial, local, métropolitain) ;
 Moyens de communication doivent être recensé en vue de la proposition
d’une meilleure solution.
b. Les moyens humains

L’analyse des moyens humains est nécessaire pour mieux


comprendre le niveau d’étude et l’ancienneté du personnel qui travaille au sein
du service concerné par l’application. On recommande l’établissement d’une
fiche appelée « Fiche d’analyse des moyens humains »
FICHE D’ANALYSE DE MOYENS HUMAINS
PROJET :……………………..
ANALYSTE :……………………
DATE :………………………

N° POSTE NOMBRE NIVEAU ANCIENNETE


DE D'ETUDES
PERSONN
ES
01 Comptabilité 1 G3 10 Ans
02 Réception 2 D6 5 ans, 2 ans

Commentaire :
Les informations recueillies lors de l’analyse des moyens humains permettront
de mieux rechercher et proposer les meilleures solutions futures.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
43

Ainsi par exemple si les travaux à réaliser sont trop complexes au niveau de la
comptabilité, l’expert ayant une qualification D6 ne convient pas à ce poste
malgré son ancienneté en vue de l’évolution technologique de traitement des
données dans ce service.
c. Les moyens financiers

Cette analyse consiste à recenser les différents matériels au sein de


l’entreprise ou de l’organisation pour traiter les informations (données) de
l’application étudiée.
6. Analyse de schéma de circulation des informations (Circuit de circulation
des informations)

Remarques 1 :
L’analyse de schéma de circulation des informations (circuit) est l’une des
méthodes utilisées pour présenter ou analyser les flux d’information entre
services. C’est la partie la plus essentielle au niveau de l’analyse de l’existant.
Cette analyse se réalise dans le cas ci-après :
 L’entreprise n’est pas informatisée.

A l’aide de la technique du questionnaire reconstitue le circuit de circulation des


informations.
Les questions telles que :
 Mon chef est…
 Je reçois les ordres de…
 Je transmets les rapports.

Peuvent aider quelques fois l’analyste à mieux reconstituer le circuit de


circulation des informations.
 L’entreprise est informatisée

Dans ce cas, pour reconstituer le schéma de circuit des informations, l’analyste


peut se référer au Centre de Traitement Informatique (CTI).
 Cas de réorganisation de l’entreprise

Dans ce cas, l’analyse doit réorganiser, c’est-à-dire proposer un nouveau schéma


de circulation des informations.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
44

Remarques 2 :
Les informations circulent dans les entreprises souvent sous forme de
documents, diagrammes de circulation des informations.
Dans la pratique, il existe différents diagrammes pour présenter la circulation
des informations ou la présentation du circuit des informations.
a. Diagramme opération service

Dans ce cas, on présente les différentes opérations ainsi que les services
concernés par les opérations.
b. Diagramme service sur service (poste/poste)

Dans ce cas, on tient compte de poste de travail.


II.2.1.3. Diagnostic de l’existant : bilan du system actuel

Lors du diagnostic de l’existant, on recense les problèmes perçus par les


utilisateurs, puis on recherche les causes réelles afin d’apporter des réponses
adéquates dans la solution à proposer.

La critique doit être réaliste et pragmatique. Les points forts du système actuel
doivent être retenus.

La démarche à suivre pour l’établissement du diagnostic et la suivante :

1. Le recensement des problèmes


2. L’analyse des causes
3. Elaboration des solutions.

 Recensement des problèmes

Dans la pratique, les problèmes qui émergent sont souvent de deux ordres :

 Manque d’efficience : le système existant n’est pas performant eu égards


aux objectifs qui lui sont assigné, il ne donne pas des résultats rentables.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
45

 Manque d’efficacité : le système actuel, bien que fonctionnant


correctement, ne répond pas aux nouveaux objectifs qu’on souhaite lui
assigner.
Ces problèmes peuvent être dus aux causes ci-après :

- Débit trop faible


- Temps de réponse trop long
- Sécurité insuffisante
- Emploi mal commode
- Coût de traitement trop élevé

 Analyse des causes

Le recensement des causes peut être réalisé à l’aide du diagramme de


HISHIKAWA

Milieu Matériel
- Calculette
- Pointes de trafic - Rien pour imprimer
- Croissance de demande - Matériel archivage

Attente
Guichet

- Mauvaise liaison
- Compétence
- Trop de spécialisation
- Non intéressé au résultat
- Non polyvalent
Méthode
Main d’œuvre

DIAGRAMME CAUSES-EFFECTS

La qualité du diagnostic conditionne la qualité de la solution


 Elaboration des solutions
Le but de cette étape est de construire une (ou plusieurs) proposition(s) de
solution qui seront ensuite évaluées. Dans le cas où la solution est de type
informatique, il faut nécessairement définir le type de solution :
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
46

a. Informatique centralisée : le traitement et la diffusion des informations


s’effectuent en un seul site, très souvent au sein du centre de traitement
informatique (CTI)
b. Informatique décentralisée (repartie) : Dans ce cas, le traitement
s’effectue au niveau de chaque poste de travail. Les ordinateurs sont
indépendants les uns aux autres, cependant ils peuvent être connectés
entre eux, pour l’échange des données informatique (EDI). Ce type de
solution est aussi appelé SYSTEME RESEAU.
c. Informatique mixte (distribuée) : dans ce cas, le traitement s’effectue à
la direction générale, tandis que la saisie et la diffusion dans différents
sites.
Remarque
Dans la pratique, le diagnostic de l’existant peut être compris comme étant
l’évaluation ou la capacité à identifier la nature et la cause du
dysfonctionnement du système existant. Le diagnostic peut aussi se faire à trois
(3) volets :
 La critique de l’existant ;
 La proposition des solutions ;
 Le choix de la meilleure solution.

Donc, par contre, les solutions envisageables peuvent se situer à des niveaux
d’intervention distincte, par la nature de changement à apporter.

Niveau principes à
modèles

SOLUTION

Niveau
organisationnelle

SOLUTION
CONCEPTION
ANALYSE

Niveau technique

SOLUTION

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
47

II.2.2 Conception du nouveau système


Il est important de retenir que, la conception est la phase initiale de la création
ou de la mise en œuvre de quelque chose. Autrement dit, la conception implique
la modélisation, car la modélisation est le de créer les modèles. Et un modèle est
une représentation simplifiée d’une réalité. Donc, en informatique, la
conception c’est la deuxième étape pour réaliser une application informatique.
Ainsi, en informatique, pour concevoir ou modéliser un problème
d’informatisation, on utilise certaines approches de modélisation, comme par
exemple : La méthode MERISE, UML, etc. (voir chapitre 3 de ce cours).
II.2.3 Application
C’est la dernière étape de la mise en œuvre d’une application information. C’est
ici où on crée la source de connexion entre l’utilisateur et la base de données
(BD) via un SGBD (Système de Gestion de Base de Données), d’où, ça demande
la programmation.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
48

Chapitre III
ETUDE APPROFONDIE SUR MERISE

III.1 PRESENTATION DE LA METHODE MERISE


MERISE est une méthode de conception, de développement et de réalisation
de projets informatiques. Le but de cette méthode est d'arriver à concevoir
un système d'information. La méthode MERISE est basée sur la
séparation des données et des traitements à effectuer en plusieurs modèles
conceptuels et physiques.

La séparation des données et des traitements assure une longévité au modèle.


En effet, l'agencement des données n'a pas à être souvent remanié, tandis que
les traitements le sont plus fréquemment.

La méthode MERISE date de 1978-1979, et fait suite à une consultation


nationale lancée en 1977 par le ministère de l'Industrie dans le but de choisir
des sociétés de conseil en informatique afin de définir une méthode de
conception de systèmes d'information. Les deux principales sociétés ayant mis
au point cette méthode sont le CTI (Centre Technique d'Informatique) chargé
de gérer le projet, et le CETE (Centre d'Etudes Techniques de l'Equipement)
implanté à Aix-en-Provence.
La Merise (Méthodes d’Etudes et Réalisations Informatiques d’un Système
d’Entreprise) décrit cette connaissance sous forme de 3 découpages :
 COMMUNICATION : Les échanges ou la communication sont des flux
entre systèmes, notamment des flux d’informations ou messages.
 TRAITEMENT : Les traitements des messages, flux d’informations,
décrivent les tâches à effectuer à la réception ou pour l’émission d’un flux
d’informations.
 DONNEES : La structure de mémorisation des
informations est représentée s o u s u n e forme qui
permet un passage aisé vers les enregistrements informatiques.
Et 4 Niveaux : CONCEPTUEL, ORGANISATIONNEL, LOGIQUE, PHYSIQUE

D’où,

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
49

NIVEAU COMMUNICATION TRAITEMENT DONNEES


CONCEPTUEL MCC MCT MCD
ORGANISATIONNEL MOC MOT MOT
LOGIQUE MLC MLT MPT
PHYSIQUE MPC MPT MPD

Les "temps forts" de la méthode sont le Modèle Conceptuel de


Communication (MCC), le Modèle Conceptuel de Données (MCD) et le Modèle
Organisationnel de Traitement (MOT). Parmi ces trois modèles, le plus
important concerne la représentation des modèles conceptuels de données.

III.2 PROCESSUS DE CONCEPTION EN MERISE


- Merise est une méthode de développement des projets informatiques. Cela
reste la méthode la plus utilisée de la conception du système d’information
informatisé (S.I.I) ou automatisé (S.I.A).
- Pour modéliser ou concevoir une base de données, Merise subdivise le système
d’information en deux sous-systèmes, et chacun de ces sous-systèmes est
constitué de deux niveau de conception, à savoir :
 Le Système d’Information Organisationnel (S.I.O) : qui correspond aux
préoccupations du gestionnaire ou utilisateur. Ici nous avons :
 Le niveau conceptuel : MCC, MCT, MCD
 Le niveau organisationnel : MOC, MOT, MLD

 Le Système d’Information Organisationnel (S.I.O) : qui correspond aux


préoccupations de l’informaticien. On a :
 Le niveau logique : MLC, MLT, MLD
 Le niveau physique : MPC, MPT, MPD

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
50

III.3 SYSTEMES D’INFORMATION ORGANISATIONNEL (S.I.O)


III.3.1 Niveau Conceptuel
- Le niveau conceptuel consiste à concevoir un système d’information en faisant
abstraction de toutes les contraintes techniques ou organisationnelles ; et cela
tout au niveau des données, des communications que des traitements. Ici on
répond à la question : « Quoi ? » (Le quoi faire ? Avec quelle donnée ?)
- le but du niveau conceptuel est d’expliquer comment décrire l’entreprise en
respectant les normes de chaque modèles (MCC, MCT, MCD).
 MCC : formalise les échanges d’information (message) entre les
intervenants (interne ou externe) du système (entreprise) ;
 MCT : formalise, comment un intervenant de l’entreprise réagit quand il
reçoit le message et quelle opération il effectue. Donc, le MCT est un zoom
sur le MCC de l’entreprise ;
 MCD : formalise toutes les informations mémorisées. Ce modèle reste la
référence de l’activité de l’entreprise, car elle explique la manière dont
elle perçoit et mémorise son activité.
NOTA : Pendant l’étape de la conception au niveau conceptuel, on utilise très
souvent les MCT et le MCD. Mais le MCD est le modèle le plus utilisé, car il permet
de mémoriser les informations (données).

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
51

III.3.2 Niveau Organisationnel


- Le niveau organisationnel a comme mission d’intégrer dans l’analyse les
critères liés à l’organisation étudiée. Il précise aussi les notions de temporalités
de chronologies des opérations, d’unité de lieu, les postes de travail, l’accès aux
bases de données, etc.
- Ce niveau a comme modèles : MOC, MOT, MOD. Et Ici on répond à la question :
Qui fait quoi ? Et où ?
 MOC : formalise les communications entre sites de traitement, attaché à
un poste de travail, et à un site de données ;
 MOT : formalise ce que fait chaque poste de travail ;
 MOD : formalise en ajoutant au MOT, la géographie des données aux
concepts.
Ainsi, le niveau organisationnel est un sous ensemble du niveau conceptuel.
Toutefois, rappelons que, le lien entre MCD et MOD est donc fort. Un MCD
correspond à un domaine. Et l’étude des MOD se conduit par domaine afin
de faire ressortir les cohérences et les consolidations entre sites.
NOTA : Au niveau organisationnel ; les MOT et MOD, restent les modèles les
plus utilisés dans l’étape de la conception.
III.4 SYSTEMES D’INFORMATION INFORMATISE (S.I.I)
III.4.1 Niveau Logique
- L’objectif du niveau logique est la définition des moyens informatiques à la
disposition des postes de travail (utilisateur) afin d’effectuer les opérations
organisées. Ici, on répond à la question : « le comment ? ».
- Le niveau logique représente le dernier niveau validé par l’utilisateur final (sauf
si celui-ci réalise la programmation). Il comprend une vue d’utilisateur
informatique (vue externe de l’informatique) et une vue plus spécifique (vue
interne.
Ici, on comprend : MLC ; MLT, MLD
 MLC : formalise les communications entre les structures de données.
 MLT : formalise les moyens informatiques, les outils de consultation et
d’écriture informatique.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
52

 MLD : formalise les structures de données indépendamment de la gestion


physique des bases de données.
III.4.2 Niveau Physique
- le niveau physique permet de définir l’organisation réelle (ou physique) des
données. Il apporte les solutions techniques, par exemple sur les méthodes de
stockage et d’accès à l’information. C’est la réponse au comment ?
- Le niveau physique représente aussi le résultat informatique. C’est aussi le
dernier niveau de la méthode Merise. Ce niveau dépend des logiciels de
développement nécessaires à la programmation et à la manipulation des
données. Il comprend : MPC, MPT et MPD.
 MPC : modélise la télématique entre site informatique et les techniques
de transmission de données entre application.
 MPT : formalise les programmes informatiques et leu environnement
d’exploitation.
 MPD : est un modèle de la base de données. Il formalise l’implantation
physique de la base de données mais la topographie des enregistrements
informatiques ne sont pas définies dans ce modèle.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
53

III.5 ELABORATION DES MODELES DES TRAITEMENTS ET DES DONNEES


III.5.1 MODELES DES TRAITEMENTS
III.5.1.1 MODELE CONCEPTUEL DE TRAITEMENT
Comme il a été dit au début, tout système d'information est
composé d’une base d’information et d’un processeur d’information qui
représentent respectivement sa statique et sa dynamique. A l’instar du Modèle
Conceptuel des Données (MCD) qui schématise les données du système
d’information, le Modèle Conceptuel des Traitements (MCT) décrit les
traitements et plus précisément toutes les activités découlant des échanges
entre le domaine étudié et le monde extérieur. Il exprime donc ce que fait le
domaine sans se poser le problème de savoir qui le fait, quand et comment.

III.5.1.1.1 Les concepts de base

1. L’acteur
Un acteur est une personne morale ou physique capable d’émettre
ou de recevoir des informations. Par exemple, l’élève de terminale qui souhaite
s’inscrire au département d’Anglais et informatique des affaires est un acteur du
domaine « Gestion des inscriptions » de cette faculté. On distingue deux types
d’acteurs :

 Les acteurs internes qui appartiennent au système d’information étudié.


Pour le domaine cité ci-dessus, le service des inscriptions ou le service
comptabilité de l’Unikin sont des acteurs internes.

 Les acteurs externes sont ceux qui n’appartiennent pas au système


d’information mais qui sont l’origine ou la destination de flux
d’informations reçus ou émanant du système d’information. L’élève de
terminale qui effectue une demande de préinscription au département
d’Anglais et informatique des affaires est un exemple d’acteur externe.

Dans le Modèle Conceptuel de Traitements, seuls les acteurs


externes sont modélisés ; d’une part parce qu’on ne cherche qu’à formaliser les
traitements découlant d’interactions avec l’environnement et que d’autre part,
on ne cherche pas à connaître les acteurs internes qui réalisent les traitements
en question.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
54

Remarque : pour certains Ateliers de Génie Logiciel (AGL), la notion d’acteur est
implicite : ils n’apparaissent donc pas graphiquement dans les différents
modèles de traitements produits.

2. L’événement

L’événement matérialise un fait, qui en se produisant, doit déclencher une


réaction du système. Plus précisément cette notion recouvre deux aspects :
- Le fait qui survient et sa perception. La décision d’un élève de terminale de
s’inscrire au département d’Anglais et informatique des affaires illustre cet
aspect.
- Le compte rendu de cette perception faite auprès du système
d’information. Ainsi, dans le cas de la pré-inscription, c’est le remplissage
du dossier qui constitue le compte rendu du souhait de l’élève.

Seul le second aspect est pris en compte dans la dynamique du


système d’information et correspond à la définition d’événement. Du fait de
cette restriction l’événement (au sens du modèle conceptuel des traitements)
est porteur d’informations qui doivent être obligatoirement digérées par le
système d’information sans quoi il ne répondrait pas à ses objectifs. Parmi les
événements, on distingue les événements externes et les événements internes :

- Les événements déclencheurs externes sont des événements émis par un


acteur externe. Par exemple le dépôt d’un dossier de pré-inscription est un
événement externe déclenché par un futur étudiant souhaitant intégrer le
département d’Anglais et informatique des affaires.
- Les événements internes sont des événements qui surviennent
lorsqu’une opération se termine. Ce peut être par exemple l’acceptation
de la pré-inscription après vérification du contenu du dossier. Un
événement interne n’a lieu d’être que si le compte rendu de la fin d’une
opération doit être soit suivi d’une nouvelle réaction du système
d’information, soit de l’émission d’un message vers l’environnement.

Certains événements externes sont liés au temps. Par exemple,


pour déclencher un traitement en début d’année civil, on introduira l’événement
« Début d’année ». L’événement « Date actuelle est JJ/MM/AAAA » permettra
d’exécuter un traitement à une date donnée.

Dans le MCT, chaque événement est identifié au moyen d’un libellé


générique tel que « Dépôt d’un dossier de pré-inscription ». Compte tenu de ce

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
55

qui vient d’être dit, cet intitulé est très insuffisant pour décrire l’événement car
il ne fait pas apparaître les données du compte rendu associé à l’événement. Par
exemple, le dépôt d’un dossier de pré-inscription apporte de nombreuses
informations telles que l’état civil de l’élève qui effectue le dépôt, des données
sur sa scolarité actuelle, le DEUG qu’il souhaite intégrer, etc.

Dans le cas où le nombre d’informations contenues dans le message


associé à l’événement est peu important, il est recommandé de les citer en
annexe du MCT. Dans le cas contraire, il sera utile de dégager les principales
entités figurant dans le compte rendu. Le terme « entité » ne fait pas référence
au modèle conceptuel des données ; il est pris dans son sens très général pour
désigner tout objet abstrait ou concret caractérisé par un ensemble de
propriétés. Par exemple, l’événement « Dépôt de dossier de pré-inscription » sera
détaillé ainsi : « Dépôt du dossier de réinscription de l’élève E de la terminale T à
la formation F ». Ce texte, qui constitue le message associé à l’événement, fait
intervenir trois « entités » : Elève, Terminale et FormationSup.

Notons enfin que l’intitulé générique étant parfois long, on lui


associe, sur le MCT un alias afin de le référencer plus facilement. Les alias seront
codés ainsi : « ext » ou « int » pour indiquer le type de l’événement suivi d’un
numéro séquentiel. Par exemple « ext1 » désignera l’événement « Dépôt d’un
dossier de pré-inscription ».

a) Occurrences d'événements

L’occurrence d’un événement correspond à la réalisation effective


d’un événement. Par exemple, le dépôt du dossier de pré-inscription de M.
Kalonji de terminale ES pour le département d’Anglais et informatique des
affaires, constitue une occurrence de l’événement déclencheur « Dépôt du
dossier de préinscription ». Deux occurrences d’un même événement peuvent
être distinguées soit par des valeurs de propriétés (ou d’entités) différentes, soit
si les valeurs sont identiques, par le moment précis où l’événement s’est produit.
La notion d'occurrence d'événements n'est, en général, pas modélisée, par
contre la capacité d'un événement, qui est le nombre maximum d'occurrences
acceptées par le processeur d'information, et la fréquence d'apparition des
occurrences le sont. Ainsi, on peut fixer à 3000 le nombre maximum
d’occurrences acceptées par le processeur pour l’événement « Dépôt du dossier
de pré-inscription ».

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
56

b) Participation et cardinalité d'un événement

La participation d'un événement définit le nombre d'occurrences


différentes nécessaires au lancement de l’opération. Dans le processus de
gestion des inscriptions, le traitement du dossier déposé doit être déclenché à
chaque apparition d’une occurrence de l’événement « Dépôt d’un dossier de pré-
inscription ». La participation de l’événement au traitement est donc égale à 1.

La cardinalité d'un événement est le nombre d'occurrences


identiques d'un événement résultat. Si l’on associe à l’événement interne « Carte
étudiant éditée » la cardinalité 2, cela impliquera une émission en deux
exemplaires de la carte d’étudiant. Si ces deux caractéristiques ne sont pas
précisées sur le MCT, elles prennent la valeur 1 par défaut.

3. L'opération

La réponse à l’arrivée d’un événement est le déclenchement d’un


ensemble de traitements appelé opération. Le traitement d’enregistrement
d’une pré-inscription est une opération déclenchée lors du dépôt de dossier de
pré-inscription
Lors de son exécution, une opération ne peut pas être interrompue par l’attente
d’un événement externe. L’exécution d’une opération se ramène à l’exécution
d’actions élémentaires effectuées sur la base d’informations à partir des
données portées par le ou les événement(s) déclencheur(s). Ces actions
élémentaires portent sur des occurrences d’entités ou d’associations du modèle
conceptuel des données et peuvent appartenir à l’un des quatre types suivants :

- Insertion
- La modification
- L'effacement
- Recherche

La logique d’enchaînement des actions élémentaires n’est pas


toujours séquentielle et peut faire intervenir des structures alternatives (Si ..
Alors … Sinon) ou itératives (Tant que …, Répéter …, Pour …).

Sur le MCT, une opération est identifiée par un libellé et peut être
décrite, de manière détaillée, en annexe du MCT, en présentant la logique
algorithmique du déclenchement des actions élémentaires. Par exemple

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
57

l’opération d’enregistrement du dossier de préinscription pourrait être détaillé


ainsi :

 Création d’une occurrence de l’entité « Préinscrit »


 Création d’une occurrence de l’association « Demande » (reliant l’entité
 « Préinscrit » à l’entité « Formation »)
 …

Il est possible d’associer à une opération une durée qui représente


le temps maximal qui lui est alloué pour qu’elle s’exécute.

4. La règle d’émission

La production effective d’une ou de plusieurs occurrences d’un


événement interne est soumise à une règle d’émission, c’est-à-dire à une
proposition logique qui s’applique au contenu de la base d’information après
exécution de l’opération. L’événement est produit si la proposition logique est
vraie. A l’issue de l’enregistrement d’un dossier de pré-inscription deux cas
peuvent se présenter :

- soit le dossier est complet et une occurrence de l’événement « Pré-inscription


de l’élève E à la formation F réalisée le JJ/MM/AAAA » est émise
- soit le dossier est incomplet (certaines propriétés du MCD n’ont pas été
renseignées) et une occurrence de l’événement « Dossier D Mis en attente le
JJ/MM/AAAA » est produite.

Si la plupart des règles d’émission sont basées sur une structure


alternative et donne donc lieu à une seule occurrence d’événement interne,
certaines peuvent intégrer une structure itérative de type « Pour – Tout » afin
de produire n occurrences d’un événement interne. Par exemple pour envoyer
en début d’année des lettres de renouvellement d’adhésion, on introduira la règle
d’émission suivante :

Pour tout adhérent A enregistré dans la base d’informations créer une occurrence
de int1 (Renouvellement d’adhésion envoyé à A le JJ/MM/AAAA)
Fin pour

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
58

5. La synchronisation

La synchronisation d’une opération est composée de deux éléments


:
- d’une part la liste des événements (internes ou externes) qui doivent être
arrivés avant de déclencher l’opération.
- et d’autre part la règle sous forme d’une proposition logique qui précise de
quelle manière les événements participent au déclenchement de l’opération.

Le cycle de vie d’une synchronisation peut être représenté ainsi :

Remarque : on parle de fonctionnement asynchrone lorsque les états


ACTIVABLE et
ACTIVEE ne font qu’un.

Pour des raisons de lisibilité ce sont les alias des événements


participant à la synchronisation qui sont mentionnés, sur le MCT, dans
l'expression logique de la synchronisation. Par exemple la condition ext1 et ext2
signifie que la synchronisation sera activable lorsque :

 le nombre d’occurrences de l’événement ext1 sera égal à la participation


de ext1
 et le nombre d’occurrences de l’événement ext2 sera égal à la participation
de ext2

A cette proposition logique sont associées des conditions locales qui


permettent de préciser, lorsque plusieurs occurrences d’un événement sont
présentes comment choisir celles qui participera effectivement à la
synchronisation. Les conditions locales portent obligatoirement sur les valeurs
des propriétés ou des entités associées aux messages des événements à
synchroniser. Une synchronisation ne peut pas consulter la base d’informations.
Par exemple, pour modéliser le déclenchement de la mise à jour d’un dossier
incomplet suite à la réception des pièces manquantes, on introduira une
synchronisation admettant en entrée les deux événements suivants :
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
59

Evénement int2 : « Dossier D Mis en attente le JJ/MM/AAAA »


Evénement ext2: « Réception des pièces manquantes du dossier D »
Proposition logique : int2 et ext2
Conditions locales : int2.D = ext2.D

Lorsque l'expression logique de la synchronisation est vérifiée,


l'opération est déclenchée et toutes les occurrences d'événements qui ont
permis ce déclenchement sont alors consommées par l'opération. Par contre si
elle n'est pas vérifiée, les occurrences d'événement restent en attente. Quand
une opération est déclenchée par un seul événement, la synchronisation est
facultative.

Comme pour les règles d’émission, les conditions locales d’une


synchronisation peuvent comporter une structure itérative de type « Pour tout
». Cette possibilité permet de traiter (on dit encore consommer) n occurrences
d’un événement contributif à la synchronisation. La synchronisation définie ci-
dessous permet de lancer la suppression de tous les dossiers mis en attente et
pour lesquels les pièces manquantes n’ont pas été fournies dans un délai de 8
jours.

Evénement int2 : « Dossier D mis en attente le JJ/MM/AAAA »


Evénement ext3 : « la date actuelle est JJ/MM/AAAA »
Proposition logique : int2 et ext3
Conditions locales : Pour tout int2 ayant int2.JJ/MM/AAAA = ext3.JJ/MM/AAAA

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
60

III.5.1.1.2. Représentation graphique

Remarque : Le MCT conditionne complètement l'interface graphique du S.I.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
61

III.5.1.1.3. Extrait du MCT de la gestion des inscriptions

Evénement ext1 : Dépôt du dossier de pré-inscription de l’élève E pour la


formation F
Evénement ext2 : Réception des pièces manquantes du dossier n° D
Evénement ext3 : La date actuelle est JJ/MM/AAAA
Evénement int1 : Dossier de pré-inscription n° D accepté le JJ/MM/AAAA
Evénement int2 : Dossier de pré-inscription n° D mis en attente le JJ/MM/AAAA
Evénement int3 : Avis de suppression du dossier n° D émis le JJ/MM/AAAA
Synchronisation : Si ext2 et int2 Avec ext2.D = int2.D
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
62

Synchronisation : Si int2 et ext3 Avec Pour tout int2 ayant int2.JJ/MM/AAAA+ 8


= ext3.JJ/MM/AAAA

Remarque : ce MCT fait apparaître un cycle caractérisé par une opération qui
admet comme événement contributif un événement dont elle déclenche elle-
même l’émission.

III.5.1.2 MODELE ORGANISATIONNEL DE TRAITEMENT

Après avoir défini les fonctions principales de l'entreprise et ses


domaines d'information, les concepts et la transformation des messages, le
cadre de l'application est stabilisé

Les modèles organisationnels de traitement (MOT) définissent ce


que fait chaque poste de travail, QUI FAIT QUOI ? Préalablement à ces modèles,
l'organisation des postes de travail, QUI, est définie.

Le passage des modèles conceptuels de traitement (opérations


effectuées par des intervenants) aux modèles organisationnels de traitement
(opérations effectuées par une structure organisée) n'est pas automatique. La
construction de la structure des postes de travail apporte une dimension
nouvelle qu'il faut assimiler. Les fonctions de l'entreprise sont "projetées" sur les
postes de travail. Toute opération conceptuelle devra être exécutée de manière
organisée par un poste de travail.

Les modèles organisationnels de communication (MOC)


représentent les communications entre sites de traitement, attachés à un poste
de travail, et un site de données.

L'ordre des trois modèles du niveau organisationnel (traitements,


données et communications) est différent de celui du niveau conceptuel.

1. Poste de travail.
Le découpage organisationnel de l'entreprise définit les postes de
travail ou les unités d'organisation. "QUI", poste de travail est défini avant de
déterminer "QUI FAIT QUOI ?"

Un poste de travail est une responsabilité au sein de l'entreprise : P.


D. G., directeur commercial, secrétaire... Il est aussi "casquette" : acheteur,
vendeur...
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
63

Une même personne peut avoir plusieurs casquettes. Tout dépend de ses
capacités et de sa charge de travail. Certaines personnes auront toujours la
même. D'autre part, plusieurs personnes peuvent porter la même "casquette"
comme une caissière dans un supermarché. A l'étape suivante, il sera nécessaire
d'affecter des personnes à chaque poste. Les écrans informatiques seront validés
par les personnes affectées à un poste, les utilisateurs finals.

Une organisation est une adaptation des fonctions de l'entreprise à


l'environnement en les projetant sur les postes de travail. Un poste de travail est
défini par les moyens mis à disposition (personnes, ressources matérielles et
logicielles) et le travail à effectuer (les opérations organisées).

La définition des postes de travail reflète les intervenants définis au niveau


conceptuel.

2. Organigramme.

L'organigramme est un dessin représentant la structure


d'organisation des postes de travail de l'entreprise.

Pour être défini sans ambiguïté, un poste de travail ne doit


dépendre que d'un seul poste de travail amont (qui est responsable ?) et doit
avoir ses responsabilités clairement énoncées (que fait-il ou que doit-il faire ?).
Cela évitera d'embaucher un salarié pour faire A, lui faire faire B, le juger sur C
et lui octroyer la médaille du travail pour D.

Le niveau de détail de la définition des postes de travail dépend de


l'objectif poursuivi par sa construction. S'il s'agit de définir l'organisation
générale d'une grande entreprise, l'organigramme est général. S'il s'agit de
définir ou valider des écrans informatiques, l'organigramme doit être détaillé. Le
travail de la secrétaire est différent de celui du livreur.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
64

Après avoir défini qui est qui, comment il se situe dans un


organigramme, nous allons représenter qui fait quoi, quel poste de travail
effectue quelle opération au moyen de procédures, les MOTS ou Modèles
Organisationnels de Traitement.

Une procédure est un choix d'organisation face à un événement


(message)externe (venant d'un partenaire).

Une procédure prévoit tous les cas possibles à l'intérieur de cette


procédure.
Une procédure peut commencer par une opération sans message
événement comme la décision de passer des contrats financiers.

L'éclatement d'une opération conceptuelle en N opérations


organisées permet un partage des responsabilités et doit définir le contrôle en
découlant. Le regroupement d'opérations conceptuelles en une opération
organisée ou sur un poste de travail permet une synchronisation, donc une
accélération des traitements organisés et la création de postes de travail
"correspondant" de partenaires - le client a un interlocuteur unique pour la
commande, la livraison, le service après-vente, le contentieux...

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
65

3. Formalisme du MOT

Période Phase Poste de Nature de


(tranche (Opération du travail traitement
d’heure) MCT) (Lieu de (TM ou
traitement) TA)

Dépôt du dossier
de pré-inscription

10h-12h Enregistrement de la Service de TM


pré-inscription Personnel

Dossier Dossier
Complet incomplet

Pré- Dossier mis


inscription en attente
acceptée

III.5.2 MODELES DES DONNEES


III.5.2.1. MODELE CONCEPTUEL DE DONNEES
Avant de réfléchir au schéma relationnel d’une application, il est
bon de modéliser la problématique à traiter d’un point de vue conceptuel et
indépendamment du logiciel utilisé. C’est le but de cette partie.
Le modèle conceptuel ou modèle entité-association est basée sur
une perception du monde réel qui consiste à distinguer des agrégations de
données élémentaires appelées entités et des liaisons entre entités appelées
associations.
1. Schéma entité-association
Une entité est une population d’individus n’ayant que des caractéristiques
comparables.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
66

Elle est aussi une représentation d’un objet du monde réel (concret ou
abstrait), perçu par le concepteur comme ayant une existence propre, et à
propos duquel on peut enregistrer des informations, car n’ayant que des
caractéristiques comparables.
Exemple : Dans un centre de santé, on a l’entité Patient, fiche, ….

Patient Fiche

Exemple : Dans une entreprise qui achète et vend des produits, on a l’entité
clients, l’entité articles et l’entité fournisseurs
Clients Articles Fournisseurs

Une association est un lien ou une relation entre une ou plusieurs entités.
Dans notre exemple, l’association « acheter » fait le lien entre les entités articles et
clients, tandis que l’association livrer fait le lien entre les entités articles et
fournisseurs.

Clients Articles Fournisseurs

Achete Livrer
r

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
67

Un attribut est une propriété d’une entité ou d’une association.


Toujours dans notre exemple, le prix unitaire est un attribut de l’entité articles, le
nom du client est un attribut de l’entité clients. La quantité commandée est un
attribut de l’association acheter, la date de livraison est un attribut de
l’association livrer.

Entité
Agent
NuméroA
Nom
Sexe Propriétés
Grade
Adresse
Chaque individu d’une entité doit être identifiable de manière unique. C’est
pourquoi les entités doivent posséder un attribut sans doublon, l’identifiant.

Le numéro de client est l’identifiant de l’entité clients (on souligne cet attribut
sur le schéma).

Entité Agent
NuméroA
Identifiant
Nom
Propriétés
Sexe
Grade
Adresse
Remarques :
 Un attribut ne doit pas figurer dans deux entités ou associations
différentes (donc il faut spécialiser l’attribut nom en nom du client, nom
du produit et nom du fournisseur) ;
 Une entité possède au moins un attribut (son identifiant) ;
 Une association peut ne pas posséder d’attribut.

Conseils :
 Eviter les identifiants composés de plusieurs attributs (comme par
exemple un identifiant formé par les attributs nom du client et prénom) ;
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
68

 Il faut un identifiant totalement indépendant des autres attributs (éviter par


exemple d’ajouter un identifiant NomPrénom qui serait la concaténation
des attributs nom du client et prénom) ;
 Préférer un identifiant court pour rendre la recherche la plus rapide possible
(éviter par exemple les chaînes de caractères comme le numéro de sécurité
sociale ou la plaque d’immatriculation) ;

La cardinalité d’un lien entre une entité et une association est le


minimum et le maximum de fois qu’un individu de l’entité peut être concerné
par l’association.

Un client a au moins acheté un article et peut acheter n articles (n


étant indéterminé), tandis qu’un article peut avoir été acheté entre 0 et n fois (même
si ce n’est pas le même n) et n’est livré que par 1 fournisseur. Exemple :

Cardinalité minimal

Agent Congé
NuméroA NuméroCon
Nom 1,1 Demander 1,n Nom
Sexe Date Sexe
Grade Grade
Adresse Adresse
Cardinalité maximal

Une valeur minimum à 0 signifie qu’au moins une occurrence de l’objet


n’est pas liée à l’association.

Une valeur minimum à 1 signifie que toutes les occurrences de l’objet sont
liées à l’association.

Une valeur maximum à 1 signifie qu’aucune occurrence de l’objet n’est liée


plus d’une fois à l’association.

Une valeur maximum à n signifie qu’au moins une occurrence de l’objet est
liée plusieurs fois à l’association.

A partir de ces valeurs minimum et maximum possibles, il existe quatre


types de cardinalité :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
69

 (0,1) : une occurrence de l’objet n’est jamais liée plus d’une fois à
l’association.

 (1,1) : une occurrence de l’objet est toujours liée une et une seule
fois à l’association.

 (1,n) : une occurrence de l’objet est toujours liée au moins une fois à
l’association.

 (0,n) : aucune précision donnée.


Remarque : si une cardinalité est connue et vaut 2, 3, etc. on considère quand
même qu’elle est indéterminée n, de telle sorte qu’on ne puisse avoir que des
cardinalités 0, 1 ou n. Cela se justifie par le fait que même si on connaît n au
moment de la conception, il se peut que cette valeur évolue avec la politique de
l’entreprise. Il vaut mieux considérer n comme une inconnue dès le départ.

Une relation est dite porteuse lorsqu’elle contient des propriétés.

Cardinalité minimal Relation Nom de la relation

Agent Congé
NuméroA NuméroCon
Nom 1,1 Demander 1,n Nom
Sexe Date Sexe
Grade Grade
Adresse Cardinalité maximal Adresse
Relation porteuse

2. Cas particuliers
Association binaire réflexive

Exemple : Agent
NuméroA 1,n
Nom
Sexe Diriger
Grade 0,1
Adresse

Dans ce cas, un employé est dirigé par un employé (sauf le directeur général) et
un employé peut diriger plusieurs employés.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
70

Association ternaire (association entre trois entités)


Exemple :
Avions Pilotes
Vol
Numéro avion Numéro pilote
Date et
0,n 0,n
Date de mise en heure Nom
service
Prénom
…… 0,n
……
Aéroports

Numéro
aéroport

Situation

……

Dans ce cas, un avion, un pilote ou un aéroport peuvent être utilisés 0 ou plusieurs


fois par l’ensemble des vols (d’où les cardinalités).

Associations plurielles (plusieurs associations entre deux entités)


Exemple :
0,n Vendre 1,n
Personne Produit

Id_p Code-pr

Nom 0,n 0,n Designation


Acheter
Prenom Date_exp

Adresse PU
0,n 1,n
Consomm
er

Dans ce cas, une personne peut vendre, acheter et/ou consommer.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
71

III.5.2.2. MODELE ORGANISATIONNEL DES DONNEES

Les modèles organisationnels de données (MOD) ajoutent la géographie des


données aux concepts. Chaque modèle organisationnel est un sous-ensemble du
modèle conceptuel adapté à un site de données. Le lien entre MCD et MOD est
donc fort. Un MCD correspond à un domaine. L'étude des MOD se conduit par
domaine afin de faire ressortir les cohérences et les consolidations entre site.

Les MOD s'enrichissent, par rapport au MCD, de nouveaux individus liés à


l'organisation tels que "autorisation", "document", "historique".

Les MOT, les procédures, déterminent qui fait quoi ? De la même manière, les
modèles organisationnels de données déterminent qui - quel site de données -
stocke quoi - quelles informations, dans quel modèle organisationnel de
données.

Cette découpe par site, construite à partir du MCD permet de conserver la


cohérence, de maîtriser la "redondance" d'information entre site et détermine
les consolidations de données éventuelles.

Ce découpage permet de calculer les volumes de données


nécessaires par site de données final. Ce calcul de volume des données est de
moins en moins nécessaire suite à l'augmentation rapide des capacités de
stockage.

De plus, de nouveaux individus, reflets de l'organisation, tels que


documents, ou reflet de la réflexion, tels que Règle, apparaissent dans le modèle
de données à ce stade de l'étude.

a. Etapes de construction d’un MOD

Un modèle organisationnel des données se construit suivant 5 étapes :


1. Organisation par site ;
2. Détermination des données à retenir et construction du MOD global et
du MOD par site ;
3. Détermination des droits d’accès aux données ;
4. Calcul du volume de la base de données.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
72

b. Exemple

 Faculté
 Etudiant
 Promotion
 Cours
 Enseignant
 Home
Soit une entreprise de livraison constituée d'un siège social, d'un entrepôt et
d'agences.

1. L'organisation par site.


La notion de site est géographique. Un site peut être le site d'un
poste de travail ou le site de données pour un même poste de travail.

Le modèle conceptuel de données est rapproché de différents sites


géographiques de données, ou de mémorisation, ou de traitement. Pour chaque
site, une "vue externe" ou partielle du modèle général de données est définie.
Cette vue concerne les individus, les relations et les informations.

Pour chaque base de données, un modèle organisationnel de


données (MOD) est construit. Ces modèles organisationnels de données sont des
vues externes du modèle principal (MCD) sur chaque site.

2. Détermination des données à retenir et construction du MOD global et


du MOD par site

Le siège qui s'occupe de tous les clients et de toutes les factures aura le modèle
général comme vue externe :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
73

L'entrepôt ne s'occupe que de la livraison à partir des ventes et possède un


modèle sans contrat ni facture.

Une agence n'effectue que les livraisons et les factures et a un modèle sans
contrat.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
74

L'organisation des données n'est pas par sous-ensembles cohérents


du modèle principal tels que modèle contrat, modèle facture ou modèle
livraison. Le découpage organisationnel est réalisé à partir des individus "vus de
la lorgnette utilisateur" basés sur un site précis.
3. Détermination des droits d’accès aux données
Les différents droits accordés aux utilisateurs sur les tables de la base sont :
 Consultation (lecture) L;
 Ajout(Création) C ;
 Modification(M) ;
 Suppression (S).

Ex :

T_PRODUIT T_CONTRAT
L L
C C
M
S
On accorde à l’utilisateur les droits suivants :
 Création et lecture sur la table CONTRAT ;
 Création, lecture, modification et suppression sur la table PRODUIT.

4. Calcul du volume de la base de données


L'évaluation du volume des données est nécessaire quand une
solution est envisagée sur micro-ordinateur ou quand l'application finale risque
de faire "sauter" les disques de stockage. Elle permet de calculer le volume
d'espace disque nécessaire ou d'en déduire des sauvegardes sur des supports de
stockage. Nous sommes à la limite de l'organisationnel et de l'informatique.
Ce calcul est nécessaire dans le cas d'applications du type
"statistiques de ventes" où les informations résultats de calcul sont mémorisées.

Les volumes concernent le nombre d'occurrences d'individus par


site et les informations de chaque individu ou chaque relation par site de
données. Combien d'occurrences contient l'individu PRODUIT sur le site de LYON
en moyenne ?

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
75

Quand tous ces renseignements seront connus, il sera possible de


calculer les volumes de mémoire nécessaires à l'informatisation par site en
multipliant le nombre d'occurrences de chaque individu "organisé" par le
nombre de caractères des informations d'un individu.
D’où, nous le volume de la base de données est calculé de manière suivante :

VTOT.BD= (VTH +∑ 𝑉𝑖𝑛𝑑𝑒𝑥 )*Coeff-E


𝑛

𝑉𝑇𝐻 = ∑ 𝑉𝑡𝑎𝑏𝑙𝑒 (𝑖)


𝑖=1
𝑚

𝑉𝑡𝑎𝑏𝑙𝑒 = (∑ 𝑡𝑗 )𝑁
𝑗=1
𝑝

𝑉𝑖𝑛𝑑𝑒𝑥 = (∑ 𝑡𝑖 )𝑁
𝑖=1

Avec :
 VTOT.BD : volume total de la base de données
 VTH : volume théorique de la base de données
 Vindex : volume des indexes d’une table
 Coeff-E : coefficient d’extrapolation compris entre 1 et 3
 Vtable(i)= volume de la table i
 n= nombre des tables dans la base de données
 N=estimation du nombre d’enregistrement dans la table
 tj=taille du champ j
 m=nombre de champs dans la table
 ti=taille de l’index i dans la table de jointure
 p=nombre d’index dans la table de jointure

Nota : il faudra tout d’abord ressortir les modèles logique et physique de


données avant d’effectuer tous ces calculs.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
76

III.5.2.3. MODELE LOGIQUE DES DONNEES


Maintenant que le MCD est établi, on peut le traduire en différents
systèmes logiques, comme les systèmes par fichiers ou les bases de données.
1. Les systèmes logiques
Avant l’apparition des systèmes de gestion de base de données (SGBD
ou DBMS pour Data Base Management System en anglais), les données étaient stockées
dans des fichiers binaires et gérées par des programmes exécutables (Basic, Cobol ou
Dbase par exemple). La maintenance des programmes (en cas de modification de
la structure des données par exemple) était très problématique.

Sont alors apparus les SGBD hiérarchiques, dans lesquels les données
sont organisées en arbres (IMSDL1 d’IBM par exemple), puis les SGBD réseaux
dans lesquels les données sont organisées selon un graphe plus général. Ces deux
types de SGBD sont dit navalisations car on peut retrouver l’information à condition
d’en connaitre le chemin d’accès.

Aujourd’hui, ils sont largement remplacés par les SGBD relationnels


(SGBDR) avec lesquels l’information peut être obtenue par une requête formulée
dans un langage quasiment naturel. Ce sont les SGBD les plus répandus. Nous nous
contentons donc ici du modèle logique de données relationnel (MLDR).

Plus récemment, sont apparus des SGBD orientés objets qui offrent à la
fois un langage de requête et une navigation hypertexte. Un modèle logique de
données orienté objet permet par exemple de concevoir des classes Java s’appuyant
sur une base de données relationnelle et permettant le développement d’une
application web.
2. Schéma relationnel
Concentrons-nous sur le MLDR. Lorsque des données ont la même
structure (comme par exemple, les bordereaux de livraison), on peut les organiser
en table dans laquelle les colonnes décrivent les champs en commun et les lignes
contiennent les valeurs de ces champs pour chaque enregistrement.

Les lignes d’une table doivent être uniques, cela signifie qu’une
colonne (au moins) doit servir de clé primaire. La clé primaire d’une ligne ne doit
pas changer au cours du temps, alors que les autres colonnes le peuvent.

Par ailleurs, il se peut qu’une colonne Colonne1 d’une table ne doive


contenir que des valeurs prises par une colonne Colonne2 d’une autre table (par
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
77

exemple, le numéro du client sur une commande doit correspondre à un vrai numéro
de client). La Colonne2 doit être sans doublons (bien souvent il s’agit d’une clé
primaire) et on dit que la Colonne1 est clé étrangère.

Par convention, on souligne les clés primaires et on fait précéder les


clés étrangères d’un dièse # dans la description des colonnes d’une table :

Clients (numéro client, nom client, prénom, adresse client, ...)

Commandes (numéro commande, date, #numéro client, ...)


Remarques :
 une même table peut avoir plusieurs clés étrangères mais une seule clé
primaire (éventuellement composées de plusieurs colonnes);
 une clé étrangère peut aussi être primaire; une clé étrangère peut être
composée (c’est le cas si la clé
 primaire en liaison est composée).

On peut représenter les tables d’une base de données relationnelle par un


schéma relationnel dans lequel les tables sont appelées relations et les liens entre
les clés étrangères et leur clé primaire est symbolisé par un connecteur :

3. Traduction
Pour traduire un MCD en troisième forme normale en un MLDR, il
suffit d’appliquer cinq règles (à retenir par cœur). Mais avant, on dit qu’une
association entre deux entités (éventuellement réflexive) est de type :
 1 : 1 si les deux cardinalités sont 0,1 ou 1,1;
 1 : n si une des deux cardinalité est 0,n ou 1,n;
 n : m (plusieurs à plusieurs) si les deux cardinalités sont 0,n ou 1,n.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
78

En fait, un schéma relationnel ne peut faire la différence entre 0, n et 1, n. Par


contre, il peut la faire entre 0, 1 et 1, 1 (cfr règles 2 et 3).

Règle 1 : toute entité devient une table dans laquelle les attributs deviennent des
colonnes. L’identifiant de l’entité constitue alors la clé primaire de la table.

Par exemple, l’entité articles devient la table :

Articles (numéro article, nom article, prix unitaire de vente, ...)


Règle 2 : dans le cas de deux entités reliées par une association de type 1 : 1, on
ajoute aux deux tables une clé étrangère vers la clé primaire de l’autre. Les
attributs de l’association sont alors repartis vers chacune des deux tables.

Par exemple, l’association résider de la figure 8 est traduite par :


Êtres humains (numéro personnel, nom, prenom, #numéro appartement, date
d’entrée, ...) logement (numero appartement, adresse, #numéro personnel,
montant du loyer, ...)

Traduction d’une association de type 1 : 1


Remarque : d’autre techniques sont parfois proposées pour la règle 2 (fusionner
les tables, utiliser une clé primaire identique) mais en pratique elles ne sont pas
exploitables dans le cas général.

Règle 3 : dans le cas de deux entités reliées par une association de type 1 : n,
l’identifiant de l’entité côté 0, n ou 1, n devient une clé étrangère vers la clé primaire
de la table côté 0,1 ou 1,1. Les attributs de l’association glissent vers la table côté
0,1 ou 1,1.

Par exemple, l’association concerner (2) de la figure 9 est traduite par :


Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
79

Articles (numéro article, nom article, prix unitaire de vente, ...) livraisons
(numéro livraison, date, #numéro article, quantité livrée)

Traduction d’une association de type 1 : n

Règle 4 : une association entre deux entités de type n : n est traduite par une
table supplémentaire (parfois appelée table de jointure) dont la clé primaire est
composée de deux clés étrangères vers les clés primaires des deux tables en
association. Les attributs de l’association deviennent des colonnes de cette table.

Par exemple, l’association concerner (1) de la figure 9 est traduite par :


Articles (numéro article, nom article, prix unitaire de vente, ...)
Lignes de commande (#numéro commande, #numéro article, quantite
commandée) commandes(numéro commande, date, ...)

Traduction d’une association de type n: n


Règle 5 : une association entre trois entités ou plus est traduite par une table
supplémentaire dont la clé primaire est composée d’autant de clés étrangères que
d’entités. Les attributs de l’association deviennent des colonnes de cette table.

Par exemple, l’association vols de la figure 7 devient la table :


Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
80

vols(#numéro avion, #numéro pilote, #numéro aéroport, date et heure, durée,


distance)

Traduction d’une association ternaire


III.5.2.4. MODELE PHYSIQUE DES DONNEES
Aujourd’hui il n’existe pas d’approche de description et de représentation du
niveau physique des données. La description physique des données est
étroitement liée aux choix technique informatiques concernant le système de
gestion des données. Nous retiendrons le formalisme du MPD suivant :
Nom de la table

Attribut Type Taille contrainte


(ou champ)
attribut 1 type 1 Taille 1 contrainte 1
: : : :

: : : :
attribut n type n Taille n Contrainte n

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
81

A savoir :
 ̎Type ̎ appartient à l’un des types suivants : entier, caractère, chaine des
caractères, booléen, monétaire, date, binaire, etc.
 ̎Contrainte ̎ appartient à l’une des contraintes suivantes : PK (clé primaire),
FK (clé étrangère), UNIQUE, etc.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
82

Chapitre IV
NOTION SUR LES SYSTEMES DE GESTION DES BASE DE DONNEES

IV.1. DEFINITION ET DESCRIPTION DU SGBD


Un Système de Gestion de Bases de Données (SGBD) est un logiciel de
haut niveau qui permet de manipuler les informations stockées dans une base
de données. La complexité d’un SGBD est essentiellement issue de la diversité
des techniques mises en œuvre, de la multiplicité des composants intervenant
dans son architecture, et de différents types d’utilisateurs (administrateurs,
programmeurs, non informaticiens, ...) qui sont confrontés, à différents niveaux,
au système.
Pour mettre un peu d’ordre dans tout cela, on peut se raccrocher à une
architecture standard conforme à la plus grande partie des SGBD existant, et
offrant l’avantage de bien illustrer les principales caractéristiques d’un SGBD.
Cette architecture distingue trois niveaux correspondant d’une part à
trois représentations équivalentes de l’information, d’autre part aux champs
d’interventions respectifs de principaux acteurs. Pour ces derniers, nous
utiliserons la terminologie suivante :
 Utilisateur naïf : c’est le non spécialiste des SGBD ou le non informaticien.
 Concepteur et programmeur d’application : à partir des besoins des
différents utilisateurs, il écrit des applications pour des utilisateurs “naïfs”.
 Utilisateur expert : c’est l’informaticien connaissant le fonctionnement
interne d’un SGBD et chargé d’administrer la base.

Un SGBD présente plusieurs objectifs, parmi lequel nous pouvons citer :


 La souplesse d’accès aux données
 La sécurité
 Partage de données
 Indépendance de données.

1. La souplesse d’accès aux données


Comme son nom l’indique, ces systèmes sont destinés à gérer les
données que les utilisateurs auront besoins ultérieurement. Ils doivent
permettre d’accéder facilement à n’importe quelle donnée de la base de

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
83

données. Pour accéder à ces données, le système doit utiliser un langage


d’interrogation de donnée appelé langage des requêtes (SQL) qui permet
d’extraire les données contenues dans la base.
2. La sécurité
L’agression extérieure est un facteur perturbateur des données contenues dans
la base. Les SGBD doivent être capables de protéger les données qu’il gère. Ces
agressions peuvent être physiques, comme la panne d’un disque dur, elle peut
être aussi humaine comme une mauvaise manipulation de la machine par un
utilisateur.
3. Partage de données
A l’époque, les informaticiens avaient des difficultés pour partager les données
avec d’autres utilisateurs d’où la création du domaine de bases de données.
Différentes opérations doivent s’effectuer sur une même base de données,
doivent s’exécuter comme si elles étaient seules à opérer. Sur ce, pour détecter
d’éventuels conflits d’accès qui peuvent existe entre plusieurs utilisateurs, les
SGBD ont facilité le partage des données.
4. Indépendance de données
L’indépendance est un des aspects majeurs offerts par un SGBD. Une application
manipulant ses données par l’intermédiaire de fichiers est fortement
dépendante de ses données. Il y a 2 niveaux d’indépendance de données :
 L’indépendance physique permet de modifier les structures de stockages
ou les méthodes d’accès aux données sans que cela ait des répercutions
au niveau des applications on pourra ainsi ajouter ou supprimer un index
sur une collection ou bien changer une méthode de tri.
 L’indépendance logique doit permettre de modifier l’organisation de
données sans affecter les utilisateurs. Il permet donc de faire face à de
nouveaux besoins, ce qui est indispensable, si l’on considère qu’une base
de données est un modèle réel.
IV.2 HISTORIQUE DE SGBD
Les différents modèles de données élaborées pour structurer l’information dans
une base de données reposant sur des principes théoriques empruntés au
monde de la recherche en informatique. Ainsi, il en résulte donc, nous nous
distinguons en informatique le SGBD ci-après :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
84

 Première génération, ANNEE 60 : SGBD Hiérarchique (SGBDH) ; Exemple


de SGBDH : TOTAL, DBASE, etc.
 Deuxième génération, ANNEE 70-80 : SGBD réseau (ou modèle réseau) ;
Exemples : IDS, etc.
 Troisième génération, ANNEE 90-2000 : SGBD Relationnel (SGBDR ou
modèle relationnel) ; Exemples : ACCESS, etc.
 Quatrième génération, ANNEE 2OOO à ? : SGBD Orienté-Objet ; Exemple
: SQL SERVER, etc.

IV.3 PARALLELISME ENTRE LES SYSTEMES DE GESTION DE BASE DE DONNEES


ET LES SYSTEMES DE GESTION DE FICHIERS
De fortes similitudes existent entre les systèmes de gestion de fichiers utilisés
par les différents systèmes d'exploitation et les systèmes de gestion de fichiers
de données, objet de cette partie.
a. Fonctionnement d'un SGF
Les fichiers composant le SGF sont des fichiers de données et des fichiers de
programmes. Les fichiers de programmes permettent 2 types de traitements :
 Traitement interactif : une action extérieure implique un résultat
immédiat de la part du système ;
 Traitement par lots : le traitement comporte une série de commandes qui
traitent plusieurs éléments et dont le résultat n'est pas immédiat.
D’où, le traitement interactif est un traitement unitaire et le traitement par lots
un traitement différé.
b. Objectifs d'un SGF
Le Système de gestion de fichiers a pour but, en parfaite collaboration avec le
système d’exploitation, d’assurer les tâches suivantes :
 Gérer automatiquement les mémoires secondaires : disques, bandes,
mémoire de masse
 Gérer les entrées-sorties ;
 Permettre la création et la suppression des fichiers contenant les données
 Permettre les accès en lecture et en écriture ;
 Protéger les fichiers contre les défaillances du système (pannes matériel
ou logicielles) ;
 Permettre le partage des fichiers entre plusieurs utilisateurs ;
 Protéger les fichiers contre les accès non autorisés ;
 Permettre l’utilisation de langage de programmation pour manipuler et
traiter les informations.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
85

c. Les inconvénients des SGF


Au-delà de l’organisation interne de chaque fichier et des mécanismes
permettant de manipuler les enregistrements de ces fichiers, la difficulté
majeure demeure dans l’existence de différents fichiers au sein du système
d’information d’une entreprise ou d’un organisme.
C’est pourquoi, d’autres systèmes de gestion de données se sont mis en place :
les Systèmes de Gestion de Bases de Données (SGBD) ; leur objectif principal
étant d’éliminer les inconvénients directs des SGF en espérant, par là même,
éliminer les inconvénients indirects.
Chaque génération de SGBD constitue une avancée supplémentaire liée à des
innovations technologiques ; chaque génération apporte des solutions nouvelles
pour atteindre les objectifs énoncés et pour pallier les contraintes de la
génération précédente.
IV.4 PRINCIPE DE FONCTIONNEMENT D’UN SGBD
Le SGBD héberge généralement plusieurs bases de données, destines à des
logiciels différents. La plupart des SGBD fonctionnent selon l’architecture client-
serveur. Le serveur destiné à recevoir les requêtes de plusieurs machines dites
clientes de manière concurrente, les analyses, les traités puis retournent le
résultat attendu au client.

 Description

Dans cette fonction le SGBD met à la disposition de l’utilisateur un outil pour


décrire l’ensemble de données qui seront stockées dans la base de données.

 Utilisation

La fonction d’utilisation a pour but d’offrir à l’utilisateur une interaction avec la


base de données sous forme d’un dialogue pour rechercher, sélectionner et
modifier des données tout en offrant des outils meilleurs pour gérer le conflit
d’accès.

 Intégrité

Le SGBD doit offrir à l’utilisateur la possibilité de définir des règles (contraintes


d’intégrités) qui permettent de maintenir l’intégrité de la base de données.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
86

 Confidentialité

Lorsque la base de données est utilisée entre plusieurs utilisateurs, certains sous-
ensembles ne doivent être accessibles que par des personnes autorisées. D’où
le SGBD doit offrir des mécanismes permettant de vérifier les droits d’accès des
utilisateurs.

 Sécurité de fonctionnement

Afin d’assurer le démarrage du système en cas d’incident ; lorsque celui-ci a été


supprimé, le SGBD doit permettre la prise de point de contrôle pour remettre la
base de données dans un état satisfaisant.

NOTA : Que doit-on savoir pour utiliser un SGBD ?


L’utilisation d’un SGBD suppose de comprendre (et donc de savoir
utiliser) les fonctionnalités suivantes :
1. Définition du schéma de données en utilisant les modèles de données
du SGBD.
2. Opérations sur les données : recherche, mises-à-jour, etc.
3. Partager les données entre plusieurs utilisateurs. (Mécanisme de
transaction).
4. Optimiser les performances, par le réglage de l’organisation physique
des données. Cet aspect relève plutôt de l’administration.

IV.5 ETUDE PRATIQUE DES QUELQUES SGBD (ACCESS, MYSQL, SQL SERVER)
Pour implémenter ou créer une base de données dans un ordinateur, on utilise
un logiciel appelé « SGBD ». Vu la multitude de SGBD qui existe, dans le cadre de
ce cours, nous utiliserons trois SGBD, à savoir : ACCESS, SQL SERVER et MYSQL.
Nota : Pour plus de détails, voir les séances des travaux pratiques.
IV.5.1 LE SGBD ACCESS
Le logiciel Access est composé des éléments suivants : Tables, Requêtes,
Formulaires, Macros, Etat et Modules.
 Table : c’est le lieu de stockage des informations. C’est là où on stock et
enregistre les données ;

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
87

 Requête : les requêtes permettent de manipuler les données qui se


trouvent dans les tables c’est-à-dire que dans Access les tables ne servent
que seulement pour stocker les informations. Et que si on veut faire des
tries ou des filtres ou encore des calculs basés sur les données de la table,
on utilise la requête.
 Formulaire : c’est une interface utilisateur. C’est-à-dire une interface
graphique permettant d’afficher des données provenant d’une table ou
aussi permet d’ajouter des données dans une table. A partir d’un
formulaire on peut remplir une table.
 Macros : Les macros permettent de faire l’intermédiaire entre l’utilisateur
et l’ordinateur. C’est là où on fait la programmation grâce au VBA.
 Module : c’est le lieu d’écriture et de stockage de programme. En d’autre
terme, c’est dans les modules qui seront enregistré et stocké les
programmes Access Basic. Le langage utilisé pour la programmation est le
VBA.
 Etat : est la page d’impression des données Access

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
88

IV.5.2 LE SGBD MYSQL


IV.5.2.1 Présentation du MYSQL

- MYSQL est un système de gestion de base de données relationnelle (SGBDR). Il


est distribué sous une double licence GPL et propriétaire. Il fait partie des
logiciels de gestion de base de données les plus utilisés au monde, autant par le
grand public (application web principalement) que par des professionnels, en
concurrence avec ORACLE, PostgreSQL et Microsoft SQL SERVER.

- le concept MYSQL vient du prénom de la fille du Co-créateur Michael


WIDENIUS ; prénom prononcé « My ». Et SQL fait référence au Structured Query
Language, le langage de requête utilisé.

- MySQL AB a été acheté le 16 Janvier 2008 par Sun Microsystems pour un


milliard de dollars américains. En 2009, Sun Microsystems a été acquis par Oracle
Corporation, mettant entre les mains d’une même société les deux produits
concurrents qui sont ORACLE DATABASE et MySQL. Ce rachat a été autorisé par
la commission européenne le 21 Janvier 2010. Mais depuis mai 2009, son
créateur Michael WIDENIUS a créé MariaDB (Maria est le prénom de sa
deuxième fille) pour continuer son développement en tant que projet Open
Source.

- MySQL est l’œuvre d’une société suédoise, MySQL AB, fondée par David
AXMARK, Allan LARSSON et Michael « MONTY » WIDENIUS.

En résumé, le nom du MySQL vient de la combinaison de My, fille du cofondateur


Michael WIDENIUS, avec l’acronyme SQL (selon la documentation de la dernière
version en anglais). D’autre part, le dossier base et une grande partie des
bibliothèques utilisées par les développeurs utilisent le préfixe « My ». Par
contre, le nom du logo de MySQL (le dauphin) SAKILA, a été choisi par les
créateurs de MySQL sur la base d’un concours. Il a été proposé par Ambrose
TWEBASE, développeur du SWAZILLAND. D’après Ambrose, le nom Sakila puise
ses origines du SISWATI, la langue locale du SWAZILLAND.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
89

NOTA : Wikipédia a utilisé MySQL jusqu’en fin 2012 et actuellement MariaDB est
utilisé. Toutefois nombreuses entreprises utilisent encore MySQL dont : Google,
Yahoo!, YouTube, Adobe, Airbus, BBC News, etc.

IV.5.2.2 Fonctionnalités de MySQL

- MySQL est un serveur de bases de données relationnelles SQL, développé dans


un souci de performances élevées en lecture, ce qui signifie qu’il est davantage
orienté vers le service de données déjà en place que vers celui de mises à jour
fréquentes et fortement sécurisées. Il est multithread et multi-utilisateur. C’est
aussi un logiciel libre, open source, développé sous double licence selon qu’il est
distribué avec un produit libre ou avec un produit propriétaire. Dans ce dernier
cas, la licence est payante, sinon c’est la licence publique générale GNU (GPL) qui
s’applique.

- Deux moteurs principaux sont présents dans MySQL : MyISAM et InnoDB.

En effet, MyISAM, contrairement à InnoDB, ne supporte ni transactions ni


intégrité automatique des tables, il n’est pas destiné aux applications dont la
cohérence des données est critique ; cependant, ses performances le font
adopter pour des applications ayant besoin d’une base de données simple et peu
onéreuse à mettre en œuvre.

Par contre, pour les utilisateurs, « phpMyAdmin » est un outil web souvent
disponible pour créer, remplir et utiliser des bases MySQL.

IV.5.2.3 Utilisation de MySQL

- MySQL fait partie du quatuor LAMP : Linux, Apache, MySQL, PHP. Il appartient
généralement à ses variantes WAMP (Windows) et MAMP (Mac OS).

- Le couple PHP/MySQL est très utilisé par les sites web et proposé par la majorité
des hébergeurs web. Plus de la moitié des sites web fonctionnent sous Apache,
qui est le plus souvent utilisé conjointement avec PHP et MySQL.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
90

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
91

IV.5.2.4 WAMPSERVER

IV.5.2.4.1 Description
Wamp est une plate-forme de développement Web sous Windows pour des
applications Web dynamiques à l’aide du serveur Apache2, du langage de scripts
PHP et d’une base de données MySQL. Il possède également PHPMyAdmin pour
gérer plus facilement vos bases de données.
IV.5.2.4.2 Procédure d’installation
IV.5.2.4.2.1 Téléchargement
Il est possible de télécharger Wamp en passant par le site WAMPServer.com
dans le menu de

navigation du site cliquez sur

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
92

La page devrait alors défiler vous amenant à une section téléchargement où vous
aurez le choix entre
2 versions de WampServer, WAMP SERVER 64 Bits et WAMP SERVER 32 bits

Pour rappel, pour connaitre le type de système de votre Windows, rendez-vous


dans panneau de configuration > Système et sécurité > système

Votre type de système identifié, cliquez sur le bouton de téléchargement de la


version de Wamp qui lui correspond, apparaît alors un questionnaire et quelques
recommandations techniques. Il est à noter que vous pouvez choisir de ne pas
remplir le questionnaire en cliquant sur « passer au téléchargement direct »

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
93

Vous arrivez alors sur un autre site, vous présentant plusieurs choix, afin de
lancer le téléchargement cliquer sur le bouton vert Download Latest Version.

Après quelques secondes une fenêtre s’ouvrira, vous proposant d’enregistrer le


programme WampServer sur votre ordinateur

Celle-ci téléchargé, exécuter l’application pour effectuer l’installation.

IV.5.2.4.2.2 Installation
L’application lancée, une fenêtre s’affiche vous demandant de choisir la langue
de votre installation.

Valider en appuyant sur Ok, s’en suis la demande d’accord de licence, après
l’avoir lu, cocher alors « Je comprends et j’accepte les termes du contrat de
licence » avant d’appuyer sur suivant.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
94

L’interface qui suit fournis des instructions essentielles pour le bon


fonctionnement du logiciel, il est donc important de bien suivre les informations
affichées à l’écran.

Ces instructions expliquent notamment qu’il est nécessaire d’installer Les


paquetages Microsoft Visual Studio VC13, VC14 et VC15 qui sont indispensables
pour le fonctionnement de « Apache 2.4.27 et PHP 7 ou 7.1 ». Dans ces
instructions sont cité les liens permettant de télécharger les paquetages ainsi
que quelques consignes supplémentaires en cas de problème lors du
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
95

téléchargement et l’installation de ces dépendances. Une fois prêt à continuer,


cliquez sur « suivant ».

La page qui suit vous propose de choisir le dossier de destination de


WampServer, par défaut celui-ci sera placé à la racine de votre disque dur
(C:/wamp64), une fois le dossier choisi, cliquez sur suivant.

La page suivante récapitule votre choix de répertoire et vous invite à lancer


l’installation en appuyant sur « Installer ».

Une barre de progression de l’installation apparait


Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
96

Vers la fin de l’installation il vous sera demandé de choisir un navigateur par


défaut pour utiliser WampServer. Voici comment choisir Firefox plutôt
qu’Internet Explorer :

Choisir le répertoire contenant les fichiers programmes de « Mozilla Firefox »,


sélectionner l’exécutable de Firefox puis cliquer sur le bouton « Ouvrir »

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
97

L’installateur propose ensuite de choisir un éditeur à utiliser par WampServer


pour éditer des fichiers comme les journaux (logs).

Conservons l’éditeur de texte standard de Windows (si vous souhaitez utiliser un


autre éditeur de texte cliquer sur « Oui » puis la procédure est similaire à celle
vue précédemment pour choisir le navigateur.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
98

Une fois l’installation achevée, l’installateur affiche des recommandations et


informations pour l’utilisation de WampServer :

• L’utilisateur utilisé pour accéder à l’administration de WampServer est «


root » et il n’a pas de mot de passe associé.
• Ne pas utiliser les touches de clavier pour naviguer dans les menus de
WampServer.
• Un forum d’aide est disponible à l’adresse
http://forum.wampserver.com/list.php?1

L’installation est terminée, cliquez sur le bouton Terminer.

IV.5.2.4.2.3 Présentation de WampServer


(1) Lancer WampServer
Il existe plusieurs possibilités pour lancer WampServer:

• En cliquant sur l’icône présent sur votre bureau :

• En lançant depuis le menu Démarrer :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
99

L’application se lance en arrière-plan, une icône de Wamp s’affiche dans la barre


des tâches, indiquant l’état du serveur à travers sa couleur :

• Rouge indique qu’il y a un problème.


• Orange indique que le serveur n’est pas fonctionnel
(exemple: en cour de démarrage).

• Vert, le serveur est en route et fonctionnel.

(2) Les interfaces


Un clic droit sur le logo de Wamp dans la barre des tâches vous permettra
d’afficher un menu contextuel :

Voici un descriptif des différentes options :

• A propos de… donne des informations sur la version du serveur et de ses


composants.
• Rafraîchir permet de redémarrer le serveur, permettant notamment
d’actualiser des modifications.
• Aide vous ouvrira dans votre navigateur la page du forum d’aide de Wamp.
• Langue vous permettra de choisir la langue de WampServer.
• Paramètre Wamp vous propose des choix d’option de fonctionnement de
WampServer.
• Outils permet de lancer des utilitaires de gestion de WampServer.
• Fermer permet quant à lui de fermer l’application WampServer.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
100

En effectuant un clic gauche dans la barre des tâches


sur le logo de Wamp un second menu contextuel
apparait, proposant d’autres options :

• Localhost ouvre dans votre navigateur l’adresse


de WampServer.
• phpMyAdmin vous fait accéder à votre base de
données.
• Vos VirtualHosts affiche la liste des hôtes
virtuels de votre serveur.
• Répertoire www vous permet d’accéder au
répertoire de stockage de vos projets.
• Apache propose des outils de configuration pour ce composant.
• PHP vous propose des outils de configuration pour PHP comme la
possibilité de changer sa version en cour.
• MySQL vous permet de configurer ce composant.
• MariaDB propose des configurations pour ce composant.
• Démarrer les services permet de lancer les composants éteints.
• Arrêter les services stopper les composants en cour d’exécution sans
arrêter WampServer.
• Redémarrer les services permet de relancer les services pour appliquer des
modifications notamment.

La page d’accueil de WampServer se trouve à la page http://localhost ou


http://127.0.0.1

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
101

Elle apporte de nombreuses informations sur votre serveur :

• La version Apache.
• La version PHP.
• La liste des extensions chargées.
• La version de MySQL, ainsi que le port défini.
• La version de MariaDB (une autre base de données), ainsi que le port
défini.
Plus bas quelques liens important sont fournis :

• Une liste d’outil permettant de gérer votre serveur, notamment le lien


vers PHPMyadmin.
• Vos projets, les fichiers situés dans le répertoire www de Wamp.
• Vos alias, d’autres outils intéressant.
• Vos VirtualHost, par défaut il n’y a que localhost, mais il est possible d’en
ajouter grâce à l’outil Ajouter un Virtual Host.

(3) Démarrer avec WampServer


Pour créer une application il vous faudra vous rendre dans le répertoire www
situé dans le répertoire de Wamp, pour y accéder, clic gauche sur WampServer
dans la barre des tâches > « Répertoire www » explorer s’ouvre alors dans le
répertoire souhaité.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
102

Ici vous pourrez créer un nouveau répertoire contenant votre nouveau projet,
pour plus de détail sur la création d’application web, je vous invite à vous rendre
sur openclassrooms.com.

IV.5.2.5 Utilisation des phpMyAdmin et MySQL

IV.5.2.5.1 Accéder à l'interface

L'interface phpMyAdmin est accessible via un navigateur internet. Elle est


optimisée pour Mozilla FireFox ou Internet Explorer, mais fonctionnera
probablement avec la plupart des navigateurs internet.

Vous pouvez, indifféremment, vous connecter à l'interface phpMyAdmin de


votre ordinateur (s'il est configuré comme un serveur) ou d'un ordinateur distant
(serveur de réseau local ou serveur web). Les serveurs fournissant le service
phpMyAdmin exécutent localement le gestionnaire de base de données MySQL,
un logiciel de gestion de serveur (par exemple apache), puis phpMyAdmin. Une
combinaison de ces logiciels est fournie dans certains paquets logiciels comme
easyPhp (Windows) et Xampp (plusieurs plateformes) afin de configurer un
ordinateur personnel comme un serveur.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
103

Pour accéder à un interface phpMyAdmin, il faut accéder à l'adresse internet


désignée dans un navigateur internet (il faut parfois utiliser un mot de passe).
Consulter l'aide du paquet logiciel utilisé pour obtenir cette adresse.

IV.5.2.5.2 Page d'accueil

L'interface de phpMyAdmin est divisée en 2 sections : la bande de sélection, à


gauche et la page centrale, à droite. La bande de sélection, à gauche, sert à
sélectionner une base de données, une table dans une base, ou à revenir à la
page d'accueil de phpMyAdmin. La page centrale sert interagir sur le système en
visualiser l'état.

Dans la bande de sélection, à gauche, on trouve 4 icônes importants :

• L'icône de maison sert à revenir à la page d'accueil de phpMyAdmin. C'est


sur cette page que l'on peut faire des actions sur le système en entier
(créer une nouvelle base, administrer les usagers, changer la configuration
générale du système, etc.)
• L'icône « SQL dans une boite » (deuxième) sert à obtenir une fenêtre où
l'on peut entrer directement des commandes en langage SQL. C'est donc
l'équivalent de travailler en ligne de commande
• L'icône «? dans une bulle » (troisième) est un lien vers la documentation
de phpMyAdmin
• L'icône « SQL dans une bulle » (quatrième) est un lien vers la
documentation de MySQL

Servez-vous de ces liens abondamment : ils répondront à la plupart de vos


questions.

L'illustration 1 est une capture d'écran de la page d'accueil de phpMyAdmin (sur


la page suivante) :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
104

Illustration 1 : Page d'accueil de phpMyAdmin

Dans l'illustration 1, on remarque à gauche la liste des bases de données


existantes. Pour travailler sur une de ces bases, il faut simplement cliquer sur son
nom. Dans la page centrale (à droite), on observe que phpMyAdmin utilise le
principe d'onglets. Chacun de ces onglets permet d'accéder à des opérations
différentes. Nous n'illustrons pas dans ce document toutes les actions possibles
; seulement les notions de base seront présentées.

IV.5.2.5.3 Créer une base de données MySQL

Lorsque sur la page d'accueil (n'oubliez pas, pour accéder à la page d'accueil,
cliquez sur l'icône de « maison » en haut dans la section à gauche), si vous avez
les droits nécessaires, vous pouvez créer une nouvelle base de données.

Il suffit d'entrer le nom et de cliquer sur « create » ou « créer » (au milieu de


l'Illustration 1).

Remarquer que vous pouvez aussi choisir une option appelée « interclassement
». Les interclassements ou « jeux de caractères » (appelés « collation » en
anglais) sont des conventions pour la reconnaissance et l'affichage des
caractères. En effet, il existe de nombreuses variantes selon les langues utilisées.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
105

Si vous prévoyez utiliser des accents dans un champ particulier, il est conseillé
d'utiliser l'interclassement « utf8_general_ci ». Sinon, vous pouvez conserver
l'interclassement fourni par défaut.

L'illustration 2 montre le résultat de la création d'une base nommée « exemple


».

Illustration 2 : Base créée et insertion de table

Après la création d'une base de données, elle est automatiquement sélectionnée


comme base de donnée de travail – cela peut être observé dans la barre de
gauche. Le code SQL pour la création de la base apparaît à la suite du carré vert
indiquant que la création a été réalisée avec succès. Comme il n'y a pas de table
dans la base, on nous demande immédiatement de créer une table. Nous avons
entré les champs « etudiants » et « 3 » dans les cases « Name » (nom) et «
Number of fields » (nombre de champs). En appuyant sur le bouton « Go » («
Exécuter »), on arrive à une page où l'on doit préciser quels seront les champs
constituant la nouvelle table.

La page de description des nouveaux champs est montrée à l'illustration 3.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
106

IV.5.2.5.4 Ajouts de champs à une table

On peut rajouter des champs dans une table à sa création, ou par la suite, après
la création de la table. On peut même rajouter des champs dans une table
lorsqu'elle contient des tuples (appelés « rangées » ou « rows » avec MySQL).
Lors de la création de champ, il faut préciser leur contenu.

(1) Remplir les champs

Dans l'illustration 3, on remplit 3 champs de la nouvelle table « étudiants » de


la base « exemple ». On choisit 3 champs « texte » de 12, 30 et 30 caractères,
respectivement. Les champs « Nom » et « Prénom » seront d'interclassement
(collation) utf8_general_ci car ils doivent gérer les accents et autres caractères
propres au français.

Illustration 3 : Remplissage de champs

Le sélecteur « type » permet de sélectionner le type de données. Les types


suivants seront particulièrement utiles : INT, VARCHAR (chaine de caractères),
TEXT, DATE, DECIMAL, BOOL, BLOB (fichiers), ENUM, etc. Pour les chaines de
caractères (VARCHAR), il faut choisir la taille dans
« length/values ». Pour chaque champ, on peut donner une valeur par défaut,
choisir l'interclassement (collation), choisir des attributs spéciaux (par exemple
« on_update_current_TIMESTAMP » permet de mettre à jour un champ de type
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
107

DATE lorsqu'un tuple est misàjour), indiquer si le champ peut être « Null », si la
valeur doit être autoincrémentée (« AUTOINCREMENT » ou « A_I »: ceci est utile
pour produire un numéro d'identification (ID) unique à chaque nouvelle
insertion). Les options MIME, Browser information et Transformation options
sont pour les utilisateurs avancés. Lorsque les champs sont remplis, on poursuit
la création avec le bouton « Go » en bas de la page.

(2) Création des champs

L'illustration 4 montre la réussite de la création de la table « étudiants » et ses


champs.

Illustration 4 : Création d'une nouvelle table avec ses champs

Après la création d'une table, elle est automatiquement sélectionnée comme


table de travail dans la base de donnée courante (tel qu'illustré par le fil d'ariane
« localhost > exemple > etudiants »). La page affichée ici correspond à l'onglet «
structure », soit le visionnement de tous les champs qui composent la table.
Les icônes suivants sont visibles pour chaque champ de la table :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
108

Vous retrouverez ces icônes à différents endroits dans l'interface phpMyAdmin.


Dans l'ordre, ils signifient :

• Liste : Afficher les valeurs (tuples, rangées) distinctes disponibles pour cet
élément
• Crayon : modifier cet élément
• X : supprimer cet élément
• Clé : identifier cet élément comme clé primaire
• U : identifier cet élément comme clé unique
• Éclair : identifier cet élément comme index (utilisé pour identifier une clé
étrangère)

(3) Insérer des tuples dans une table

Pour insérer de nouveaux tuples (manuellement) dans une table, il faut utiliser
l'onglet « insert ». Cette page produit un formulaire pour insérer des valeurs dans
chaque champ d'un nouveau tuple (d'une nouvelle rangée « row »), pour la table
présentement sélectionnée.

Dans l'illustration 5, on insère 2 nouveaux tuples dans la table « etudiants » de


la base « exemple » :

Illustration 5 : Insertion de deux tuples dans une table

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
109

La colonne « Function » permet de réaliser une transformation lors de l'insertion


d'un tuple; elle ne vous sera pas utile.

La création des tuples est réalisée lorsque l'on appuie sur le bouton « Go » («
Exécuter »). Notez que les champs pouvant être « null » peuvent être laissés vide.
Les champs d'identification qui ont été sélectionnés « AUTO_INCREMENT »
peuvent aussi être laissés vide : le système se charge alors de leur donner un
numéro unique.

(4) Afficher les tuples

On peut afficher les tuples contenus dans la table sélectionnée en utilisant


l'onglet « Browse » (« Afficher ») dans la page centrale.

Illustration 6 : Affichage de tuples

Les icônes « crayon » et « X » peuvent être utilisés sur les tuples pour les modifier
ou les supprimer. On peut sélectionner plus d'un tuple avec la première colonne

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
110

(cocher) et choisir « crayon » ou « X » (juste en dessous de la liste des tuples)


pour modifier ou supprimer plusieurs tuples à la fois.

Pour changer de table, cliquez sur la table voulue dans le menu de gauche (dans
l'illustration 6, il n'y a qu'une seule table disponible). Pour retourner à la page
d'accueil de phpMyAdmin, utiliser l'icône « maison » (à gauche également).

(5) Structure : Modifier des tables

La modification d'une table se produit sous l'onglet « Structure » de la page


centrale, avec la table sélectionnée.
Les différents champs de la table peuvent être modifiés ou supprimés avec les
icônes correspondantes. Il est aussi possible d'insérer de nouveau champ dans
la table.

(6) Créer des champs dans une table

La création de nouveau champ se produit avec la ligne entre deux « barres » juste
à la fin de la page de l'onglet « Structure ». Il faut y entrer le nombre de nouveaux
champs, où ils seront situés (au début de la table, à la fin, ou après un autre
champ) et cliquer sur « Go ». L'illustration 7 en fourni une démonstration :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
111

Illustration 7 : Onglet structure, ajout d'un champ à la fin de la table

Lors de l'ajout d'un nouveau champ ou de sa modification, la page de


remplissage de champ est affichée et l'on peut choisir les caractéristiques du
champ.

(7) Remplir le nouveau champ

Le nouveau champ doit être rempli de la même façon que lorsqu'on a inséré des
champs dans une nouvelle table. L'illustration 8 montre l'insertion d'un champ «
Sexe » constitué d'un seul caractère dont la valeur par défaut est « M ».

Illustration 8 : Insertion d'un nouveau champ

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
112

(8) Changement de structure obtenu

L'illustration 8 montre le résultat de l'ajout du champ « Sexe » dans la table «


étudiant » de la base de données « exemple » :

Illustration 9 : Changement de structure réussi


(9) Sélectionner une table

Lorsqu'une base de données contient plusieurs tables, il faut utiliser le menu de


gauche pour changer de table « active » (la table sur laquelle on travaille). Pour
changer de table active, cliquez simplement sur son nom dans la liste de gauche

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
113

Illustration 10: Sélection de la table "cours"

(10) Exporter

L'exportation est réalisée dans la page centrale sous l'onglet « Export » («


Exporter »).
Viendra le moment où vous voudrez « sauvegarder » votre base de données. La
façon de le faire est d'exporter toutes les tables de votre base dans un script en
format texte. Ce script contiendra toutes les commandes SQL nécessaires pour
recréer votre base de données sur un autre système. (Ce fichier est un fichier en
format texte que vous pouvez vousmême modifier).

Voici les étapes pour bien « exporter » votre base :


• Sélectionnez la base de données entière avant d'exporter (pas une table)
• Assurez-vous que toutes les tables de votre base sont sélectionnées (vous
pourriez exporter que certaines tables de votre base)

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
114

• Si vous n'êtes pas un utilisateur avancé, ne touchez pas aux options


d'exportation
• Cochez l'option « Save as file » (« Transmettre ») et sélectionnez le type
de compression si désiré
• Appuyez sur le bouton « Go » (« Exécuter »)
• Essayez d'importer le fichier script obtenu pour voir si l'exportation a bien
fonctionné

Illustration 11 : Exportation d'une base de donnée

(11) Importer

L'importation est réalisée dans la page centrale sous l'onglet « Import » («


Importer »).

L'importation d'un fichier « sql » permet d'exécuter toute les commandes s'y
trouvant. Ce sera le moyen d'« ouvrir » la base de données que vous avez
précédemment exportée. Il s'agit simplement de choisir le fichier avec le bouton
« Browse » (« Parcourir »), puis d'appuyer sur « Go » (« Exécuter »).

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
115

(12) Opérations

L'onglet « Operations » de la page centrale permet certaines opérations globales


sur la base de donnée ou la table active.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
116

Illustration 12 : Onglet "Operations" de la page centrale

L'onglet « Opérations », pour une base de données sélectionnée (pas de table


sélectionnée) permet entre autres de renommer la base de données ou en
réaliser une copie.

IV.5.2.5.5 Entrer des commandes SQL

L'usager peut utiliser le langage SQL pour exécuter des commandes, sans utiliser
l'interface graphique. Pour ce faire, il peut utiliser l'icône « SQL dans une bulle »
dans la barre de gauche ou l'onglet « SQL » dans la page centrale.

(1) Requête SQL

Pour précéder à une requête, il suffit d'entrer le code dans la boîte de l'onglet «
SQL ». Cliquez ensuite sur « Go » (« Exécuter ») pour l'exécuter.

L'illustration 13 montre comment formuler une requête permettant d'obtenir


tous les tuples de la tables « etudiants » dont le champ « nom » commence par
« Y » (le caractère % est une valeur passepartout : il peut être remplacé par
n'importe quel(s) caractère(s) ou même aucun).

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
117

Illustration 13 : Requête SQL: trouver les étudiants dont le nom commences par
"Y"

(2) Résultats de requête SQL

Voici le résultat de la requête décrite à l'illustration 13 :

Illustration 14 : Résultat de requête SQL


(3) Recherche

L'onglet « Search » (« Recherche ») propose une interface conviviale pour la


recherche dans une table. Pour chaque champ, on peut utiliser un opérateur
(LIKE est utilisé pour les chaînes de caractères : il est indifférent à la casse –
majuscule / minuscule).

L'illustration 15 montre la recherche de tous les tuples de la table « etudiants »


dont le champ « Sexe » est « M ».

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
118

Illustration 15 : Utilisation de l'onglet "Recherche"

(4) Résultats de recherche

Les résultats de recherche réalisée par l'onglet « Search » (« Recherche ») ont le


même format que le résultat de requête réalisé autrement (avec du code SQL
par exemple).

Ici, on obtient la liste de tous les étudiants « Mâles »:

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
119

Illustration 16 : Résultat de requête : champ sexe = "M"

IV.5.2.5.6 Gérer les usagers du système

La gestion des usagers du système est réalisée sur l'onglet « Privileges »,


accessible depuis la page d'accueil de phpMyAdmin ou lorsqu'une base de
données est sélectionnée.

L'icône « crayon » permet de modifier les privilèges globaux ou locaux


(concernant une base de données uniquement) d'un usager.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
120

Illustration 17 : Onglet "Privileges" : gestion des usagers du système

IV.5.2.5.7 Contraintes de clé étrangère

Des contraintes de clé étrangères peuvent être ajoutées au système afin


d'utiliser des mécanismes de protection des données. Un champ lié avec un
autre champ (identifié comme clé étrangère) ne pourra contenir une valeur qui
est absente dans la table correspondante. L'identification de clé étrangère
permet la modification automatique de tuples lorsque la clé étrangère est
modifiée ou effacée.

Note importante : seul le moteur de stockage InnoDB permet de bien gérer les
contraintes de clé étrangère avec MySQL. Assurez-vous de choisir ce moteur de
stockage lors de la création de vos tables (voir « Storage Engine » (« Moteur de
stockage ») dans le bas de la page de création d'une table à l'illustration 3). Vous
pouvez aussi changer de moteur de stockage en utilisant l'onglet « Operations »,
lorsque la table désirée est sélectionnée.

(1) Gestion des relations


Pour accéder à la page de gestion des relations, utiliser le lien « Relation View »
(« Gestion des relations »), juste en dessous de la liste des champs d'une table,
dans l'onglet « Structure ».
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
121

Illustration 18 : Accéder à la page de "Gestion des relations" par l'onglet


"Structure"

(2) Remplir les contraintes


Note importante : seule un champ marqué comme un « index » (voir icône «
éclair » dans la section « Création des champs » de « Ajout de champs dans une
table ») peut se voir accordé une relation vers une clé étrangère. La clé
étrangère devra elle avoir été identifiée comme clé étrangère, clé unique ou
index (icônes « clé », « U » ou « éclair »).

L'illustration 19 montre la création d'une contrainte de clé étrangère entre le


champ « ID_OBJ » de la table « Objet » et le champ « ID » de la table « Objet »
(dans la base de données « test »).

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
122

Illustration 19 : Création d'une contrainte de clé étrangère

Important : N'utilisez pas la colonne « Internal Relations » (« Relations internes


») : ces liens ne sont pas durables.

Les éléments « ON DELETE » et « ON UPDATE » indiquent au système quelle


opération il doit réaliser lorsque la clé étrangère est supprimée ou modifiée. Les
options suivantes sont disponibles :

• CASCADE : La même action est réalisée sur le tuple courant (si le tuple de
la clé étrangère est effacé, le tuple pointant vers cette clé est aussi effacé.
De même pour la modification)
• SET NULL : Met la valeur du champ à « Null »
• NO ACTION : Ne réalise aucune action. Attention : ceci peut créer des
problèmes si ce n'est pas bien géré par la suite
• RESTRICT : Empêcher l'action (modification ou suppression) sur la clé
étrangère.

(3) Résultat
Dans l'illustration 20, la case avec le crochet vert indique la réussite du rajout
d'une contrainte de clé étrangère. Le code SQL produit est indiqué à la suite.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
123

Illustration 20 : Ajout de contrainte de clé étrangère réussie

IV.5.3 LE SGBD SQL SERVER


Une base de données est bien entendue le contenant de différents objets. Dans
SQL Server, les bases de données sont aussi chargées de permettre d’ajouter et
de retrouver ces objets de la meilleure des façons. Une base de données peut
contenir les éléments suivants : des tables de définitions, des colonnes stockées
dans les tables, des programmes codés en T-SQL qui permettent de manipuler
les données, des index qui permettent de retrouver des données plus
rapidement, ou encore des fonctions, qui sont des tâches répétitives qui
s’appliquent aux lignes de données.

Tous ces termes sont des mots de vocabulaire d’une base de données, et sont
incontournables pour la suite de ce cours :

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
124

Tables Une table est l’endroit où les données sont stockées. Une
base de données doit contenir au minimum une table. Les
informations dans les tables sont stockées dans les lignes et
colonnes.
Colonnes Les colonnes sont constituées d’une cellule de chaque ligne.
Elles donnent une définition à chaque ensemble de
définition et ne peut contenir qu’un seul type de données.
Chaque table, doit contenir au minimum une colonne.
Enregistrements Les enregistrements sont constituées d’une cellule de
chaque colonne. Les lignes sont aussi appelées des records.
Une table peut contenir autant de ligne que l’on veut, on est
simplement restreint par notre espace disque.
Procédure stockée On peut parfois vouloir qu’un programme manipule
des données, de façon récurrente. Une procédure stockée
contient une ou plusieurs déclarations T-SQL qui sont
compilées et prêtes à être utilisées.
Déclaration T- Une déclaration T-SQL est un programme prêt à être utilisé,
SQL que SQL Server peu exécuter pour modifier des données.
Assemblages Les assemblages correspondent aux procédures stockées, ils
peuvent modifier des données, cependant, ils sont plus
utilisés pour une logique procédurale comme on pourra le
voir dans un programme .NET.
Index Comme dans un livre, un index permet d’accéder aux
données plus rapidement. Les index correspondent à des
listes prédéfinies qui peuvent informer sur la position
physique ou non d’une donnée. Ils peuvent être utilisés par
SQL Server pour trouver une ligne de données. Un index ne
peu pas couvrir plus d’une table.
Vues On peut identifier les Vues en tant que des tables virtuelles.
Elles peuvent contenir des informations combinées de
plusieurs tables et peuvent présenter une interface plus
intuitive pour les données

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
125

Fonctions Une fonction est similaire à une procédure stockée. La seule


différence est qu’une fonction traite les données ligne par
ligne.

Maintenant que nous nous sommes familiarisés avec le vocabulaire


d’une base de données, parlons de celles qui sont préconstruites dans SQL
Server, elles sont au nombre de cinq et nous allons voir le rôle de chacune :
 Master : c’est la plus importante des bases de données préinstallées dans
SQL Server. Il est absolument déconseillé de modifier cette base de
données directement dans le sens où elle contient des fonctions du
système. Si jamais cette base de données vient à être corrompue, il y a de
fortes chances que SQL Server ne s’exécute plus correctement.

Elle contient des informations très importantes comme les Login, le rôle
de chaque utilisateur, tous les paramètres de configuration du système,
les noms et les informations relatives aux bases de données créées, la
position des bases de données, ou encore des tables systèmes qui
contiennent elles même des fonctions du système.

La base de données master est vraiment le gardien de votre SQL Server.


 Tempdb : la base de données tempdb est une base de données temporaire
(temporary database) dont le temps de vie est aussi long que la session
sur SQL Server est longue. Lorsque la session SQL Server est terminée, la
base de données tempdb est perdue, puis lorsque l’on redémarre SQL
Server, une nouvelle base de données tempdb est générée. On peut
l’utiliser pour stocker temporairement des données.

 Model : à chaque fois que l’on créé une base de données, elle aura besoin
d’être définit selon des critères précis. Chaque critère devra être précisé
dans Model, par exemple, si l’on veut qu’une table soit répété dans toutes
les bases de données que l’on créé, on aura à mettre cette table dans
Model. La base de données Model est utilisée de la même manière que
Tempdb. De ce fait, il faudra être prudent puisque quand on modifiera
Model, ça se reflètera dans Tempdb.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
126

 Msdb : elle procure des informations qui permettent au SQL Server Agent
de fonctionner. Comme pour Tempdb et Model, il ne vous sera pas
nécessaire de modifier directement Msdb. Beaucoup de processus liés à
SQL Server utilisent le contenu de Msdb, par exemple, lorsque vous faites
un backup, SQL Server Agent se sert de Msdb, il est donc compréhensible
que la modifier directement peut causer un mauvais fonctionnement de
SQL Server.

 AdventureWorks/AdventureWorksDW : ces bases de données sont des


exemples de bases de données construites par Microsoft.

Ces tables pré construites dans SQL Server, vous l'avez compris, servent pour la
plupart, à contrôler SQL Server et ses paramètres. Avant de pouvoir créer notre
première base de données, il est nécessaire d'avoir quelques acquis
supplémentaires concernant les différents types de systèmes. Il en existe deux.
Les systèmes OLTP et les systèmes OLAP qui possèdent des propriétés
différentes et qui sont les suivantes.
Créer une base de données avec SQL Server Les bases de données sont les
ensembles ou nous allons stocker des objets tels que les tables, les vues, les
index... Il existe deux façons de créer des bases de données sous SQL Server
2008.
En utilisant l’interphase proposée par SQL Server (SSMS), ou bien en utilisant le
code T-SQL. Chacune de ces deux méthodes possède ses avantages et ses
inconvenants, il vous appartient d’adopter celle que vous trouvez la plus
productive ou bien la plus pratique. Dans tous les exemples que nous
développerons dans la suite des cours, nous le ferons selon les deux méthodes.

Avec SQL server Management Studio


Dans un premier temps, démarrez SSMS. Assurez-vous que vous vous êtes
connectés à votre serveur. Dans l’explorateur d’objet, faites un clic droit sur le
nœud « base de données » et créez une nouvelle base de donnée. Pour notre
exemple, nous l’appellerons « Test ».

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
127

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
128

Les différents types des variables utilisés en SQL SERVER sont :

Char Chaine de caractères de longueur fixe d’un maximum de 8000


caractères.
Nchar Chaine de caractères Unicode, d’un maximum de 4000 caractères.
Varchar Chaine de caractères de longueur variable. Il est possible de
préciser la valeur max, ce qui permet d’entrer des longueurs de
chaines de caractères de 2^31 caractères.
Nvarchar Chaine de caractères Unicode, d’un maximum de 4000 caractères.
En spécifiant max, le texte peut avoir une longueur maximum de
2^31 caractères.
Int Nombre entier compris entre -2^31 et 2^31-1.
Bigint Nombre entier compris entre -2^63 et 2^63.
Smallint Nombre entier compris entre -2^15 et 2^15-1.
Tinyint Nombre positif compris entre 0 et 255.
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
129

Decimal/Numeric Nom exact de précision C (nombre entier) et D chiffres après la


virgule tel que : Decimal (entre 0 et 38, 2) =Un nombre (2 chiffres
après la virgule). Les valeurs supportées vont de -99999,999 à
99999,999.
Float Nom approché de N chiffres tel que pour Float(N), N vas de 1 à 53.
Real Identique à Float(24).
Money Supporte les nombres monétaires compris entre -
922337203685477,5808 et 922337203685477,5807 donc des
nombres sur 8 octets.
Smallmoney Supporte les nombres monétaires compris entre -214748,3648 et
214748,3647 donc des nombres sur 4 octets.
Date Permet de stocker une donnée de type date comprise entre le
01/01/0001 et le 31/12/9999 avec la précision d’une journée.
Datetime Permet de stocker une date et une heure sur 8 octets. Datetime a
une précision accrue par rapport à Smalldatetime (précision de
3,33 millisecondes).
Datetime2 Il permet de stocker une donnée de type date et heure comprise
entre le 01/01/0001 et le 31/12/9999 avec une précision de 100
nanosecondes.
Smalldatetime Permet de stocker une date et une heure sur 4 octets. Les dates
possibles vont du 1er Janvier 1900 au 6 Juin 2079, avec une
précision à la minute près.
Datetimeoffset Il permet de stocker une donnée de type date et heure comprise
entre le 01/01/0001 et le 31/12/9999 avec une précision de 100
nanosecondes. Les informations sont stockées au format UTC.
Time Permet de stocker des données positives inférieures à 24 heures.
La précision peu être poussée jusqu’à 100 nano secondes.
Hierarchyid Type de données propre à Sql Server qui va nous permettre de
modéliser une structure hiérarchique dans une table relationnelle.
Geometry Permet de travailler avec des données comprises dans un plan en
2 dimension, par exemple sur un trajet très court où on peut
considérer que la terre est plate.

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
130

Geography Ce type de données en revanche, ne nous permet pas d’assimiler la


terre comme étant plane. On pourra l’utiliser pour travailler avec
de grande distance. Il stocke la longitude et la latitude.
Uniqueidentifier Permet de créer un identificateur unique à l’aide de la fonction
NEWID().
Binary Supporte des données binaires sur n octets (De 1 à 255).
Varbinary Supporte des données binaires sur n octets (De 1 à 8000).
L’argument Max, permet de réserver 231 octet au maximum.
Bit Valeur entière Booléenne pouvant prendre la valeur 0, 1 ou NULL.
Xml Permet de stocker des documents Xml au sein d’une table dans une
colonne.
Table Type de données qui permet de renvoyer un ensemble de données
en vue d’une utilisation future. Il est en particulier utilisé pour la
création de tables temporaires.
Sqlvariant Permet de stocker n’importe quel type de données hors mis les
types text, ntext, timestamp et sql_variant. Sql_variant peu faire un
taille maximale de 8016 octets.

Les types de données text, ntext et images existent toujours pour la


compatibilité des anciennes versions, mais il est préférable d’utiliser les types
varchar(max) et varbinary(max).

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
131

REFERENCES BIBLIOGRAPHIQUES

[1] AUDIBERT Laurent, Base de Données et langage SQL, note de cours IUT,
département d’informatique, 1ère année, France ;
[2] CARREZ C., Des Structures aux Bases de Données, Masson
[3] GARDARIN G., Maîtriser les Bases de Données : modèles et langages, Eyrolles
[4] KUYUNSA Alain, Méthodes d’analyse informatique, note de cours deuxième
graduat AIA, UNIKIN 2018- 2019 ;
[5] MARCENAC, P., SGBD relationnels, Optimisation des performances, Eyrolles.
[6] MABELA Rostin, Base de données, note de cours troisième graduat AIA,
UNIKIN 2016- 2017 ;
[7] MBUYI MUKENDI Eugène, Base de données, note de cours troisième graduat
informatique, UNIKIN 2016- 2017 ;

Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
132

TABLE DES MATIERES


AVANT PROPOS.............................................................................................. 1
OBJECTIFS ET CONTENU DU COURS ................................................................ 2
0.1 OBJECTIFS DU COURS ............................................................................ 2
0.2 CONTENU DU COURS ............................................................................. 2
Chapitre I ....................................................................................................... 3
ANALYSE ET METHODOLOGIE D’INFORMATISATION ...................................... 3
I.1 NOTION SUR LES SYSTEMES D’INFORMATION ........................................ 3
I.1.1 Description des concepts de base ........................................................ 3
I.1.2. Structure organisationnelle d’un système ........................................... 4
I.1.3. Système d’information ........................................................................ 6
I.1.3.1. Définition...................................................................................... 6
I.1.3.2. Qualités d’un système d’information ........................................... 7
I.1.3.3. Types des systèmes d’information (S.I) ....................................... 7
I.1.3.4. Système d’Information Informatisé ............................................ 8
I.1.3.5. Positionnement de la base de données dans le Système
d’Information ........................................................................................... 8
I.1.4. Système informatique ......................................................................... 9
I.1.4.1. Définition...................................................................................... 9
I.1.4.2. Contenu d’un système informatique ........................................... 9
I.1.4.3. Types de systèmes informatiques .............................................. 10
I.1.5. Les systèmes interactifs d’aide à la décision (S.I.A.D.) ....................... 12
I.2 METHODOLOGIE D’INFORMATISATION .................................................13
I.2.1 Problématique des entreprises ......................................................... 13
I.2.2 Analyse informatique ........................................................................ 13
I.2.2.1 Analyse du système d’information ............................................. 13
I.2.2.2 Analyse du problème par les Symboles de traitement des
informations ........................................................................................... 14
I.2.2.3 Analyse technique et détaille du problème d’informatisation ... 16
I.2.2.4 Analyse du problème sous forme du projet informatique .......... 16
I.2.2.5 Analyse du problème et élaboration du cahier de charges......... 17
I.2.3 Démarche d’informatisation ............................................................. 19
Chapitre II .....................................................................................................20
APPROCHE D’INFORMATISATION PAR BASE DE DONNEES .............................20
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
133

II.1 NOTION SUR LES BASES DE DONNEES ...................................................20


II.1.1 Définitions ........................................................................................ 20
II.1.2 Modèles de base de données ........................................................... 20
II.1.3 Modèles de données relationnelles ................................................. 21
II.1.3.1 Description ................................................................................. 21
II.1.3.2 Normalisation d’une relation ..................................................... 21
II.1.2.3.2.1 Description et définition ................................................... 21
II.1.2.3.2.2 Règles de normalisation d’une relation ............................ 22
II.1.3.3 Algèbre relationnelle .................................................................. 23
II.2 ETAPES D’INFORMATISATION PAR APPROCHE BASE DE DONNEES .......23
II.2.1 Etude d’Opportunité ........................................................................ 23
II.2.1.1 Etude Préalable .......................................................................... 24
II.2.1.1.1 Description et Définition ...................................................... 24
II.2.1.1.2 Procédure à suivre................................................................ 24
II.2.1.2 Analyse de l’existant .................................................................. 29
II.2.1.3. Diagnostic de l’existant : bilan du system actuel ...................... 44
II.2.2 Conception du nouveau système ..................................................... 47
II.2.3 Application ....................................................................................... 47
Chapitre III ....................................................................................................48
ETUDE APPROFONDIE SUR MERISE................................................................48
III.1 PRESENTATION DE LA METHODE MERISE ............................................48
III.2 PROCESSUS DE CONCEPTION EN MERISE .............................................49
III.3 SYSTEMES D’INFORMATION ORGANISATIONNEL (S.I.O) ......................50
III.3.1 Niveau Conceptuel .......................................................................... 50
III.3.2 Niveau Organisationnel ................................................................... 51
III.4 SYSTEMES D’INFORMATION INFORMATISE (S.I.I) ................................51
III.4.1 Niveau Logique ................................................................................ 51
III.4.2 Niveau Physique .............................................................................. 52
III.5 ELABORATION DES MODELES DES TRAITEMENTS ET DES DONNEES .....53
III.5.1 MODELES DES TRAITEMENTS .......................................................... 53
III.5.1.1 MODELE CONCEPTUEL DE TRAITEMENT ................................... 53
III.5.1.1.1 Les concepts de base ........................................................... 53
III.5.1.1.2. Représentation graphique ................................................. 60
III.5.1.1.3. Extrait du MCT de la gestion des inscriptions .................... 61
III.5.1.2 MODELE ORGANISATIONNEL DE TRAITEMENT ......................... 62
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com
134

III.5.2 MODELES DES DONNEES ................................................................. 65


III.5.2.1. MODELE CONCEPTUEL DE DONNEES ........................................ 65
III.5.2.2. MODELE ORGANISATIONNEL DES DONNEES .......................... 71
III.5.2.3. MODELE LOGIQUE DES DONNEES ........................................... 76
III.5.2.4. MODELE PHYSIQUE DES DONNEES .......................................... 80
NOTION SUR LES SYSTEMES DE GESTION DES BASE DE DONNEES ..................82
IV.1. DEFINITION ET DESCRIPTION DU SGBD...............................................82
IV.2 HISTORIQUE DE SGBD .........................................................................83
IV.3 PARALLELISME ENTRE LES SYSTEMES DE GESTION DE BASE DE
DONNEES ET LES SYSTEMES DE GESTION DE FICHIERS ................................84
IV.4 PRINCIPE DE FONCTIONNEMENT D’UN SGBD ......................................85
IV.5 ETUDE PRATIQUE DES QUELQUES SGBD (ACCESS, MYSQL, SQL SERVER)
...................................................................................................................86
IV.5.1 LE SGBD ACCESS .............................................................................. 86
IV.5.2 LE SGBD MYSQL ............................................................................... 88
IV.5.2.1 Présentation du MYSQL ............................................................ 88
IV.5.2.2 Fonctionnalités de MySQL ........................................................ 89
IV.5.2.3 Utilisation de MySQL................................................................. 89
IV.5.2.4 WAMPSERVER ........................................................................... 91
IV.5.2.4.1 Description .......................................................................... 91
IV.5.2.4.2 Procédure d’installation...................................................... 91
IV.5.2.4.2.1 Téléchargement ............................................................ 91
IV.5.2.4.2.2 Installation .................................................................... 93
IV.5.2.4.2.3 Présentation de WampServer ....................................... 98
IV.5.2.5 Utilisation des phpMyAdmin et MySQL .................................. 102
IV.5.2.5.1 Accéder à l'interface ......................................................... 102
IV.5.2.5.2 Page d'accueil.................................................................... 103
IV.5.2.5.3 Créer une base de données MySQL .................................. 104
IV.5.2.5.4 Ajouts de champs à une table ........................................... 106
IV.5.2.5.5 Entrer des commandes SQL .............................................. 116
IV.5.2.5.6 Gérer les usagers du système ........................................... 119
IV.5.2.5.7 Contraintes de clé étrangère............................................. 120
IV.5.3 LE SGBD SQL SERVER ..................................................................... 123
REFERENCES BIBLIOGRAPHIQUES ................................................................ 131
TABLE DES MATIERES .................................................................................. 132
Cours de MAI II, SINDANI Evariste, Consultant IT Manager, Chercheur en Data Science, evasindani@gmail.com

Vous aimerez peut-être aussi