Vous êtes sur la page 1sur 124

Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

République du Cameroun

Ministère de L’Enseignement Supérieur

Préparation Examen du BTS - Filières Informatiques (IGL / GSI)

Recueils de Cours Expliqués Et


Fiche des TD (Les Enoncés)

1) Algorithmes Et Structures de Données Avancées ;

2) Base de Données Et Le Langage SQL ;

3) Analyse Informatique – MERISE ;

4) Analyse Informatique – Langage UML

Proposé Par : Monsieur MINFOUNDI MANGUELE Wilfreed – 655 25 55 01 (Appels & Sms & WhatsApp)

Informaticien, Spécialiste des Prépas BTS (Taux de 100% Chaque Année Académique)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 1
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Sommaire du Document
Sommaire du Document ..............................................................................................................................2

1. Cours 1 - Algorithmes Et Structures de Données Avancées .............................................................6

1.1. Généralités .....................................................................................................................................6

1.1.1. Structure Générale d’Un Algorithme : ....................................................................................6

1.1.2. La Notion de Types de Données ..............................................................................................6

1.1.3. La Notion de Variable .............................................................................................................6

1.1.4. La Notion de Constante ...........................................................................................................7

1.1.5. Les Opérateurs de Base ...........................................................................................................7

1.1.6. La Notion d’Affectation En Algorithme..................................................................................7

1.2. Les Instructions de Lecture Et d’Ecriture En Algorithme .......................................................8

1.2.1. Les Instructions de Lecture ......................................................................................................8

1.2.2. Les Instructions d’Ecriture ......................................................................................................8

1.3. Etapes de Résolution des Algorithmes ........................................................................................8

1.4. Les Structures Conditionnelles ....................................................................................................9

1.4.1. Structures Conditionnelles A Un Choix ..................................................................................9

1.4.2. Structures Conditionnelles A Deux Choix ..............................................................................9

1.5. La Notion des Boucles An Algorithme ......................................................................................10

1.5.1. La Boucle Pour . . . FinPour ..................................................................................................10

1.5.2. La Boucle TantQue . . .FinTantQue ......................................................................................11

1.5.3. La Boucle Répéter . . . Jusqu’à ..............................................................................................12

1.6. Les Enregistrements En Algorithme .........................................................................................12

1.6.1. Généralités Et Définition .......................................................................................................12

1.6.2. Exemple Et Explication .........................................................................................................13

1.6.3. Lecture Variable Type Enregistrement ..................................................................................14

1.6.4. Ecriture Variable Type Enregistrement .................................................................................14

1.7. Les Tableaux En Algorithme .....................................................................................................14

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 2
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.7.1. Définition des Variables Type Tableau .................................................................................14

1.7.2. Exemple Et Explication .........................................................................................................15

1.7.3. Manipulations de Base Sur Le Type Tableau ........................................................................15

1.7.4. Algorithmes Types Sur Les Variables de Type Tableau .......................................................16

1.8. Les Tableaux d’Enregistrement Ou Vecteurs En Algorithme ................................................19

1.8.1. Généralités .............................................................................................................................19

1.8.2. Exemple Et Explication .........................................................................................................19

1.9. Les Procédures Et Fonctions ......................................................................................................20

1.9.1. Généralités .............................................................................................................................20

1.9.2. Structure Générale de La Procédure ......................................................................................20

1.9.3. Structure Générale de La Fonction ........................................................................................21

1.9.4. Exemple d’Exercice Sur Les Procédures Et Fonctions .........................................................21

1.10. Les Principes En Algorithme .....................................................................................................23

1.10.1. Principe 1 – La Manipulation de La Variable Type Date ......................................................23

1.10.2. Principe 2 – Définition de La Structure de Données Dans Un Enoncé .................................23

1.10.3. Principe 3 – Enregistrer Les Eléments Dans Un Vecteur d’Enregistrement .........................24

1.10.4. Principe 4 - Parcourir Les Eléments d’Un Vecteur d’Enregistrement ..................................27

1.10.5. Principe 5 : Trier Les Eléments dans Un Vecteur .................................................................29

1.10.6. Identifier Les Paramètres Pour Un Sous – Programme .........................................................30

1.11. Les Structures de Données Avancées ........................................................................................30

1.11.1. Les Fichiers ............................................................................................................................30

1.11.2. Les Listes Chainées ...............................................................................................................36

2. Cours 2 – Base de Données Et Langage SQL Et Algèbre Relationnel ..........................................45

2.1. Généralités Sur Les Base de Données .......................................................................................45

2.2. Le Langage SQL..........................................................................................................................46

2.3. Les Commandes SQL .................................................................................................................46

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 3
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

2.4. Les Fonctions d’Agrégation En SQL ........................................................................................52

2.5. Autres Commandes En SQL ......................................................................................................54

2.6. La Notion de Jointure En SQL ..................................................................................................55

2.7. La Notion de Requête Imbriquée En SQL ...............................................................................57

3. Cours 3 – Analyse Informatique – La Méthode d’Analyse MERISE ...........................................59

3.1. Généralités Sur La Méthode MERISE .....................................................................................59

3.2. Les Eléments de La Méthode MERISE ....................................................................................61

3.3. Le Modèle Conceptuel de Données ............................................................................................61

3.3.1. Les Règles de Gestion ...........................................................................................................61

3.3.2. Le Dictionnaire de Données ..................................................................................................61

3.3.3. Présentation des Concepts Liés Au MCD .............................................................................63

3.3.4. Etape de Réalisation du MCD ...............................................................................................63

3.4. Le Modèle Logique de Données .................................................................................................64

3.4.1. Généralités Sur Le MLD .......................................................................................................64

3.4.2. Règles de Passage du MCD Au Modèle Logique : ...............................................................64

4. Cours 4 - Analyse Informatique – Le Langage de Modélisation UML : .......................................65

4.1. Généralités Sur Le Langage UML ............................................................................................65

4.2. Les Diagrammes UML................................................................................................................65

4.3. Le Diagramme des Cas d’Utilisation .........................................................................................66

4.3.1. Présentation Et Définition des Concepts ...............................................................................66

4.3.2. La Notion d’Acteur ................................................................................................................66

4.3.3. La Notion de Cas d’Utilisation ..............................................................................................67

4.3.4. Relations Entre Les Cas d’Utilisation....................................................................................67

4.3.5. Relation Entre Les Acteurs ....................................................................................................68

4.4. Le Diagramme de Classe ............................................................................................................68

4.4.1. Définition ...............................................................................................................................68

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 4
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

4.4.2. Schéma de La Classe .............................................................................................................68

4.4.3. Relations Entre Les Classe ....................................................................................................69

4.4.4. La Notion de Multiplicité ......................................................................................................70

4.4.5. Les Autres Types de Relation Entre Les Classes ..................................................................70

4.4.6. Exercice Récapitulatif ............................................................................................................72

4.4.7. Etapes de Mise En Place d’Un DDC .....................................................................................73

5. Fiche TD - Cours 1 - Algorithmes Et Structures de Données Avancées .......................................74

6. Fiche TD - Cours 2 – Base de Données Et Langage SQL ...............................................................82

7. Fiche TD - Cours 3 – Analyse Informatique, La Méthode MERISE ............................................96

8. Fiche TD - Cours 4 – Analyse Informatique, Le Langage de Modélisation UML .....................114

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 5
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1. Cours 1 - Algorithmes Et Structures de Données Avancées :


1.1. Généralités :

Un algorithme est une suite finie et non ambiguë d'opérations ou d'instructions permettant de
résoudre un problème ou d'obtenir un résultat.

1.1.1. Structure Générale d’Un Algorithme :

Algorithme : Nom_Algorithme

Déclaration des Constantes

Définition des Types à Manipuler

Définition des Procédures et Fonctions

Déclaration des Variables

Début

Liste des Instructions

Fin. NB : Le Nom_Algorithme Ou Le Nom des Variables Ne Doit Comporter Ni d’Espace, Ni


d’Accents, Ni de Caractères Spéciaux. Si Espace, Utiliser Le Caractère du Tiret de 8 (Chaine1_Chaine2).

1.1.2. La Notion de Types de Données :

A une variable est attribué un type. Ce type indique l'espace mémoire qui peut être réservé à cette
variable aussi bien d'un point de vu taille que contenu. Il existe des types simples qui sont prédéfinis tels
que : Le Type Entier ; Le Type Réel ; Le Type Chaine ou Chaine de Caractère (Pas de Différence En
Algorithme) ; Le Type Booléen (Type Qui Peut Avoir Comme Valeurs : Oui / NON, 0 / 1, Vrai / Faux).

1.1.3. La Notion de Variable :

Une variable est un emplacement mémoire ou un conteneur capable de contenir des valeurs de type
défini au préalable. Elle peut aussi être définie comme un Conteneur qui admet un nom, une taille, un
contenu (valeur) et une adresse. Le nom de la variable s'appelle "Identificateur de Variable". La taille

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 6
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

dépend du type de la variable (2Octets Pour Le Type Entier, 1Octet Pour Le Type Caractère, 4Octets Pour
Le Type Réel, ...etc.).

La déclaration d’une variable d’un certain type en Algorithme se fait par le mot clé « Var » et de la
manière suivante : Var Nom_Variable : Type de La Variable. Exemple : Var J : Chaine. Var Nbre : Entier.
Var Moyenne : Réel. Var Trouve : Booléen.

1.1.4. La Notion de Constante :

La définition d'une constante est identique à celle d'une variable, à la différence que la valeur d'une
constante, reste inchangée dans l'algorithme. Les constantes apparaissent dans un algorithme comme suit :
Const IdentificateurConstante = Valeur.

1.1.5. Les Opérateurs de Base :


 Les Opérateurs de Comparaison : Egalité (=) ; Différence (<> ou ≠) ; Strictement Inférieur (<) ;
Strictement Supérieur(>) ; Inférieur ou Egale (<=) ; Supérieur ou Egale (>=) ;
 Les Opérateurs Arithmétiques : Addition (+) ; Soustraction (-) ; Division (/) ; Multiplication (*) ;
 Les Autres Opérateurs :
