REPUBLIQUE DU CAMEROUN REPUBLIC OF CAMEROON
---------------------- Session de Juin 2025 ----------------------
Paix-Travail-Patrie Peace-Work-Fatherland
---------------------- ----------------------
MINISTERE DE L’ENSEIGNEMENT MINISTRY OF HIGHER
SUPERIEUR EDUCATION
---------------------- ----------------------
COMMISION NATIONAL NATIONAL COMMISION FOR
D’ORGANISATION DE L’EXAMEN THE ORGANISATION OF
NATIONAL DU BREVET DE BREVET DE TECHNICIEN
TECHNICIEN SUPERIEUR (BTS) SUPERIEUR (BTS) EXAM
Spécialité / Option : Nature de l’Epreuve :
GENIE LOGICIEL (GL) ÉCRITE
Durée : 06 HEURES Crédit : 10
EPREUVE PROFESSIONNELLE DE SYNTHESE (EPS)
L’épreuve est constituée de 05 parties indépendantes (Partie I, II, III, IV, V).
Chaque partie est constituée de deux exercices chacune.
L’épreuve doit être traitée distinctement dans son intégralité.
La qualité de la rédaction et la pertinence des réponses seront prises en compte.
PARTIE I : ANALYSE INFORMATIQUE AVEC MERISE (25pts)
EXERCICE 1 : CONNAISSANCE DU COURS (10pts)
1. Définir les termes suivants : entité, cardinalité, SGBDR, MERISE, relation, modèle,
propriété, diagramme de flux. 4pts
2. Enumérer les différentes cycles ou dimensions de la méthode MERISE. 2pts
3. Enumérer les différents modèles obtenus dans chaque niveau dans le cycle
d’abstraction selon la méthode MERISE 2pts
4. Donner les caractéristiques principales de la méthode MERISE 2pts
EXERCICE 2 : ETUDE DE CAS (15pts)
On désire informatiser l’organisation d’un cycle de colloques. Les différents colloques se
déroulent dans des universités différentes à des dates différentes et sont organisés par des
personnes différentes. Chaque colloque est constitué d’un ensemble d’exposés. Il est identifié
par un nom et est décrit par la date à laquelle il a lieu, ainsi que par le nom et l’adresse de
l’université où il se déroule à cette date. Chaque exposé est caractérisé par un titre unique et
un résumé. Un exposé est présenté par un seul conférencier dans un colloque. Plusieurs
conférenciers peuvent présenter le même exposé dans des colloques différents. On souhaite
garder trace dans la base de données des inscriptions des participants aux divers colloques.
Les organisateurs et les conférenciers d’un colloque sont considérés comme des participants
de ce colloque. Un conférencier peut aussi être un organisateur. Une personne ne peut
participer à l’organisation que d’un seul colloque. Un participant est identifié par son numéro
et décrit par ses noms, prénom et adresse. Pour chaque conférencier, on souhaite également
disposer du nom de l’institution d’où il provient, et pour chaque organisateur, on enregistre
également un numéro de téléphone.
1. Etablir le Dictionnaire des données (nom, signification, type, longueur). 4pts
2. Schématiser le Modèle Conceptuel des Données (MCD) 5pts
3. Construire le Modèle logique des Données (MLD) 6pts
PARTIE II : ANALYSE INFORMATIQUE AVEC UML (25pts)
EXERCICE 1 ; CONNAISSANCE DU COURS (10pts)
1. Définir les termes suivants : relation d’agrégation, relation de composition,
polymorphisme, encapsulation 4pts
2. Enumérer les différences entre l’objet et la classe 2pts
3. Enumérer les différences entre la programmation structurée et la programmation
évènementielle 2pts
4. Donner la différence entre l’incrémentation et la décrémentions en programmation
2pts
EXERCICE 2 : ETUDE DE CAS (15pts)
Cas 1 : Diagramme de Classe :
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
Etablir le diagramme de classe pour la gestion des vols (5 Points) ;
Cas 2 : Diagramme de Cas d’utilisation, Séquence :
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.
Etablir le diagramme de cas d’utilisation (5 Points) ;
Etablir le diagramme de séquence pour un scénario dans lequel un client se
connecte au site et achète un billet.
(5 Points) ;
PARTIE III : ALGORITHMIQUE ET STRUCTURE DE DONNEES
AVANCEES (20pts)
EXERCICE 1 : CONNAISSANCE DU COURS (05pts)
1. Définir les termes suivants : file, pile, fichier, tableau. 2pts
2. Enumérer les avantages et inconvénients
a. d’un vecteur ou d’un tableau
b. d’une liste chainée 1pt
3. Qu’est-ce qu’une liste chaine chainée ? Pourquoi utiliser une telle structure dans un
programme 2pts
EXERCICE 2 : ETUDE DE CAS (15pts)
Problème 1 : Soient les informations suivantes concernant un individu : son nom, son année
de naissance, sa nationalité, son sexe (F pour Féminin, M pour Masculin). Les individus sont
stockés dans un tableau de taille 20 maximum.
1) Définir les structures de données nécessaires à la résolution dudit problème ; 1pt
2) Ecrire un sous – programme qui permet d’enregistrer dans le tableau, les informations
sur un individu en prenant soin de mettre le nombre d’éléments enregistrés dans le
tableau à jour ; 2pts
3) Ecrire un sous – programme qui permet d’enregistrer dans le tableau, les informations
sur N individu en évitant les doublons ; 2pts
4) Ecrire un sous – programme qui retourne l’âge d’un individu donné en l’an 2035 2pts
Problème 2 : 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.
1. Définir les structures de données nécessaires pour la résolution de ce problème. 1pt
2. Écrire une procédure pour l’enregistrement d’un nouveau client (données sur le client
entrées au clavier) tout en évitant les doublons sachant qu’il y a un certain nombre de
clients présents dans le tableau. 2pts
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. 2pts
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. 2pts
5. Écrire une procédure qui trie le tableau des clients suivant le champ nom. 1pt
PARTIE IV : BASE DE DONNEES (10pts)
EXERCICE 1 : CONNAISSANCE DU COURS (04pts)
1. Que signifie chacun des sigles suivants:DDL, DML, DDL, DCL, TCL 2pts
2. Pour chacun des sigles ci-dessus, donnez deux instructions SQL qui s'y rapportent 2pts
EXERCICE 2 : ETUDE DE CAS (06pts)
La base de données d’une bibliothèque est constituée des relations suivantes :
Soit le modèle relationnel suivant relatif à la gestion des notes annuelles d'une 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
1.1. Donner les instructions SQL de création des tables de cette base de données ;
1.2. Exprimer les requêtes suivantes en SQL :
1.2.1.Quel est le nombre total d'étudiants ?;
1.2.2.Quelles sont, parmi l'ensemble des notes, la note la plus haute et la note la plus basse ?;
1.2.3.Quelles sont les moyennes de chaque étudiant dans chacune des matières ?;
1.2.4.Quelles sont les moyennes par matière ?;
1.2.5.Quelle est la moyenne générale de chaque étudiant ?;
1.2.6.Quelle est la moyenne générale de la promotion ?;
PARTIE V : GENIE LOGICIEL (20pts)
EXERCICE 1: CONNAISSANCE DU COURS (08pts)
1. Définir les termes et expressions suivants : Génie logiciel, cahier des charges, logiciel,
cycle de vie d'un logiciel. 2pts
2. Enumérer 4 qualités d'un cahier de charges en expliquant un peu chacune d'elle ? 4pts
3. Quels sont les avantages ct les inconvénients du modèle en cascade 2pts
EXERCICE 2 : ETUDE DE CAS (12pts)
1. Définir les expressions : Architecture MVC, Gestion de projet informatique. 1pt
2. Quels sont les avantages ct les inconvénients des tests en boite blanche 2pts
3. Pourquoi parle-t-on de "cycle de vie" en logiciel ?; 1pt
4. Décrivez les principaux cycles de vie du logiciel, montrez leurs principales forces et
faiblesses ; 2pts
5. Expliquez la notion de génie logiciel, et Que mettez-vous derrière ce terme, quel en est
l'objectif ?. Citez quelques thèmes proposés par le Génie Logiciel pour arriver à ces
objectifs ; 2pts
6. Expliquer la différence entre les facteurs de qualité logicielle internes et externes, quel
intérêt y a-t-il à définir des facteurs de qualité internes ? 2pts
7. Quels sont les principaux facteurs de qualité d’un logiciel 2pts