Cours Informatique
Cours Informatique
L’INFORMATIQUE
PRESENTE PAR SOULEYMANE SANE
[Link]@[Link]
T.I.S | 77 650 28 35
SOMMAIRE
CHAPITRE 1 : GENERALITES
CHAPITRE 2 : STRUCTURE DE L’ORDINATEUR
CHAPITRE 3 : REPRESENTATION DE L’INFORMATION
CHAPITRE 4 : ALGORITHME
CHAPITRE 5 : INTRODUCTION A L’ANALYSE MERISE
Souleymane SANE 1
CHAPITRE I : DEFINITIONS
✓ DONNEE : C’est un renseignement dont on dispose sur une personne ou une chose
✓ INFORMATION : C’est le résultat du traitement des données
✓ INFORMATIQUE : C’est la science de la préparation et du traitement automatique
des données :
INFORMATION
AUTOMATIQUE
✓ L’ORDINATEUR : c’est l’outils de traitement automatique des données
CHAPITRE II : LA STRUCTURE DE L’ORDINATEUR
L’ordinateur est composé :
✓ D’unités périphériques d’entrée
✓ D’unités périphériques de sortie
✓ D’une unité centrale
✓ De périphériques de stockage
Souleymane SANE 2
• Scanner
• Appareil photo numérique
• Caméscope
• Webcam
• Lecteur de code barre
• Lecteur magnétique et optique
✓ Acquisition audio
• Micro
2.2. Unités périphériques de sortie
✓ Imprimantes
• Matricielle
• À jet d’encre
• Laser
✓ Tables traçantes
✓ Les écrans
• A tube cathodique
• Plats
➢ Les écrans plasma
➢ Les écrans LED
✓ Les enceintes
2.3. Unité centrale
Elle contient plusieurs éléments parmi lesquels on peut citer :
- La carte mère
- Le microprocesseur
- La mémoire centrale
- Carte son
- …
✓ La carte mère :
La carte mère est le circuit imprimé central d'un ordinateur, le « cœur » ou la « colonne
vertébrale » qui relie et coordonne tous les composants essentiels (processeur, RAM, carte
graphique, stockage, etc.) et les périphériques (USB, réseau, audio), permettant ainsi leur
communication et le bon fonctionnement global de la machine grâce à des connecteurs et des
bus de données. C'est la base physique où tout s'assemble et communique.
Souleymane SANE 3
✓ Le microprocesseur
Un microprocesseur est le cerveau miniaturisé d'un ordinateur, un circuit intégré unique
(puce) qui exécute les instructions des programmes, effectue des calculs arithmétiques et
logiques, et gère les données. C'est le composant central d'un système informatique,
permettant des tâches allant de la navigation web à l'exécution de logiciels complexes, grâce à
des millions de transistors gravés sur une seule puce.
Souleymane SANE 4
✓ La mémoire centrale
La mémoire centrale représente la partie commune aux différentes unités de traitement
et sert de lieu d'échanges. Elle est composée de deux types de mémoires :
• La mémoire vive ou RAM (Random Access Memory)
C’est la mémoire de travail de l’ordinateur. Elle est volatile et perd son contenu dès
qu’une coupure de l’alimentation en courant se produit. Sa taille est mesurée en Giga-
octets
✓ De périphériques de stockage
Un périphérique de stockage est un dispositif informatique qui permet de stocker, de porter
et d’extraire des données. Il a la possibilité de garder des informations en permanence ou
temporairement. Les périphériques de stockage peuvent être internes ou externes à
l’ordinateur ou au serveur.
Exemples :
• Cassettes et bandes magnétiques
• Disques optiques (CD, DVD & Blu-ray)
• Flash disk (clé usb)
• Mémoire flash (SD)
• Disque dur
Souleymane SANE 5
CHAPITRE 3 : REPRESENTATION DE L’INFORMATION
3.1. Introduction
Les informations traitées par l’ordinateur sont de différentes natures :
• Nombres, texte,
• Images, sons, vidéo
• Programmes, …
Toute information traitée par un ordinateur l’est sous forme binaire (un ensemble de nombres
écrits en une suite caractères binaire 0 ou 1 par exemple 01001011), c’est le codage de
l’information.
Le codage de l’information permet d’établir une correspondance qui permet sans ambiguïté
de passer d’une représentation (dite externe d’une information) à une autre représentation
(dite interne, sous forme binaire) de la même information suivant un ensemble de règles
précises.
Exemple :
• Le nombre 35 : 35 est la représentation externe du nombre 35
• La représentation interne de 35 sera une suite de 0 et 1 (100011)
En informatique, la plus petite unité manipulable par l’ordinateur s’appelle « binary digit »
ou « bit » c’est-à-dire 0 ou 1 (b miniscule dans la notation)
l’octet (en anglais byte ou B majuscule dans la notation) est une unité de d’information
composée de 8 bits. Il permet par exemple de stocker un caractère comme une lettre ou un
chiffre.
Pour mesurer l’information en informatique on utilise les octets. Ainsi nous avons :
• Un kilooctet (Ko) = 103 octets
• Un mégaoctet (Mo) = 106 octets
• Un gigaoctet (Go) = 109 octets
• Un téraoctet (To) = 1012 octets
• Un pétaoctet (Po) = 1015 octets
• Un exaoctet (Eo) = 1018 octets
• Un zettaoctet (Zo) = 1021 octets
• Un yottaoctet (Yo) = 1024 octets
3.2. La représentation des nombres
Les systèmes informatiques sont construits à l’aide de circuits intégrés qui rassemblent sur
une puce de silicium plusieurs millions de transistors
Ces transistors fonctionnent selon une logique à 2 états :
• Le courant ne passe pas (0)
• Le courant passe (1)
Toute information à traiter devra donc pouvoir être représentée sous une forme assimilable par
la machine, et donc sous une forme binaire
Souleymane SANE 6
Pour comprendre le fonctionnement de l’ordinateur, nous allons utiliser le langage binaire.
3.2.1 introduction
Comme tout langage, Nous allons utiliser :
• Un alphabet : ensemble de symboles utilisés
• Des mots, des phrases : combinaisons des éléments (des lettres) de l’alphabet
• Une syntaxe : ensemble de règles qui définissent comment construire ces mots et ces
phrases (la grammaire du langage)
3.2.2. Système de numération décimale
Prenons le système décimal c’est-à-dire la base 10 qu’on utilise tous les jours !
• Alphabet : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
• Mots : 2.856, 45
• Syntaxe : c’est un code de position. Cela signifie que la valeur d’un chiffre dépend de
sa position dans le nombre : son rang
(ex: 2.856 est différent de 8.652, pourtant se sont les mêmes symboles qui sont utilisés)
Le système décimal est basé sur deux choses :
• Le rang : position d’un chiffre dans un nombre, le rang se compte en partant de la
droite vers la gauche, à partir du rang 0.
• Le poids : A chaque rang est associé un poids, c’est à dire le coefficient par lequel il
faudra multiplier le chiffre pour obtenir sa valeur réelle (0, 1, 2…)
Exemple : soit le chiffre : 2865
2 8 6 5
Rang 3 2 1 0
Poids 2x103 + 8x102 + 6x101 + 5x100
Valeur 2000 +800+60+5 = 2865
On peut en déduire une formule qui lie le poids et le rang :
Poids = baserang
Pour le système décimal la base est égale à 10 donc, nous avons : Poids = 10rang
3.2.3. Système de numération binaire
En se basant sur ce qui précède nous avons :
• Alphabet : 0, 1
• Mots : 10.101, 101
• Syntaxe : code de position
• Base 2 : Poids = 2 RANG
✓ Notation des nombres
- n2 ex : (1.001)2 pour un nombre en base 2
Souleymane SANE 7
- n10 ex : (9)10 pour un nombre en base 10
a) Conversion de Base 2 vers base 10
Rappel du principe : Poids = 2rang
Exemple : (11.100.110)2 à (?)10
1 1 1 0 0 1 1 0
Rang 7 6 5 4 3 2 1 0
Poids 27 26 25 24 23 22 21 10
128 64 32 16 8 4 2 1
Valeur : 1x128+1x64+1x32+0x16+0x8+4x1+2x1+0x1 = (230)10
b) Conversion de Base 10 vers base 2
Première méthode : les divisions successives
Principe :
• On divise le nombre en base 10 par 2
• Puis, on divise successivement le quotient de chaque division par 2 jusqu’à ne plus
pouvoir diviser par 2.
• Le nombre binaire s’obtient en relevant le reste de chaque division en partant de la
dernière division vers la première (sens de lecture vers le haut).
Souleymane SANE 8
3.2.4. Système de numération hexadécimal
• Alphabet : 0 1 2 3 4 5 6 7 8 9 A B C D E F
10 11 12 13 14 15
• Mots : 65C, A78E
• Syntaxe : code de position
• Base 16 : Poids = 16 RANG
Notation des nombres : n16 ex: (65E)16 pour un nombre en base 16
a) Première méthode : les divisions successives
• On divise le nombre en base 10 par 16
• Puis, on divise successivement le quotient de chaque division par 16 jusqu’à ne plus
pouvoir diviser par 16.
• Le nombre hexadecimal s’obtient en relevant le reste de chaque division en partant
de la dernière division vers la première (sens de lecture vers le haut).
Souleymane SANE 9
Binaire 0001 1011 0011
Décimale 1 11 3
Hexadécimale 1 B 3
(435)10 =(110110011)2=(1B3)16
c) Troisième méthode : la division par la plus grande puissance de 16 qui est proche
du nombre à convertir
Exemple : 200010 à (?)16
Les poids de 16 : 164 163 162 161 160
Valeurs 65536 4096 256 16 1
• On recherche le plus grand poids de puissance de 16 qui est plus petit que 2000 (ici
256)
• Dans 2000 il y a combien de fois 256 (2000/256=7) et il reste 208
• Dans 208 il y a combien de fois 16 (208/16=13) et il reste 0
• Dans 0 il y a combien de fois 1 (0/1) 0 et il reste 0
Conversion de base 16 vers base 10 et base 2
a) Base 16 vers base 10
• Prenons un nombre hexadécimal : 16B
On le décompose en puissance de 16
162 161 160
1 6 B
=(1x 162+ 6x 161+11x 160)
=(256+96+11)= 363
(16B) 16= (363) 10
b) Base 2 vers base 16
• Prenons un nombre binaire :
011010101100
Procédure :
• On sépare le nombre binaire en groupe de 4 bits
• On convertit chaque groupe en décimal puis en hexadécimal
En binaire 0110 1010 1100
En décimale 6 10 12
En hexadécimal 6 A C
(011010101100)2=(6AC)16
c) Base 16 vers base 2
Prenons l’exemple précèdent:
Convertir (6AC)16 en (?)2
Souleymane SANE 10
Procédure :
On convertit chaque caractère hexadécimal en binaire et on rassemble le tout
6 A C
En binaire 0110 1010 1100
Remarque : ne pas oublier que A=10 et C=12 en décimale
(6AC)16 = (011010101100)2
Souleymane SANE 11
3.3. Le codage numérique du texte
3.3.1 le code ASCII
En informatique, chaque caractère est identifié par un code unique qui est un entier naturel.
Mais ce code n’est pas utilisable tel quel par un ordinateur qui ne comprend que le langage
binaire. Il faut donc encoder les codes décimaux en octets.
L'American Standard Code for Information Interchange (Code américain normalisé pour
l'échange d'information), plus connu sous l'acronyme ASCII, est une norme informatique
d'encodage de caractères.
Elle est apparue dans les années 1960. Elle contient 128 points de code codés sur 7 bits et
permet d'encoder les chiffres arabes de 0 à 9, les 26 lettres de l'alphabet latin en minuscules
et en capitales, des symboles mathématiques et de ponctuation.
• Les caractères de numéro 0 à 31 et le 127 ne sont pas affichables ; ils correspondent à
des commandes de contrôle de terminal informatique. Le caractère numéro 127 est la
commande pour effacer. Le caractère numéro 32 est l'espace. Le caractère 7 provoque
l'émission d'un signal sonore
• Les caractères de numéro 65 à 90 représentent les majuscules
• Les caractères de numéro 97 à 122 représentent les minuscules
Les 95 caractères Ascii imprimables
Souleymane SANE 12
3.3.2. Le code ASCII étendu
Le code ASCII a été mis au point par la langue anglaise, il ne contient pas de caractères
accentués, ni de caractères spécifiques à une langue. De nombreuses normes de codage de
caractères ont repris les codes ASCII et ajouté d’autres caractères pour les codes supérieurs à
127. Parmi les nombreuses extensions 8 bits de l'ASCII, le Multinational Character Set créé
par Digital Equipment Corporation est considéré comme à la fois l'ancêtre de l'ISO/CEI
8859-1 et de l'Unicode[
La norme ISO-8859-1 est une déclinaison de la norme ISO-8859 et contient :
• Les caractères accentués d’Europe occidentale, et qui est souvent appelée
Latin-1 ou Europe Occidentale.
• Les jeux de caractères utilisés dans d’autres langues
• Quelques symboles graphiques
• Des caractères semi-graphiques qui permettent de réaliser de petits dessins
géométriques (cadre, souligné,…)
3.3.3. Le code Unicode
L’Unicode propose une version unifiée des différents encodages de caractères complétant
l'ASCII mais aussi permet l'encodage de caractères autres que ceux de l'alphabet latin. Dans
Unicode, les caractères sont codés sur 21 bits donc Unicode a défini des dizaines de milliers
de codes, mais les 128 premiers restent compatibles avec ASCII
Souleymane SANE 13
CHAPITRE IV ALGORITHME
4.1. Introduction
la réalisation d'un programme passe par trois étapes :
• L'analyse du problème qui doit permettre de formuler ce qu'il faut résoudre. Elle
spécifie les données et les résultats à obtenir.
• L'algorithme définit la structure des données, l'enchaînement et l'organisation des
traitements.
• La programmation, finalement, est la concrétisation des étapes précédentes. Cette
dernière partie permet de finaliser le projet.
4.2. Définition de l’algorithme
C’est une suite finie d’instructions non ambiguës dans un langage pseudo-naturel simple
permettant de décrire une méthode pour répondre à un problème en un temps fini en
s’affranchissant des aspects matériels de mise en œuvre (type de machine, langage de
programmation utilisé, …)
Le "langage algorithmique" que nous utilisons est un compromis entre un langage naturel et
un langage de programmation
En étudiant cette définition, on peut ainsi voir trois parties fondamentales que l'on peut
décomposer de la manière suivante : le problème et ses données, le résultat, la manière
d'obtenir le résultat
Exemple :
Algorithme Recettes
Données Ingrédients
en
Algorithme Recettes
Résultats Plats
(sortie)
Souleymane SANE 14
▪ Le corps :
✓ il est délimité par les mots clés début et fin.
✓ Contient les instructions
• Par convention, tous les identifiants de variables seront notés en minuscule et auront
un nom mnémonique
• Il en va de même pour les fonctions, dont l'identifiant doit être le plus explicite sur son
rôle. Ce dernier peut être une contraction de plusieurs mots, par conséquent pour
rendre la lecture plus facile, la première lettre de chaque mot est mise en majuscule
(exemple : CalculerAireRectangle).
4.4. : les variables et les constantes
4.4.1. Définition d’une variable
La mémoire de l’ordinateur se compose d’une série de cellules répondant chacune à une
adresse en mémoire. Ces cellules dont la taille dépend du type d’ordinateur, contiennent des
données accessibles par l’intermédiaire de noms symboliques appelés variables. Une variable
est donc un nom donné à une adresse en mémoire permettant ainsi de consulter ou de modifier
le contenu de cette dernière.
une variable est caractérisée par trois informations :
• Son nom : composé uniquement de lettres minuscules, majuscules, de chiffres et du
caractère souligné, il permet d’identifier la variable. On parle d’« identificateur ». Ce
nom doit être significatif (refléter le rôle de la variable). Un compromis doit bien sûr
être trouvé entre expressivité et longueur. On peut par exemple appeler prix_unitaire
une variable qui représente le prix unitaire d’un article.
• Son type : une variable est utilisée pour représenter des données qui sont manipulées
par le programme. Un type est utilisé pour caractériser l’ensemble des valeurs qu’une
variable peut prendre. Par exemple le prix unitaire représente le prix d’un article
exprimé en francs CFA.
• Sa valeur : La variable contient une information qui peut varier au cours de
l’exécution d’un programme. C’est cette information que l’on appelle valeur de la
variable. La valeur d’une variable doit correspondre au type de la variable
le nom et le type sont des informations statiques qui doivent être précisées lors de la
déclaration de la variable. En revanche, la valeur est une information dynamique qui
changera au cours de l’exécution du programme. Le tout est stocké dans la mémoire de
l’ordinateur.
Un type caractérise les valeurs que peut prendre une variable. Il définit également les
opérations, généralement appelées opérateurs, qui pourront être appliquées sur les données
de ce type.
• Un opérateur est un symbole d’opération qui permet d’agir sur des variables ou de
faire des “calculs”
• Une opérande est une entité (variable, constante ou expression) utilisée par un
opérateur
• Une expression est une combinaison d’opérateur(s) et d’opérande(s), elle est évaluée
durant l’exécution de l’algorithme, et possède une valeur (son interprétation) et un
type
Souleymane SANE 15
4.4.2 Les différents types de variables
a) les entiers
On les utilise pour représenter les entiers relatifs. Les opérations utilisables sur les entiers sont
:
• Les opérateurs arithmétiques classiques : + (addition), - (soustraction), * (produit)
• La division entière, notée ÷ ou DIV : n DIV p donne la partie entière du quotient de la
division entière de n par p
• Le modulo, (MOD) : n MOD p donne le reste de la division entière de n par p
• Les opérateurs de comparaison classiques : <, >, =, ...
Exemples : Déclaration d’une variable entière
Variable nombre : ENTIER
Quelques exemples d’entiers :
10, 0, -10
Quelques exemples d’utilisation d’opérateurs :
10 Mod 3 ---------= 1 (le reste de la division entière de 10 par 3)
10 Div 3 ----------- = 3 (le quotient de la division entière de 10 par 3)
1 Div 2 ------------ = 0 (le quotient de la division entière de 1 par 2)
Abs(-5) ----------- = 5 (la valeur absolue de -5)
b) Les réels
Les opérations utilisables sur les réels sont :
• Les opérations arithmétiques classiques : + (addition), - (soustraction), *
(produit), / (division)
• Les opérateurs de comparaison classiques : <, >, =, ...
Exemple : Déclaration d’une variable réelle
Variable Moyenne : REEL
Exemple de représentants des réels
• 10.0, 0.0
c) Le type logique
Une variable de type logique (booléen) peut prendre deux valeurs VRAIE ou FAUSSE. Les
opérations sont Et, Ou et Non qui sont définies par la table de vérité suivante
Exemple : Déclaration d’une variable booléenne
Variable existe : BOOLEEN
Les opérations principales les plus utilisées sont :
• Les opérateurs logiques : NON, ET, OU
• Opérateurs de comparaison : = , ≤ , ≥ , ≠
Souleymane SANE 16
d) Le type caractère
Il s'agit du domaine constitué des caractères alphabétiques et numériques. Une variable de
ce type ne peut contenir qu'un seul et unique caractère. Les opérations élémentaires
réalisables sont les comparaisons : <, >, =, ...
Exemple : Déclaration d’une variable de type caractère
Variable C : CARACTERE
Exemple de représentants des caractères
• ’a’ -------- le caractère a
e) Le type chaine de caractères
Une chaine de caractère est un objet qui peut contenir plusieurs caractères de manière
ordonnée(permet de manipuler des chaînes de caractères pour représenter des mots ou des
phrases).
Exemple : Déclaration d’une variable de type chaine de caractère
Variable NOM : CHAINE[30] → Chaine de 30 caractères maximum
• "Une chaîne de caractères" -- un exemple de Chaîne
• "Une chaîne avec Guillement (\")" -- un exemple de Chaîne
4.5. Les constantes
Une constante est un objet dont l'état reste inchangé durant toute l'exécution d'un
programme. On ne peut jamais modifier sa valeur et celle-ci doit donc être précisée lors de
la définition de l'objet.
Exemple : Déclaration d’une variable constante
CONST PI=3.14
4.6. Manipulation des variables
On peut faire deux choses avec une variable
4.6.1. Affectation et obtention de la valeur d’une variable
L'affectation permet de donner une valeur à une variable.
A 28 « reçoit » 28 ; si A avait une valeur auparavant, cette valeur disparaît : elle est
écrasée par 28
Syntaxe : <id_variable> <expression>
A « l'exécution » : l'expression est évaluée (calculée) et sa valeur est rangée dans la variable.
Donc les types <id_variable> et <expression> doivent être compatibles.
4.6.2. obtenir son contenu
Cela s’effectue simplement en nommant la variable
Exemple :
Par exemple l’expression c ← a + b se comprend de la façon suivante :
On prend la valeur contenue dans la variable a
On prend la valeur contenue dans la variable b
Souleymane SANE 17
On additionne ces deux valeurs
On met ce résultat dans la variable c
Si c avait auparavant une valeur, cette dernière est perdue !
4.7. Les opérations entrées / sorties
Un algorithme peut avoir des interactions avec l’utilisateur
• Il peut afficher un résultat, qui peut être du texte ou le contenu d’une
variable(Ecriture )
• demander à l’utilisateur de saisir une information afin de la stocker dans une
variable (Lecture)
Exemple :somme de deux entiers
Algorithme Somme_Nombre
Variable A, B, C : ENTIER
DEBUT
ECRIRE « voulez-vous saisir le premier nombre »
LIRE (A)
ECRIRE « voulez-vous saisir le deuxieme nombre »
LIRE (B)
C ← A+B
ECRIRE(C)
FIN
Souleymane SANE 18
[Link]. Conditionnelle SI-ALORS-SINONSI-FINSI
Ici, nous avons des instructions conditionnelles imbriquées.
Syntaxe :
SI instructions ALORS
action 1
action 2….
SINON
SI instructions ALORS
action 1
action 2….
SINON
action 1
action 2….
FIN SI
FIN SI
[Link]. Structure de contrôle SELON QUE
Les conditions sont évaluées dans l'ordre, les unes après les autres, et dès qu'une de celles-ci
est vérifiée, l'action associée est exécutée. Après quoi on passe au FIN SELON pour continuer
avec la suite de l'algorithme. On peut utiliser une instruction SINON (facultative), dont
l'action sera exécutée si aucune des conditions évaluées n'a été remplie.
4.8.2 les structures répétitives
[Link]. TANT QUE
Cette instruction évalue une condition et tant que celle-ci est vérifiée, les actions placées à
l'intérieur sont alors effectuées. Pour sortir de la boucle, il faut que la condition ne soit plus
remplie (c'est la seule possibilité admise en algorithmie).
TANT QUE (condition) FAIRE
action
FIN TANT QUE
Il est possible que la condition ne soit pas remplie lors de la première évaluation, dans ce cas
on passe à l'action qui se trouve après le FIN TANT QUE.
A chaque fois que l'on arrive au FIN TANT QUE, on revient au début de la boucle pour
évaluer la condition. La condition doit utiliser une variable qui sera alors modifiée par l'action
effectuée, sinon il y a peu de chance (voir aucune) pour que la boucle se termine.
REPETER JUSQU’À
Cette instruction répète une action jusqu'à ce que la condition soit remplie.
REPETER
action
JUSQU'A (condition)
Souleymane SANE 19
La condition est évaluée après l'action. Donc, dans cette structure, l'action est effectuée au
moins une fois.
[Link]. REPETER JUSQU’À
Cette instruction répète une action jusqu'à ce que la condition soit remplie.
REPETER
action
JUSQU'A (condition)
La condition est évaluée après l'action. Donc, dans cette structure, l'action est effectuée au
moins une fois.
[Link]. POUR
Cette dernière instruction de répétition est la plus utilisée.
POUR valeur DE debut A fin [PAS] FAIRE
action
FIN POUR
Elle affecte une valeur de départ à une variable, exécute les actions contenues dans la boucle,
et l'incrémente jusqu'à la valeur de fin. L'incrémentation est par défaut de 1, mais il est
possible de la régler avec l'instruction PAS.
Souleymane SANE 20
CHAPITRE 5 INTRODUCTION A L’ANALYSE MERISE
5.1. Le système d’information dans l’entreprise
L’entreprise est un système complexe dans lequel transitent de très nombreux flux
d’informations. Sans un dispositif de maîtrise de ces flux, elle peut très vite être dépassée et ne
plus fonctionner avec une qualité de service satisfaisante. L’enjeu de toute entreprise qu’elle
soit de négoce, industrielle ou de services consiste donc à mettre en place un système destiné à
collecter, mémoriser, traiter et distribuer l’information. La disponibilité d’un système de gestion
de base de données fiable permet donc aux entreprises de gérer des données de manière efficace,
de déployer des applications qui les utilisent et de les stocker pour un usage ultérieur. Les bases
de données se trouvent donc au cœur du système d’information des entreprises.
Il est très difficile de donner une définition exacte d’une base de données mais néanmoins on
peut donner deux :
Peu importe le support utilisé pour rassembler et stocker les données (papier, fichiers, etc.), dès
lors que des données sont rassemblées et stockées d’une manière organisée dans un but
spécifique, on parle de base de données.
Souleymane SANE 21
- Le système de pilotage décide des actions à conduire sur le système opérant en
fonction des objectifs et des politiques de l’entreprise (c’est lui qui réfléchit, décide,
oriente)
- Le système opérant englobe toutes les fonctions liées à l’activité propre de
l’entreprise : facturer les clients, régler les salariés, gérer les stocks(c’est lui qui
produit, transforme, agit)
- Le système d’information assurera le lien entre les deux autres systèmes
précédemment cités : le système opérant et le système de pilotage.
Système de pilotage
Système d’information
: Information – décision
La mise en œuvre d’un SI passe par la réalisation de plusieurs étapes. Selon les applications,
certaines étapes peuvent être occultées ou simplement prises partiellement en compte. Ce
modèle permet une description naturelle du monde réel à partir des concepts d’entité et
d’association. Basé sur la théorie des ensembles et des relations, ce modèle se veut universel et
répond à l’objectif d’indépendance données-programmes. Ce modèle, utilisé pour la phase de
conception, s’inscrit notamment dans le cadre d’une méthode plus générale et très répandue :
MERISE.
Souleymane SANE 22
L’analyse du SI repose sur la modélisation. Un modèle est une représentation simplifiée de la
réalité. En d’autres termes on ne retient que les éléments utiles et nécessaires au système
d’information.
Analyse
Modèle Application
Réalité
du modèle
observable
Monde
réel
Spécification de la
base de données
Analyse
Schéma
conceptuel
Conception
Schéma
logique
Transformation
Schéma
interne
Physique
Souleymane SANE 23
5.3. le modèle conceptuel des données
Le Système d’information mémorise l’ensemble des informations d’un univers donné, ses
règles de gestion et ses règles d’organisation. Il est aussi chargé de gérer l’interaction entre
l’entreprise et le monde extérieur pour offrir à celle-ci de meilleures conditions de prise de
décision.
Toute étude passe par une phase de recueil des informations ; elle consiste à faire le tour du
problème par le biais d’interview, de discussions mais aussi d’études des différents documents
produits par le domaine. En d’autres termes, l'analyse des fiches, des documents, des fichiers et
des tâches déjà informatisées, permet de mettre en évidence les règles de gestion et
d'organisation.
- Elaborer le MCD
Les va et vient entre ces trois étapes sont constantes. La démarche est plus itérative (retour
périodique en arrière, remise en cause, enrichissement) que séquentielle (une étape après
l’autre)
Le nom: il paraît évident que chaque information doit posséder un nom unique et propre à elle:
il ne doit pas y avoir de polysémie, ni de synonymes.
La nature: une information peut être calculée ou non. Une information non calculée (NC) est
un champ de texte, ou un nombre dont on ne sert pas pour des calculs. Ex: le nom d'un client,
son adresse, un numéro de téléphone ou le code postal. Une donnée calculée (C) peut l'être à
partir d'autres données calculées ou non. Ex : montant HT (C) = quantité (NC) * P UHT (NC).
En revanche, une quantité en stock, par exemple, est calculée comme suit: quantité en stock =
ancien stock + somme des entrées - somme des sorties. Une telle donnée pourra être calculée et
Souleymane SANE 24
mémorisées (CM).
Le type: une information peut se caractériser par des types différents: D pour une date
(JJ/MM/AAAA), A pour une donnée alphanumérique, N pour un nombre, B pour une valeur
booléenne (vrai ou faux).
Les observations: pour chaque propriété, on peut associer un commentaire ou une remarque,
qui pourra aider. Ex : pour une date on peut indiquer qu'elle est sous la forme
JJ /MM/AAAA. .
NC, C, CM A, N, D, B
L'ensemble des propriétés d'un système d'informations compose ainsi un Dictionnaire Global
(ou Brut) des Données.
Cette étape consiste à recopier le dictionnaire global des informations en ne conservant que les
données non calculées (NC) et calculées mémorisées (CM).
L'étude des règles de gestion et de calcul permet parfois de découvrir de nouvelles informations
qui n'étaient pas présentes dans les documents fournis. La dernière étape consiste à classer par
ordre alphabétique sur le nom, le dictionnaire épuré.
C’est un modèle conçu dans les années 70. Dans un système réel, les données sont divisées en
catégories discrètes ou entités. Un modèle E/R est la représentation des diverses entités qui
existent au sein d’une société et leur inter action. Un modèle E/R est issue de règles de gestion
ou compte rendu d’interview et est conçu au cours de la phase d’analyse du cycle de vie du
système.
Souleymane SANE 25
5.4.1 Entité et propriétés
[Link]. Entité
Exemples :
Dans une organisation "COLLEGE", on trouvera les entités ÉLÈVE, CLASSE, MATIÈRE,
PROFESSEUR.
[Link]. Propriété
C’est un élément qui décrit ou qualifie une entité. Chaque entité est caractérisée par un
ensemble de propriétés. Leur nombre et leur type dépendront de l'entité étudiée. Il existe des
propriétés simples, des propriétés composées et des propriétés dérivées. Une propriété
composée est subdivisée en propriétés simples. La valeur d’une propriété dérivée est calculée
sur la base de la valeur d’une autre propriété.
Exemple :
Pour l'entité ÉLÈVE, nous aurons comme propriétés Numéro, Nom, Prénom, Date de
naissance, rue, Ville, Code postal.
Souleymane SANE 26
[Link] et occurrences
Un type est un ensemble d’éléments ayant les mêmes caractéristiques. Une occurrence d’un
type est un élément particulier appartenant à cet ensemble.
Exemple1 :
CLIENT Diop et CLIENT Fall sont des occurrences de l’entité type CLIENT
[Link]. Identifiant
Parmi les différentes propriétés, il y en a une, l'identifiant, qui sert à différencier sans
ambiguïté chaque occurrence de l'entité, c'est à dire qu'à une valeur donnée de l'identifiant ne
peut correspondre qu'une seule occurrence. Souvent on utilisera comme identifiant un code,
un numéro, une référence, afin de respecter le principe de l'identifiant.
Par exemple un nom de famille peut être présent plusieurs fois dans l'ensemble des
occurrences de l'entité ÉLÈVE, on choisira donc un numéro d'élève ou un code afin d'éviter
les homonymes.
Exemple :
Le code client est l’identifiant (la clé) de l’entité type client. Les clients de code A01 et A02
constituent des occurrences distinctes de CLIENT.
On représente (par convention) une entité dans un rectangle surmonté du nom de l'entité,
listant l'ensemble des propriétés.
L'identifiant sera mis en évidence par un soulignement (là aussi par convention).
Souleymane SANE 27
[Link] de relation
[Link]. Définition
Une relation est une association définie sur une collection de n objets. Le nombre de n objets
associés définit la dimension de la relation. Ainsi une relation binaire relie deux objets, une
relation ternaire relie trois objets et une relation n-aire en relie n..
[Link]. Représentation
Dans le modèle entité-association, une relation se symbolise par une ellipse entourant son
nom. Cette ellipse est reliée par un trait à tous les objets concernés par la relation.
Nom de la relation
Vendre
LIEN VERS LIEN VERS
UN OBJET UN OBJET
Si la relation est porteuse de données (cas de données dépendantes des objets de la relation),
l’ellipse et séparée en deux par un trait horizontal et les données sont indiquées sous ce trait.
Nom de la relation
VENDRE
Souleymane SANE 28
Convention de notation
Les objets sont baptisés du nom habituel ou naturel qu’ils portent dans l’organisation
considérée ex : auteur, dépôt, personne…
Dans une relation, le sens de lecture de la relation influe sur le terme à employer. Ainsi, on
peut dire « un fournisseur fournit un article » ou « un article est fourni par un fournisseur » ;
afin de ne pas lier la relation à un sens unique de lecture, il est préférable d’utiliser un verbe à
l’infinitif (ex : fournir).
[Link]. Définition
Les cardinalités d’une entité dans une association expriment le nombre de fois qu’une
occurrence de cette entité est impliquée dans l’association, au minimum et au maximum.
Les quatre couples de cardinalités possibles sont :
• 0,1 : au moins zéro, au plus un (unicité sans obligation)
• 1,n : au moins un, au plus n (obligation sans unicité)
• 1,1 : au moins 1, au plus 1 : (obligation et unicité)
• 0,n : au mois zéro, au plus n (pas d’obligation, pas d’unicité)
Dans chacune des différentes notations, le premier chiffre représente la cardinalité minimale,
tandis que le second représente la cardinalité maximale. Les contraintes représentées par les
cardinalités ont un caractère obligatoire ou facultatif, unique ou multiple des occurrences des
entités.
Souleymane SANE 29
5.5. le modèle logique de données
Au terme de la validation du MCD, le modèle obtenu est clair pour l’œil mais on ne peut
l’implanter encore sur une machine. Il va falloir préciser comment accéder aux informations
Les données sont stockées dans des relations, Une relation est un ensemble de T-uple, et un
T-uple est défini par un ou plusieurs attributs. Dans la pratique, la relation est en fait la
table, un T-uple est une ligne (ou enregistrement), et les attributs sont les colonnes.
Domaine
6
Degré 6
Souleymane SANE 30
Chaque enregistrement doit être identifié de manière unique (voir la notion d'identifiant).
L'attribut qui permet d'identifier de façon unique chaque ligne est appelée la Clé Primaire.
Elle peut être composée, c'est à dire comprendre plusieurs attributs.
5.5.2. Passage au modèle logique relationnel
Cinq règles de base sont à suivre pour le passage du MCD au MLD
Règle 1 :
Exemple :
La Clé Primaire de la table à la cardinalité (X,n) devient une Clé Etrangère dans la table à la
cardinalité (X,1) :
Exemple :
Souleymane SANE 31
Regle n° 3 : Relation binaire aux cardinalités (0,1) - (1,1).
La Clé Primaire de la table à la cardinalité (0,1) devient une Clé Etrangère dans la table à la
cardinalité (1,1) :
Exemple
Dans ce centre de vacances, Chaque animateur encadre en solo 0 ou 1 groupe, chaque groupe
étant encadré par un et un seul animateur.
MCD :
MLDR :
ANIMATEUR (id_Animateur, Nom_Animateur)
GROUPE (id_Groupe, Nom_Groupe, #id_animateur)
Règle n°4 : Relation binaire aux cardinalités (X,n) - (X,n), X=0 ou X=1
Il y a création d'une table supplémentaire ayant comme Clé Primaire une clé composée des
Cles primaires des 2 tables. On dit que la Clé Primaire de la nouvelle table est la
concaténation des Clés Primaires des deux autres tables.
Si la relation est porteuse de données, celles ci deviennent des attributs pour la nouvelle table.
Exemple :
Une commande est composée de 1 ou n produits distincts en une certaine quantité. Un produit
est présent dans 0 ou n commandes en une certaine quantité.
MCD :
MLDR :
COMMANDE (id_Commande, Date_commande)
PRODUIT (id_Produit, libelle)
COMPOSE (#id_Commande, #id_Produit, qantité)
La Clé Primaire de la table se dédouble et devient une Clé Etrangère dans la relation
ou nouvelle table. Exactement comme si l'entité se dédoublait et était reliée par une
relation binaire (X,1) - (X,n) (Cf règle 2).
Souleymane SANE 32
Exemple :
Prenons l'exemple d'une société organisée de manière pyramidale : chaque employé a 0 ou 1
supérieur hiérarchique direct. Simultanément, chaque employé est le supérieur hiérarchique
direct de 0 ou plusieurs employés.
MCD :
MLDR :
EMPLOYE (id_Employe, Nom_Employe, #id_Sup_Hierarchique)
#id_Sup_Hierarchique est l'identifiant (id_Employe) du supérieur hiérarchique direct de
l'employé considéré.
Eexemple
Prenons cette fois l'exemple d'une organisation de type familiale : chaque personne a 0 ou n
descendants directs (enfants), et a aussi 0 ou n descendants directs (enfants).
MCD :
MLDR :
PERSONNE (id_Personne, Nom_Personne)
PARENTE (#id_Parent, #id_Enfant)
#id_Parent est l'identifiant (id_Personne) d'un ascendant direct de la personne. #id_Enfant est
l'identifiant (id_Personne) d'un descendant direct de la personne.
La table PARENTE sera en fait l'ensemble des couples (parents-enfants) présent dans cette
famille.
Souleymane SANE 33
Annexe1 : Code ASCII
Code en base
Caractère Signification
10 8 16 2
Souleymane SANE 34
Code en base
Caractère Signification
10 8 16 2
Souleymane SANE 35
Code en base
Caractère Signification
10 8 16 2
Souleymane SANE 36
Code en base
Caractère Signification
10 8 16 2
Souleymane SANE 37
Code en base
Caractère Signification
10 8 16 2
Souleymane SANE 38