o Div : Qui permet d’obtenir le quotient de la division de deux éléments de type entier. (Nbre1
Div Nbre2 ;
o Mod : Qui permet d’obtenir le reste de la division de deux éléments de type entier (Nbre1
Mod Nbre2).

1.1.6. La Notion d’Affectation En Algorithme :

C’est une instruction qui permet de ranger dans une variable une valeur conforme au type spécifié
lors de la déclaration des variables. Elle se présente par un signe et comporte deux parties : Une Expression
à Gauche qui est et sera toujours une variable Et Une Expression à Droite qui peut être une Valeur, une
Variable ou une combinaison de Variable et / ou Valeur.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 7
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.2. Les Instructions de Lecture Et d’Ecriture En Algorithme :


1.2.1. Les Instructions de Lecture :

Une action de lecture permet à l'utilisateur d'introduire des informations pour effectuer un traitement
par l'ordinateur. En Algorithme l’instruction de lecture se fais par le mot clé Lire (). Exemple : Lire (Nbre).
Cette instruction permet de lire ou récupérer ou prendre la valeur de la variable Nbre entrée par un
utilisateur. NB : Lire (Identificateur Variable) Ou Lire (Liste Identificateurs Variables). Si Plusieurs Alors
Les Séparer Par Une Virgule. Exemple : Lire (Nbre1, Nbre2).

1.2.2. Les Instructions d’Ecriture :

Une action d'écriture permet d'afficher des résultats sur un périphérique de sortie (par défaut :
l'écran). En Algorithme l’instruction d’écriture se fais par le mot clé Ecrire (). Exemple : Ecrire (Nbre) =
permet d’écrire, afficher à l’écran la valeur de la variable Nbre.

NB : De manière générale, en Algorithme l’on distingue deux sortes de variables : Les Variables
d’Entrée Ou VE, qui sont des variables permettant d’aboutir au résultat de l’Algorithme et très souvent on
Lit Toujours Les VE. Nous avons aussi Les Variables de Sortie ou VS, qui représentent en fait le résultat
de l’Algorithme et très souvent on Affiche Toujours Les VS. En Résumé, J’ai Besoin de Lire Les VE Pour
Afficher Les VS.

1.3. Etapes de Résolution des Algorithmes :


 Etape 1 : Lire Et Relire L’Enoncé Afin de Mieux Comprendre Ce Qu’on Nous Demande (Nom de
l’Algorithme) ;
 Etape 2 : Identifier L’Ensemble des Variables (VE, VS). Déclaration des Variables. S’ils Sont du
même type, les déclarer sur une seule ligne en séparant par une virgule, sinon chaque type de
variable dois être sur sa ligne ;
 Etape 3 : Débuter l’Algorithme avec le mot clé « Début » et Commencez Par Les Lire Les VE (Lire
(Variable)) ;
 Etape 4 : Effectuer Les Calcules Ou Opérations afin d’aboutir au Résultat ;
 Etape 5 : Afficher La Valeur du Résultat (Ecrire (Variable)), Et Terminer L’Algorithme Avec Le
Mot Clé « Fin ».

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 8
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.4. Les Structures Conditionnelles :


1.4.1. Structures Conditionnelles A Un Choix :

Il s’agit d’un traitement qui ne peut s’exécuter que si une condition logique est satisfaite ; dans le
cas contraire, rien ne devrait se passer.

Si (Condition_Vérifiée) Alors

Instructions

FinSi.

Dans cette forme, la condition est évaluée. Si elle vaut vrai alors c'est la séquence d'actions qui est
exécutée sinon c'est l'action qui suit l'action conditionnelle dans l'algorithme qui est exécutée.
Explications :

 Une condition est une expression booléenne. Elle est soit vraie soit fausse et Fréquemment, cette
condition se présente sous forme de comparaison en utilisant les opérateurs : <, >, <=, >=, =, <> ;
 La condition est soit "simple", soit "composée". Dans le cas d'une condition composée (plusieurs
conditions à vérifier), vous utiliserez des opérateurs logiques et les plus utilisés sont : ET, OU ;
 Le traitement peut comporter une ou plusieurs instructions.

1.4.2. Structures Conditionnelles A Deux Choix :

La structure conditionnelle à deux choix est une structure algorithmique qui fait appel au maximum
à deux traitements.

Si (Condition_Vérifiée) Alors

Instructions_1

Sinon

Instructions_2

FinSi

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 9
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Et Avec < Instructions_1> et < Instructions_2> pouvant être formé chacun d’une ou plusieurs
actions. Dans cette forme, la condition est évaluée. Si elle vaut vrai alors c'est la première séquence d'actions
qui est exécutée sinon c'est la deuxième qui est exécutée.

1.5. La Notion des Boucles An Algorithme :


1.5.1. La Boucle Pour . . . FinPour :

C’est une boucle qui permet de répéter un ensemble d’instructions un certain nombre de fois. Et ce
certain nombre de fois doit être et toujours connu à l’avance avant d’exécuter l’ensemble des instructions.

Pour Variable_Compteur = Variable_Initiale à Variable_Finale Faire

Liste des Instructions

FinPour

Explication :

 Variable_Compteur : généralement i ou j, est la variable qui permet de compter le nombre


de tour d’exécution de la boucle ;

 Variable_Initiale : généralement et presque toujours fixé à 1, est la valeur initiale qui sera
affecté à la variable compteur au début de la boucle ;

 Variable_Finale : généralement et presque toujours représente le nombre maximal des


éléments à parcourir, est la valeur finale qui sera affecté à la variable compteur à la fin de la
boucle.

Exemple : Ecrire Un Algorithme Qui Lit Les Notes de 20 Etudiants.

Algorithme : Lecture

Var Note : Réel

i : Entier

Début

Pour i Allant de 1 à 20 Faire

Lire (Note)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 10
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

FinPour.

Fin.

1.5.2. La Boucle TantQue . . .FinTantQue :

C’est une boucle qui permet de répéter un ensemble d’instructions jusqu’à un certain nombre
d’instruction.

Variable_Compteur Reçoit 1

TantQue (Variable_Compteur <=Max) Faire

Instructions

Variable_Compteur Reçoit (Variable_Compteur + 1)

FinTantQue.

Exemple : Ecrire Un Algorithme Qui Lit Les Notes de 20 Etudiants.

Algorithme : Lecture

Var Note : Réel

i : Entier

Début

i Reçoit 1

TantQue (i <=20) Faire

Lire (Note)

i Reçoit (i + 1)

FinTantQue.

Fin.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 11
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.5.3. La Boucle Répéter . . . Jusqu’à :

C’est une boucle qui permet de répéter un ensemble d’instructions jusqu’à ce que certaines
conditions soient réalisées.

Variable_Compteur Reçoit 0

Répéter

Variable_Compteur Reçoit (Variable_Compteur + 1)

Instructions

Jusqu’à (Variable_Compteur = Max). Avec Max, Le Nombre Maximal des Eléments A


Parcourir.

Exemple : Ecrire Un Algorithme Qui Lit Les Notes de 20 Etudiants.

Algorithme : Lecture

Var Note : Réel

i : Entier

Début

i Reçoit 0

Répéter

i Reçoit (i + 1)

Lire (Note)

Jusqu’à (i = 20)

Fin.

1.6. Les Enregistrements En Algorithme :


1.6.1. Généralités Et Définition :

C’est un type de variable qui permet de regrouper sous un et unique nom plusieurs autres variables
de type différents mais faisant référence à un même objet à manipuler. Ce type de donné est définit par

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 12
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

l’utilisateur et permet de regrouper un nombre fini d’éléments appelé « Champ ». Les champs sont les
données élémentaires ou composées et peuvent être de type simple (Entier, Réel, Booléen, Chaine) ou de
type composé (faisant appel à d’autres types). La déclaration d’un type enregistrement se fait comme suit :

Type Nom_Type = Enregistrement

Nom_Champ_1 : Type_Champ_1

Nom_Champ_2 : Type_Champ_2

Nom_Champ_3 : Type_Champ_3

Nom_Champ_N : Type_Champ_N

Fin Enregistrement.

1.6.2. Exemple Et Explication :

Sois un étudiant caractérisé par son matricule, son nom, son âge et le libellé de sa filière, la définition
de ce type peut se faire de la manière suivante :

Type Etudiant = Enregistrement

MatricE : Chaine

NomE : Chaine

AgeE : Entier

Lib_Fil : Chaine

Fin Enregistrement.

Manipulations : En général on manipule un enregistrement champ par champ. On accède à un


champ de l'enregistrement en indiquant le nom de l'enregistrement suivi du nom du champ. Les deux sont
séparés par un point. (Variable_Enregistrement.Nom_Champ). En se basant sur l’exemple, on peut avoir :

 Etudiant.MatricE pour manipuler le champ matricule (MatricE) de la variable enregistrement


Etudiant ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 13
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Etudiant_AgeE pour manipuler le champ Age (AgeE) de la variable enregistrement Etudiant.

1.6.3. Lecture Variable Type Enregistrement :

La Lecture (Prendre, Récupérer) d’une variable de type enregistrement se fait champ par champ et
avec l’exemple précédent, on peut avoir :

 Lire (Etudiant.MatricE) : Pour Lire La Matricule de L’Etudiant ;

 Lire (Etudiant. NomE) : Pour Lire Le Nom de L’Etudiant ;

 Lire (Etudiant.AgeE) : Pour Lire L’Age de L’Etudiant ;

 Lire(Etudiant.Lib_Fil) : Pour Lire La Filière de L’Etudiant ;

1.6.4. Ecriture Variable Type Enregistrement :

L’Ecriture (Affichage à L’Ecran) d’une variable de type enregistrement se fait également champ
par champ et avec l’exemple précédent, on peut avoir :

 Ecrire (Etudiant.MatricE) : Pour Afficher La Matricule de L’Etudiant ;

 Ecrire (Etudiant. NomE) : Pour Afficher Le Nom de L’Etudiant ;

 Ecrire (Etudiant.AgeE) : Pour Afficher L’Age de L’Etudiant ;

 Ecrire (Etudiant.Lib_Fil) : Pour Afficher La Filière de L’Etudiant ;

1.7. Les Tableaux En Algorithme :


1.7.1. Définition des Variables Type Tableau :

Les Tableaux sont une structure de données abstrait ou types de données abstrait contenant plusieurs
emplacements mémoires de même type et qui sont repérés par des indices. Pour déclarer (définir), une
variable de type de tableau on écrit : Var Nom_Tableau = Tableau [Valeur_Min . .Valeur_Max] Type des
Eléments du Tableau.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 14
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.7.2. Exemple Et Explication :

Soit un tableau de 10 Entier, on va écrire : Var Toto = Tableau [1..10] Entier

La Définition d’Un Tableau de 10 Entier.

Indice 1 2 3 4 5 6 7 8 9 10
Valeur 17 5 67 87 9 14 11 32 21 47

 Toutes les valeurs du tableau ont le même type de données, Entier ;

 Chaque Elément du tableau est identifiable, repéré par une Valeur appelé indice ;

 Toto [1] = désigne le contenu (Valeur) de la Première Case du Tableau ;

 Toto [2] = désigne le contenu de la 2ième Case du Tableau ;

 Toto [n] = désigne le contenu de la nième Case du Tableau.

1.7.3. Manipulations de Base Sur Le Type Tableau :

Lecture (Prendre / Récupérer) des Eléments du Tableau :

Algorithme : Lecture_Tableau (Tableau de 10 Entier)

Var Toto = Tableau [1..10] Entier

i : Entier

Début

Pour i Allant de 1 à 10 Faire

Lire (Toto[i])

FinPour

Fin.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 15
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Ecriture (Affichage) des Eléments du Tableau :

Algorithme : Ecriture_Tableau (Tableau de 10 Entier)

Var Toto = Tableau [1..10] Entier

i : Entier

Début

Pour i Allant de 1 à 10 Faire

Ecrire (Toto[i])

FinPour

Fin.

1.7.4. Algorithmes Types Sur Les Variables de Type Tableau :

Algorithme 1 – Rechercher Le Maximum Dans Un Tableau :

Le Principe de Ce Type d’Algorithme :

 Je Commence L’Algorithme Avec Le Nom de L’Algorithme, Je Déclare La Variable du Tableau,


Une Variable Max de Même Type Que Les Eléments du Tableau Et Une Variable Compteur i ;
 Je Débute L’Algorithme En Supposant Que La Variable Max Est Le Premier Elément du Tableau ;
 Et Quand Je Parcours Le Reste des Eléments du Tableau, Si Je Trouve Un Elément du Tableau Plus
Grand Que Mon Supposé Max Alors Je Permette Afin de d’Affecter à Max Sa Nouvelle Valeur ;
 Et A La Fin du Parcours du Tableau, La Variable Max Aura La Plus Grande Valeur du Tableau.

En Ecritures Algorithmiques, Sa Donne CECI :

Algorihme : RetrouverMax

Var Tab : Tableau [1..Nbre] Entier

Max, i : Entier

Début

Max Reçoit Tab [1]

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 16
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Pour i Allant de 1 à Nbre Faire

Si (Tab[i] > Max) Alors

Max Reçoit Tab [i]

FinSi

FinPour

Ecrire (‘Le Maximum du Tableau Est :’, Max)

Fin

Algorithme 2 – Trier Les Eléments Dans Un Tableau :

Le Principe de Ce Type d’Algorithme Est Le Suivant :

 Je Commence L’Algorithme Avec Le Nom de L’Algorithme, Je Déclare La Variable du Tableau, 2


Variable de Type Compteur i Et j Et Une Variable Permut de Même Type Que Les Eléments du
Tableau ;
 Je Débute L’Algorithme En Parcourant La Première Boucle i de 1 à N – 1, Avec N, Le Nombre
Maximal des Eléments à Parcourir ;
 Ensuite dans La Deuxième Boucle, Je Dois Quitter de (i + 1) à N ;
 Et Je Place Ma Condition du Genre, Si Un Elément de i Est Supérieur à Un Elément de j, Alors Je
Permute Les Positions des Valeurs Afin D’Avoir Un Tableau Trié de Manière Croissante ;
 Je Ferme La Condition Et Les 2 Boucles Et Je Termine Mon Algorithme.

En Ecritures Algorithmiques, Sa Donne CECI :

Algorihme : TrierTableau

Var Tab : Tableau [1..Nbre] Entier

Permut, i, j : Entier

Début

Pour i Allant de 1 à (N – 1) Faire

Pour j Allant de (i + 1) à N Faire

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 17
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Si (Tab[i] > Tab[j]) Alors

Permut Reçoit Tab[i]

Tab[i] Reçoit Tab[j]

Tab[j] Reçoit Permut

FinSi

FinPour

FinPour

Fin

Algorithme 3 – Rechercher La Position d’Un Elément dans Un Tableau :

Le Principe de Ce Type d’Algorithme Est Le Suivant :

 Je Commence L’Algorithme Avec Le Nom de L’Algorithme, Je Déclare La Variable du Tableau,


Une Variable Pos Toujours de Type Entier, Une Variable Compteur i Et Une Variable Permettant
de Lire L’Elément Dont On Cherche Sa Position ;
 Je Débute L’Algorithme En Fixant Pos à – 1 Car Je Suppose Que L’Elément Ne Se Trouve Pas dans
le Tableau ;
 Je Parcours L’Ensemble des Eléments du Tableau Et Si Je Trouve Un Elément du Tableau = A
L’Elément à Chercher, Alors La Variable Pos Prends L’Indice de Cette Position ;
 Je Termine La Condition, La Boucle Et J’Affiche La Valeur de La Variable Pos Et Je Termine Mon
Algorithme ;

En Ecritures Algorithmiques, Sa Donne CECI :

Algorihme : RetrouverPositionElement

Var Tab : Tableau [1..Nbre] Entier

Element, Pos, i : Entier

Début

Pos Reçoit – 1

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 18
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Lire (‘Element’)

Pour i Allant de 1 à Nbre Faire

Si (Tab[i] = Element) Alors

Pos Reçoit i

FinSi

FinPour

Ecrire (‘La Position dans Le Tableau Est :’, Pos)

Fin

1.8. Les Tableaux d’Enregistrement Ou Vecteurs En Algorithme :


1.8.1. Généralités :

Il s’agit en fait d’un type de tableau contenant plusieurs variables pouvant être de type différents. Et
chaque élément de ce type de tableau est un enregistrement : d’où le nom de Tableau d’Enregistrement
encore appelé Vecteur. La définition de la variable tableau d’enregistrement ou vecteur commence toujours
et d’abord par la définition de la variable Enregistrement suivie de celle de la variable type tableau ou
vecteur.

1.8.2. Exemple Et Explication :

Soit un étudiant donné par son matricule, son nom et sa filière. Définir un vecteur de 5 étudiants.

Type Etudiant = Enregistrement

MatricE : Chaine

NomE : Chaine

Fil_E : Chaine

Fin Enregistrement

Type Tab_Etd = Tableau [1..5] Etudiant

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 19
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Chaque Elément du Tableau Est de type Enregistrement : Etudiant ;

 On accède à un champ du tableau d'enregistrement en indiquant le nom de la variable vecteur ou


tableau d'enregistrement suivi crochet afin de préciser l’indice de l’élément à manipuler et on met
un point, et enfin du nom du champ. (Variable_Vecteur[i].Nom_Champ). En se basant sur
l’exemple, et qu’on note Var t : Tab_Etd,

o t[1].MatricE pour manipuler le matricule (MatricE) de l’étudiant se trouvant à la position 1


du vecteur ;

o t[3].Fil_E pour manipuler la filière de l’étudiant à la position 3 du vecteur d’enregistrement.

o De manière générale on dira t[i].Champ afin de manipuler le champ de l’enregistrement à la


positon i.

1.9. Les Procédures Et Fonctions :


1.9.1. Généralités :

Les procédures et fonctions sont des sous – programmes écris avant le programme principal mais
appelé depuis le programme principal. Les données dont a besoin les sous – programmes pour s’exécuter
sont appelés paramètres. Et lorsque le paramètre du sous – programme est susceptible d’être modifié, on
parlera de passage par adresse et la déclaration de ce type de paramètre est précédé du mot clé « var » (Var
t : Vecteur). Cette modifiions intervient généralement dans deux cas de figures (le cas de l’enregistrement
dans le vecteur ou le tri dans un vecteur). Par contre, lorsque le paramètre n’est pas susceptible d’être
modifie, on parlera de passage par valeur (pas de mot clé var devant la variable). Contrairement aux
procédures, les fonctions sont des sous – programmes qui renvoient toujours un résultat et ce résultat doit
être de type simple (Entier, Réel, Booléen).

1.9.2. Structure Générale de La Procédure :

Procédure Nom_Procedure (Param1 : Type ; Param2 : Type)

Var (Déclaration des Variables Locales)

Début

Liste des Instructions

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 20
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Fin Procédure.

1.9.3. Structure Générale de La Fonction :

Fonction Nom_Fonction (Param1 : Type ; Param2 : Type) :Type_Retour (de La Fonction)

Var (Déclaration des Variables Locales)

Début

Liste des Instructions

Nom_Fonction Reçoit Résultat (Ou Ecrire Retourner (Résultat))

Fin Fonction.

1.9.4. Exemple d’Exercice Sur Les Procédures Et Fonctions :

Enoncé : Ecrire Un Algorithme, Une Procédure Et Une Fonction Qui Calcule Le Factoriel d’Un
Nombre Entré Au Clavier.

Solution :

Algorithme : Calcul_Facotiel

Var Fact, i, Nbre : Entier

Début

Ecrire (‘Entrez Le Nombre Entier’)

Lire (Nbre)

Fact Reçoit 1

Pour i Allant de 1 à Nbre Faire

Fact Reçoit (Fact * i)

FinPour

Ecrire (Fact)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 21
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Fin

Procédure Calcul_Facotiel (Nbre : Entier)

Var i, Fact : Entier

Début

Lire (Nbre)

Fact Reçoit 1

Pour i Allant de 1 à Nbre Faire

Fact Reçoit (Fact * i)

FinPour

Ecrire (Fact)

Fin

Fonction CalculFacotiel (Nbre : Entier)

Var i, Fact : Entier

Début

Lire (Nbre)

Fact Reçoit 1

Pour i Allant de 1 à Nbre Faire

Fact Reçoit (Fact * i)

FinPour

CalculFacotiel Reçoit Fact Ou Alors Retourner (Fact)

Fin

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 22
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.10. Les Principes En Algorithme :

L'algorithmique est l'ensemble des principes, règles et techniques qui permettent d'écrire un
algorithme. Pour concevoir un programme informatique, on utilise le plus souvent le pseudocode. Une
variable permet de mémoriser et de manipuler des données.

1.10.1. Principe 1 – La Manipulation de La Variable Type Date :

Si dans l’énoncé on manipulera une Variable de Type Date (Date Commande, Date Livraison, Date
de Naissance, Date Inscription, Date Etc) Alors, Définir Le Type Date Comme Premier Type dans La
Définition de La Structure de Données. Et de La Manière Suivante :

Type Date = Enregistrement

Jour : Entier

Mois : Entier

An : Entier

Fin Enregistrement

Exemple : Var MaDate : Date, Et Dans Les Ecritures, On Peut Ecrire

 MaDate.Jour = Pour Manipuler Le Champ Jour de La Variable MaDate ;


 MaDate.Mois = Pour Manipuler Le Champ Mois de La Variable MaDate ;
 MaDate.An = Pour Manipuler Le Champ An de La Variable MaDate.
1.10.2. Principe 2 – Définition de La Structure de Données Dans Un Enoncé :
Dans Un Enoncé, Définir La Structure de Données Reviens Tout Simplement Définir L’Ensemble
des Types A Manipuler Suivant L’Ordre :

o Type 1 : Le Type Date Si Variable Date A Manipuler (Sinon Passer Au Type Suivant) ;

o Type 2 : Le Type Enregistrement (Se Poser La Question, On Gère Ou Manipuler Quoi.


La Réponse A Cette Question Déterminera La Type A Définir ;

o Type 3 : La Variable Type Tableau Ou Vecteur d’Enregistrement ;

o Type 4 : La Variable Type Fichier ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 23
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

o Type 5 : La Variable Type Liste Chainée.

1.10.3. Principe 3 – Enregistrer Les Eléments Dans Un Vecteur d’Enregistrement :

o Cas 1 : Enregistrer TOUT : On Suppose Que Le Vecteur Est Vide Et Donc Faut Le
Remplir Donc Je Fais PLE = Je Parcours Tout + Je Lis Chaque Et J’Enregistre :

Le Principe de Ce Type d’Algorithme Est Le Suivant :

Je Déclare Var Tab : Vecteur_Enregistrement, E : Enregistrement, i : Entier

Je Débute L’Algorithme

Je Parcours Tous Les Eléments (Pour i Allant de 1 à Max Faire)

Pour Chaque Pas de i, Je Lis Tous Les Champs (Lire E.Champ1) Jusqu’à E.ChampN

Apres Le Parcours, Sur Chaque Elément Lu, J’Enregistre A La Position i du Vecteur (Tab[i]
Reçoit E

En Ecritures Algorithmiques, Sa Donne CECI :

Procédure Enregistrer_TOUT (Var Tab : VecteurEnregistrement)

Var i : Entier

E : Enregistrement

Début

Pour i Allant de 1 à Max Faire

Lire (E.Champ) //Je Dois Lire Tours Les Champs

Tab[i] Reçoit E

Fin Procédure

o Cas 2 : Enregistrer UN Seul, Ici On Suppose Que Le Vecteur N’Est Pas Vide Et Peut
Etre Pas Plein Et Donc Je Fais VLIE = Je Vérifie + Je Lis L’Elément + J’Incrémente
Et J’Enregistre :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 24
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Le Principe de Ce Type d’Algorithme Est Le Suivant :

Je Déclare Var Tab : Vecteur_Enregistrement, E : Enregistrement

Je Débute L’Algorithme

Je Teste Si Le Vecteur Est Plein (Si N = Max) Alors Ecrire (Vecteur Plein)

Sinon

Je Lis Tous Les Champs (Lire E.Champ1) Jusqu’à E.ChampN

J’Incrémente Nouvelle Position (N Reçoit (N +1))

J’Enregistre à La Position i du Vecteur (Tab [i] Reçoit E)

En Ecritures Algorithmiques, Sa Donne CECI :

Procédure Enregistrer_UnSeulElement (Var Tab : VecteurEnregistrement ; Nbre : Entier)

Var E : Enregistrement

Début

Si (Nbre = Max) Alors

Ecrire (‘Le Vecteur Est Plein.’)

Sinon

Lire (E.Champ) //Je Dois Lire Tours Les Champs

Nbre Reçoit (Nbre + 1)

Tab [Nbre] Reçoit E

FinSi

Fin Procédure

o Cas 3 : Enregistrer Plusieurs : Ici, Non Seulement Le Vecteur N’Est Pas Plein Mais Je
Dois Aussi Vérifier Si Il Existe Encore Suffisamment d’Espace Pour Les Plusieurs
Eléments Et Donc Je Vais VVPLIE = Je Vérifie + Je Vérifie + Je Parcours + Je Lis +
J’Incrémente Et J’Enregistre :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 25
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Le Principe de Ce Type d’Algorithme Est Le Suivant :

Je Déclare Var Tab : Vecteur_Enregistrement, E : Enregistrement, i Et M : Entier

Je Débute L’Algorithme

Je Teste Si Vecteur Plein (Si N = Max) Alors Ecrire (Vecteur Plein)

Sinon

Je Vérifie Si Encore Assez D’Espace (Si Max – N >=M) Alors

Je Parcours M Eléments (Pour i Allant de 1 à M) Faire

Je Lis Tous Champs (Lire E.Champ1) Jusqu’à E.ChampN

J’Incrémente Nouvelle Position (N Reçoit (N +1))

J’Enregistre à La Position i du Vecteur (Tab [i] Reçoit E

Sinon

Je Dis Ecrire (‘Pas Assez Espace’)

En Ecritures Algorithmiques, Sa Donne CECI :

Procédure EnregistrerPlusieurs (Var Tab : VecteurEnregistrement ; Nbre : Entier)

Var i, M : Entier

E : Enregistrement

Début

Si (Nbre = Max) Alors

Ecrire (‘Le Vecteur Est Plein.’)

Sinon

Si (Nbre + M < = Max) Alors

Pour i Allant de 1 à M Faire

Lire (E.Champ) //Je Dois Lire Tours Les Champs

Nbre Reçoit (Nbre + 1)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 26
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Tab [Nbre] Reçoit E

FinPour

Sinon

Ecrire (‘Pas Suffisamment d’Espace dans Le Vecteur’)

FinSi

FinSi

Fin Procédure

1.10.4. Principe 4 - Parcourir Les Eléments d’Un Vecteur d’Enregistrement :

Le Principe de Ce Type d’Algorithme Est Le Suivant :

o Pour Afficher Certains Eléments : Et Dans Ce Cas :

 Je Parcours : Pour i Allant de 1 à N Faire ;

 Je Précise La Condition : Si Tab [i].Champ = Valeur (Condition Pour Aboutir Au


Résultat)

 Et J’Afficher Le Résultat Qui Doit Etre Le Premier Et 2ième Champ de La Variable


Enregistrement Ecrire (Tab [i].Champ1) Et Ecrire (Tab [i].Champ2)

En Ecritures Algorithmiques, Sa Donne CECI :

Procédure PCR_Afficher (Tab : VecteurEnregistrement ; ConditionParametre : Type)

Var i : Entier

ConditionValeurLue : Type

Début

Pour i Allant de 1 à Max Faire

Si (Tab[i].Champ = ConditionParametre Ou ConditionValeurLue) Alors

Ecrire (Tab[i].Champ1)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 27
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Ecrire (Tab[i].Champ2)

FinSi

FinPour

Fin Procédure

o Pour Compter Le Nombre de Fois Que La Condition Est Vérifiée : Et Dans Ce Cas :

 Je Déclarer Une Variable Cpt de Type Entier ;

 Je Débute L’Algorithme En Initialisant Cpt à 0 (Cpt Reçoit 0) ;

 Je Parcours : Pour i Allant de 1 à N Faire ;

 Je Précise La Condition : Si Tab [i].Champ = Valeur (Condition Pour Aboutir Au


Résultat) ;

 Et A L’intérieur de La Boucle Et A Chaque Vérification du Si J’Incrémente La


Valeur de Cpt (Cpt Reçoit Cpt + 1))

En Ecritures Algorithmiques, Sa Donne CECI :

Procédure PCR_Compter (Tab : VecteurEnregistrement ; ConditionParametre : Type)

Var Cpt, i : Entier

ConditionValeurLue : Type

Début

Cpt Reçoit 0

Pour i Allant de 1 à Max Faire

Si (Tab[i].Champ = ConditionParametre Ou ConditionValeurLue) Alors

Cpt Reçoit (Cpt + 1)

FinSi

FinPour

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 28
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Ecrire (Cpt)

Fin Procédure

1.10.5. Principe 5 : Trier Les Eléments dans Un Vecteur :

Le Principe de Ce Type d’Algorithme Est Le Suivant :

o Je Déclare Var Tab : Vecteur_Enregistrement, Permut : Enregistrement, i Et j : Entier ;

o Je Début L’Algorithme :

Pour i Allant de 1 à (N – 1) Faire

Pour j Allant de (i + 1) à N Faire

Si Tab [i].Champ_Trie > Tab [j].Champ_Trie Alors

Permut Reçoit Tab [i]

Tab [i] Reçoit t[j]

Tab [j] Reçoit Permut

En Ecritures Algorithmiques, Sa Donne CECI :

Procédure TrieVecteur (Var Tab : VectEnregistrement)

Var Permut : Enregistrement

i, j : Entier

Début

Pour i Allant de 1 à (N – 1) Faire

Pour j Allant de (i + 1) à N Faire

Si (Tab[i].ChampTrie > Tab[j].ChampTrie) Alors

Permut Reçoit Tab[i]

Tab[i] Reçoit Tab[j]

Tab[j] Reçoit Permut

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 29
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

FinSi

FinPour

FinPour

Fin Procédure

1.10.6. Identifier Les Paramètres Pour Un Sous – Programme :

o Ecrire Un Sous – Programme Qui Prend En Entrée,

o Ecrire Un Sous – Programme Qui Prend En Paramètre,

o Ecrire Un Sous – Programme Qui Etant Donnée Tel Ou Tel Champ,

Généralement Ce Qui Suit Ces Phrases Représentera Le Paramètre Dont A Besoin Le Sous –
Programme Pour s’exécuter. En D’Autres Termes, Si Je Dois Manipuler Un Enregistrement La Question
A Poser Est La Suivante, L’Enregistrement Est Stocké Dans Quoi ? La Réponse A Cette Question
Représente Le Premier Paramètre du Sous – Programme.

1.11. Les Structures de Données Avancées :


1.11.1. Les Fichiers :
1.11.1.1. Généralités Sur Les Fichiers :

Un Fichier est une collection d’informations structurée en unité d’accès appelé ligne
d’enregistrement et qui sont tous du même type. Le Fichier est toujours enregistré dans un support externe
à la mémoire centrale. Déclaration : La déclaration d’une variable de type Fichier commence d’abord et
toujours par la définition de la variable Enregistrement, suivie de celle de la Variable de Type Fichier :
Syntaxe : Type Nom_Type = Enregistrement

Champ1 : Type

Champ2 : Type

ChampN : Type

Fin Enregistrement.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 30
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Type Fich_Nom_Type = Fichier de Nom_Type.

Exemple, Soit Un Etudiant Caractérisé Par Un Matricule, Un Nom Et Sa Filière. Définir La Fichier
des Etudiants.

Type Etudiant = Enregistrement

MatEtd : Chaine

NomEtd : Chaine

FilEtd : Chaine

Fin Enregistrement

Type FichEtd = Fichier de Etudiant

1.11.1.2. Manipulation des Primitives de Base Sur Les Fichiers :

Lors du traitement sur les fichiers l’algorithme doit assurer un certain contrôle du fichier à l’aide
des primitives :

 Ouverture d’Un Fichier En Mode Lecture : Var F : Fich_Etd

o OuvrirL(F) : Permet d’Ouvrir Le Fichier F En Mode Lecture c’est-à-dire ouvrir le fichier et


pas le modifier (Opérations Lecture, Consultation, Parcours, Rechercher) ;

 Ouverture d’Un Fichier En Mode Ecriture : Var F : Fich_Etd

o OuvrirE(F) : Permet d’Ouvrir Le Fichier F En Mode Ecriture c’est-à-dire ouvrir le fichier et


le modifier (Opérations Mise Jour, Modification, Ajout Ligne, Suppression Ligne) ;

 Ouverture d’Un Fichier En Mode Lecture Et Ecriture : Var F : Fich_Etd

o Ouvrir(F) : Permet d’Ouvrir Le Fichier F En Mode Lecture Et Ecriture c’est-à-dire ouvrir le


fichier, le parcourir afin de le modifier.

 Fermeture d’Un Fichier : A la fin du traitement du fichier, il est important d’indiquer l’algorithme
qu’on aura plus besoin de fichier en manipulant la primitive Fin de la manière suivante Fermer(F).

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 31
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.11.1.3. Les Traitements de Base Sur Les Fichiers :

 Traitement Fichier En Mode Lecture : Var F : Fich_Etd

Val : Etudiant

Lire (F, Val), cette instruction permet de lire la valeur de la variable Val du Fichier F. en fait Val
Représente La Ligne dans Le Fichier F.

 Traitement Fichier En Mode Ecriture : Var F : Fich_Etd

Val : Etudiant

Ecrire (F, Val), cette instruction permet d’écrire la valeur de la variable Val dans le Fichier F.

1.11.1.4. Les Algorithmes Type Sur Les Fichiers :


 Parcourir Les Eléments d’Un Fichier Pour Afficher :

Procédure ParcoursFichier (F : Fich_Enreg) // Prendre Le Fichier En Paramètre Par Valeur.

Var Val : Enregistrement // Déclare Une Variable Représentant Une Ligne du Fichier F

Début //Débuter L’Algorithme

OuvrirL(F) //Ouvrir Le Fichier En Lecture Car On Ne Modifie Pas Le Fichier

Lire (F, Val) //Se Placer Sur La Première Ligne du Fichier Et Tester

TantQue NonEof(F) Faire // Tester Sir La Ligne N’Est La Fin du Fichier

Si (Val.Champ = Valeur Ou Condition) Alors

Ecrire (Val.Champ1)

Ecrire (Val.Champ2)

Lire (F, Val)// Passer De La Ligne 1, A La Ligne Suivante

Fin TantQue// Terminer La Boucle de Parcours

Fermer(F)//Fermer Le Fichier Ouvert

Fin Procédure. // Terminer La Procédure.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 32
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Parcourir Les Eléments d’Un Fichier Pour Compter :

Fonction Compter (F : Fich_Enreg) : Entier

Var Val : Enregistrement

Cpt : Entier

Début

OuvrirL(F)

Lire (F, Val)

Cpt Reçoit 0

TantQue NonEof(F) Faire

Si (Val.Champ = Valeur Ou Condition) Alors

Cpt Reçoit (Cpt + 1)

Lire (F, Val)

FinSi

Fin TantQue

Fermer(F)

Compter Reçoit Cpt

Fin Fonction

 Créer Ou Enregistrer Les Eléments d’Un Fichier :

Procédure CreationFichier (Var F : Fich_Enreg)

Var Val : Enregistrement

Début

OuvrirE(F)

Repeter

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 33
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Lire (Val.Champ1)

Lire (Val.Champ2)

Lire (Val.ChampN)

Si (Val.Champ1 <> ‘’) Alors

Ecire (F, Val)

FinSi

Jusqu’à (Val.Champ1 = ‘’)

Fin Procédure

 Calculer La Taille d’Un Fichier :

Fonction TailleFichier (F : Fich_Enreg) : Entier

Var Val : Enregistrement

Cpt : Entier

Début

OuvrirL(F)

Cpt = 0

Lire (F, Val)

TantQue NonEof(F) Faire

Cpt = (Cpt + 1)

Lire (F,Val)

FinTantQue

TailleFichier = Cpt

Fermer(F)

Fin Fonction.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 34
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.11.1.5. Les Algorithmes de Transfert Sur Les Fichiers :


 Transférer Les Eléments du Vecteur Dans Le Fichier :

Procédure TransfertTab_Fich (Var F : Fich_Enreg ; Tab : Vect_Enreg)

Var i : Entier

Début

OuvrirE(F)

Pour i Allant de 1 à N Faire

Ecrire (F, Tab[i])

Fin Pour

Fermer (F)

Fin Procédure.

 Transférer Les Eléments du Fichier Dans Un Vecteur :

Procédure TransfertFich_Tab (Var Tab : Vect_Enreg ; F : Fich_Enreg)

Var Val : Enregistrement

i : Entier

Début

OuvirL(F)

Lire (F, Val)

i=1

TantQue NonEof(F) Faire

Tab [i] = Val

Lire (F, Val)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 35
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

i = (i + 1)

FinTantQue

Fermer(F)

Fin Procédure.

1.11.2. Les Listes Chainées :


1.11.2.1. Généralités Sur Les Listes Chainées :

Une liste chaînée désigne en informatique une structure de données représentant une collection
ordonnée et de taille arbitraire d'éléments de même type, dont la représentation en mémoire de l'ordinateur
est une succession de cellules faites d'un contenu et d'un pointeur vers une autre cellule. Le principe de la
liste chaînée est que chaque élément possède, en plus de la donnée, un pointeur vers un élément qui lui est
contigu dans la liste. L'usage d'une liste est souvent préconisé pour des raisons de rapidité de traitement,
lorsque l'ordre des éléments est important et que les insertions et les suppressions d'éléments quelconques
sont plus fréquentes que les accès.

Une Liste Chainée est un type abstrait de données de structure linéaire qui n’ pas de dimension fixée
à sa création. Ses éléments de même type sont éparpillés dans la mémoire et reliés entre eux par des
pointeurs. La liste est accessible uniquement par sa tête de liste c’est-à-dire son premier élément. Une
Variable Pointeur est une variable dont la valeur est une adresse mémoire. NB : Chaque élément de la liste
chainée est composé de 2 Parties :

 La Valeur A Stocker (La Variable Val, Qui Peut Etre de Type Simple Ou de Type Enregistrement) ;

 Et L’Adresse de L’Elément Suivant (Souvent Ou Généralement Noté Suivant). Et Si L’Elément


Suivant N’Existe Pas, Alors Suivant Prendra Toujours La Valeur NIL. Le dernier élément de la liste
ne pointe sur rien (Nil).

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 36
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Exemple : Représentation Liste Chainée : Une Liste Chainée de 4 Eléments de Type Entier.

1.11.2.2. Liste des Procédures d’Utilisation des Listes Chainées :

La Listes Chainées entrainent l’utilisation des procédures d’utilisation, d’allocation et de libération


dynamique de la mémoire telle que :

 Allouer (P) Ou Nouveau (P), Avec P Une Variable de Type Pointeur. Et Qui Permet de réserver Un
Espace Mémoire Au Pointeur P c’est-à-dire alloue un espace mémoire sur lequel le pointeur P va
pointer ;

 Désallouer (P) Ou Libérer (P), Avec P Une Variable Type Pointeur. Et qui permet de libérer l’espace
mémoire qui était occupé par l’élément sur lequel pointe le pointeur P ;

 Les Variables Pointeur Tete Et Queue Sont des Variables Toujours Connues :

o Le Pointeur Tete (La Tête de La Liste Chainée) Représente Très Souvent Le Premier
Elément de La Liste Chainée ;

o Le Pointeur Queue (La Queue de La Liste Chainée) Représente Très Souvent Le Dernier
Elément de La Liste Chainée.

1.11.2.3. Différence Entre Liste Chainée, Tableau, Les Piles Et Les Files :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 37
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1.11.2.4. Déclaration de La Variable de Type Liste Chainée :

La déclaration d’une liste chainée se présente comme suit : Premièrement, je définie d’abord et
toujours une variable de type enregistrement ; Deuxièmement, je définir une variable de type liste chainée ;
Troisièmement mais de manière au choix, je peux déclarer une nouvelle variable de type liste chainée.

Type Enreg = Enregistrement :

Champ1 : Type Champ1

Champ2 : Type Champ2

ChampN : Type ChampN

Fin Enregistrement

Type ListeCh = Pointeur Cellule (En Algorithme, Le Pointeur Est Matérialisé Par Le Signe ^)

Type Cellule = Enregistrement

Champ1 : Type Champ1

Champ2 : Type Champ2

ChampN : Type ChampN

Suivant : ListeCh

Fin Enregistrement

Var P : ListeCh

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 38
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Exemple : Déclarer Une Liste Chainée des Etudiant (Chaque Etudiant Est Identifié Par Un
Matricule, Un Nom, Une Spécialité, Un Quartier)

Type Etd = Enregistrement

MatEtd : Chaine

NomEtd : Chaine

SpecEtd : Chaine

QtierEtd : Chaine

Fin Enregistrement

Type Liste_Etd = ^ Cellule

Type Cellule = Enregistrement

MatEtd : Chaine

NomEtd : Chaine

SpecEtd : Chaine

QtierEtd : Chaine

Suviant : Liste_Etd

Fin Enregistrement

Var P : Liste_Etd

1.11.2.5. Manipulations de La Variable de Type Liste Chainée :

Dans une liste chainée, pour affecter les variables ou valeurs dans une liste chainée, on procède
comme suit : (Si On Se Base De L’Exemple Précédent Sur La Liste Chainées des Etudiants, On Aura) :

 Pour Affecter :

o P^.MatEtd Reçoit ETDGSI2021100, Ceci Afin de Stocker La Valeur ETDGSI2021100 A


Un Etudiant ;

o P^.NomEtd Reçoit METUE, pour affecter La Valeur METUE Au Nom d’Un Etudiant ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 39
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

o En Règle Général, Pour Affecter On Fait P^.Champ Reçoit Valeur (Avec P La Variable
Liste Chainée, Et Champ, Le Champ de La Variable A Manipuler ;).

 Pour Lire, Ou Récupérer Ou Prendre :

o Lire (P^.MatEtd) Permettra de Lire La Valeur de La Variable MatEtdt ;

o Lire (P^.NomEtd) Permettra de Lire La Valeur de La Variable NomEtd ;

o En Règle Général, Pour Lire On Fait Lire (P^.Champ), Avec P La Variable Liste Chainée,
Et Champ, Le Champ de La Valeur A Manipuler ;

 Pour Ecrire, Ou Afficher A L’Ecran :

o Ecrire (P^.MatEtd) Permettra d’Afficher A L’Ecran La Valeur de La Variable MatEtdt ;

o Lire (P^.NomEtd) Permettra d’Afficher A L’Ecran La Valeur de La Variable NomEtd ;

o En Règle Général, Pour Ecrire On Fait Ecrire (P^.Champ), Avec P La Variable Liste
Chainée, Et Champ, Le Champ de La Valeur A Manipuler ;

1.11.2.6. Créer Une Liste Chainée A Plusieurs Eléments :

Algorithme : Creation_ListeElement

Var P, Tete : Liste_Enreg

Nbre, i : Entier

Début

Lire (Nbre)

Tete Reçoit NIL

Pour i Allant de 1 à Nbre Faire

Allouer (P)

Lire (P^.Champ)

P^.Suivant Reçoit Tete

Tete Reçoit P

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 40
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Fin Pour.

Libérer (P)

Fin.

1.11.2.7. Calculer La Taille d’Une Liste Chainée :

Fonction TailleListeChainee (Tete : ListeEnreg) : Entier

Var Taille : ListeEnreg

Cpt : Entier

Début

Cpt Reçoit 0

P Reçoit Tete

TantQue (P < > NIL) Faire

Cpt Reçoit (Cpt + 1)

Fin TantQue

TailleListeChainee Reçoit Cpt

Fin Fonction.

1.11.2.8. Quelques Algorithmes Type Sur Les Liste Chainées :


 Procédure Insertion En Tête Dans Une Liste Chainée :

Procédure InsertTete (Tete : ListeEnreg)

Var P : ListeEnreg

Début

Allouer (P)

Ecrire (‘Entrez Les Informations’)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 41
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Lire (P^.Champ1)

Lire (P^.Champ2)

Lire (P^.ChampN)

P^.Suivant Reçoit Tete

Tete Reçoit P

Libérez(P)

Fin Procédure

 Procédure Insertion En Queue Dans Une Liste Chainée :

Procédure InsertFin (Tete : ListeEnreg)

Var P1, P2 : ListeEnreg

Début

P1 Reçoit Tete

TantQue (P1 < > NIL) Faire

P1 Recoir P1^.Suivant

Fin TantQue

Allouer (P2)

Ecrire (‘Entrez Les Informations’)

Lire (P2^.Champ1)

Lire (P2^.Champ2)

Lire (P2^.ChampN)

P2^.Suivant Reçoit Nil

P1^.Suivant Reçoit P2

Libérez(P2)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 42
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Fin Procédure

 Supprimer Le Premier Elément de La Liste Chainée :

Procédure SuppTeteListe (Tete : Liste_Enreg)

Var P : Liste_Enreg

Début

Si Tete < > NIL Alors

P Reçoit Tete

Tete Reçoit P^.Suivant

Libérer (P)

Sinon

Ecrire (‘La Liste Est Vide’)

FinSi

Fin Procédure.

 Supprimer Le Dernier Elément de La Liste Chainée :

Procédure SuppFinListe (Tete : Liste_Enreg)

Var P, P1 : Liste_Enreg

Début

P1 Reçoit Tete

P Reçoit P1^.Suivant

TantQue (P^.Suivant < > NIL) Faire

P1 Reçoit P1^.Suivant

P Reçoit P^.Suivant

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 43
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Fin TantQue

P1^.Suivant Reçoit NIL

Libérer (P)

Fin Procédure

 Parcourir Une Liste Chainée Pour Afficher Certains Champs :

Procédure Affiche_Liste (P : Liste_Enreg)

Var Tete : Liste_Enreg

Début

P Reçoit Tete

TantQue (P <> NIL) Faire

Si (P^.Champ Opérateur Valeur) Alors

Ecrire (P^.Champ1)

Ecrire (P^.Champ2)

FinSi

P Reçoit P^.Suivant

Fin TantQue

Fin Procédure.

 Parcourir Liste Chainée Pour Compter Le Nombre d’Eléments Respectant La Condition :

Fonction Compte_Element (P : Liste_Enreg) : Entier

Var Tete : Liste_Enreg

Cpt : Entier

Début

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 44
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Cpt Reçoit 0

P Reçoit Tete

TantQue (P <> NIL) Faire

Si (P^.Champ Opérateur Valeur) Alors

Cpt Reçoit (Cpt + 1)

FinSi

P Reçoit P^.Suivant

Fin TantQue

Compte_Element Reçoit Cpt

Fin Fonction.

2. Cours 2 – Base de Données Et Langage SQL Et Algèbre Relationnel


2.1. Généralités Sur Les Base de Données :

Une Base de Données en abréviation BDD ou en anglais Data Base (DB) est une entité dans laquelle
il est possible de stocker de façon structuré avec le moins de redondance possibles. Autrement dit, une base
donnée peut être considérée comme un ensemble de données accessibles et exploitables au moyen d’un
ensemble de programmes. Et ce programme est appelé Système de gestion de Bases de Données ou SGBD
qui est en fait un outil logiciel permettant d’accéder à des bases de données. Comme Exemple de SGBD,
on peut citer Oracle, MySQL, Microsoft SQL Server, Sybase, Informix, Paradox, PostgreSQL, Etc. La
gestion et l’accès à une base de données sont assurés par un ensemble de programmes qui constituent le
Système de gestion de base de données (SGBD). Un SGBD doit permettre l’ajout, la modification et la
recherche de données. Un système de gestion de bases de données héberge généralement plusieurs bases
de données, qui sont destinées à des logiciels ou des thématiques différentes. Et Actuellement, la plupart
des SGBD fonctionnent selon un mode client/serveur. Le serveur (sous - entendu la machine qui stocke les
données) reçoit des requêtes de plusieurs clients.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 45
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

2.2. Le Langage SQL :

SQL, Structured Query Language, est un langage d’interrogation de données permettant de


communiquer avec une base de données. Le langage SQL a été initialement développé par IBM à San José.
D’abord baptisé SEQUEL, il est devenu le standard pour décrire et manipuler les bases relationnelles depuis
1986. A cette date, une première version a été normalisée sous le nom de SQL1. Depuis, d'autres versions
normalisées de SQL ont été produites. Ainsi, en 1992, une version étendue appelée SQL2, puis en 1998
une version très étendue baptisée SQL3. Le SQL permet de remplir 5 rôles : La recherche de données ; La
définition des données (Langage de Définition de Données, LDD = Création de Tables + Contraintes
Intégrité + Modification de Tables) ; La modification des données (Langage de Modification de Données,
LMD = Sélection + Tri + Regroupement + Jointure des données) ; Le Contrôle des données (Langage de
Contrôle des Données, LCD) ; Le Contrôle de la Concurrence d’accès aux donnée.

2.3. Les Commandes SQL :

NB : Une Commande, Une Fonction SQL Sont Toujours En Majuscule. TOUJOURS.

 Créer Une Base de Données : SQL CREATE DATABASE, cette commande permet de créer une
base de données dans le SGBD manipulé. Syntaxe : CREATE DATABASE NomBase ; Exemple :
CREATE DATABASE IPES2020 ;

 Créer Les Tables Dans Une Base de Données : SQL CREATE TABLE, cette commande SQL
permet de créer une table. La création d’une table permet de définir les colonnes et les types de
données qui seront contenus dans chacune des colonnes. Syntaxe : CREATE TABLE NomTable (

Colonne1 : Type (Taille) Contraintes,

Colonne2 : Type,

ColonneN : Type

);

NB : Chaque Ligne se termine par une virgule sans l’avant dernière qui ne doit pas comporter de
virgule à la fin de la ligne. Concernant :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 46
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Les Types de Données, on peut citer (les plus usuels, utilisés) : Entier = INT ; Chaine de Caractère
= VARCHAR et la taille est obligatoire ; Caractère = CHAR ; Date = DATE ; Heure = TIME ; Réel =
DOUBLE ou DECIMAL (N,M) avec M le nombre de chiffre après la virgule de la décimal ; Booléen =
BOOLEAN ;

Les Contraintes : NOT NULL : qui empêche d’enregistrer une valeur nulle dans cette colonne.
Cette contrainte est OBLIGATOIRE sur la clé primaire ; DEFAULT : qui attribue une valeur par défaut à
cette colonne lors de l’ajout d’une nouvelle ligne dans la table ; PRIMARY KEY : qui indique que cette
colonne est considérée comme clé primaire ; FOREIGN KEY : qui précise si cette colonne est une clé
étrangère ou clé migratoire ou clé secondaire.

Exemple : Soit Le Modèle Relationnel :

FOURNISSEUR (CodeFour, NomFour, AdresseFour)

PRODUIT (RefereceProd, LibelléProd, Date_Approv, QteStock, #CodeFour)

NB : Dans Un Schéma Relationnel, lorsque le nom de l’attribut est précédé du signe #, cela signifie
que cette attribue est considéré comme clé migratoire donc clé étrangère et de manière générale, c’est
souvent le nom de l’attribut principal d’autre autre relation qui a migré.

Solution Exemple :

CREATE TABLE FOURNISSEUR (

CodeFour : VARCHAR (10) PRIMARY KEY NOT NULL,

NomFour : VARCHAR (50),

AdresseFour : VARCHAR (50) DEFAULT ‘‘YAOUNDE’’

);

CREATE TABLE PRODUIT (

ReferenceProd : VARCHAR (10) PRIMARY KEY NOT NULL,

LibelléProd : VARCHAR (50),

Date_Approv : DATE,

QteStock : INT,

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 47
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

CodeFour : VARCHAR (10),

FOREIGN KEY (CodeFour) REFERENCES FOURNISSEUR (CodeFour)

);

NB : Lors de la création d’une table où se trouve une ou des clés étrangères, Créer déjà et d’abord
dans un premier temps, l’attribut en bonne forme mais en respectant le même type et taille tel que définit
sur la clé primaire et ensuite précisez que c’est une clé migratoire avec le mot clé FOREIGN KEY ;

 Afin d’Uniformisez (avoir la même manière à chaque fois) les tailles de vos types de données
VARCHAR :
o Si la clé primaire est un VARCHAR, Alors Je Fixe La Taille soit à 5 ou à 10 ;
o Si un attribut est un VARCHAR, alors Je Fixe La Taille à 25 ou 50 ou 100 ;

 Supprimer Une Base de Données : DROP DATABASE, cette commande permet de supprimer la
base de données et tout ce qu’elle contient. Syntaxe : DROP DATABASE Nom_Base ;

 Supprimer La Table Dans Une Base de Données : DROP TABLE, cette commande SQL permet
de supprimer la table dans la base de données. Syntaxe : DROP TABLE Nom_Table ;

 Modifier La Structure d’Une Base de Données : ALTER TABLE : qui permet de modifier une
table existante. Et dans cette commande SQL, il est possible d’ajouter une nouvelle colonne, de
supprimer une colonne existante dans la table, de changer le type de données de la colonne dans une
table et de renommer le libellé d’une colonne.

Syntaxe : ALTER TABLE Nom_Table

Instructions ;

Ajouter Une Colonne :

ALTER TABLE Nom_Table

ADD Nom_Colonne : Type (Taille) Contraintes ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 48
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Supprimer Une Colonne : ALTER TABLE Nom_Table DROP COLUMN Nom_Colonne ;

Modifier Le Type de Données : ALTER TABLE NomColonne MODIFY NomColonne : Type


(Taille) Contraintes ;

Renommer Une Colonne : ALTER TABLE Nom_Table RENAME COLUMN Ancien_Nom TO


Nouveau_Nom ;

 Supprimer Les Données dans Une Table : SQL TRUNCATE TABLE, cette commande SQL
permet de supprimer les données dans une table sans supprimer la table elle-même. Autrement dit,
cette commande vide la table. Syntaxe : TRUNCATE TABLE Nom_Table ;

 Sélection des Données dans Une Table :

SQL SELECT, cette commande SQL consiste à lire les données issues de la base de données. Cette
commande SQL retourne les enregistrements dans un tableau de résultat. Elle peut sélectionner plusieurs
colonnes provenant de plusieurs tables : on parlera alors de jointures.

Syntaxe : SELECT Nom_Colonne1, Nom_Colonne2

FROM Nom_Table ;

NB : Nom_Colonne (Nom_Colonne1, ou Nom_Colonne2)= représente le nom de la colonne à


afficher, à donner en résultat de la dite requête.

FROM Nom_Table, c’est pour préciser source de la colonne autrement dit le nom de la Table de la
base de données.

NB : Il est possible de retourner automatiquement toutes les colonnes d’une table sans avoir à
connaitre le nom des colonnes, on utilise alors le caractère * (Joker) et qui permet de sélectionner toutes les
colonnes de la table. Et dans ce cas, on écrit : SELECT * FROM CLIENT ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 49
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

NB : A chaque fois qu’on parlera de donner ou d’afficher une liste d’informations, il sera très
souvent question de penser au caractère Joker devant le mot clé SELECT. Mais si on précise la colonne,
alors préciser la colonne.

 Syntaxe Globale de La Commande SELECT :

SELECT * FROM Nom_Table

WHERE Conditions

GROUPE BY

HAVING Conditions

ORDER BY Expressions

 Le Mot Clé DISTINCT : Ce mot clé est utilisé après le mot clé SELECT et permet d’éviter les
redondances dans les résultats d’une requête. Syntaxe :

SELECT DISTINCT Nom_Colonne

FROM Nom_Table ;

 Le Mot Clé WHERE : Le mot clé WHERE dans une requête SQL permet d’extraire les lignes
d’une base de données respectant la condition. Elle permet ainsi d’obtenir uniquement les lignes
désirées. Syntaxe :

SELECT Nom_Colonn

FROM Nom_Table WHERE Conditions ;

 La Notion des Opérateurs En SQL : En termes d’opérateurs, on peut en citer AND (ET, qui
permet de combiner 2 Conditions où les 2 Conditions doivent être respectées. Condition1 Et
Condition2), OR (Ou, qui permet de combiner 2 Conditions où l’une des 2 Conditions doit être
respectée. Condition1 Ou Condition2) ou l’opérateur BETWEEN et ces opérateurs peuvent être
utilisés dans la requête SQL sur le mot clé WHERE.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 50
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Syntaxe 1 : SELECT Nom_Colonne

FROM Nom_Table

WHERE Condition_1 AND Condition_2 ;

Syntaxe 2 : SELECT Nom_Colonne

FROM Nom_Table

WHERE Condition_1 OR Condition_2 ;

 Opérateur BETWEEN : il est utilisé pour sélectionner un intervalle de donnée dans une requête
SQL utilisant le mot clé WHERE. Syntaxe :

SELECT Nom_Colonne

FROM Nom_Table

WHERE Colonne1 BETWEEN Valeur1 AND Valeur2 ;

 La Notion de Recherche En SQL : En SQL, la recherche est possible avec l’utilisation du mot Clé
LIKE qui permet d’effectuer une recherche sur un modèle particulier. Syntaxe : SELECT
Nom_Colonne FROM Nom_Table WHERE Nom_Colonne LIKE Modèle. S’agissant du modèle à
rechercher, on a :

o LIKE ‘‘%A’’ : NB, le caractère % est un caractère Joker qui renvoie toutes les chaines de
caractères. Donc sur ce modèle en particulier permet de rechercher les chaines se terminant
par un ‘‘A’’ ;

o LIKE ‘‘A%’’ : qui renvoie toutes les chaines de caractère commençant par un ‘‘A’’ ;

o LIKE ‘‘%A%’’ : qui renvoie toutes les chaines de caractère contenant un ‘‘A’’.

 La Notion de Trie En SQL : La commande ORDER BY permet de trier les lignes dans un résultat
d’une requête SQL. Il est possible de trier les données sur une ou plusieurs colonnes, par ordre

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 51
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

ascendant ou croissant (ORDER BY ASC) ou descendant ou décroissant (ORDER BY DESC).


Syntaxe :

SELECT Nom_Colonne

FROM Nom_Table

WHERE Conditions ORDER BY Nom_Colonne (DESC, ASC) ;

 La Notion de Regroupement de Données En SQL : La commande GROUP BY est utilisée en


SQL pour grouper plusieurs résultats et utiliser une fonction de totaux sur un groupe de résultat. Sur
une table qui contient toutes les ventes d’un magasin, il est par exemple possible de lister et
regrouper les ventes par clients. Donc autrement dit à chaque fois dans une requête qu’on parlera
des termes suivant, faudra pensez à un regroupement de données : Liste des Informations Par, Pour
Chaque Information. Syntaxe :

SELECT Nom_Colonne

FROM Nom_Table

WHERE Conditions GROUP BY Nom_Colonne ;

2.4. Les Fonctions d’Agrégation En SQL :

o La Valeur Moyenne : La fonction d’agrégation AVG () dans le langage SQL permet de


calculer une valeur moyenne sur un ensemble d’enregistrement de type numérique.
Syntaxe : SELECT Nom_Colonne1, AVG (Nom_Colonne2)

FROM Nom_Table

WHERE Conditions ;

o Compter Les Lignes d’Enregistrement : En SQL, la fonction d’agrégation COUNT ()


permet de compter le nombre d’enregistrement dans une table. Connaître le nombre de lignes
dans une table est très pratique dans de nombreux cas, par exemple pour savoir combien

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 52
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

d’utilisateurs sont présents dans une table ou pour connaître le nombre de commentaires sur
un article. Syntaxe : SELECT COUNT (*) FROM Nom_Table WHERE Conditions ;

o Récupérer La Valeur Maximale (Minimale) : Dans le langage SQL, la fonction


d’agrégation MAX () permet de retourner la valeur maximale d’une colonne dans un jeu
d’enregistrement. La fonction peut s’appliquée à des données numériques ou
alphanumériques. Il est par exemple possible de rechercher le produit le plus cher dans une
table d’une boutique en ligne.

Syntaxe1 : SELECT Nom_Colonne1, MAX (Nom_Colonne2)

FROM Nom_Table

WHERE Conditions ;

o Sommer, Additionner Les Valeur dans Une Colonne : Dans le langage SQL, la fonction
d’agrégation SUM () permet de calculer la somme totale d’une colonne contenant des
valeurs numériques. Cette fonction ne fonctionne que sur des colonnes de types numériques
(INT, FLOAT, DOUBLE …) et n’additionne pas les valeurs NULL. ). Syntaxe :

SELECT SUM (Nom_Colonne)

FROM Nom_Table

WHERE Conditions ;

o Insérer Une Condition Dans Une Fonction SQL : La condition HAVING en SQL est
presque similaire à WHERE à la seule différence que HAVING permet de filtrer en utilisant
des fonctions telles que SUM (), COUNT (), AVG (), MIN () ou MAX ().

Syntaxe : SELECT Nom_Colonne1, Fonction (Nom_Colonne2)

FROM Nom_Table

GROUP BY Nom_Colonne1

HAVING Fonction (Nom_Colonne2) Opérateur Valeur ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 53
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

NB : Opérateur (=, <, >, <=, >=) et Valeur représente la Valeur de comparaison de la requête. Cela
permet donc de sélectionner les colonnes de la table “Nom_Table” en groupant les lignes qui ont des valeurs
identiques sur la colonne “Nom_Colonne1” et que la condition de HAVING soit respectée. NB : HAVING
est très souvent utilisé en même temps que GROUP BY bien que ce ne soit pas obligatoire.

2.5. Autres Commandes En SQL :


 Ajouter Les Données Dans Une Table : L’insertion de données dans une table s’effectue à l’aide
de la commande INSERT INTO. Cette commande permet au choix d’inclure une seule ligne à la
base existante ou plusieurs lignes d’un coup. Pour insérer des données dans une base, il y a 2
syntaxes principales : Insérer une ligne en indiquant les informations pour chaque colonne existante
(en respectant l’ordre) ou Insérer une ligne en spécifiant les colonnes que vous souhaitez compléter.
Il est possible d’insérer une ligne renseignant seulement une partie des colonnes ;

Syntaxe1 : INSERT INTO Nom_Table (

Nom_Colonne1, Nom_Colonne2, Nom_ColonneN)

VALUES (Valeur1, Valeur2, ValeurN) ;

Il est possible d’ajouter plusieurs lignes à un tableau avec une seule requête. Pour ce faire, il convient
d’utiliser la syntaxe suivante : Syntaxe2 :

INSERT INTO Nom_Table (Nom_Colonne1, Nom_Colonne2, Nom_ColonneN)

VALUES (Valeur1, Valeur2, ValeurN),

(Valeur11, Valeur22, ValeurNN),

(Valeur111, Valeur222, ValeurNNN) ;

NB : Lorsque le champ à remplir est de type VARCHAR ou TEXT il faut indiquer le texte entre
guillemet simple ou double côte. En revanche, lorsque la colonne est un numérique tel que INT ou BIGINT
il n’y a pas besoin d’utiliser de guillemet, il suffit juste d’indiquer le nombre ou la valeur précise. Mais par
contre si le champ est du type alors, indiquer de la façon suivante : ‘‘#JJ/MM/AAAA#’’

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 54
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Modifier Les Valeurs, Données Dans Une Table : La commande UPDATE permet en SQL
d’effectuer des modifications sur des lignes existantes. Très souvent cette commande est utilisée
avec WHERE pour spécifier sur quelles lignes doivent porter la ou les modifications. Syntaxe :

UPDATE Nom_Table

SET Nom_Colonne = ‘‘Nouvelle_Valeur’’

WHERE Conditions ;

 Supprimer Les Lignes de Données Dans Une Table :

La commande SQL DELETE est utilisée pour supprimer les enregistrements existants d'une table.
Vous pouvez utiliser la clause WHERE avec une requête DELETE pour supprimer les lignes sélectionnées,
sinon tous les enregistrements seraient supprimés. Syntaxe : DELETE FROM Nom_Table WHERE
Conditions. NB : S’il n’y a pas de condition WHERE alors Toutes les lignes seront supprimées et la table
sera alors vide.

2.6. La Notion de Jointure En SQL :

 La Notion d’Alias : Dans le langage SQL, il est possible d’utiliser des Alias pour renommer
temporairement une colonne ou une table dans une requête. Cette astuce est particulièrement utile
pour faciliter la lecture des requêtes :

o Alias Sur Une Colonne : Permet de renommer le nom d’une colonne dans les résultats
d’une requête SQL. C’est pratique pour avoir un nom facilement identifiable dans une
application qui doit ensuite exploiter les résultats d’une recherche. Syntaxe :

SELECT Nom_Colonne AS Nouveau_Nom

FROM Nom_Table

WHERE Conditions ;

o Alias Sur Une Table : Permet d’attribuer un autre nom à une table dans une requête SQL.
Cela peut aider à avoir des noms plus court, plus simple et plus facilement compréhensible.
Ceci est particulièrement vrai lorsqu’il y a des jointures à réaliser sur la requête. Syntaxe :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 55
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

SELECT Nom_Colonne

FROM Nom_Table T Avec T, La Première Lettre du Nom de La Table

WHERE Conditions ;

NB : Le mot clé AS est obligatoire lorsque je dois renommer une colonne. Mais pour renommer la
table, on doit juste spécifier la première lettre du nom de la table et je sépare les deux, par un simple espace.

 La Notion de Jointure En SQL : Manipulation de Plusieurs Tables (02), Pensez A La


Jointure : Les jointures en SQL permettent d’associer plusieurs tables dans une même requête. Cela
permet d’exploiter la puissance des bases de données relationnelles pour obtenir des résultats qui
combinent les données de plusieurs tables de manière efficace. En général, les jointures consistent
à associer des lignes de 2 tables en associant l’égalité des valeurs d’une colonne d’une première
table par rapport à la valeur d’une colonne d’une seconde table.

NB : La Jointure de plusieurs tables se matérialisent toujours et toujours par un lien de jointure. Et


ce lien de jointure est très souvent une clé primaire d’une table A qui a migré vers une table B (et est
devenue clé étrangère ou clé migratoire). Et dans ce cas :

 Lier 2 Tables = 1 Lien de Jointure ;


 Lier 3 Tables = 2 Liens de Jointure ;
 Lier N Tables = (N - 1) Liens de Jointure.
Imaginons une base de données qui possède deux tables :
Table1 (CléPrimaire_Table1, Colonne2_Table1, ColonneN_Table1)
Table2 (CléPrimaire_Table2, Colonne2_Table2, ColonneN_Table2, #CléPrimaire_Table1) ;

NB : la présence de #CléPrimaire_Table1 dans la Table2, voudrais simplement dire que la Table1


a migré dans la Table2 et donc pour les lier, ou les mettre en jointure, on doit écrire :

T1.CléPrimaire_Table1 = T2.CléPrimaire_Table1 (car la clé primaire de la Table1 a migré dans


le table 2 est devenue clé étrangère ou clé migratoire) et dans une requête cela peut donner :

SELECT Colonne2_Table1, ColonneN_Table2 // exemple de colonnes

FROM Table1 T1, Table2 T2 // Je renomme les tables à l’aide des Alias

WHERE T1.CléPrimaire_Table1 = T2.CléPrimaire_Table1 ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 56
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

NB : Avec La Jointure, Je Dois Matérialiser Liens de Jointure Dans Le WHERE (Première des
Choses) en plus des Autres Conditions si possible.

2.7. La Notion de Requête Imbriquée En SQL :

Requête A (Requête Externe)

Lier (Relier, Inclure)

Requête B (Requête Interne). // On Exécute B Avant A

Encore appelé Sous – Requête, la Requête Imbriquée en SQL est également aussi appelé requête en
cascade et est une requête SQL qui consiste à exécuter une requête (requête externe) à l’intérieur d’une
autre requête (requête interne). Une requête imbriquée est souvent utilisée au sein d’une clause WHERE
ou de HAVING pour remplacer une ou plusieurs constante.

Une sous - requête est une requête à l'intérieur d'une autre requête. Avec le SQL, vous pouvez
construire des requêtes imbriquées sur autant de niveaux que vous voulez. Vous pouvez également
mélanger jointures et sous - requêtes. Tant que votre requête est correctement structurée, elle peut être aussi
complexe que vous le voulez. Il y a plusieurs façons d’utiliser les sous-requêtes. De cette façon il y a
plusieurs syntaxes envisageables pour utiliser des requêtes dans des requêtes. Oracle permet d’imbriquer
les requêtes, c’est-à-dire de placer des requêtes dans les requêtes. Une requête imbriquée peut renvoyer
trois types de résultats, Une Valeur Scalaire (Valeur Finie), Une Colonne ou Une Table.

 Requête Imbriquée Qui Retourne Un Seul Résultat : L’exemple de Syntaxe ci-dessous est un
exemple typique d’une sous - requête qui retourne Un Seul Résultat à la requête principale.

SELECT *

FROM Nom_TableA

WHERE Nom_Colonne = (SELECT Valeur

FROM Nom_TableB) ;

Cet exemple montre une requête interne (celle sur “Nom_TableB”) qui renvoi une seule valeur. La
requête externe quant à elle, va chercher les résultats de “Nom_TableA” et filtre les résultats à partir de la

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 57
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

valeur retournée par la requête interne. NB : il est possible d’utiliser n’importe quel opérateur d’égalité tel
que =, >, <, >=, <= ou < >.

 Requête Imbriquée Qui Retourne Une Colonne : Une requête imbriquée peut également
retournée une colonne entière. Dès lors, la requête externe peut utiliser le mot clé IN pour filtrer les
lignes qui possèdent une des valeurs retournées par la requête interne. L’exemple ci-dessous met en
évidence un tel cas de figure :

SELECT *

FROM Nom_TableA

WHERE Nom_Colonne IN (SELECT Nom_Colonne

FROM Nom_TableB

WHERE Conditions) ;

NB : Conditions Avec IN et NOT IN :

 Vous connaissez déjà l'opérateur IN, qui compare une colonne avec une liste de valeurs. En termes
d’appartenance, d’égalité, de contenance ;

 NOT IN : Si l'on utilise NOT IN, c'est bien sûr le contraire donc on exclut les lignes qui
correspondent au résultat de la sous-requête. Et ce cas de figure est fréquent lorsqu’on parlera à
chaque d’une certaine négation dans une requête SQL. Les libellé de ce genre de requête sera du
genre, n’appartient pas, ne figure pas, ne possède pas, n’est pas, ne sont jamais, n’ont jamais. Et
pour ce cas de figure, généralement dans le requête interne B, je fais le contraire du libellé de la
question posé et je relis les deux requêtes par un NOT IN ;

 Les Autres Conditions : Conditions Avec ANY, SOME et ALL :

o Les Conditions avec IN et NOT IN sont un peu limitées, puisqu'elles ne permettent que des
comparaisons de type "Est Egal" ou "Est Différent". Or, Avec ANY et ALL :

 ANY : Veut Dire "Au Moins Une des Valeurs" ;

 SOME : Est Un Synonyme de ANY ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 58
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 ALL : Signifie "Toutes Les Valeurs". La commande ALL permet de comparer une
valeur dans l’ensemble de valeurs d’une sous - requête. En d’autres mots, cette
commande permet de s’assurer qu’une condition est “égale”, “différente”,
“supérieure”, “inférieure”, “supérieure ou égale” ou “inférieure ou égale” pour Tous
Les résultats retourné par une sous-requête.

3. Cours 3 – Analyse Informatique – La Méthode d’Analyse MERISE


3.1. Généralités Sur La Méthode MERISE :

Le système d'information ou SI, peut être défini comme étant l'ensemble des moyens humains,
matériels et immatériels mis en œuvre afin de gérer l'information au sein d'une unité, une entreprise par
exemple. MERISE : Méthode d’Etude et de Réalisations Informatiques des Sous - Ensembles ou des
Systèmes d’Entreprise est une méthode d’analyse et de conception des systèmes d’information. Elle est née
vers 1978 - 1979, à la suite d’une vaste consultation lancée en 1977 par le ministère de l’industrie pour
choisir plusieurs sociétés de service et de conseil en l’informatique et le CET (Centre d’Etude Technique),
pour mettre au point une méthode de troisième génération de conception et de réalisation de 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. Pour cela Merise propose deux approches.

 Approches Par Niveaux :

o Niveau Conceptuel : A ce niveau le système d’information (SI) est représenté


indépendamment de son organisation et les moyens physique et informatique. Les règles
mises en évidence, à ce niveau son des règles de gestion traduisant les objectifs et les
contraintes qui présente l’entreprise. Deux modèles sont proposés à ce niveau : Le modèle
conceptuel des données (MCD) et Le modèle conceptuel des traitements (MCT) ;

o Niveau Logique : A ce niveau sont faite tous les choix techniques afin de déterminer qui
fera quoi, ou, quand et comment. Les traitements sont réalisés dans le système d’information
en tenant compte des contraintes imposées par ces choix. Les deux modèles proposés à ce
niveau sont Le modèle organisationnel des traitements (MOT) et Le modèle logique des
données (MLD) ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 59
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

o Niveau Physique : A ce niveau sont fait les choix techniques permettant de déterminer les
moyens informatiques. Les règles misent en évidence sont des règles techniques. Elle
s’exprime en termes de matériels ou de logiciels. Les deux modèles proposés à ce niveau
sont Le modèle physique des données (MPD) et Le modèle opérationnel des traitements
(MOPT).

Niveau Statiques Ou Données Dynamique Ou Questions ?


Traitements
Conceptuel MCD MCT QUOI ?
Organisationnel Ou MLD MOT QUI ? QUAND ? Où ?
Logique
Opérationnel Ou MPD MoPT COMMENT ?
Physique

 Approches Par Etapes : Merise propose aussi six étapes qui sont :

o Schéma Directeur : l’objectif de cette étape est de faire le point entre la stratégie de
l’entreprise et ses besoins en termes de système d’information ;

o Etude Préalable : cette étape a pour but, de prendre les domaines d’activités domaine par
domaine ; et établir d’une manière plus approfondie les projets à mettre en œuvre et leurs
interfaces ;

o Etude Détaillée : elle a pour but, de décrire d’une manière détaillée les champs d’études ;
et de concevoir un nouveau système en intégrant les nouvelles orientations qui répondent de
la problématique posée, lors de l’étude préalable ;

o Réalisation : elle comprend l’écriture des programmes, l’implémentation des bases de


données où des tests sont faits pour garantir une meilleure intégration de l’ensemble des
transactions ;

o Mise en œuvre : cette étape constitue la mise à la disposition des utilisateurs, le nouveau
système en assurant que toutes les consignes et recommandations seront prises en
considérations ;

o Maintenance : elle consiste à assurer la maintenance de l’application mise en place afin de


la faire durer plus longtemps.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 60
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

3.2. Les Eléments de La Méthode MERISE :

La Méthode d’Analyse Informatique MERISE est constitué d’un certain nombre d’éléments : Le
Diagramme de Circulation de L’Information - DCI ; Les Règles de Gestion - RG ; Le Dictionnaire de
Données - DDD ; Le Diagramme de Flux - DDF ; Le Graphe des Dépendances Fonctionnelles - GDF ; Le
Modèle Conceptuel de Données - MCD ; Le Modèle Conceptuel de Traitements - MCT ; Le Graphe
d’Ordonnancement des Evènements - GOE ; Le Modèle Organisationnel de Traitement - MOT ; Le Modèle
Externe - ME ; Le Modèle Logique de Données - MLD ; Le Modèle Physique de Données - MPD ;

3.3. Le Modèle Conceptuel de Données :

Le MCD de MERISE est un modèle qui permet de décrire et de modéliser graphiquement les
informations et les objets (appelés entités) manipulés par le système d’information ainsi que les liens entre
les entités. En d’autres termes, le modèle conceptuel des données est une représentation statique (donnée)
d’un système d’information. Autrement dit, c’est une représentation graphique et structurée des
informations mémorisées par un SI. Le MCD est basé sur deux notions principales : les Entités et
les Associations, d'où sa seconde appellation : le Schéma Entité / Association.

3.3.1. Les Règles de Gestion :

Une règle de gestion est un libellé qui décrit le fonctionnement global de l’entreprisse ou de
l’organisation étudiée. Généralement présenter sous forme de phrase simple, Le formalisme de
représentation des règles de gestion est le suivant :

 RG No1 : énoncé de la règle de gestion no1 ;

 RG No2 : énoncé de la règle de gestion no2 ;

 RG Non : énoncé de la règle de gestion non

3.3.2. Le Dictionnaire de Données :

Le dictionnaire des données en abrégé DD, est un tableau qui recense et décrit l’ensemble des
propriétés ou données élémentaires significatives et utiles de l’entreprise ou de l’organisation étudiée. Son
formalisme est le suivant :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 61
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Nom Symbolique Signification Type Taille Nature

 Nom Symbolique : il s'agit d'un libellé désignant une donnée tel que présenter dans le MCD
(Libellé Court de La Données) ;

 Signification : il s'agit d'une mention décrivant ce à quoi la donnée correspond (Libellé Long de La
Données) ;

 Type :

o A ou Alphabétique : lorsque la donnée est uniquement composée de caractères


alphabétiques ;

o N ou Numérique : lorsque la donnée est composée uniquement de nombres (entiers ou


réels) ;

o AN ou Alphanumérique : lorsque la donnée peut être composée à la fois de caractères


alphabétiques et numériques ;

o Date : lorsque la donnée est une date (au format AAAA-MM-JJ) ;

o Booléen : Vrai ou Faux ;

 Taille : elle s'exprime en nombre de caractères ou de chiffres ;

 Nature :

o SIG ou Signalétique : ne change presque jamais ;

o SIT ou Situationnel : peut changer en fonction des situations ou évènements ;

o M ou Mouvement : en perpétuel changements ou mouvement ;

NB : Les Données calculées ne figurant pas dans le DDD. Et toutes les données doivent être de type
Elémentaire donc non décomposables.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 62
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

3.3.3. Présentation des Concepts Liés Au MCD :

 Propriété : C’est le plus petit élément d’information manipulable par le concepteur. Elle est décrite
par un nom, prend des valeurs dans un domaine de valeurs ou types et a une signification dans le
système d’information étudié. Une propriété doit être élémentaire c’est-à-dire ne doit pas être
décomposable en un ensemble de propriétés signifiantes plus petites ;

 Entité : Une entité est la représentation d’un ensemble d’objets de même nature, concrets ou
abstraits, ayant un intérêt pour le système d’information étudié ;

 Association Ou Relation : Une Association Est Un Verbe Toujours à l’infinitif permettant de relier
ou mettre en relation deux entités du système étudié ;

 Cardinalité : Couple de Valeurs appelées cardinalité minimum et cardinalité maximum traduisant


respectivement le nombre de fois minimum et maximum d’une entité peut être en relation avec une
autre entité ;

 Entités Clés Ou Pertinentes : Entités sans lesquels le système ne peut pas être mis en place.
Généralement ces entités ont leur champs ou propriété explicitement et clairement décrits dans le
texte

3.3.4. Etape de Réalisation du MCD :

 Ne Jamais Prendre les Données Calculées dans le MCD ou dans Le Dictionnaire de Données ;

 Ne Jamais Prendre Les Etats comme Entités Sauf Ca Vraiment Exceptionnel. Et dans ce cas l’on
prendra le soin de décrire les champs de ce genre d’entité ;

 Laisser Sans Souligner La Première Propriété dans Le MCD.

Etapes de Mise En Place :

 Lire Et Relire Bien Et Bien Le Texte Pour Comprendre Le Contexte ;

 Identifier Les Entités Pertinentes Avec Leurs Propriétés Respectives ;

 Identifier Les Règles de Gestion Et Les Associations Possibles Entre Entités ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 63
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Schématiser Le MCD Autrement Faire EPAC = Entités + Propriétés + Associations + Cardinalités ;

3.4. Le Modèle Logique de Données :


3.4.1. Généralités Sur Le MLD :

Le modèle logique de données (MLD) est composé uniquement de ce que l'on appelle des relations.
Ces relations sont à la fois issues des entités du MCD, mais aussi d'associations, dans certains cas. Ces
relations nous permettront par la suite de créer nos tables au niveau physique. Une relation est composée
d'attributs. Ces attributs sont des données élémentaires issues des propriétés des différentes entités, mais
aussi des identifiants et des données portées par certaines associations. Une relation possède un nom qui
correspond en général à celui de l'entité ou de l'association qui lui correspond. Elle possède aussi une clef
primaire qui permet d'identifier sans ambiguïté chaque occurrence de cette relation. La clef primaire peut
être composée d'un ou plusieurs attributs, il s'agit d'une implantation de la notion d'identifiant des entités et
associations qui se répercute au niveau relationnel. Syntaxe : NomRelation (Attribut1, Attribut12, . . .
AttributN)

3.4.2. Règles de Passage du MCD Au Modèle Logique :

 Toute Entité Devient Une Relation ;

 L’Identifiant de L’Entité Devient L’Attribut Principal de La Relation ;

 Les Propriétés de L’Entité Deviennent des Attributs de La Relation ;

 Toute Association de Cardinalité Maximum d’Un Côté Et Minimum de L’Autre Induit Ou Entraine
La Création d’Une Clé Etrangère Noté #CléPère. Une Clé Etrangère Est Ajoutée dans La Relation
Ayant La Cardinalité Minimum ;

 Toute Association de Cardinalité Maximum des Deux Côtés, Devient Une Relation. Et Son Attribut
Principal Est Constitué Par La Concaténation des Clés Qui Ont Migrés

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 64
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

4. Cours 4 - Analyse Informatique – Le Langage de Modélisation UML :


4.1. Généralités Sur Le Langage UML :

L’objectif principal de ce cours est de permettre à l’étudiant de découvrir le langage UML (Unified
Modeling Language ou langage de modélisation unifié). UML est un langage de modélisation permettant
la spécification, la construction, la visualisation et la documentation de logiciels. C’est un langage de
modélisation unifié conçu pour fournir une méthode normalisée permettant de visualiser la conception d’un
SI. Il est couramment utilisé en développement de logiciels et surtout en conception orientée objet. UML
2.3 propose 14 types de diagrammes et comme UML n’est pas une méthode, leur utilisation est laissée à
l’appréciation du concepteur. Il se décompose en plusieurs parties : Les Vue = observables du système
décrivant d’un point de vue les données ; Les Diagrammes = ensemble d’éléments graphiques décrivant le
contenue des vues ; Les Méthodes = éléments graphiques des diagrammes ;

4.2. Les Diagrammes UML :

Les diagrammes UML sont dépendants hiérarchiquement et se complètent, de façon à permettre la


modélisation d'un projet tout au long de son cycle de vie. Il en existe quatorze depuis UML 2.3 :

 Les Diagrammes de Structure ou Diagrammes Statiques :

o Le Diagramme de Classes = Représentation des classes intervenant dans le système ;

o Le Diagramme d'Objets = Représentation des instances de classes (objets) utilisées dans le


système ;

o Le Diagramme de Composants = Représentation des composants du système d'un point de


vue physique, tels qu'ils sont mis en œuvre (fichiers, bibliothèques, bases de données…) ;

o Le Diagramme de Déploiement = Représentation des éléments matériels (ordinateurs,


périphériques, réseaux, systèmes de stockage…) et la manière dont les composants du
système sont répartis sur ces éléments matériels et interagissent entre eux ;

o Le Diagramme des Paquets = Représentation des dépendances entre les paquets (un paquet
étant un conteneur logique permettant de regrouper et d'organiser les éléments dans le
modèle UML), c'est-à-dire entre les ensembles de définitions ;

 Les Diagrammes de Comportement :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 65
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

o Le Diagramme des Cas d'Utilisation = Représentation des possibilités d'interaction entre le


système et les acteurs (intervenants extérieurs au système), c'est-à-dire de toutes les
fonctionnalités que doit fournir le système ;

o Le Diagramme Etats – Transitions = Représentation sous forme de machine à états finis du


comportement du système ou de ses composants ;

o Le Diagramme d'Activité = Représentation sous forme de flux ou d'enchaînement d'activités


du comportement du système ou de ses composants ;

 Les Diagrammes d'Interaction ou Diagrammes Dynamiques :

o Le Diagramme de Séquence = Représentation de façon séquentielle du déroulement des


traitements et des interactions entre les éléments du système et/ou de ses acteurs ;

o Le Diagramme de Communication = Représentation de façon simplifiée d'un diagramme de


séquence se concentrant sur les échanges de messages entre les objets (depuis UML 2.x).

4.3. Le Diagramme des Cas d’Utilisation :


4.3.1. Présentation Et Définition des Concepts :

Les diagrammes de cas d'utilisation (DCU) sont des diagrammes UML utilisés pour une
représentation du comportement fonctionnel d'un système logiciel. Ils sont utiles pour des présentations
auprès de la direction ou des acteurs d'un projet, mais pour le développement, les cas d'utilisation sont plus
appropriés. En effet, un cas d'utilisation (use cases) représente une unité discrète d'interaction entre un
utilisateur (humain ou machine) et un système. Ainsi, dans un diagramme de cas d'utilisation, les utilisateurs
sont appelés acteurs (actors), et ils apparaissent dans les cas d'utilisation.

4.3.2. La Notion d’Acteur :

Ils sont des entités externes qui interagissent avec le système, comme une personne humaine ou un
robot. Une même personne (ou robot) peut être plusieurs acteurs pour un système, c'est pourquoi les acteurs
doivent surtout être décrits par leur rôle, ce rôle décrit les besoins et les capacités de l'acteur. Un acteur agit
sur le système. L'activité du système a pour objectif de satisfaire les besoins de l'acteur. Les acteurs sont

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 66
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

représentés par un pictogramme humanoïde (stick man) sous-titré par le nom de l'acteur. Dans un DCU, un
acteur est la matérialisation d’un rôle joué dans le SI.

4.3.3. La Notion de Cas d’Utilisation :

Un Cas d’utilisation est une unité cohérente représentant une fonctionnalité visible du système. Il
est sous la forme d’une éclipse. Un acteur peut avoir différents rôles et est amené à intervenir dans une ou
plusieurs situations. Miller (2001) en identifie quatre : Initiateur : acteur qui active le système et déclenche
le cas ; Serveur : acteur aidant le système à assumer ses responsabilités ; Receveur : acteur recevant les
informations du système (système de backup) ; Facilitateur : acteur dont les actions sont effectuées au
bénéfice d'un autre acteur.

4.3.4. Relations Entre Les Cas d’Utilisation :

Trois types de relations sont pris en charge par la norme UML et sont graphiquement représentées
par des types particuliers de ces relations. Les relations indiquent que le cas d'utilisation source présente les
mêmes conditions d'exécution que le cas issu. Une relation simple entre un acteur et une utilisation est un
trait simple :

 Inclusions : Dans ce type d'interaction, la dépendance est obligatoire car le premier cas d'utilisation
inclut le second et son issue dépend obligatoirement de la résolution du second. Elle est représentée
par une flèche en pointillé et matérialisé par le terme « Include ». A Inclut B, Autrement dit A
Dépend de B. Lorsque A Est Sollicité, B L’Est Obligatoirement.

 Extensions : Les Extensions (« Extend ») représentent des prolongements logiques de certaines


tâches sous certaines conditions. Autrement dit un cas d'utilisation A étend un cas d'utilisation B
lorsque le cas d'utilisation A peut être appelé au cours de l'exécution du cas d'utilisation B. c’est une
dépendant optionnelle. Elle est représentée par une flèche en pointillée avec le terme « Extend ».
Ce type de relation peut être utile pour traiter des cas particuliers ou fonctions optionnelles, préciser
les objectifs, ou encore pour tenir compte de nouvelles exigences au cours de la maintenance du
système et de son évolution.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 67
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

4.3.5. Relation Entre Les Acteurs :

Il est également possible d'appliquer à un acteur la relation de généralisation. Cela se fait notamment
lorsqu'un acteur est un sous-type d'une autre catégorie d'acteurs. Un acteur lié à un autre par ce type de
relation peut interagir avec le système de plus de manières que son parent. La Généralisation : Un Acteur
A est une généralisation de B, si B est un cas particulier de A c'est-à-dire lorsque A peut - être substitué par
B pour un cas précis. Ces relations sont des traits pleins terminés par une flèche en triangle.

4.4. Le Diagramme de Classe :


4.4.1. Définition :

Le diagramme de classes est un schéma utilisé en génie logiciel pour présenter les classes et les
interfaces des systèmes ainsi que leurs relations. Ce diagramme fait partie de la partie statique d'UML, ne
s'intéressant pas aux aspects temporels et dynamiques. Une classe décrit les responsabilités, le
comportement et le type d'un ensemble d'objets. Les éléments de cet ensemble sont les instances de la
classe. Une classe est un ensemble de fonctions et de données (attributs) qui sont liées ensemble par un
champ sémantique. Les classes sont utilisées dans la programmation orientée objet. Elles permettent de
modéliser un programme et ainsi de découper une tâche complexe en plusieurs petits travaux simples.

4.4.2. Schéma de La Classe :

Une classe est représentée par un rectangle séparé en trois parties : la première partie contient le
nom de la classe, la seconde contient les attributs de la classe et la dernière contient les méthodes de la
classe :

 La Première Partie : le nom de la classe. Il est écrit dans le rectangle du haut. Dans une classe
classique, le nom est écrit en romain (exemple : « ClasseClassique »). Le nom d’une classe
commence toujours par une lettre majuscule. Il ne doit pas comporter d'espaces, de signes de
ponctuation ou d'accents. Pour remplacer les espaces, plusieurs conventions existent : on peut
intercaler un symbole _ entre les mots

 La Seconde Partie : les attributs. La syntaxe d'un attribut est la suivante : Visibilité nomAttribut
[multiplicité] : typeAttribut = Initialisation.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 68
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

La Notion de Visibilité : La notion de visibilité indique qui peut avoir accès à l'attribut. Elle ne
peut prendre que quatre valeurs :

Caractère Rôle Mot clé Description

+ accès public Public Toutes les autres classes ont accès à cet attribut.

accès Seules la classe elle-même et les classes filles (héritage) ont


# Protected
protégé accès à cet attribut.

accès
~ Package Classe visible uniquement dans le package.
package

- accès privé Private Seule la classe elle-même a accès à cet attribut.

NB : Afin de respecter le principe fondamental d'encapsulation, tous les attributs devraient être
privés. Pour qu'un attribut privé ou protégé soit récupérable, on utilise en général un getter (ou accesseur);
pour qu'il soit modifiable, on utilise en général un setter (ou mutateur).

Exemple : + Prenom : String. - Age : int

 La Troisième Partie : les méthodes. La syntaxe d'une méthode est la suivante : Visibilité
nomFonction(nomParamètre : typeParamètreN) : typeRetour

Exemple : + getAge() : int

4.4.3. Relations Entre Les Classe :

Ces relations ne sont pas propres aux diagrammes de classes, elles peuvent également s'appliquer à
l'ensemble des diagrammes statiques.

 Héritage : L'héritage est un principe de division par généralisation et spécialisation, représenté par
un trait reliant les deux classes et dont l'extrémité du côté de la classe mère comporte un triangle.
La classe fille hérite de tous les attributs et méthodes, qu'ils soient publics, protégés ou privés.
Cependant, elle ne peut pas utiliser directement les attributs et méthodes privés (que ce soit en
lecture ou en écriture), sauf par l'intermédiaire d'une méthode héritée (publique ou protégée).

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 69
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Association : L'association est une connexion sémantique entre deux classes (relation logique). Une
association peut être nommée. L'invocation d'une méthode est une association. Elle peut être binaire,
dans ce cas elle est représentée par un simple trait, ou n-aire, les classes sont reliées à un losange
par des traits simples. Ces relations peuvent être nommées. L'association n'est utilisée que dans les
diagrammes de classe.

4.4.4. La Notion de Multiplicité :

Comparable aux cardinalités du système Merise, sert à compter le nombre minimum et maximum
d'instances de chaque classe dans la relation liant 2 ou plusieurs classes. La multiplicité représente le
nombre de fois où la variable peut intervenir. Elle est représentée entre crochets : Exactement un : 1 ou
1..1 ; Plusieurs : * ou 0..* ; Au moins un : 1..* ; De un à six : 1..6.

4.4.5. Les Autres Types de Relation Entre Les Classes :


4.4.5.1. L’Agrégation :

L'agrégation est une association avec relation de subordination, représentée par un trait reliant les
deux classes et dont l'origine se distingue de l'autre extrémité (la classe subordonnée) par un losange vide.
Une des classes regroupe d'autres classes. L'objet T utilise une instance de la classe T'. C'est une relation
particulière qui attribue à l'une des classes le rôle d'agrégat et à l'autre classe le rôle d'agrégé. L'agrégation
peut être assimilée à une appartenance - faible -. Soit une configuration constituée d'un certain nombre
d'éléments:

Commentaires:

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 70
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 L'agrégation se modélise par un losange côté agrégat ;

 Une configuration comporte un clavier - ou aucun -, un écran - ou aucun -, et éventuellement


plusieurs disques ;

 L'agrégation traduit une relation d'appartenance de l'agrégé dans l'agrégat; elle n'induit aucune
valeur de multiplicité particulière.

Commentaires :

 Une page peut contenir des images mais celles-ci peuvent appartenir à d'autres pages ;

 La destruction d'une page n'entraîne pas celle de l'image mais seulement la suppression du lien ;

 Bien sûr nous aurons très souvent une cardinalité 1..1 ou 0..1 côté agrégat ;

 L'appartenance est dite faible car l'agrégé pourra participer à d'autres agrégats et son cycle de vie
n'est pas subordonné à celui de son agrégat. Plus haut la disparition d'une configuration n'entraîne
pas la disparition des périphériques.

4.4.5.2. La Composition :

La composition est une agrégation avec cycle de vie dépendant : la classe composée est détruite
lorsque la classe mère disparait. L'origine de cette association est représentée par un losange plein. L'objet
T' est composé de T. Il s'agit d'une appartenance forte. La vie de l'objet composant est liée à celle de son
composé. La notion de composant est proche de celle d'attribut, si ce n'est que "l'attribut" est "rehaussé" au
rang de classe. On parlera de de réification, on reviendra sur cette notion plus loin.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 71
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Commentaires :

 La composition se modélise par un losange noir côté composé ;

 Une application contient de 0 à n fenêtres qui contiennent de 0 à n boutons ;

 La fermeture de l'application entraîne la destruction des fenêtres qui entraîne la destruction des
boutons ;

 la non-présence des valeurs de multiplicités est synonyme de 1..1

NB :

 Un composant ne peut appartenir à un moment donné qu'à un seul composé ;

 La cardinalité ne peut être que de 1 maximum coté composant ;

 La suppression du composé entraîne celle du composant.

4.4.6. Exercice Récapitulatif :

Commentaires :

 Le châssis est un élément indissociable d'une voiture, d'où la composition ;

 Le moteur et les roues peuvent être utilisés dans d'autres voitures ;

 Notez les valeurs 4..4 qui caractérisent plus précisément les valeurs de multiplicité ;

 Les absences de cardinalité sont assimilable à 1..1 ;

 L'association entre Voiture et Personne n'est pas nommée, cela est conseillé lorsque son nom est
trivial: "appartient", "concerne" etc ...afin de ne pas alourdir le modèle, sans rien apporter à la
sémantique.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 72
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

4.4.7. Etapes de Mise En Place d’Un DDC :

 Lire Et Relire Bien Et Bien Le Texte Pour Comprendre Le Contexte ;

 Identifier Les Entités Pertinentes Avec Leurs Propriétés Respectives ;

 Identifier Les Règles de Gestion Et Les Associations Possibles Entre Entités ;

 Schématiser Le MCD (Entités + Propriétés + Associations + Cardinalités) ;

 Transformer Le MCD Obtenu En Classe :

o Chaque Entité Devient Une Classe (Nom de La Classe, Propriétés, Méthodes) ;

o Inverser Les Cardinalités Afin d’Obtenir Les Multiplicités ;

o Tenir Compte des Spécificités UML (Héritage, Composition ; Agrégation).

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 73
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

5. Fiche TD - Cours 1 - Algorithmes Et Structures de Données Avancées

Algorithme1 : Algorithme Pour Calculer Factoriel d’Un Nombre Entier ;

Algorithme2 : Algorithme Pour Calculer La Puissant d’Un Nombre NbreM ;

Algorithme3 : Algorithme Pour Savoir Si Un Nombre Est Pair Ou Impair ;

Algorithme4 : Algorithme Pour Afficher Ou Sommer Ou Compter Les Diviseurs d’Un Nombre ;

Algorithme5 : Ecrire Un Programme Qui Demande à L’Utilisateur Un Nombre N Puis Vérifie Si


Ce Nombre Est Premier Ou Non. Le Programme Devra Retourner Un Message à L’Utilisateur Lui Disant
Si Le Nombre Entré Est Premier Ou Non ;

Algorithme6 : Ecrire Un Programme Qui Demande à L’Utilisateur Un Nombre N Puis Vérifie Si


Ce Nombre Est PARFAIT Ou Non. Le Programme Devra Retourner Un Message à L’Utilisateur Lui Disant
Si Le Nombre Entré Est PARFAIT Ou Non ;

Algorithme7 : Algorithme Pour Calculer La Sommes des Chiffres d’Un Nombre Entier ;

Algorithme8 : Algorithme Pour Faire La Somme Des Eléments Jusqu’à Ce Nombre ;

Algorithme9 : Ecrire Un Algorithme Permettant de Saisir 5 Réelles Au Clavier, Les Stocke dans
Un Tableau, Et Calcule Leur Somme Et Les Afficher Avec Leur Somme à L’Ecran ;

Algorithme10 : Ecrire Un Algorithme Qui Demande Un Nombre Entier Et Qui L’Affiche à


L'Envers. Par Exemple, Si L'Utilisateur Saisit 123, Le Programme Affiche 321. Pour Cela Il Faudra Utiliser
La Division Et Le Modulo ;

Algorithme11 : Ecrire Un Algorithme Qui Demande Un Nombre De Départ, Et Qui Calcule La


Somme des Entiers Jusqu’à Ce Nombre. Par Exemple, Si L’On Entre 5, Le Programme Doit Calculer : 1 +
2 + 3 + 4 + 5 = 15. NB : On Souhaite Afficher Uniquement Le Résultat, Pas La Décomposition du Calcul ;

Algorithme12 : Ecrire Un Programme Qui Demande à L’Utilisateur Un Nombre N Et Affiche La


Liste des Diviseurs de Ce Nombre, Affiche Le Nombre des Diviseurs Et Affiche La Somme des Diviseurs
de Ce Nombre ;

Algorithme13 : Ecrire Un Algorithme Qui Demande Un Nombre de Départ, Et Qui Ensuite Affiche
Les 10 Nombres Suivants. Par Exemple, Si L'Utilisateur Entre Le Nombre 17, Le Programme Affichera
Les Nombres de 18 à 27 ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 74
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Algorithme14 : Ecrire Un Algorithme Permettant de Saisir Et d’Afficher N Eléments d’Un Tableau


De 100 Eléments ;

Algorithme15 : Ecrire Un Algorithme Permettant de Calculer La Somme, Produit Et Moyenne des


Eléments d’Un Tableau De 100 Eléments ;

Algorithme16 : Ecrire Un Algorithme Permettant de Chercher La Première Occurrence d’Un


Elément dans Un Tableau De 100 Eléments ;

Algorithme17 : Ecrire Un Algorithme Permettant de Chercher La Dernière Occurrence d’Un


Elément dans Un Tableau De 100 Eléments ;

Algorithme18 : Ecrire Un Algorithme Permettant de Calculer Le Nombre de Fois Qu’Un Elément


Apparait dans Un Tableau De 100 Eléments ;

Algorithme19 : Ecrire Un Algorithme Permettant de Déterminer La Valeur du Plus Grand Elément


Dans Un Tableau De 100 Eléments, Ainsi Que Son Indice ;

Algorithme20 : Algorithme Qui Compte Le Nombre D’Eléments Pair Ou Impair Dans Un Tableau
De 100 Eléments ;

Algorithme21 : Algorithme Qui Compte Le Nombre D’Eléments Positif Ou Négatif Dans Un


Tableau De 100 Eléments ;

Algorithme22 : Algorithme Pour Inverser Les Eléments d’Un Tableau De 100 Eléments.

Algorithme23 : On souhaite automatiser la gestion des Produits dans un Super Marché. Un Produit
est caractérisé par sa Référence, sa Désignation, sa Quantité Stock, sa Quantité Seuil et la Date du Dernier
Approvisionnement du Produit. Les informations sur l’ensemble des Produits sont enregistrées dans un
Tableau de Taille 10000. Répondre Aux Questions :

1) Définir une Structure de Données permettant d’enregistrer les informations sur l’ensemble des
produits du super marché ;

2) On suppose qu’il y un certain nombre de produits N enregistrés dans le tableau, écrire un algorithme
qui permet de lire les informations sur un nouveau produit et l’enregistre dans le tableau des
produits ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 75
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

3) Le nombre N des produits déjà enregistrés dans le tableau étant toujours connu, écrire un algorithme
qui permet d’afficher la liste des produits devant faire l’objet d’une nouvelle commande (NB : un
produit fait l’objet d’une commande si sa Quantité Stock est inférieur à sa Quantité Seuil) ;

4) Le nombre N des produits déjà enregistrés dans le tableau étant toujours connu, écrire un algorithme
qui permet de calculer et afficher le nombre de produits approvisionnés à une date qui sera lue au
clavier ;

5) Ecrire un algorithme qui permet de trier le tableau des produits suivant la désignation.

Algorithme24 : On souhaite enregistrer les informations sur toutes les chaises dans un IPES de la
ville de Yaoundé. Une chaise est donnée par son numéro, son emplacement, son type et la hauteur de la
chaise. On suppose que cet institut ne peut avoir plus de 500 chaises. TAF :

1) Définir la structure de données qui permet d’enregistrer les informations sur les chaises dans cet
IPES ;

2) Ecrire un algorithme qui permet d’enregistrer les 500 chaises du tableau ;

NB : pour la suite, on considère que le tableau de chaises comprend Nbre chaises.

3) Ecrire un algorithme qui permet d’enregistrer une chaise supplémentaire (on notera par Nbre, le
nombre de chaise déjà présent dans le vecteur) ;

4) Ecrire un algorithme qui affiche l’emplacement et le nombre de chaises ayant une hauteur supérieure
à 20Cm ;

5) Ecrire un algorithme qui affiche la hauteur de la plus grande chaise présente dans le tableau ;

6) En supposant que la hauteur de la plus grande chaise est connue, Ecrire un algorithme qui affiche
l’emplacement et le numéro de la chaise correspondante à cette hauteur ;

7) Ecrire un algorithme qui calcule le nombre de chaise dont la hauteur est comprise entre 10Cm et
25Cm ;

8) Ecrire un algorithme qui affiche et compte le nombre de chaise donc le type est du type Rembourré.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 76
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Algorithme25 : On désire automatiser la gestion d’une bibliothèque et pour cela, un ouvrage est
donné par son numéro, son titre, son auteur et l’année d’édition. On suppose qu’il ne peut y avoir plus de
2000 livres dans cette bibliothèque. TAF :

1) Définir la structure de données permettant d’accueillir les informations sur l’ensemble des
ouvrages ;

2) Ecrire un algorithme qui étant donné le nombre d’ouvrage déjà enregistré, enregistre un nouvel
ouvrage ;

3) Ecrire un algorithme qui calcule et affiche le nombre d’ouvrage écris par un auteur donné ;

4) Ecrire un algorithme qui tri le tableau des ouvrages suivant le titre.

Algorithme26 : On veut écrire les algorithmes pour la gestion des salaires de base dans une
entreprise de la place (1500 Employés). Pour chaque employé, les informations à manipuler seront : son
matricule, son nom, sa fonction, sa date d’embauche, le nombre d’enfant et son salaire de base. TAF :

1) Définir un type abstrait de données permettant de représenter les employés dans cette entreprise ;

2) Ecrire un algorithme qui permet de lire dans un tableau les informations sur l’ensemble des
employés ;

3) Ecrire un algorithme qui lie le matricule d’un employé et retourne la position occupée par cet
employé dans le tableau ;

4) Ecrire un algorithme qui retourne le matricule et le nom de l’employé ayant le plus grand nombre
d’enfant ;

5) Ecrire un algorithme qui calcule et affiche la masse salariale de base de l’entreprise ;

6) Ecrire un algorithme qui tri le tableau des employés suivant le nombre d’enfant.

Algorithme27 : Considérons le problème suivant. On dédire automatiser la gestion d’une


bibliothèque et pour cela, un ouvrage est donné par son numéro, son titre, son auteur et l’année d’édition.
On suppose qu’on ne peut pas avoir plus de 500 ouvrages dans cette bibliothèque. TAF :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 77
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1) Définir la structure de donnée permettant d’accueillir les informations sur l’ensemble des ouvrages
(7pts) ;

2) Ecrire une procédure qui prends en entrée le tableau des ouvrages et le nombre des ouvrages déjà
enregistré dans le tableau, enregistre un nouvel ouvrage (6pts) ;

3) Ecrire une fonction qui calcule le nombre d’ouvrages écris par un auteur donné (6pts) ;

4) Ecrire une procédure qui trie le tableau des ouvrages suivant le titre (6pts).

Algorithme28 : Considérons le problème suivant : (Ancien BTS National). On désire écrire un


programme pour la gestion des électeurs dans une circonscription électorale. Un électeur est caractérisé par
sa CNI, son nom, sa date de naissance, sa profession et son numéro du bureau de vote. TAF :

1) Définir la structure de données permettant de représenter les électeurs (tableau de taille 10000)
(7pts) ;

2) Ecrire une procédure pour inscrire autant d’électeurs que souhaite l’utilisateur (6pts) ;

3) Ecrire une procédure qui trie les électeurs par ordre alphabétique (6pts) ;

4) Ecrire une fonction qui calcule le nombre d’électeurs dans un bureau de vote donné (6pts).

Algorithme29 : Considérons le problème. La Bibliothèque de l’Institut Supérieur SIANTOU


contient des Livres Et Chaque Livre est identifier par : sa Référence Ref_Livre (0 à 9999), son Titre
Lib_Livre (32 Caractères Maximum), son Editeur Edit_Livre (20 Caractères Maximum), son Année de
Publication AnnPub_Livre (Entier), le Volume Vol_Livre (Entier). L’ensemble des livres est stocké dans
un Tableau TabLivre de taille 1000. TAF :

1) Définir des types de données abstraites appropriées pour l’enregistrement de ces Livres (5pts) ;

2) Ecrire une procédure Recherche () qui recherche le Livre de référence Ref dans le tableau des Livres
et qui affiche toutes les informations concernant ce Livre (5pts) ;

3) Ecrire une procédure Insert () qui insert les informations d’un nouveau Livre dans le tableau des
Livres. On notera par N, le nombre de livre déjà dans le tableau (5pts) ;

4) Ecrire une procédure Affichage () qui affiche la liste des Livres publiés en 2020 (5pts) ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 78
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

5) Ecrire une procédure Tri () qui tri le tableau sur le critère Référence (5pts) ;

Algorithme30 : On désire automatiser l’affectation hebdomadaire des salles du collège. Une salle
est caractérisée par un code, un libellé, un type et une capacité. Un cours est caractérisé par un code, un
libellé, le nom de l’enseignant qui donne le cours et la période à laquelle se déroule le cours. La période est
un enregistrement constitué du Jour et de l’heure. Les cours et les salles sont stockés dans des vecteurs de
taille respective 50 et 30.

1) Effectuer les déclarations pour la gestion des affectations hebdomadaires des salles dans ce collège
(7pts) ;

2) Ecrire une procédure qui permet d’enregistrer l’ensemble des cours dans le vecteur (6pts) ;

3) Ecrire une procédure qui permet d’afficher tous les cours ayant lieu le « Lundi » (6pts) ;

4) Ecrire une fonction qui retourne la salle qui a la plus grande capacité (6pts).

Algorithme31 : On désire écrire un programme pour gérer la location des véhicules. Une location
est caractérisée par le numéro de la location, les noms, prénoms et téléphone du client, l’immatriculation,
la marque et le type du véhicule, la date de location et la durée de la location. La date de location est un
enregistrement constitué du Jour, du Mois, et de l’Année qui sont tous des entiers. Les locations sont
rangées dans une vecteur pouvant contenir au plus 100 locations. Travail A Faire :

1) Définir une structure de données pour représenter une location (10pts) ;

2) Ecrire une procédure pour créer et enregistrer une location dans le vecteur. La procédure prend en
paramètre TabLoc le vecteur des locations et NBLoc le nombre de locations déjà créées (8pts) ;

3) Ecrire une procédure qui affiche la liste des locations par ordre alphabétique des noms des clients
(7pts) ;

Algorithme32 : On souhaite gérer les contrats dans une entreprise. Chaque contrat on retient le
numéro, la date, le code du client, le nombre d’intervention dans un contrat. Le client est caractérisé par
son code et son nom et le CA (chiffre d’affaire) réalisé. Les listes des clients et des contrats sont stockées
dans des tableaux de tailles respectives 2000 et 5000 et Chaque Intervention Coute 25 000 FCFA. TAF :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 79
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1) Déclarez les structures de données permettant de représenter les clients et les contrats. (5 pts) ;

2) Écrire un sous - programme qui prend en entrée les informations sur un client et l’ajoute au tableau
des clients. Le nombre entier N désigne le nombre de clients déjà enregistré. (4 pts) ;

3) Écrire un sous - programme qui renvoie le code du client qui a réalisé le plus gros Chiffre d’Affaire.
(4 pts) ;

4) Écrire un sous - programme qui calcule le montant cout HT d’un contrat donné. (4 pts) ;

5) Écrire un sous - programme qui renvoie le nombre de contrats dont le cout est supérieur à 2 500
000. (4 pts) ;

6) Écrire un sous - programme qui donne la liste des contrats juteux. On supposera qu’un contrat est
juteux si au moins le nombre des interventions est supérieur à 10. (4 pts).

Algorithme33 : On désire automatiser la gestion de stock des consommables d’une entreprise


ATCHANG. Un produit est caractérisé par la référence du produit, la désignation, la quantité en stock, la
quantité seuil, la date du dernier approvisionnement et le matricule du fournisseur. Une commande est
caractérisée par le numéro de la commande, la quantité commandée et la date de la commande (on admet
ici que dans une commande ne figure qu’un et un seul produit). Un fournisseur est caractérisé par son
matricule, son nom et son numéro de téléphone. Les produits, les commandes et les fournisseurs sont
enregistrés respectivement dans des vecteurs de taille 1000, 2500 et 200 éléments. TAF :

1) Définir toutes les structures de données devant servir à la résolution de ce problème. (5 pts) ;

2) Écrire une procédure permettant d’enregistrer un produit. La procédure prend en paramètre le


nombre de produit déjà enregistré (on suppose qu’il est strictement inférieur à la capacité maximale
du vecteur) et le vecteur de produits. (3 pts) ;

3) Écrire une procédure qui appelle celle écrite en 2. Et qui enregistre 1000 produits. (3 pts) ;

4) Écrire une fonction qui étant donné le vecteur des commandes calcule et retourne la fréquence de
commande d’un produit dont la référence est donnée en paramètre. (4 pts) ;

5) Écrire une fonction permet de savoir si un produit est en quantité suffisante en stock. La fonction
prend en paramètre le vecteur de produit et la référence du produit. (3 pts) ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 80
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

6) Écrire une procédure qui affiche la liste des produits livrés à une date précise. (Après avoir identifié
les différents paramètres de la procédure, le candidat écrira la procédure). (4 pts) ;

7) Écrire une procédure donnera la liste triée des fournisseurs ayant fournis un produit. La procédure
prendra en entrée le vecteur des produits et le vecteur des fournisseurs. (3 pts).

Algorithme34 : On souhaite automatiser la gestion de la maintenance de matériels électroménagers


de haut de gamme de l’établissement R.E.M. (Réparation Electroménager). Pour cela, un client est
caractérisé par son numéro, son nom, son adresse et son numéro de téléphone. Un matériel est donné quant
à lui par son numéro de série, son type, sa marque, son modèle et le numéro du client auquel il appartient.
Une panne est caractérisée par le numéro de la panne, les symptômes y afférant, la date où le diagnostic a
été effectué et le numéro de série du matériel concerné par la panne. Les clients, les matériels et les pannes
sont stockés dans des tableaux à une dimension de tailles respectives 5000, 20000, et 50000. TAF :

1) Définir les structures de données nécessaires pour la résolution de ce problème. (5pts) ;

2) Écrire une procédure pour l’enregistrement d’un nouveau client tout en évitant les doublons sachant
qu’il y a un certain nombre de clients présents dans le tableau. (6pts) ;

3) Écrire une fonction qui étant donné le numéro d’un matériel retourne le nombre de fois que ce
matériel a été enregistré dans la structure. (5pts) ;

4) Écrire une procédure qui étant donné le numéro d’un client, affiche les informations sur les matériels
apportés par ce dernier. (4pts) ;

5) Écrire une procédure qui trie le tableau des clients suivant le champ nom. (5pts).

Algorithme35 : On désire écrire un programme pour la gestion des locations de véhicules. Un


Véhicule appartient à une Agence et est caractérisée par son Numéro de Châssis, sa Marque, son Modèle
et son Type. Une Agence possède un Code et est située dans une Ville. Un Client a un Numéro, un Nom,
un Prénom, une Date de Naissance et une Profession. Les Clients signent des Contrats de Location et chaque
Contrat a une durée et est signé à une Date précise. Le Prix de la Location d’un Véhicule est fixé de façon
journalière. On suppose que les informations sur les Contrats, les Véhicules, les Agences et les Clients sont
rangés dans des vecteurs de taille respectives 5000, 100, 10, 500. Travail A Faire :

1) Définir les Structures de données permettant de résoudre le problème posé (5pts) ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 81
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

2) Ecrire un Sous - Programme qui prend en entrée le nombre de contrats déjà enregistrés, le vecteur
des contrats puis enregistre un nouvel contrat. Les informations sur le contrat seront lues au clavier
et le nombre de contrat enregistré sera mis à jour (5pts) ;

3) A un moment donné, le caissier a devant lui 20 clients désirant chacun signé un contrat. Ecrire un
Sous - Programme qui prend en entrée le nombre de contrats déjà enregistrés, le vecteur des contrats
et qui appelle le Sous - Programme précédent pour enregistrer les contrats des 20 clients placés
devant le caissier (5pts) ;

4) Ecrire un Sous - Programme qui enregistre dans le vecteur des Véhicules autant de véhicule que
veut l’utilisateur sachant qu’on doit éviter les doublons. Les informations sur les véhicules seront
clues au clavier. L’utilisateur sera appelé à répondre à la question « Continuer ? O / N » (5pts) ;

5) Ecrire un Sous - Programme qui trie le vecteur des clients par ordre alphabétique (5pts).

6. Fiche TD - Cours 2 – Base de Données Et Langage SQL

BaseDeDonnées1 : Soit la base de données d’un festival de musique.

 Representation (NumRep, TitreRep, LieuRep) ;

 Musicien (NumMus, NomMus) ;

 Programmer (#NumMus, #NumRep, Date, Tarif). TAF : Requêtes SQL :

1) La liste des titres des représentations ;

2) La liste des titres des représentations ayant lieu au « théâtre allissa » ;

3) La liste des noms des musiciens et des titres et les titres des représentations auxquelles ils
participent ;

4) La liste des titres des représentations, les lieux et les tarifs du 25/07/2008 ;

5) Le nombre des musiciens qui participent à la représentation n°20 ;

6) Les représentations et leurs dates dont le tarif ne dépasse pas 20000.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 82
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

BaseDeDonnées2 : Soit la base de données suivante :

Départements :( DNO, DNOM, DIR, VILLE)

Employés : (ENO, ENOM, PROF, DATEEMB, SAL, COMM, #DNO). TAF : Requêtes SQL :

1) Donnez la liste des employés ayant une commission ;

2) Donnez les noms, emplois et salaires des employés par emploi croissant, et pour chaque emploi, par
salaire décroissant ;

3) Donnez le salaire moyen des employés ;

4) Donnez le salaire moyen du département Production ;

5) Donnes les numéros de département et leur salaire maximum ;

6) Donnez les différentes professions et leur salaire moyen.

BaseDeDonnées3 : Soit le modèle relationnel suivant relatif à la gestion des notes annuelles
d’une promotion d’étudiants :

ETUDIANT (NEtudiant, Nom, Prénom)

MATIERE (CodeMat, LibelléMat, CoeffMat)

EVALUER (#NEtudiant, #CodeMat, Date, Note). TAF : Exprimez en SQL les requêtes suivantes :

1) Quel est le nombre total d’étudiants ?

2) Quelles sont, parmi l’ensemble des notes, la note la plus haute et la note la plus basse ?

3) Quelles sont les moyennes de chaque étudiant dans chacune des matières ?

4) Quels sont les étudiants qui ont une moyenne générale supérieure ou égale à la moyenne générale
de la promotion?

BaseDeDonnées4 : Soit la base de données « Suivi_Enseignement » qui referme trois tables :


Etudiant, Enseignant Et Enseignement.

 Enseignant (CodeEns, NomEns, PrenomEns, AdresseEns, TelEns, SpecialiteEns) ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 83
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Etudiant (MatriculeEtd, NomEtd, PrenomEtd, DateNaissEtd, SexeEtd, AdresseEtd, VilleEtd) ;

 Enseignement (#CodeEns, #MatriculeEtd). Travail A Faire :

1) Déduire le Schéma Conceptuel ;

2) Créer Les 3 Tables ;

3) Ecrire Les Requêtes SQL Suivantes :

a) Afficher La Liste des Etudiants dont le nom contient la lettre ‘a’ ;

b) Afficher la liste des étudiants de sexe féminin ;

BaseDeDonnées5 : Soient les relations suivantes :

PILOTE (NUMPIL, NOMPIL, ADR, SAL)

AVION (NUMAV, NOMAV, CAPACITE, LOCALISATION)

VOL (NUMVOL, NUMPIL*, NUMAV*, VILLE_DEP, VILLE_ARR, H_DEP, H_ARR). Travail A


Faire : Exprimer En SQL Les Requêtes Suivantes :

1) Ordre de Création des Tables ;

2) Donnez la liste des avions dont la capacité est supérieure à 350 passagers ;

3) Quels sont les numéros et noms des avions localisés à Bamenda ?;

4) Quel est le nom des pilotes domiciliés à Yaoundé dont le salaire est supérieur à 150 000 FCFA ?;

5) Quels sont les avions (numéro et nom) localisés à Kribi où la capacité est inférieure à 350 passagers
?;

6) Quels sont les numéros des pilotes qui ne sont pas en service ?;

7) Donnez le numéro des vols effectués au départ de Douala par des pilotes Kribiens ?;

8) Quels sont les vols effectués par un avion qui n’est pas localisé à Kumba ?;

9) Quels sont les noms des pilotes domiciliés à N’Gaoundéré assurant un vol au départ de Garoua avec
un Airbus ?;

10) Quels sont les pilotes (numéro et nom) habitant dans la même ville que le pilote TABIS ?

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 84
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

BaseDeDonnées6 : Soit le schéma relationnel suivant :

Articles (num_art, libellé, stock, prixinventaire)

Fournisseurs (num_frs, nomfrs, adrfrs, villefrs)

Acheter (num_frs*, num_art*,prixachat,délai). Travail A Faire : Exprimez les requêtes suivantes en


SQL :

1) Ordre de Création des Tables du schéma ;

2) Donnez le numéro et le libellé des articles dont le stock est inférieur à 10 ?;

3) Donnez le nom et l’adresse des fournisseurs qui proposent des articles pour lesquels le délai
d’approvisionnement est supérieur à 20 jours ?;

4) Donnez le nombre d’articles total ?;

5) Donnez le numéro et le libellé des articles triés dans l’ordre décroissant des stocks ?;

6) Donnez, pour chaque article (numéro et libellé), les prix d’achat maximum, minimum et moyen ;

7) Donnez le délai moyen pour chaque fournisseur proposant au moins deux articles ?

BaseDeDonnées7 : Définir le sigle SQL. A quoi sert le SQL ? Citez Quatre de ses Utilités ?
Considérons le schéma relationnel suivant :

CLIENTS (NumCli, Nom, Prénom, Adresse, Ville, Téléphone)

ACHATS (#NumCli, #NumArt, Date, Quantité)

ARTICLES (NumArt, Désignation, Catégorie, Prix). TAF :

1) Créer en SQL la base de données VENTE et l’ensemble des tables de la base ;

2) Quels sont les rôles des commandes GRANT et REVOLKE en SQL ;

3) Donnez la commande SQL qui affiche les noms, prénoms et ville des clients de la base de données
VENTE.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 85
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

BaseDeDonnées8 : Soit le schéma relationnel de la base de données Livraison par des fournisseurs
de produits à l’usine YVAN’S INDUSTRY.

USINE (NumUs, NomUs, VilleUs)

PRODUIT (NumP, NomP, CouleurP, PoidsP)

FOURNISSEUR (NumF, NomF, StatutF, VilleF)

LIVRAISON (#NumP, #NumUs, #NumF, Quantité). TAF : Exprimer en langage SQL les requêtes
suivantes :

1) Ajouter un nouveau fournisseur avec les valeurs d’attribut de votre choix ;

2) Supprimer tous les produits de couleur noire et de numéros compris entre 100 et 1999 ;

3) Changer la ville du fournisseur numéro 3 en ‘DOUALA’ ;

4) Donnez le numéro, le nom, la ville de toutes les usines dont la ville comporte le mot « ba » ;

5) Donnez les numéros des fournisseurs qui approvisionnent l’usine de numéro 2 en produit de numéro
100 ;

6) Donnez les noms et les couleurs des produits livrés par le fournisseur de numéro 2.

BaseDeDonnées9 : Soient les relations suivantes de la base de données de l’entreprise


LUCRESSE_SOFT :

EMPLOYE (NumE, Fonction, Date_Embauche, Salaire_Base, Commission, #NumD) ;

DEPARTEMENT (NumD, NomD, LieuD). Sachant que :

 NumD, Salaire_Base, Commission : Entier de 20 Chiffres ;

 NomD, LieuD, NomE, Fonction : Chaine de 30 Caractères au maximum ;

 Date_Embauche : Date. TAF : exprimer en langage SQL les requêtes suivantes :

1) Ecrire les requêtes de création des tables tout en respectant le type et la longueur des différents
attributs ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 86
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

2) Donnez la liste (nom et commission) des employés ayant une commission non NULL. La liste sera
classée par commission décroissante ;

3) Donnez les noms, date d’embauche et numéro de département des personnes embauchées depuis le
1er Janvier 2019 ;

4) Donnez la moyenne des salaires de base ;

5) Donnez le nombre de commission non vides ;

6) Donnez la liste (nom, fonction et salaire de base) des employés gagnant plus que la moyenne des
salaires de base de l’entreprise.

BaseDeDonnées10 : Un centre de formation en informatique propose des formations de différents


niveaux. Chaque formation est organisée en plusieurs sessions afin de répondre à la forte demande dans le
secteur. Le schéma conceptuel du système est le suivant :

Organiser Session
1,1
1,1 NumSession <pi> Entier
DateDebutSession Date Animer
...

1,n

1,n
Formation
NumFormation <pi> Entier
Professeur
IntituléFormation Caractère variable (50)
NiveauFormation Entier NumProfesseur <pi> Entier
DuréeFormation Entier NomProfesseur Caractère variable (50)
PrénomProfesseur Caractère variable (50)
...
1,n

Stagiaire

Concerner NumStagiaire <pi> Entier


NomStagiaire Caractère variable (50)
Nbre_Inscrits Entier 1,n
PrénomStagiaire Caractère variable (50)
VilleStagiaire Caractère variable (50)
...

TAF :

1) Déduire le Schéma Relationnel correspondant ;

2) Elaborez les requêtes suivant en langage SQL :

a) Créer les tables du système ;

b) Quels sont les stagiaires (numéro, nom, prénom) ayant suivi la session 1537 ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 87
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

c) Quels sont les noms des formateurs triés par ordre croissant ayant animé les sessions
relatives à la formation « Initiation A SQL » ;

d) Quel est le nombre des sessions animées en 2019 par chaque professeur trié par ordre
décroissant sur le nom du professeur (Nom, Nombre de Sessions) ;

e) Quelle est la durée moyenne des formations dont les sessions ont débutées en 2015 ;

f) Quelles sont les formations (numéro, intitulé) relatives au système d’exploitation Windows
(intitulés des formations dans lesquels le mot Windows est présent) ;

g) Quelles sont les formations (numéro, intitulé) qui n’ont pas donné lieu à des sessions depuis
1er Janvier 2018.

BaseDeDonnées11 : Soit la base de données composée des tables suivantes :

FACTURE (NumFact, DateFact, #NumCli)

LIGNE_FACTURE (#NumFact, #NumArt, Quantié)

ARTICLE (NumArt ; Libellé, Unité, Prix)

CLIENT (NumCli, Nom, Ville, Pays). TAF : Ecrire les requêtes suivantes en langage SQL :

1) Afficher le nombre total de factures ;

2) Afficher la liste des clients de douala ;

3) Calculer les quantités facturées par article ;

4) Calculer le chiffre d’affaire du mois de Janvier 2019 ;

5) Etablir le cumul des factures par client ;

6) Etablir la liste des factures de plus de 200 000 FCFA ;

BaseDeDonnées12 : Soit une base de donnée touristique telle que :

STATION (Numstat, Nomstat, Altitude, Région)

HOTEL (Numhot, Nomhot, Numstat, Catégorie)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 88
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

CHAMBRE (#Numhot, Numch, Nblits)

RESERVATION (#Numcli, #Numhot, #Numch, datedeb, Datefin, NbPers)

CLIENT (Numcli, Nomcli, Adrcli, Telcli). Travail A Faire :

1) Donner un schéma conceptuel correspondant au schéma relationnel ci-dessus ;

2) Répondre aux requêtes suivantes en SQL :

a) Donner les noms des clients et le nombre de personnes correspondant pour les réservations
à l’hôtel DJEUGA ;

b) Pour chaque station du Haut Nyon, donner le nombre de lits en catégorie trois étoiles ;

3) Pour chaque station de la haute Sanaga, donner le nombre de chambre réservé pour le 11/02/2008.

BaseDeDonnées13 : Considérons le schéma relationnel suivant :

PERSONNEL (NoPers, NomP, Poste, DateEmbauche, Salaire, NoUnité#)

UNITE_FONCT (NoUnité, NomU, Emplacement). Proposer des requêtes SQL pour répondre à
chacun des problèmes suivants :

1) En supposant que la table « UNITE_FONCT » existe, créer la table « PERSONNEL » ;

2) Enregistrer les informations suivantes dans la table « PERSONNEL » : « ‘P502’, ’KAMGA’,


’INFIRMIERE’, ’01/06/2000’, 150000, ‘UF001’ » ;

3) Augmenter de 10% le salaire des infirmières ;

4) Sans toutefois recréer la table « PERSONNEL », supprimer la contrainte d’intégrité référentielle


imposée à cette table ;

5) Afficher les numéros et noms des infirmières ayant effectué au moins un prélèvement sur le malade
« ESSOMBA » en 2002 ;

6) Afficher les numéros et noms du personnel ayant même poste que le personnel « MESSI » de l’unité
fonctionnelle « MATERNITE » ;

7) Lister le personnel dont les noms ne contiennent pas la chaîne « aim ». En ordonnant le résultat par
nom croissant ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 89
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

BaseDeDonnées14 : Considérons le schéma relationnel suivant :

EMPLOYE (NoEmp, Nom, Poste, DateEmbauche, Salaire)

MATERIEL (NoSérie, Marque, Type, DateAchat, PrixAchat,……..). Proposer des requêtes SQL pour
répondre à chacun des problèmes suivants :

1) Créer la table « EMPLOYE » ;

2) Enregistrer les informations suivantes dans la table « EMPLOYE » : « ‘E502’, ’ESSOMBA’,


‘INFORMATICIEN’, ‘20/06/2006’, 250000 » ;

3) Augmenter de 10% le salaire des informaticiens ;

4) Afficher les numéros et noms des employés ayant effectué au moins un prêt le 20/05/2003 ;

5) Afficher les numéros de série, marques et types de matériels affectés dans la même salle que le
matériel « 8965789D » ;

6) Lister les informaticiens dont les noms ne contiennent pas la chaîne « aim ». En ordonnant le résultat
par nom décroissant et salaire croissant ;

7) Afficher le nombre d’ordinateurs par salle ;

8) Afficher les numéros de série, marques et types de matériels de la salle le « Nyon » ayant fait l’objet
d’au moins un prêt en 1998 ;

9) Créer une vue donnant accès aux informations sur les salaires annuels des informaticiens, ensuite
donner les droits de mise à jour à l’utilisateur « MESSI » sur cette vue avec possibilité de transmettre
ce droit

BaseDeDonnées15 : Définition des données- Base de données NOTES. Objectif: Écrire les
instructions SQL de définition des données. Soit le modèle relationnel suivant relatif à la gestion des notes
annuelles d'une promotion d'étudiants :

MATIERE (CodeMatière, LibelléMatière, CoefMatière) ;

ETUDIANT (MatriculeEtud, NomEtud, PrenomEtud, DateNaissEtud, FilièreEtud, AgeEtud) ;

EVALUER (#MatriculeEtud, #CodeMatière, DateEvaluation, NoteEvaluation). Travail A Faire :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 90
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

1) Créer la base de données avec les clés primaire et étrangère.

2) Ajouter la colonne date de naissance dans Etudiant : DateN.

3) Ajouter la colonne Filière : Filière not null.

4) Ajouter une colonne Age calculé automatiquement à partir de DateN.

5) Ajouter une contrainte, valeur entre 0 et 20 pour la note.

BaseDeDonnées16 : Les requêtes SELECT - Base de données IMMOBILIER. Objectif : Écrire des
requêtes SELECT comportant la projection, le tri, le regroupement et les jointures.

REPRESENTANT (CodeRep, NomRep, PrenomRep) ;

CLIENT (CodeClt, NomClit, PrenomClt, AdresseClt, CodePostalClt, VilleClt) ;

APPARTEMENT (RefApp, SuperficieApp, PrixVenteApp, SecteurApp, #CodeRep, #CodeClt). Travail


A Faire : Écrire les requêtes SQL permettant d'afficher :

1) Créer l’ensemble des table de la base de données ;

2) la liste des clients classés par ordre alphabétique ;

3) la moyenne par secteur des prix des appartements ;

4) le nombre d’appartements par secteur pour les secteurs qui dépassent 10 appartements.

5) le nombre d’appartements dont la superficie est supérieur à 80 m² par secteur

6) le prix max des appartements par secteur mais seulement qui dépassent 10 appartements.

7) la liste des clients et les appartements qu’ils ont loués.

8) la liste des appartements situés à SANGMELIMA et gérés par TAMO

9) le nombre de clients venant de YAOUNDE par secteur.

BaseDeDonnées17 : Les requêtes SELECT - Base de données LOCATION. Objectif : Écrire des
requêtes SELECT comportant la projection, le tri, le regroupement et les jointures. Soit le schéma
relationnel suivant :

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 91
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

CLIENT (CodeClt, NomClt, VilleClt, ProfessionClt) ;

HABITATION (CodeHabitation, TypeHabitation, AdresseHabitation, VilleHabitation,


LoyerHabitation) ;

LOCATION (idLocation, DateLocation, #CodeHabitation, #CodeClt, NbreMoisLocation). Travail A


Faire : Écrire les requêtes SQL permettant de :

1) Créer l’ensemble des table de la base de données ;

2) Trouver les habitations de type T1 à YAOUNDE et de type T2 à DOUALA.

3) Déterminer le prix minimum, maximum et moyen des habitations de chaque type.

4) La même que la requête précédente, mais donner les prix pour type et ville et seulement pour les
villes de YAOUNDE et DOUALA.

5) Pour chaque habitation, afficher son code, son type, la ville où elle se trouve, les noms des locataires
et leur profession.

6) La même que la requête précédente mais afficher aussi les habitations qui n’ont jamais été loué.

7) Trouver les clients qui ont loué une habitation dans la même ville où ils ont leur résidence principale
(VilleResid).

8) Pour chaque type, compter combien des habitations de ce type a été pris en location. Montrer
seulement les types dont au moins 3 habitations (pas forcement différentes) ont été prises en
location.

9) Pour chaque habitation compter combien de mois en totale a été loué.

10) Pour chaque client calculer combien a dépensé en location en totale.

11) Trouver les clients qui n’ont jamais loué une habitation.

12) Trouver les clients qui ont loué à la fois des habitations de type T1 et de type T2.

BaseDeDonnées18 : Soit la base de données suivante :

Départements:(DNO, DNOM, DIR, VILLE) ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 92
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

Employés: (ENO, ENOM, PROF, DATEEMB, SAL, COMM, DNO#). TAF : Exprimez en SQL les
requêtes suivantes :

1) Donnez la liste des employés ayant une commission ;

2) Donnez les noms, emplois et salaires des employés par emploi croissant, et pour chaque emploi, par
salaire décroissant ;

3) Donnez le salaire moyen des employés ;

4) Donnez le salaire moyen du département Production ;

5) Donnez les numéros de département et leur salaire maximum ;

6) Donnez les différentes professions et leur salaire moyen Donnez le salaire moyen par profession le
plus bas ;

7) Donnez le ou les emplois ayant le salaire moyen le plus bas, ainsi que ce salaire moyen ;

8) Afficher le nom des employés qui travaillent dans une ville autre que Yaoundé;

9) Afficher le nom des employés qui ne travaillent pas dans une ville de Yaoundé;

10) Afficher le nom des employés qui travaillent dans la même ville que l’employé NANA;

11) Afficher le numéro des départements qui n'ont jamais embauché d’employés;

12) Donnez la liste des employés ayant une commission (non NULL) classé par commission
décroissante ;

13) Donnez les noms des personnes embauchées depuis le 01-09-2010 ;

14) Donnez la liste des employés travaillant à Créteil ;

15) Donnez la liste des subordonnés de "Guimezanes" ;

16) Donnez la moyenne des salaires ;

17) Donnez le nombre de commissions non NULL ;

18) Donnez la liste des employés gagnant plus que la moyenne des salaires de l’entreprise

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 93
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

BaseDeDonnées19 : Soit le modèle relationnel suivant relatif à la gestion des notes annuelles
promotion d'étudiants :

ETUDIANT (N°Etudiant, Nom, Prénom) ;

MATIERE (CodeMat, LibelléMat, CoeffMat) ;

EVALUER (#N°Etudiant, #CodeMat, Date, Note). Remarque : les clés primaires sont soulignées et les clés
étrangères sont marquées par Exprimez en SQL les requêtes suivantes :

1) Quel est le nombre total d'étudiants ?;

2) Quelles sont, parmi l'ensemble des notes, la note la plus haute et la note la plus basse ?;

3) Quelles sont les moyennes de chaque étudiant dans chacune des matières ?;

4) Quelles sont les moyennes par matière ?;

5) Quelle est la moyenne générale de chaque étudiant ?;

6) Quelle est la moyenne générale de la promotion ?;

7) Quels sont les étudiants qui ont une moyenne générale supérieure ou égale à la moyenne générale
de la promotion ?

BaseDeDonnées20 : Soit le modèle relationnel relatif à la Base de données ETUDIANTS. Ci -


dessus, écrire les requêtes SQL permettant de répondre aux questions suivantes :

 ETUDIANT (NumEtud, NomEtud, DteNaiss, #CdSexe) ;

 SEXE (CdSexe, Lbsexe) ;

 ENSEIGNANT (NumEnsg, NomEnsg, Grade, Ancien) ;

 MATIERE (NumMat, NomMat, Coeff, #NumEnsg) ;

 NOTES (#NumEtud, #NumMat, Note). TAF : Exprimez en SQL les requêtes suivantes :

1) Afficher quel était l'âge moyen des garçons et des filles au premier janvier 2000.

2) Afficher le nom et le grade des enseignants d'histoire.

3) Afficher les noms et numéro des étudiants qui n'ont pas de notes en Sociologie.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 94
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

4) Afficher le nom et le coefficient des matières qui sont enseignées par des maîtres de conférences ou
des assistants.

5) Afficher pour chaque étudiant (nom et numéro), et par ordre alphabétique, la moyenne qu'il a
obtenue dans chaque matière.

6) Afficher le nom, l'âge et le sexe des étudiants qui ont eu une note d'informatique supérieure à la
moyenne générale de la classe.

7) Afficher, pour chaque étudiant (nom et numéro) qui a une note dans chacune des matières, la
moyenne obtenue au diplôme.

8) Afficher le nom le grade et l'ancienneté des enseignants qui enseignent dans plus d'une matière.

9) Afficher le nombre de garçons et le nombre de filles qui ont réussi au diplôme : moyenne >= 10 ;

10) Afficher les notes de l'étudiant numéro 1 qui sont égales aux notes de l'étudiant numéro 2 ;

11) Afficher les notes de l'étudiant numéro 1 qui sont supérieures aux notes de l'étudiant numéro 2 ;

12) Afficher les notes de l'étudiant numéro 1 qui sont inférieures à toutes les notes de l'étudiant numéro
9;

13) Afficher toutes les informations sur les étudiants qui n'ont aucune note.

BaseDeDonnées21 : Soit le schéma de base de données relationnel suivant :

 AGENCE (Num_Agence, Nom, Ville, Actif) ;

 CLIENT (Num_Client, Nom, Ville) ;

 COMPTE (Num_Compte, #Num_Agence, #Num_Client, Solde) ;

 EMPRUNT (#Num_Emprunt, #Num_Agence, #Num_Client, Montant). Ecrire les requêtes


suivantes en SQL :

1) Liste des agences ayant des comptes-clients

2) Clients ayant un compte à “DOUALA”

3) Clients ayant un compte ou un emprunt à “ DOUALA ” ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 95
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

4) Clients ayant un compte et un emprunt à “ DOUALA ” ;

5) Clients ayant un compte et pas d’emprunt à “ DOUALA ” ;

6) Clients ayant un compte et nom de la ville où ils habitent ;

7) Clients ayant un compte à “Paris-Etoile” et nom de la ville où ils habitent ;

8) Clients ayant un compte dans une agence où “Ahmed” a un compte ;

9) Agences ayant un actif plus élevé que toute agence de “ DOUALA ” ;

10) Clients ayant un compte dans chaque agence de “ DOUALA ” ;

11) Clients ayant un compte dans au-moins une agence de “ DOUALA ” ;

12) Emprunteurs de l'agence “ DOUALA ” classés par ordre alphabétique ;

13) Solde moyen des comptes-clients de chaque agence ;

14) Solde moyen des comptes-clients des agences dont le solde moyen est > “10 000” ;

15) Nombre de clients habitant “ DOUALA ” ;

16) Nombre de clients de l'agence “ DOUALA ” n'ayant pas leur adresse dans la relation CLIENT ;

17) Insérer le n-uplet dans la relation CLIENT ;

18) Diminuer l'emprunt de tous les clients habitant “ DOUALA ” de “5%” ;

19) Fermer les comptes de “Ahmed” ;

20) Supprimer de la relation AGENCE toutes les agences sans client ;

7. Fiche TD - Cours 3 – Analyse Informatique, La Méthode MERISE

Pour Chaque Enoncé, Lister 3 Règles de Gestion, Faire Le MCD, Le MLD, Le DDD, Le GDF.

AnalyseMERISE1 : Gestion Chaine Hôtelière. Un groupe hôtelier vous demande de réaliser une
application de gestion hôtelière. Cette application doit permettre la gestion de 8 hôtels, chaque hôtel possède
100 chambres maximum. Ces hôtels sont répartis en 5 classes (). Pour chaque hôtel il y a au maximum 9
catégories de chambres différentes (capacité, degré de confort). Cette application doit gérer aussi, les clients
ainsi que leurs réservations.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 96
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE2 : Gestion Clients Banque. Une banque désire posséder un SGBD pour suivre
ses clients. Elle désire ainsi stocker les coordonnées de chaque client (nom, prénom adresse), et les comptes
dont elle dispose ainsi que leur solde (sachant par ailleurs que certains comptes ont plusieurs bénéficiaires).
On stockera également les opérations relatives à ces comptes (retrait et dépôt, avec leur date et le montant).

AnalyseMERISE3 : Modélisation d’Une Revue En Ligne. Un Numéro de la revue « Reflets


d’Atelier » est caractérisé par son numéro, sa date, le titre de son Editorial, le contenu de celui – ci, et sa
mise en ligne éventuelle. Un numéro contient 1 ou plusieurs articles, chaque article étant contenu dans un
seul numéro. Un article est caractérisé par son Titre, sa description pour la première page et les mots clés
qui lui sont associés. Un article appartient à une catégorie. Un article propose aucun ou plusieurs liens
hypertextes complémentaires. Un article comporte 1 ou plusieurs pages. Chaque page est relié à un seul
article. Un article est écrit par un ou plusieurs auteurs (numéro, nom, prénom, sexe, nationalité).

AnalyseMERISE4 : Soient un ensemble d’informations dans le cadre de la mise en place d’un


système d’information : Numéro du Serveur, Nom du Serveur, Numéro de la Table, Numéro de la
Consommation, Libellé de la Consommation, Prix unitaire de la Consommation, Quantité d’une
Consommation Commandée, Montant de la Ligne (Egal à la quantité d’une consommation commandée
multipliée par le prix unitaire de la consommation), Date de la Commande, Heure de la Commande, Numéro
de la Commande, Montant total de la commande. Et soient les règles de gestion suivantes : un serveur est
affecté à plusieurs tables, par journées complètes ; Une commande correspond à une table unique.

AnalyseMERISE5 : Médiathèque. On considère une médiathèque contenant des ouvrages


pouvant être empruntés. Un ouvrage est caractérisé par un numéro unique, un titre, un auteur et un éditeur.
En outre, on décrit un ouvrage par un certain nombre de mots-clés qui indiquent les sujets qui y sont traités.
La médiathèque dispose d’un ou plusieurs exemplaires de chaque ouvrage, L’exemplaire est identifié par
un numéro et caractérisé par sa position dans les rayonnages et sa date d’achat. Un exemplaire peut être
emprunté par un emprunteur. Ces derniers sont identifiés par un numéro d’emprunteur et possèdent un nom
et une adresse.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 97
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE6 : On désir concevoir une base de données relatives à la présentation des films
dans les cinémas. Un cinéma est décrit par son nom unique, son adresse et son numéro de téléphone. Un
film peut être présenté dans plusieurs cinémas suivant un programme bien déterminé, indiquant le titre du
film à présenter, sa date de présentation et l’heure du début du film. Un film est caractérisé par son code,
son titre, sa date de réalisation, sa durée de présentation, et son metteur en scène. Chaque film est réalisé
par plusieurs acteurs dont chacun est identifié par un numéro, un nom et un prénom. Chaque acteur peut
avoir des rôles différents dans plusieurs films. On veut mémoriser tous les rôles réalisés par les acteurs ainsi
que le nombre de critique obtenu pour ce rôle.

AnalyseMERISE7 : Un club de chasse désire informatiser les résultats des parties de chasse.
Chaque chasseur du club est identifié par un code d’adhésion, un nom et un prénom et une date de naissance.
Les parties de chasse ne sont pas communes (chacun chasse individuellement).On considère qu’il ne peut
y avoir qu’une seule chasse dans la même journée par un chasseur. Une partie de chasse est caractérisée
par un numéro, une date et un lieu. Pendant la chasse, un chasseur peut chasser plusieurs espèces dont
chaque espèce est caractérisée par un code, un nom, un poids moyen et un niveau de tir (difficultés de
chasse de l’espèce). Enfin chaque niveau de tir est identifié par un code, est caractérisé par un nom et par
un nombre de points (plus le niveau est élevé, plus le nombre de points est important), qui permet d’attribuer
un score à chaque partie de chasse.

AnalyseMERISE8 : La direction des études d’une école de Technicien Supérieur a décidé


d’informatiser la gestion des emplois de temps. Chaque étudiant est caractérisé par son matricule, son nom,
son prénom et son âge. Chaque cours est identifié de façon unique par un sigle=le (DB033, MD021, . . .) et
possède un intitulé (base de données, mathématiques discrètes, . . .) ainsi qu’un enseignant responsable. On
connaît également le nombre de séances de chaque cours. Les enseignants sont caractérisés par un
identifiant alphanumérique, leur nom et leur prénom. Enfin, chaque séance est identifiée par le cours ainsi
que le numéro de la séance (séances 3 du cours BD033, séance 1 du cours de MD021, . . .), le type
d’intervention (CM, TD, TP), la date, l’heure de début et l’heure de fin auxquelles la séance a lieu ainsi que
la salle et l’enseignant qui dispense la séance. Les étudiants s’inscrivent aux cours auxquels ils souhaitent
assister.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 98
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE9 : Dans l’entreprise GCIVIL, les produits (caractérisés par un code et une
désignation et un prix unitaire) peuvent soit être fabriqués par l’entreprise ou provenir de différents
fournisseurs (caractérisés par un numéro et un nom et une adresse).Un même produit peut provenir de
plusieurs fournisseurs à des prix d’achat différents. Un fournisseur peut livrer plusieurs produits ; Le
magasin vend des produits à des clients ; Les produits possèdent une référence (un code), un libellé et un
prix unitaire ; Les clients ont une identité, nom, prénom, adresse ; Les clients passent des commandes de
produits. On mémorise la date de la commande ; Pour chaque commande, le client précise une adresse de
livraison ; La commande concerne un certain nombre de produits, en une quantité spécifiée pour chaque
produit.

AnalyseMERISE10 : Une agence de location de maison et d’appartements désire gérer sa liste de


logements. Elle voudrait en effet connaître l’implantation de chaque logement (nom de la ville et du
quartier) ainsi que les personnes qui les occupent (les signataires uniquement). Le loyer dépend d’un
logement, mais en fonction de son type (maison, studio, T1, T2...). L’agence facturera toujours en plus du
loyer la même somme forfaitaire à ses clients pour les frais de commission. Par exemple, le prix d’un studio
sera toujours égal au prix du loyer + 5000 FCFA de charges forfaitaires par mois. Pour chaque logement,
on veut disposer également de l’adresse, de la superficie ainsi que du montant du loyer. Quant aux individus
qui occupent les logements (les signataires du contrat uniquement), on se contentera de leurs noms,
prénoms, date de naissance et numéro de téléphone et numéro de la carte d’identité. Pour chaque ville, on
désire connaître le département, la région, ainsi que la distance séparant le logement de l’agence. Remarque
: On gérera l’historique de l’occupation des logements par les individus ; On considérera de plus qu’un
individu ne peut être signataire que d’un seul contrat.

AnalyseMERISE11 : On souhaite modéliser sous forme d’un schéma entité-association


l’information suivante. Dans le cadre de la conception d’une base de données bancaire, la banque
theBanque souhaite stocker les informations sur ses clients et leurs comptes. Chaque client dispose d’un
identifiant unique nclient. Pour chaque client, il est nécessaire de stocker son nom, son adresse actuelle
(Rue, CP et Ville) et sa profession. Chaque client dispose d’au moins un compte. Un compte, identifié par
un numéro unique ncompte. De plus, on souhaite pouvoir connaitre le solde du compte ainsi que l’année à
laquelle le compte a été ouvert par le client.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 99
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE12 : Gestion d’une Bibliothèque. Considérer une bibliothèque, un ouvrage est


caractérisé par le n° identifiant, un titre, auteur. Un auteur écrit plusieurs ouvrages ainsi qu’un ouvrage peut
être écrit par plus qu’un auteur. On décrit un ouvrage par un certain nombre des mots-clés. On dispose de
plusieurs exemplaires de chaque ouvrage. Un exemplaire peut être emprunté par un lecteur plusieurs fois
dans des dates différentes.

AnalyseMERISE13 : Gestion Etablissement Scolaire. Dans un établissement scolaire, on désire


gérer la réservation des salles de cours ainsi que du matériel pédagogique (ordinateur portable et ou vidéo
projecteur). Seuls les enseignants sont habilités à effectuer des réservations sous réserve de la disponibilité
de la salle ou du matériel. Le planning des salles peut quant à lui être consulté par tout le monde mais par
contre le récapitulatif horaire par enseignant ne peut être consulté que par les enseignants. Enfin, il existe
pour chaque formation un enseignant responsable qui seul peut éditer le récapitulatif horaire pour
l’ensemble de la formation.

AnalyseMERISE14 : On veut gérer les étudiants et les enseignants d’un ensemble de formations
dispensées par une université. Un étudiant est identifié par son matricule, son nom, son prénom et sa date
de naissance. Il peut suivre uniquement une formation au cours de l’année. Chaque formation est identifiée
par un code, un libellé et une durée (nombre d’année). Elle est assurée par un ensemble d’enseignants.
Chaque enseignant est reconnu par son code, son nom, son prénom et la matière qu’il enseigne. On désire
savoir le nombre d’heures qu’un enseignant effectue pour chacune des formations dans lesquelles il
enseigne.

AnalyseMERISE15 : On se propose de représenter le système d’information d’une bibliothèque.


Une bibliothèque enregistre chacun de ses lecteurs, elle lui donne un numéro de lecteur, prend son nom et
son adresse. Le lecteur peut éventuellement être membre d’une société adhérente, on enregistre alors
l’identification de cette société. Un lecteur peut emprunter plusieurs livres chaque jour. A chaque prêt, on
associe une « date de retour au plus tard ». Un lecteur appartient à un « type de lecteur ». Ce type lui permet
d’avoir ou non accès à certaines catégories de livres. Un livre est caractérisé par son numéro d’inventaire.
Il est nécessaire de connaître sa catégorie, le nom de son auteur, son éditeur, ainsi que le nombre de ses
différents exemplaires disponibles. L’édition, lorsqu’elle existe, est également à connaître. La catégorie

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 100
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

d’un livre se repère par un numéro et possède un libellé. Il en est de même pour le type de lecteur. Une
société adhérente possède un nom et une adresse ; elle s’engage à envoyer un minimum de 500 lecteurs.

AnalyseMERISE16 : Gestion des œuvres d'une exposition. On souhaite construire une base de
données contenant des informations sur les œuvres d'une exposition. On sait que : Toute œuvre de
l'exposition a un titre, un ou plusieurs auteurs, une date d'acquisition et un numéro de catalogue ; Une œuvre
est exposée dans l'une des salles de l'exposition qui est caractérisée par un numéro, un nom, le nombre
d'œuvres qu'elle contient, le type d'éclairage, ou est présente dans une autre exposition pour laquelle on
connaît le début et la durée du prêt ; Certaines œuvres exposées peuvent avoir été empruntées à un
particulier. Dans ce cas, on connaît le titre, le nom, le prénom et l'adresse du propriétaire, la date de début
et la durée de l'emprunt ; Une œuvre doit alors être assurée. On connaît le montant de la prime d'assurance,
la valeur pour laquelle l'œuvre est assurée, le nom et l'adresse de la compagnie qui l'assure; On souhaite
garder la liste des particuliers qui ont prêté des œuvres. Pour chacun, on affichera ses titres, prénom, nom
et adresse et les types d'œuvres qu'ils possèdent (art déco, art contemporain, antiquités, ...).

AnalyseMERISE17 : Gestion des excursions et randonnées. L’association « Natural Coach » est


spécialisée dans l’organisation des excursions et randonnées dans la nature (montagnes, forêts, déserts…)
dans différentes régions du Maroc (Nord, le Rif, le moyen Atlas, le Haut Atlas, les Oasis…). Cette
association compte un certain nombre d’abonnés, appelés aussi des « randonneurs » qui sont les seuls à
pouvoir sortir en excursion. Les excursions sont organisées selon un planning très précis et prévu à l’avance,
le principe d’organisation est le suivant : Une excursion, fixée par une date de départ et une date de retour,
porte un nom (Circuit du Toubkal, Oukaimiden, Sources Oum Rabie…) et elle possède un point de départ
situé dans une région donnée et un point d’arrivée situé soit dans la même ou dans une autre région. Chaque
excursion possède un tarif bien déterminé et un nombre maximum de randonneurs à ne pas dépasser. Un
randonneur peut s’inscrire à plusieurs excursions s’il le souhaite. Enfin, une excursion est menée par un ou
plusieurs guides, et chacun d’entre eux possède un numéro, un nom, et un téléphone portable pour être
joignable à tout moment par les randonneurs.

AnalyseMERISE18 : Le service commercial d'une entreprise enregistre les commandes des clients.
Une commande comporte un numéro de commande (numcom) et une date de commande (datcom). Les

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 101
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

lignes de commande spécifient les articles commandés et leur quantité. Deux lignes ne peuvent se référencer
au même article. Les clients sont caractérisés par un numéro de client (numcli), un nom ou raison sociale
(nomcli) et une adresse (adcli). Un article est référencé par un numéro (numart) et est caractérisé par un
libellé descriptif (libart) et une quantité en stock (qtestock).

AnalyseMERISE19 : Une académie souhaite gérer les cours dispensés dans plusieurs collèges.
Pour cela, on dispose des renseignements suivants : Chaque collège possède d’un site Internet ; Chaque
collège est structuré en départements, qui regroupent chacun des enseignants spécifiques. Parmi ces
enseignants, l’un d’eux est responsable du département ; Un enseignant se définit par son nom, prénom,
tél, mail, date de prise de fonction et son indice ; Chaque enseignant ne dispense qu’une seule matière ; Les
étudiants suivent quant à eux plusieurs matières et reçoivent une note pour chacune d’elle ; Pour chaque
étudiant, on veut gérer son nom, prénom, tél, mail, ainsi que son année d’entrée au collège ; Une matière
peut être enseignée par plusieurs enseignants mais a toujours lieu dans la même salle de cours (chacune
ayant un nombre de places déterminé) ; On désire pouvoir calculer la moyenne par matière ainsi que par
département ; On veut également calculer la moyenne générale d’un élève et pouvoir afficher les matières
dans lesquelles il n’a pas été noté ; Enfin, on doit pouvoir imprimer la fiche signalétique (, prénom, tél,
mail) d’un enseignant ou d’un élève.

AnalyseMERISE20 : Un office HLM gère des cités composées de bâtiments, eux-mêmes


composés d'appartements. Ces appartements sont libres ou loués à des locataires. Chaque cité est sous la
responsabilité d'un gardien. Chaque appartement appartient à un type de logement (F1 à F6) correspondant
à un certain nombre de caractéristiques précises. Des opérations d'entretien peuvent être effectuées sur les
appartements par des artisans. Les règles de gestion sont les suivantes : Une cité n'est gardée que par un
seul gardien ; Un bâtiment n'appartient qu'à une seule cité ; Une opération est relative à un seul
appartement ; Un appartement, s'il est loué, n'a qu'un seul locataire.

AnalyseMERISE21 : Une auto-école comprend des moniteurs et des véhicules. Elle prépare des
élèves à passer un permis de type donné. Les moniteurs donnent des leçons aux élèves ; une leçon possède
une durée (durlec). Les règles de gestion sont les suivantes : Une leçon n'est donnée que par un seul

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 102
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

moniteur ; Un élève ne passe qu'un seul type de permis ; Une leçon est donnée que pour un seul élève ; Un
élève n'apprend à conduire que sur un seul véhicule.

AnalyseMERISE22 : Représenter le schéma E/A de l'énoncé suivant. Une ville (nom, pays) a des
musées (nom, description). Une œuvre (titre, siècle) est exposée dans un musée pendant une certaine
période (début, fin). Une œuvre peut ne pas être exposée. Elle peut aussi être exposée dans différents musées
à différentes périodes. On connaît le nom et le prénom de l’artiste qui a réalisé une œuvre. Il y a un artiste
par œuvre. Des artistes réalisent de nombreuses œuvres.

AnalyseMERISE23 : Un fanatique de cinéma et de festivals de films décide de réaliser sa base de


données personnelle en y stockant les différents festivals de cinéma (Venise, Canne, Bruxelles,… avec pour
chacun le lieu et le directeur) et ce pour chaque année où ils se déroulent. Pour chaque festival, il désire
également enregistrer les films qui y furent en compétition (titre, réalisateur…), les acteurs (nom,
nationalité, films en compétition dans lesquels ils ont tourné) et les réalisateurs (nom, film en compétition
qu’ils ont réalisé) présents durant le festival. Finalement, il veut, et ce pour chaque festival encore, encoder
à part le film qui a remporté le grand prix et l’acteur ayant remporté le prix du meilleur rôle.

AnalyseMERISE24 : Lors d’une élection communale, faisant fi de tout secret électoral, un


informaticien malfaisant réussit à se procurer et à stocker dans une base de données relationnelle les
informations suivantes : pour chaque commune (avec son nom et son nombre d’électeurs potentiels) les
électeurs ayant voté (nom, prénom, adresse et heure du vote), les candidats (nom, prénom, position sur la
liste du parti) pour lesquels ils ont voté (un électeur pouvant en effet voter pour plusieurs candidats) ainsi
que le parti pour lequel ils ont voté (les candidats pour lesquels ils votent doivent être du même parti). Notre
informaticien veut aisément pouvoir comptabiliser le nombre de voix attribuées à chaque parti et à chaque
candidat pour chaque commune et aisément retrouver les électeurs ayant voté dans chaque commune pour
chaque candidat et chaque parti.

AnalyseMERISE25 : On veut informatiser la gestion des séjours des patients d’un hôpital. Chaque
patient possède un numéro d’identification, un nom, un prénom, une adresse, et le nom de sa caisse
d’assurance maladie. Le patient effectue un ou plusieurs séjours à l’hôpital. On attribue à chaque séjour un

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 103
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

numéro. Un séjour possède une date d’arrivée et une date de départ, et s’effectue dans une chambre (que
l’on supposera être la même tout au long du séjour). Une chambre a un numéro, un étage, et le nom du
service correspondant. Enfin, lors d’un séjour peuvent être pratiquées une ou plusieurs interventions.
Chaque opération a un code, une date, un nom, et est dirigée par un médecin. Chaque médecin a un code,
un nom, un prénom et une spécialité.

AnalyseMERISE26 : Une école veut modéliser ses informations afin de gérer ses étudiants
(répartis pour chaque année en groupes), ses enseignants et ses locaux. On traitera successivement trois
hypothèses : Chaque enseignant a en charge chaque année un certain nombre de groupes d'étudiants, et
chaque groupe a toujours cours dans la même salle ; Au coup par coup, un enseignant prend en charge un
groupe et fait cours dans une salle, elle aussi attribuée au coup par coup ; Les enseignants ont en charge
chaque année certains groupes, qui ont toujours cours dans les mêmes salles. Mais sur certains créneaux
horaires, les salles servent aussi de lieux de permanence pour les enseignants.

AnalyseMERISE27 : On souhaite construire une base de données contenant des informations sur
les œuvres d'une exposition. On sait que : Toute œuvre de l'exposition a un titre, un ou plusieurs auteurs,
une date d'acquisition et un numéro de catalogue ; Une œuvre est exposée dans l'une des salles de
l'exposition qui est caractérisée par un numéro, un nom, le nombre d'œuvres qu'elle contient, le type
d'éclairage, ou est présente dans une autre exposition pour laquelle on connaît le début et la durée du prêt ;
Certaines œuvres exposées peuvent avoir été empruntées à un particulier. Dans ce cas, on connaît le titre,
le nom, le prénom et l'adresse du propriétaire, la date de début et la durée de l'emprunt ; Une œuvre doit
alors être assurée. On connaît le montant de la prime d'assurance, la valeur pour laquelle l'œuvre est assurée,
le nom et l'adresse de la compagnie qui l'assure ; On souhaite garder la liste des particuliers qui ont prêté
des œuvres. Pour chacun, on affichera ses titres, prénom, nom et adresse et les types d'œuvres qu'ils
possèdent (art déco, art contemporain, antiquités, ...).

AnalyseMERISE28 : Examens. Les Examens nationaux sont gérés par l'Inspection Académique
et concernent les élèves de cette académie. Les élèves doivent obligatoirement remplir un dossier
d'inscription numéroté avant le 31 décembre de l'année scolaire en cours. Ce dossier comprend le nom, la
date de naissance, l’établissement de l’élève et le nom de l'examen. Un établissement est défini par son

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 104
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

code, son nom, son adresse et la ville. Chaque examen, comprend une série d'épreuves qui lui est propre,
chacune dotée d'un coefficient. Chaque épreuve d'examen se déroule donc à la même date dans toute
l’académie. La gestion de ces examens comprend aussi la convocation d'une dizaine d'enseignants de
l'académie à la commission de rédaction du sujet de chaque épreuve. Cette commission se réunit à
l'inspection académique au plus tard 2 mois avant la date de l'épreuve. Les corrections ont lieu le lendemain
de l'épreuve. Un enseignant est connu par son matricule, son nom, son téléphone, adresse, ville et son
établissement. La centralisation des notes de l'élève est faite sur un bordereau transmis au jury chargé
d'examiner l'admission définitive du candidat.

AnalyseMERISE29 : Gestion d'une clinique. On se propose de modéliser la base de données d'un


hôpital. L'analyse de l'existant a dégagé les informations suivantes : L'hôpital a un ensemble d'employés
qui sont des docteurs et des infirmières. Chaque employé possède un numéro d'employé, un nom, un
prénom, une adresse et un numéro de téléphone ; L'hôpital est composé de plusieurs services, pour lesquels
on connaît le code, le nom, le bâtiment et le directeur, qui est en fait un docteur ; Chaque service contient
plusieurs salles. Une salle est représentée par un numéro, un surveillant et le nombre de lits qu'elle possède.
Le numéro de salle est local à un service (i.e., chaque service possède une salle numéro 1). Un surveillant
est un infirmier ; Un infirmier est affecté à un service et à un seul ; Les docteurs ne sont pas affectés à un
service particulier, mais on connaît sa spécialité ; On connaît aussi pour chaque infirmier sa rotation et son
salaire ; Les malades de l'hôpital sont représentés par un numéro, un nom, un prénom, une adresse et un
numéro de téléphone ; Un malade est hospitalisé dans une salle avec un numéro de lit et son diagnostic. Il
est soigné par un docteur. Au cas où il y a des complications, il peut être transféré dans un autre service
avec une autre salle.

AnalyseMERISE30 : On se situe dans un centre de gestion comprenant plusieurs agences


délocalisées. Dans chaque agence travaillent plusieurs comptables, chacun gérant plusieurs exploitations.
Un comptable ne travaille que dans une seule agence et une exploitation ne peut être gérée que par un seul
comptable. On souhaite connaître la liste des exploitations gérées par chacun des comptables et chacune
des agences. Les informations retenues sont : Le nom de l’exploitation, La commune où se situe
l’exploitation, Le nom du comptable, Le directeur et la ville de l’agence, Le nom de l’agence, La SAU de
l’exploitation, L’âge du comptable, Le numéro de téléphone du comptable.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 105
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE31 : Le service du personnel d’une entreprise souhaite gérer les employés. Ces
derniers sont identifiés par un numéro. Ils sont répartis dans différents services repérés par un numéro, un
nom et une localisation. On souhaite stocker également le nom, la date d’embauche, la qualification, le
numéro d’employé du manager pour chaque employé ainsi que le salaire de base. Parmi les employés de
l’entreprise, on souhaite intégrer pour les commerciaux en plus de leur salaire de base une rubrique
mentionnant le montant des commissions.

AnalyseMERISE32 : On souhaite construire la base de données d’une entreprise de type


« Grossiste » qui achète des produits à différents fournisseurs et les revend à ses clients. Les fournisseurs
pourront recevoir des courriers ou des appels téléphoniques. De même pour clients. Un client peut passer
commande de différents produits. S’il ne connait pas les références du produit, il indique la désignation.
S’ils sont en stock, le grossiste les lui livre. S’ils ne sont pas en stock, le grossiste les lui livre plus tard.
Cependant, le grossiste doit avoir la possibilité d’interroger la base de données pour connaître les produits
commandée mais non encore livrés, par client. La stratégie d’achat auprès des fournisseurs n’est pas
automatisée : c’est le grossiste qui, en fonction de ses choix personnels, va choisir tel ou tel fournisseur
pour un produit (un même produit pouvant être fournit par plusieurs fournisseurs). Afin de l’aider à choisir
les fournisseurs, le grossiste doit connaître les délais chez un fournisseur donné. Ce fournisseur peut avoir
des délais différents suivant les produits. De plus, chaque fournisseur pratique des prix libres. Le grossiste
doit aussi connaître ces prix.

AnalyseMERISE33 : Gestion Etablissement Hôtelier. Un hôtel est composé des chambres et


chaque chambre dispose d’une salle d’eau, d’une douche ou d’une baignoire. U hôtel héberge des personnes
et peut employer du personnel et est aussi impérativement dirigé par un directeur. On ne connait que le nom
et le prénom des employés, des directeurs et des occupants. Certaines personnes sont des enfants et d’autres
des adultes. Un hôtel a les caractéristiques suivantes : une adresse, un nombre de pièces et une catégorie.
Une chambre est caractérisée par le nombre de lits qu’elle contient, son prix et son numéro. On veut pouvoir
savoir qui occupe quelle chambre et à quelle date. Pour chaque jour de l’année, on veut pouvoir calculer le
loyer de chaque chambre en fonction de son prix et de son occupation (le loyer est nul si la chambre est
inoccupée). La somme de ces loyers permet de calculer le chiffre d’affaire de l’hôtel entre deux dates.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 106
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE34 : Construire un schéma conceptuel correspondant au fonctionnement d’une


société de formation (version de base). Une société de formation désire informatiser la gestion des
inscriptions aux sessions qu’elle organise, ainsi que la facturation. Il existe un certain nombre de séminaires
de formation, chacun consacré à un thème différent et facturé à un tarif déterminé. Un séminaire peut être
organisé plus d’une fois, ce qui correspond à autant de sessions. Les sessions d’un séminaire se tiennent à
des dates différentes. Des entreprises inscrivent certains de leurs employés à certaines sessions. Il existe un
nombre maximum de participants pour les sessions de chaque séminaire (quelle que soit la date de la
session). Tous les mois, la société facture à chaque entreprise concernée le montant correspondant à la
participation de ses employés aux sessions du mois écoulé.

AnalyseMERISE35 : Soit une agence immobilière qui propose la location de tous types
d'hébergement (maison et appartement). Cette agence souhaite gérer ses logements, cette agence désire
connaître le nom de la commune et le quartier où se trouve chaque type de logement et aussi les personnes
qui ont louées ces logements (les signataires uniquement). Le prix pour chaque logement dépend de son
type (maison, appartement, studio), l'agence facturera toujours en plus du loyer la même somme forfaitaire
à ses clients. Par exemple, pour louer un studio alors le prix égale au prix du loyer + 30 DH de charges par
mois. Un logement est caractérisé aussi par sa surface, de l'adresse ainsi que du loyer. Chaque client est
caractérise par son nom, prénom, date de naissance et numéro de téléphone. Ce système doit alors
enregistrer le nombre d'habitants de chaque commune ainsi que la distance séparant la commune de cette
agence. Le système à développer doit aussi gérer l'historique de location de ces logements par les individus.
Il doit aussi enregistrer la date de début et la date de fin de chaque location. Chaque client peut signer
plusieurs contrats de location. Ajoutant que chaque logement eut être loué plusieurs fois dans le temps. On
considère que chaque commune possède un ou plusieurs quartiers. Le quartier est l'unité géographique
utilisée pour la gestion de ces logements.

AnalyseMERISE36 : Gestion d'un institut privé. Il s'agit d'établir une base de données pour la
gestion des formations d'un institut privé. Un cours est caractérisé par un numéro de cours NOCOURS, un
libellé LIBELLE, une durée en heures DUREE et un type TYPE. Un cours peut faire l'objet dans l'année
de plusieurs sessions identiques. Une session est caractérisée par un numéro NOSESS, une date de début
DATE et un prix PRIX. Une session est le plus souvent assurée par plusieurs animateurs. Un animateur
peut intervenir dans plusieurs sessions au cours de l'année. On désire mémoriser le nombre d'heures NBH

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 107
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

effectué par un animateur pour chaque session. Un animateur est caractérisé par un numéro NOANI, un
nom NOMA et une adresse ADRA. Chaque session est suivie par au plus 20 participants. Un participant
est caractérisé par un numéro NOPAR, un nom NOMP et une adresse ADREP.

AnalyseMERISE37 : Construire le schéma conceptuel décrivant un cabinet de médecins. Chaque


médecin reçoit des patients en consultation. Lors de chaque consultation de chaque patient, un certain
nombre d’actes médicaux sont effectués par le médecin. Chaque acte est répertorié dans une liste standard
qui en donne le tarif. C’est ainsi que le médecin calcule le prix de la visite. Le patient peut payer lors de sa
visite ou plus tard. Toute consultation non payée au bout d’un mois fait l’objet d’un rappel de paiement.
Les sommes perçues durant chaque mois constituent le revenu du médecin. Cette information lui permet de
remplir aisément sa déclaration fiscale annuelle. Le médecin connaît la date de naissance, le sexe et la
profession de chaque patient. Il sait également si le patient souffre d’un certain nombre d’affections
réparties selon des classes standards. Lors de chaque visite d’un patient, le médecin inscrit la date, les
prestations et les médicaments prescrits. Si un patient est décédé, il indiquera la date du décès.

AnalyseMERISE38 : Une fédération sportive désire informatiser l'organisation de ses tournois. Les
clubs de la fédération sont dotés d'un numéro et d'un nom. Chaque club attribue à ses équipes un numéro,
unique au sein du club. Chaque joueur d'un club appartient à une seule équipe de celui-ci. Un joueur est
décrit par un numéro matricule unique attribue par la fédération, ses nom, prénom et adresse, son « numéro
de maillot », sa « place » sur le terrain. Un tournoi est décrit par un numéro et sa date. Chaque tournoi est
organisé par un club de la fédération. Au cours d'un tournoi, les différentes équipes qui y participent
s'affrontent dans des matchs. Un match est décrit par un numéro, unique au sein du tournoi, et son résultat.

AnalyseMERISE39 : Gestion d’une scolarité. La scolarité d’un institut d’enseignement supérieur


veut gérer avec une base de données les inscriptions des étudiants, les emplois du temps, les résultats des
examens, etc. Lors de son inscription, l’étudiant reçoit un numéro unique et sera affecté à une classe.
Chaque étudiant est décrit par son numéro, son nom, sa date de naissance et son adresse Un enseignant,
identifié par son matricule, peut enseigner plusieurs matières à une même classe. Le coefficient d’une
matière peut changer d’un niveau à un autre et d’une discipline à une autre. L’institut conserve pour chaque
étudiant, la note du devoir surveillé ainsi que la note obtenue à l’examen final de chacune des matières
étudiées. L’institut mémorise pour chaque enseignant son nom, son adresse, son numéro de téléphone et
son relevé d’identité bancaire (RIB).

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 108
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE40 : Un club vidéo propose des cassettes et des DVD en location à ses membres.
Pour chaque membre, on enregistre le nom, l’adresse, le numéro de téléphone. On lui donne un numéro
d’inscription qui l’identifie. Chaque support est caractérisé par son type (cassette ou DVD), un code
identifiant et la date d’achat. Pour le film du support, on enregistre le titre (identifiant), son réalisateur,
l’acteur vedette et le genre. Plusieurs supports peuvent être disponibles pour un même film, alors que pour
certains films, il n’existe pas encore de supports proposés à la location. A tout instant, un support peut être
loué par un membre du club. Chaque support est en outre caractérisé par le nombre d’emprunts, le titre du
film, son réalisateur, ses principaux acteurs (nom et prénom, tous deux identifiants, ainsi que la date de
naissance), la date de sortie du film. Pour chaque location, on connaît le support, la date d’emprunt, la date
normale de restitution, la date de restitution effective et l’emprunteur. Une location dure un nombre entier
de jours (au moins un). On conserve l’historique des locations.

AnalyseMERISE41 : On désire gérer une bibliographie constituée d’articles (code identifiant, type,
titre). Chaque article est écrit par un nombre quelconque d’auteurs. Chaque auteur est caractérisé par son
nom (supposé identifiant) et l’organisme dont il dépend. En outre, chaque article est extrait d’un ouvrage
dont on donne le titre, l’éditeur, la date de parution, ainsi qu’un numéro identifiant. Dans cet ouvrage,
chaque article commence en haut d’une page dont on connaît le numéro. Exemple : l’article de code 13245,
du type «THEORIE», intitulé «Non monotonic reasoning in operational research», écrit par Baxter
(Stanford Univ.) et Randon (Bell Labs) est extrait (page 340) de l’ouvrage numéro 556473, intitulé
«Advanced Topics in Decision Support Systems», publié par North-Holland en 1998.

AnalyseMERISE42 : Les patients d’un hôpital sont répartis dans les services (caractérisés chacun
par un nom identifiant, sa localisation, sa spécialité) de ce dernier. A chaque patient peuvent être prescrits
des remèdes. Un remède est identifié par son nom et caractérisé par son type, son fabricant et l’adresse de
ce dernier. Chaque prescription d’un remède à un patient est faite par un médecin à une date donnée pour
une durée déterminée. On ne peut rédiger plus d’une prescription d’un remède déterminé pour un même
patient le même jour. Chaque patient est identifié par un numéro d’inscription. On en connaît le nom,
l’adresse et la date de naissance. Chaque médecin appartient à un service. Il est identifié par son nom et son
prénom.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 109
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE43 : Une entreprise de distribution dispose d’un certain nombre de véhicules


(identifiés par leur numéro et caractérisés par leur capacité et le nom du conducteur). Chaque jour, chaque
véhicule effectue une (et une seule) tournée de distribution, d’une longueur déterminée. Durant cette
tournée, le véhicule emporte des colis (décrits chacun par un numéro identifiant et un poids). Chaque colis
doit être livré à un destinataire. Un destinataire est identifié par un numéro de destinataire et caractérisé par
un nom et une adresse.

AnalyseMERISE44 : Proposer un schéma conceptuel qui représente le domaine d’application


suivant : Une bibliothèque contient des ouvrages, repérés par un numéro unique et caractérisés chacun par
son titre, sa maison d’édition et sa date d’édition. Un ouvrage peut avoir été écrit par un ou plusieurs auteurs.
Un auteur est identifié par son nom et son prénom; il est caractérisé par sa date de naissance. Un ouvrage
peut en outre être caractérisé par un ou plusieurs thèmes. Il existe un répertoire de thèmes standard, chaque
thème étant décrit par un code concis (par exemple ROM.HIST) et son libellé en clair (par exemple
ROMAN HISTORIQUE). Tous les codes concis sont différents. Lorsqu’on caractérise un ouvrage, on lui
attribue le ou les thèmes qui le décrivent le mieux. Il se peut qu’un ouvrage ait été acquis suite à la demande
personnelle d’un lecteur. Un lecteur est identifié par son numéro d’inscription et caractérisé par son nom et
son adresse.

AnalyseMERISE45 : La fédération internationale de cyclisme désire mettre au point une base de


données. Celle-ci comporte des informations sur les différents coureurs, les équipes, les résultats obtenus
aux différentes courses organisées ainsi que, pour des raisons d’actualité, sur le suivi médical des coureurs.
Les coureurs sont identifiés par leur nom et leur prénom, on connaît leur taille, leur date de naissance et
l’équipe à laquelle ils appartiennent. Une équipe est identifiée par son nom, elle possède un budget, un
directeur sportif dont on connaît le nom, le prénom et la date de naissance. Elle est financée par des sponsors
qui peuvent varier selon les années et dont on connaît le nom, l’adresse et le domaine d’activité. Une course
correspond à un nom de course (ex. « Tour de France »), on en connaît la distance totale à parcourir. Elle
peut comporter une ou plusieurs étapes, dont on connaît le numéro d’ordre (ex. « 3è étape »), la date, le
type (ex. « Contre la montre individuel »), la ville de départ et celle d’arrivée. Pour chaque coureur ayant
participé à une étape d’une course, on connaît le classement qu’il a obtenu lors de cette étape. Pour chaque
course, on connaît le vainqueur final et l’équipe à laquelle il appartient. Pour chaque course, les équipes
emploient des soigneurs, dont on connaît le nom, le prénom, la date de naissance et la nationalité. On note

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 110
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

aussi, à chaque étape, quelle dose de quel(s) produit(s) a administré un soigneur à un coureur. Un produit
est identifié par un numéro de produit, a un nom, une indication (ex. « douleur musculaire »), une contre-
indication (ex. « ne pas administrer en dessous de 20 ans ») et une posologie (ex. « 1 comprimé par jour »).
Dans cette base de donnée de production, seules les informations courantes (concernant l'édition en cours)
de la course, des coureurs, des équipes, etc. sont stockées.

AnalyseMERISE46 : On désire gérer les emplois du temps des différents personnels (enseignants,
enseignants-chercheurs et chercheurs) de l’UFR, pour savoir à tout moment s’il est possible de les joindre,
et où. Pour cela, on considère que, en dehors des périodes où ils peuvent être joints dans leur bureau, les
personnels peuvent être en réunion, quel que soit leur statut. Une réunion est désignée par une date précise,
une tranche horaire (début, fin) et une salle de réunion. On veut aussi connaître les autres personnes
participant à la réunion. Chaque personne est désignée par son nom, son prénom, le bureau où on peut la
joindre. Les enseignants peuvent, de plus, être en cours. Un cours est identifié par la matière enseignée à
laquelle est affectée toujours la même salle de cours. Il est désigné par une période de début et de fin (ex.
de février à mai), un jour de la semaine, une tranche horaire. Plusieurs enseignants peuvent enseigner la
même matière dans l’année, à des jours et créneaux horaire différents. Un enseignant peut enseigner
plusieurs matières et plusieurs fois la même matière dans l’année, à des périodes différentes. Les chercheurs
peuvent être à certaines périodes de l’année en mission en dehors de l’UFR. Une mission est désignée par
une date de début et de fin et un lieu de mission. Les chercheurs appartiennent à un laboratoire dont on peut
joindre le secrétariat en cas d’urgence. Les enseignants-chercheurs sont à la fois enseignants et chercheurs,
avec un pourcentage plus ou moins grand d’enseignement (par rapport à la recherche) à effectuer. Ils
peuvent donc être soit en réunion, soit en mission, soit en cours.

AnalyseMERISE47 : Une agence immobilière souhaite créer une base de données pour la gestion
des biens immobiliers mis à sa disposition et pour l'exploitation statistique et/ou fiscale des informations
accumulées. Pour chaque logement on possède plusieurs informations : l'adresse, le nom du propriétaire, le
type (maison, appartement, etc.), le nombre de pièces, la superficie habitable, l'état de l'habitation (neuf,
très bon état, bon état, mauvais état), le prix de mise en vente, la date de disponibilité, la ville. Chaque
propriété peut avoir un ou plusieurs garages. Ces derniers sont caractérisés par un numéro, un type (box,
emplacement, etc.) et peuvent avoir des adresses différentes de celle de la propriété. Un logement peut être
vendu ou acheté par une personne caractérisée par son nom et son adresse de contact. Pour chaque

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 111
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

transaction de vente (caractérisée par une référence numérique unique), l'agence touche une commission
qui correspond à un pourcentage du prix de vente (qui est composé d'une valeur fixe de 650 000 FCFA à
laquelle on additionne entre 3 et 5% en fonction de la négociation). L'agence organise et gère également
les visites des propriétés que les acheteurs potentiels (clients) pourraient réclamer. Pour des besoins
d'exploitation fiscale, l'agence souhaite garder la trace du montant total de chaque transaction de vente
effectuée (prix de vente) ainsi que le montant totale de la commission perçue après la vente.

AnalyseMERISE48 : On souhaite mettre en place une base de données d’une bibliothèque


permettant de stocker des informations sur différents ouvrages. Chaque ouvrage est identifié par un ISBN.
Pour chaque ouvrage on connait son titre, son thème et un résumé. Un ouvrage peut être co-écrit par
plusieurs auteurs. Pour chaque auteur, on dispose de son nom, son prénom et de son année de naissance.
Un ouvrage est édité en plusieurs exemplaires. Pour chaque exemplaire, on dispose d’un numéro qui
l’identifie de manière unique. Pour chaque exemplaire, on stocke l’information sur le nombre de pages et
le type de reliure. Un exemplaire est édité par un éditeur dont on connait le nom et l’adresse. Tous les
exemplaires ne peuvent pas être empruntés. Pour ceux qui le sont, on stocke la date de l’emprunt, la date
de retour attendue et l’information si oui ou non l’exemplaire a été rendu. Les emprunts se font par rapport
à des adhérents dont on connait le nom, le prénom et l’adresse. Un adhérent dispose d’un numéro d’adhérent
qui l’identifie de manière unique. Un adhérent a le droit d’emprunter plusieurs fois un exemplaire. Pour
finir, la bibliothèque propose des rencontres pour discuter autour d’un ou plusieurs ouvrages. Une rencontre
est composée de sessions. Chaque session, dont on stocke un titre et un horaire, est identifiée relativement
par rapport à la rencontre. Une session est animée par un ou plusieurs intervenants dont on connait le nom
et le prénom. Pour chaque rencontre, on stocke la date et la salle où celle-ci aura lieu. Les adhérents ont la
possibilité de s’inscrire à ces rencontres.

AnalyseMERISE49 : Les clients de l’entreprise sont caractérisés par leur nom, leur adresse et le
montant de leur compte. Ils reçoivent un numéro qui permet de les distinguer. Un client a passé un certain
nombre de commandes, caractérisées chacune par un numéro qui les identifie, une date de réception et
l’identification de l’employé qui l’a introduite. Chaque commande contient un certain nombre de détails de
commande numérotés, qui spécifient chacun le produit commandé, la quantité désirée, la quantité déjà
livrée et la date de la dernière livraison. Un produit est identifié par un numéro et caractérisé par un libellé
et un prix unitaire. Les clients reçoivent des factures. Chaque facture correspond à un colis expédié à une

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 112
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

date déterminée. Un colis comporte, pour un ou plusieurs détails de commande, la quantité expédiée (tout
ou partie de la quantité commandée) en fonction de la disponibilité du produit. Une facture comporte un
numéro identifiant, la date d’expédition du colis et un montant total. Elle spécifie aussi la composition du
colis et les coordonnées du client : nom, adresse et téléphone. L’étiquette du colis reprend le numéro de sa
facture, sauf lorsqu’il ne contient que des produits cadeaux. Les sous-colis d’un colis correspondent à des
détails de commande distincts.

AnalyseMERISE50 : Une société de formation désire informatiser la gestion des inscriptions aux
sessions qu'elle organise, ainsi que la facturation. Il existe un certain nombre de séminaires de formation,
chacun consacré à un thème différent et facturé à un tarif déterminé. Un séminaire peut être organisé plus
d'une fois, ce qui correspond à autant de sessions. Les sessions d'un séminaire se tiennent à des dates
différentes. Des entreprises inscrivent certains de leurs employés à certaines sessions. Lors d'une
inscription, qui s'effectue à une certaine date, l'entreprise indique, pour chaque employé concerné, le nom,
le prénom, le numéro de téléphone, le matricule interne à l'entreprise et la session à laquelle il est inscrit.
Dès sa première inscription, l’employé devient un client de la société de formation et reçoit un numéro
unique. Ultérieurement, l'inscription d'un employé à une session peut être annulée ou transférée vers un
autre employé. Si l'annulation est effectuée moins d'une semaine avant la date de la session, un montant
forfaitaire est cependant dû. Il existe un nombre maximum de participants pour les sessions de chaque
séminaire (quelle que soit la date de la session). Chaque séminaire est pris en charge par un ou plusieurs
instructeurs, mais ceux-ci ne sont pas nécessairement connus au moment où on prend les premières
inscriptions, et peut utiliser un ou plusieurs ouvrages de référence. Tous les mois, la société facture à chaque
entreprise concernée le montant correspondant à la participation de ses employés aux sessions du mois
écoulé. On vérifiera que les informations répertoriées sont suffisantes pour rédiger la brochure commerciale
de la société et pour produire et gérer les factures.

AnalyseMERISE51 : On dispose d’une liste d’étudiants avec leur matricule, nom et prénom et,
d’une liste d’examens avec pour chacun leur type (écrit, oral, devoir à la maison, projet), leur date, un titre
éventuel, un coefficient, et une note maximale (par exemple, sur 20 ou sur 10). Chaque étudiant a, pour
chaque examen une note (éventuellement manquante si l’examen n’a pas encore eu lieu ou si l’étudiant est
absent).

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 113
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseMERISE52 : Une fédération sportive désire informatiser l’organisation de ses tournois


conformément aux règles de gestion suivantes : Les clubs de la fédération sont dotés d’un numéro et d’un
nom ; Chaque club attribue à ses équipes un numéro unique au sein du club ; Chaque joueur d’un club
appartient à une seule équipe de celui-ci. Un joueur est décrit par un numéro matricule unique attribué par
la fédération, ses noms, prénoms et adresse, son « numéro de maillot », sa « place » sur le terrain ; Un
tournoi est décrit par un numéro et sa date. Chaque tournoi est organisé par un club de la fédération. Au
cours d’un tournoi, les différentes équipes qui y participent s’affrontent dans des matchs ; Un match est
décrit par un numéro unique au sein du tournoi et son résultat.

8. Fiche TD - Cours 4 – Analyse Informatique, Le Langage de Modélisation UML :

AnalyseUML1 : Soit un guichet automatique bancaire, un client peut retirer de l'argent s'il possède
suffisamment de fond. Il peut aussi consulter son compte ou payer ses factures. S'il retire de l'argent ou s'il
paye ses factures il est possible de consulter son compte. TAF : Modélisez ce système par diagramme de
cas d'utilisation.

AnalyseUML2 : Dans un magasin, le processus de vente est le suivant : Le client entre, passe dans
les rayons, demande éventuellement des renseignements ou procède à des essais, prend des articles (si le
stock est suffisant), passe à la caisse où il règle ses achats (avec tout moyen de paiement accepté). Il peut
éventuellement bénéficier d’une réduction. TAF : Modélisez ce système par diagramme de cas d'utilisation.

AnalyseUML3 : Dans un établissement scolaire, on désire gérer la réservation des salles de cours
ainsi que du matériel pédagogique (ordinateur portable ou/et Vidéo projecteur).

 Seuls les enseignants sont habilités à effectuer des réservations (sous réserve de disponibilité de la
salle ou du matériel) ;

 Le planning des salles peut quant à lui être consulté par tout le monde (enseignants et étudiants) ;

 Par contre, le récapitulatif horaire par enseignant (calculé à partir du planning des salles) ne peut
être consulté que par les enseignants ;

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 114
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Enfin, il existe pour chaque formation un enseignant responsable qui seul peut éditer le récapitulatif
horaire pour l’ensemble de la formation. TAF : Etablir Un DCU.

AnalyseUML4 : Dans un magasin, un commerçant dispose d’un système dont les fonctionnalités
sont :

 Edition de la fiche d’un fournisseur ;

 Possibilité d’ajouter un nouvel article qui nécessite tout d’abord l’édition de la fiche fournisseur. Si
le fournisseur n’existe pas, on peut alors le créer ;

 Edition de l’inventaire. Depuis cet écran, on a le choix d’imprimer l’inventaire, d’effacer un article
ou d’éditer la fiche d’un article. TAF : Etablir Un DCU.

AnalyseUML5 : Soit un système d'information qui concerne le suivi des personnels d'un ensemble
d'agences locales. Chaque agence se trouve dans une région, chaque région est pilotée par une direction
régionale. La direction régionale se charge d'un ensemble d'agences locales. Une direction régionale est
caractérisée par un code et un libellé. TAF : Modélisez ce système d'information par un diagramme de
classes.

AnalyseUML6 : Dans un site intranet de gestion d’une bibliothèque (système d’information), les
utilisateurs ont le droit de consulter le fond documentaire (les ouvrages, les cd et les dvd). La consultation
peut s’étendre à une réservation du document à condition que celui-ci soit disponible. Le droit de
consultation est accordé aussi au personnel de la bibliothèque avec en plus le droit de modification des
informations sur les documents. Ce droit est accordé après authentification. La bibliothèque est dirigée par
un responsable qui fait partie du personnel. Il a tous les droits accordés au personnel, mais en plus il a le
droit de modifier et consulter les informations des utilisateurs. Question : Etablir le diagramme de cas
d’utilisation.

AnalyseUML7 : Dans un magasin, le processus de vente est le suivant : le client entre, passe dans
les rayons, demande éventuellement des renseignements ou procède à des essais, prend des articles (si le

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 115
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

stock est suffisant), passe à la caisse où il règle ses achats (avec tout moyen de paiement accepté). Il peut
éventuellement bénéficier d’une réduction. Question : Etablir le diagramme de cas d’utilisation.

AnalyseUML8 : On considère le système suivant de gestion d’un DAB (Distributeur automatique


de billets) : le distributeur délivre de l’argent à tout porteur de carte (carte Visa ou carte de la banque) pour
les clients de la banque, il permet : la consultation du solde du compte le dépôt d’argent (chèque ou
numéraire) toute transaction est sécurisée et nécessite par conséquent une authentification dans le cas où
une carte est avalée par le distributeur, un opérateur de maintenance se charge de la récupérer. C’est la
même personne qui collecte également les dépôts d’argent et qui recharge le distributeur. Question : Etablir
le diagramme de cas d’utilisation.

AnalyseUML9 : Centre de Validation des Acquis de L'Académie. Toute personne qui a exercé
pendant 5 ans une activité professionnelle en rapport avec l'objet de sa demande peut demander l'obtention
d'un diplôme de l'enseignement technologique et professionnel auprès du Centre de validation des Acquis
de l'Académie de son domicile. Le salarié obtient un dossier vierge auprès du Centre de validation des
Acquis de l'Académie (CAVA). Après avoir complété le dossier, le salarié l'envoie au CAVA. Le dossier
contient l'état civil du candidat (nom, prénom, adresse), une description de ses activités professionnelles
depuis 5 ans, le diplôme demandé. Les dossiers sont enregistrés dans la base de données du CAVA (un
numéro de référence leur sont automatiquement affecté).

Le CAVA envoie le dossier au domicile de l'inspecteur d'Académie responsable du diplôme


concerné. L'inspecteur vérifie si le dossier est recevable. C'est à dire, si le diplôme demandé correspond
aux activités professionnelles du candidat depuis au moins 5 ans. L'inspecteur communique sa décision aux
CAVA qui l'enregistre dans sa base de données. Si le dossier est recevable, un accusé de réception est
envoyé au candidat ; sinon le dossier est retourné au candidat avec un courrier lui indiquant les raisons du
refus du dossier. Il y a un jury par diplôme. Un jury est composé de l'inspecteur d'Académie responsable
du diplôme et d'enseignants. Le CAVA connaît les coordonnées des enseignants membres d'un jury. Chaque
jury se réunit trois fois par an. Le planning des réunions d'un jury est établi par l'inspecteur d'Académie
responsable du diplôme concerné, en début d'année scolaire. Trois semaines avant une réunion d'un jury, le
CAVA convoque les membres du jury ainsi que les candidats ayant un dossier de demande de diplôme en
suspens (concernant le diplôme sous la responsabilité du jury). A la fin d'une réunion, le jury établit un
procès-verbal où les décisions du jury sont récapitulées (acceptation ou refus du diplôme). En fonction de

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 116
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

ce procès-verbal, le CAVA envoie une attestation de diplôme aux candidats ou un refus de diplôme. Travail
A Faire : La composition des jurys est hors contexte, Construire le diagramme de classes ; Construire le
diagramme des cas d'utilisation.

AnalyseUML10 : On souhaite développer une application informatique qui permet la gestion des
emprunts des Cd-rom contenant des jeux vidéo pour les enfants. Un employé s’occupe d’enregistrer les
emprunts des adhérents qui veulent emprunter les cd-rom. L’employé doit d’abord s’authentifier pour
effectuer cette opération. Chaque cd emprunté doit être rendu à l’employé de la biblio après une durée de
3 jours. L’adhérent donc peut réserver des cd-rom contenant des jeux, chaque réservation doit mentionner
l’emprunteur, le jeu et la date de réservation. L’adhérent est averti quand le jeu (cd) revient en rayon.
L’employé peut aussi organiser des événements, pour se faire il doit donner les informations suivantes : le
nombre minimal et maximal des participants, les jeux à tester, la date de l’événement et l’heure de début
de l’événement. L’adhérent qui souhaite participer à un événement peut s’inscrire à condition qu’il y ait
encore de la place disponible. Pour se faire il doit saisir un mot de passe et login. Si l’adhérent trouve une
place disponible alors il peut payer sa cotisation en ligne par un système de paiement externe. Travail A
Faire : Décrire les exigences fonctionnelles du système, Développez le diagramme de cas d’utilisation et
Déduire le diagramme de classe.

AnalyseUML11 : On souhaite gérer les réservations de vols effectués dans une agence. D’après les
interviews réalisées avec les membres de l’agence, on sait que :

 Les compagnies aériennes proposent différents vols ;

 Un vol est ouvert à la réservation et refermé sur ordre de la compagnie

 Un client peut réserver un ou plusieurs vols, pour des passagers différents

 Une réservation concerne un seul vol et un seul passager

 Une réservation peut être confirmée ou annulée

 Un vol a un aéroport de départ et un aéroport d’arrivée

 Un vol a un jour et une heure de départ, et un jour et une heure d’arrivée

 Un vol peut comporter des escales dans un ou plusieurs aéroport(s)

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 117
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

 Une escale a une heure de départ et une heure d’arrivée

 Chaque aéroport dessert une ou plusieurs villes. Travail à Faire : A partir des éléments qui vous
sont fournis ci-dessus, élaborez le diagramme de classes (en y ajoutant tout attribut que vous jugez
pertinent et qui n’a pas été décrit ci-dessus).

AnalyseUML12 : Une académie souhaite gérer les cours dispensés dans plusieurs collèges. Pour
cela, on dispose des renseignements suivants :

 Chaque collège possède d’un site Internet

 Chaque collège est structuré en départements, qui regroupent chacun des enseignants spécifiques.
Parmi ces enseignants, l’un d’eux est responsable du département.

 Un enseignant se définit par son nom, prénom, tél, mail, date de prise de fonction et son indice.

 Chaque enseignant ne dispense qu’une seule matière.

 Les étudiants suivent quant à eux plusieurs matières et reçoivent une note pour chacune d’elle.

 Pour chaque étudiant, on veut gérer son nom, prénom, tél, mail, ainsi que son année d’entrée au
collège.

 Une matière peut être enseignée par plusieurs enseignants mais a toujours lieu dans la même salle
de cours (chacune ayant un nombre de places déterminé).

 On désire pouvoir calculer la moyenne par matière ainsi que par département

 On veut également calculer la moyenne générale d’un élève et pouvoir afficher les matières dans
lesquelles il n’a pas été noté

 Enfin, on doit pouvoir imprimer la fiche signalétique (, prénom, tél, mail) d’un enseignant ou d’un
élève. Travail à Faire : Elaborez le diagramme de classes correspondant. Pour simplifier l’exercice,
on limitera le diagramme à une seule année d’étude.

AnalyseUML13 : Il vous est demandé de réaliser une base de données permettant de stocker des
recettes de cuisine et gérant également les stocks des ingrédients que vous possédez. Chaque recette de

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 118
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

cuisine a un nom, une description, la durée de préparation et la durée de cuisson, le nombre de calories par
personne, le nombre de parts et le niveau de difficulté : difficile, moyen ou facile. Pour chaque recette vous
voulez savoir quels sont les ingrédients nécessaires et la quantité associée à chaque ingrédient. Pour chaque
ingrédient vous avez son nom et le nombre de calories pour 100 grammes de cet ingrédient. Chaque
ingrédient a un type, par exemple féculent pour l'ingrédient pomme de terre. Un même ingrédient peut avoir
plusieurs conditionnements, par exemple, l'ingrédient farine peut être stocké sous forme d'un paquet de 1
kg ou de 500 g. Ces deux conditionnements seront considérés comme des produits différents. Pour gérer
les stocks des ingrédients, le lieu de stockage des produits dans le logement est mémorisé. Chaque
rangement est nommé et pour chaque rangement vous savez quels sont les produits qui y sont stockés. Un
même ingrédient peut être stocké dans plusieurs rangements. Travail A Faire : Faire le diagramme Classe
UML de modélisation.

AnalyseUML14 : Un vidéo club est un centre de distribution qui assure essentiellement la location
de films préenregistrés. Les éditeurs procurent les cassettes aux exploitants soit en location soit en vente.
Les exploitants peuvent donc passer avec les éditeurs des contrats de location d'une durée moyenne de 6
mois ou passer des commandes à partir de catalogues fournis régulièrement par les éditeurs. Un vidéo club
entretient des relations avec une trentaine d'éditeurs environ. Lorsque les exploitants constatent une usure
des cassettes qui leur appartiennent, ils ont la possibilité de les vendre à des grossistes qui peuvent alors
pratiquer des ventes au rabais. Un seul statut est proposé aux clients, celui d'adhérent. Chaque adhérent se
voit attribuer une carte d'adhésion sur laquelle est mentionné un code adhérent. Il peut alors choisir entre
plusieurs types d’abonnement. Les tarifs varient selon le mode d'abonnement choisi. Quatre tarifs adaptés
aux locations sont proposés en fonction des différents types d'abonnement. Toutefois, on peut louer des
cassettes aux clients non abonnés sans leur faire profiter des avantages tarifaires réservés aux abonnés. Le
but est de décrire la vue des besoins (use case view) de ce système en utilisant le logiciel Objecteering.
Travail A Faire : Faire le diagramme Cas d’Utilisation UML de modélisation.

AnalyseUML15 : On souhaite gérer la réservation des salles de cours et les matériaux pédagogiques
(ordinateur portable ou/et Vidéo projecteur) dans une école privée. Dans cette école on peut trouver des
enseignants et des étudiants, la réservation peut se faire uniquement par des enseignants selon la
disponibilité de la salle ou du matériel. L'école affiche un planning des salles qui peut être consulté par les
enseignants et les étudiants. Le récapitulatif horaire par enseignant, édité par un professeur responsable,

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 119
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

n'est consulté que par les professeurs. TAF : Modélisez cette situation par un diagramme de cas
d'utilisation.

AnalyseUML16 : On souhaite gérer l'inscription des étudiants dans une école, la scolarité propose
un catalogue des cours aux étudiants. Par la suite les étudiants indiquent leurs choix de cours en remplissant
une fiche d'enregistrement, un étudiant peut choisir jusqu'à quatre cours qui existent dans le catalogue plus
deux cours supplémentaires. Un cours est caractérisé par le nom d'enseignant qui va assurer ce cours et le
cursus. Pour créer un catalogue il faut d'abord affecter les cours aux enseignants. Chaque enseignant indique
les cours à enseigner en se connectant au système d'inscription. Pour commencer un cours il faut avoir au
moins 5 étudiants et au maximum 30, le cours sera supprimé dans le cas où le nombre d'étudiant est inférieur
à 5. A la fin des inscriptions on exécute un programme pour affecter les étudiants aux cours. On suppose
qu'après exécution de ce programme tous les étudiants obtiendront ce qu'ils ont choisi. A la fin de cette
opération on imprime un listing pour chaque étudiant et l'information est transférer au système de
facturation qui facturera l'étudiant pour son semestre. Travail Demandé : Donner les acteurs de ce
système ; Donner le diagramme des cas d'utilisation du système ; Décrire le scénario principal de chaque
cas d’utilisation par un diagramme de séquence.

AnalyseUML17 : On souhaite développer une application informatique qui permet la gestion des
emprunts des Cd-rom contenant des jeux vidéo pour les enfants. Un employé s’occupe d’enregistrer les
emprunts des adhérents qui veulent emprunter les cd-rom. L’employé doit d’abord s’authentifier pour
effectuer cette opération. Chaque cd emprunté doit être rendu à l’employé de la biblio après une durée de
3 jours. L’adhérent donc peut réserver des cd-rom contenant des jeux, chaque réservation doit mentionner
l’emprunteur, le jeu et la date de réservation. L’adhérent est averti quand le jeu (cd) revient en rayon.
L’employé peut aussi organiser des événements, pour se faire il doit donner les informations suivantes : le
nombre minimal et maximal des participants, les jeux à tester, la date de l’événement et l’heure de début
de l’événement. L’adhérent qui souhaite participer à un événement peut s’inscrire à condition qu’il y ait
encore de la place disponible. Pour se faire il doit saisir un mot de passe et login. Si l’adhérent trouve une
place disponible alors il peut payer sa cotisation en ligne par un système de paiement externe. TAF :
Développez le diagramme de cas d’utilisation ; Développez le diagramme de séquence pour le cas
d’utilisation « enregistrer emprunt » ; Déduire le diagramme de classe ?

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 120
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

ExerciceUML18 : Suite à la disparition d'objets divers, il a été décidé de restreindre les accès à
certaines salles au moyen de portes à fermeture automatique. L'ouverture de chacune des portes est
commandée par un lecteur de badges placé à proximité. Les badges qui permettent l'ouverture des portes
ne sont délivrés qu'aux personnes qui doivent accéder aux locaux protégés. Le système de contrôle d'accès
doit fonctionner de la manière la plus autonome possible. Un superviseur est responsable de la configuration
initiale et de la mise à jour des différentes informations de définition des groupes de personnes et de portes.
Un gardien dispose d'un écran de contrôle et est informé des tentatives de passage infructueuses. Les
alarmes sont transmises en temps légèrement différé sur l'écran de contrôle (mise à jour toutes les minutes).
TAF : Écrire Le Diagramme des Cas d'Utilisation.

AnalyseUML19 : Le système à réaliser doit gérer l'entrée et la sortie des clients d'un parking. Il
existe deux types de clients, le client occasionnel et l'abonné. Des étages différents sont réservés pour les
clients occasionnels et les abonnés. De même des entrées différentes sont prévues. Les abonnés ont des
cartes qui leur permettent l'accès sans condition aux étages qui leur sont réservés. Les autres clients doivent
prendre un ticket avant d'entrer dans le parking, payer à l'aide de leur ticket avant de sortir du parking et
utiliser ce ticket pour sortir du parking. Le ticket est émis dès que le détecteur détecte la présence d'une
voiture près de la barrière. Les tickets et les cartes des abonnés sont lus par le même type de lecteur. Le
nombre de clients non abonné est comptabilisé et un panneau à l'entrée du parking indique si celui-ci est
complet ou non. Le rôle du gardien se limite à vider les caisses du monnayeur, à renseigner les personnes
et à vérifier qu'aucun incident ne survient dans le parking à l'aide de caméras de surveillance. TAF :
Déterminer les acteurs et dessiner le diagramme des cas d'utilisation et décrire chaque cas d'utilisation.

AnalyseUML20 : Gestion d'Un Vidéo Club (Etablir Le Diagramme de Cas d'Utilisation, Un


Diagramme de Séquence). Un vidéo club est un centre de distribution qui assure essentiellement la
location de films pré - enregistrés. Les éditeurs procurent les cassettes aux exploitants soit en location soit
en vente. Les exploitants peuvent donc passer avec les éditeurs des contrats de location d'une durée
moyenne de 6 mois ou passer des commandes à partir de catalogues fournis régulièrement par les
éditeurs. Un vidéo club entretient des relations avec une trentaine d'éditeurs environ. Lorsque les exploitants
constatent une usure des cassettes qui leur appartiennent, ils ont la possibilité de les vendre à des grossistes
qui peuvent alors pratiquer des ventes au rabais. Un seul statut est proposé aux clients, celui d'adhérent.
Chaque adhérent se voit attribuer une carte d'adhésion sur laquelle est mentionné un code adhérent. Il peut

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 121
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

alors choisir entre plusieurs types d’abonnement. Les tarifs varient selon le mode d'abonnement choisi.
Quatre tarifs adaptés aux locations sont proposés en fonction des différents types d'abonnement. Toutefois,
on peut louer des cassettes aux clients non abonnés sans leur faire profiter des avantages tarifaires réservés
aux abonnés. Le but est de décrire la vue des besoins (use case view) de ce système. TAF : Donner
le diagramme des cas d'utilisation du système. Penser à utiliser la généralisation d’acteurs ; Décrire le
scénario « Location Cassettes » par un diagramme de séquence.

AnalyseUML21 : Gestion d’Entrepôt (Etablir Le Diagramme de Cas d'Utilisation,


Diagramme de Séquence). Il s'agit de réaliser un logiciel d'aide à la gestion d'un entrepôt de stockage de
différents produits chimiques. Ce logiciel a pour but d'améliorer la répartition des produits et d'assurer la
sécurité du dépôt en évitant par exemple, le stockage de certains produits dans le même local ou dans des
locaux voisins. A cette fin, le responsable de l'entrepôt doit pouvoir effectuer des vérifications, à tout
moment, en demandant au système un rapport complet sur l'état des stocks. Cet entrepôt dispose d'un quai
de déchargement et de chargement. Il est organisé en locaux adaptés aux différents types de produits
(toxicité, température de stockage, réaction chimique, …). Chaque local comprend un certain nombre de
casiers numérotés. Chaque jour, deux employés sont chargés de réceptionner les arrivées qui doivent
correspondre aux commandes de l'entreprise. Celles-ci sont communiquées par le système central à celui
de l'entrepôt, chaque matin, à la demande du responsable. Un employé, quand il réceptionne un chargement,
fournit au système les caractéristiques de ce chargement ainsi que celles de chacun des lots de produits qui
le constitue. Pour chacun des lots, le système détermine le casier où ranger ce lot et fournit au code barre
et une fiche d'allocation qui seront collés par l'employé sur le lot. Une fois un chargement réceptionné, les
produits sont acheminés dans les locaux et rangés dans les casiers par les manutentionnaires suivant le plan
d'allocation établi par le système. Les erreurs de livraison seront signalées. Travail à Faire : Réaliser le
diagramme des Cas d'utilisation.

AnalyseUML22 : Gestion de bibliothèque. Un gérant de bibliothèque désire automatiser la gestion


des prêts. Il commande un logiciel permettant aux utilisateurs de connaître les livres présents, d'en réserver
jusqu'à 2. L'adhérent peut connaître la liste des livres qu'il a empruntés ou réserves. L'adhérent possède un
mot de passe qui lui est donné à son inscription. L'emprunt est toujours réalisé par les employés qui
travaillent à la bibliothèque. Après avoir identifié l'emprunteur, ils savent si le prêt est possible (nombre
max de prêts = 5), et s'il a la priorité (il est celui qui a réservé le livre). Ce sont les employés qui mettent en

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 122
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

bibliothèque les livres rendus et les nouveaux livres. Il leur est possible de connaître l'ensemble des prêts
réalisés dans la bibliothèque. Travail à Faire : Réaliser le diagramme des Cas d'utilisation.

AnalyseUML23 : Le Cas MonAuto. MonAuto est une entreprise qui fait le commerce, l'entretien
et les réparations de voitures. MonAuto désire exploiter un logiciel de gestion des réparations; elle dispose
déjà d'un logiciel comptable. Les factures de réparations seront imprimées et gérées par le logiciel
comptable. Le logiciel de gestion des réparations devra communiquer avec le logiciel comptable pour lui
transmettre les réparations à facturer. Le logiciel de gestion des réparations est destiné en priorité au chef
d'atelier, il devra lui permettre de saisir les fiches de réparations et le travail effectué par les divers employés
de l'atelier. Pour effectuer leur travail, les mécaniciens et autres employés de l'atelier vont chercher des
pièces de rechange au magasin. Lorsque le logiciel sera installé, les magasiniers ne fourniront des pièces
que pour les véhicules pour lesquels une fiche de réparation est ouverte; ils saisiront directement les pièces
fournies depuis un terminal installé au magasin. Lorsqu'une réparation est terminée, le chef d'atelier va
essayer la voiture. Si tout est en ordre, il met la voiture sur le parc clientèle et bouclera la fiche de réparation
informatisée. Les fiches de réparations bouclées par le chef d'atelier devront pouvoir être importées par le
comptable dans le logiciel comptable.

AnalyseUML24 : Pour faciliter sa gestion, un entrepôt de stockage envisage de s’informatiser. Le


logiciel à produire doit allouer automatique un emplacement pour le chargement des camions qui convoient
le stock à entreposer. Le fonctionnent du système informatique doit être le suivant :

 déchargement d’un camion : lors de l’arrivée d’un camion, un employé doit saisir dans le système
les caractéristiques de chaque article ; le système produit alors une liste où figure un emplacement
pour chaque article ;

 chargement d’un camion : les caractéristiques des articles à charger dans un camion sont saisies par
un employé afin d’indiquer au système de libérer des emplacements ;

 Le chargement et le déchargement sont réalisés manuellement. Les employés de l’entrepôt sont sous
la responsabilité d’un chef dont le rôle est de superviser la bonne application des consignes. Travail
à Faire : Dégager les Acteurs ; Donner le Diagramme des cas d’utilisation.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 123
Mon BORD « MonBTS » - Recueil de Cours + TD Pour La Préparation Au BTS Filières IGL & GSI

AnalyseUML25 : Contrôle d'Accès à Un Bâtiment. Suite à la disparition d'objets divers, il a été


décidé de restreindre les accès à certaines salles au moyen de portes à fermeture automatique. L'ouverture
de chacune des portes est commandée par un lecteur de badges placé à proximité. Les badges qui permettent
l'ouverture des portes ne sont délivrés qu'aux personnes qui doivent accéder aux locaux protégés. Le
système de contrôle d'accès doit fonctionner de la manière la plus autonome possible. Un superviseur est
responsable de la configuration initiale et de la mise à jour des différentes informations de définition des
groupes de personnes et de portes. Un gardien dispose d'un écran de contrôle et est informé des tentatives
de passage infructueuses. Les alarmes sont transmises en temps légèrement différé sur l'écran de contrôle
(mise à jour toutes les minutes). TAF : Écrire Le Diagramme des Cas d'Utilisation.

AnalyseUML26 : La Gestion de bibliothèque. Un gérant de bibliothèque désire automatiser la


gestion des prêts. Il commande un logiciel permettant aux utilisateurs de connaître les livres présents, d'en
réserver jusqu'à 2. L'adhérent peut connaître la liste des livres qu'il a empruntés ou réserves. L'adhérent
possède un mot de passe qui lui est donné à son inscription. L'emprunt est toujours réalisé par les employés
qui travaillent à la bibliothèque. Après avoir identifié 'emprunteur, ils savent si le prêt est possible (nombre
max de prêts = 5), et s'il a la priorité (il est celui qui a réservé le livre). Ce sont les employés qui mettent en
bibliothèque les livres rendus et les nouveaux livres. Il leur est possible de connaître l'ensemble des prêts
réalisés dans la bibliothèque. TAF : Écrire Le Diagramme des Cas d'Utilisation.

Mon BORD « MonBTS » - Proposé Par Monsieur Wilfreed MINFOUNDI Manguele - 655 25 55 01 124

Vous aimerez peut-être aussi