EXAMEN NATIONAL DE BTS
Sujet 1
Session de Juin 2023
FILIERE : GENIE INFORMATIQUE
SPECIALITES : GENIE LOGICIEL
EPREUVE : EPREUVE PROFESSIONNELLE DE SYNTHESE
TYPE DE L’EPREUVE : ECRITE
CREDIT : 05
DUREE : 6 heures
PARTIE 1 : Modélisation structurée « MERISE » (25 Pts)
A - CONNAISSANCES DE COURS
1 - Définir les termes suivants : Entité, Cardinalité, SGBDR, Propriété (4pt)
2 - Donner les caractéristiques principales de la méthode MERISE (3pts)
B – ETUDE DE CAS
L’établissement R.E.I. (Réparation Equipement Informatique) est chargé de la maintenance de
matériels informatique de haut de gamme. L’augmentation de sa clientèle a entraîné une hausse non
négligeable du volume des tâches administratives et de gestion (accueil, enregistrement des
matériels à réparer, facturation, distribution de travail), ainsi que du nombre de documents et
courriers établis (factures, avis de mise à disposition,...). Outre le directeur, le personnel de
l’établissement se compose de deux secrétaires et de quinze techniciens dont cinq sont chefs
d’ateliers.
Fonctions de lʼétablissement :
1- Réception des matériels à réparer :
Lorsquʼun particulier ou une société se présente avec un matériel ou plusieurs en panne, le
secrétariat enregistre:
- les coordonnées du client (nom, adresse, n° de téléphone).
- les caractéristiques du matériel (type, marque, modèle, n° de série).
- les symptômes de panne.
- des éléments de gestion (date dépôt,...).
Un accusé de réception du matériel, établi à partir de ces informations, est remis au client.
2- Réparation du matériel :
Trois documents sont créés :
- une fiche de travail, destinée au chef dʼatelier, remise avec le matériel concerné. Chaque atelier est
Spécialisé dans certains types de matériels, et chaque type de matériel nʼest traité que par un seul
atelier. Le
chef d’atelier organise la répartition du travail au niveau de son atelier.
- une fiche récapitulative, établie tous les matins à 9 heures, indiquent pour chaque atelier tous les
matériels à
réparer, dans lʼordre chronologique de leur réception.
- une étiquette, identifiant le matériel, est collée sur ce matériel.
La réparation effectuée, le chef d’atelier reprend la fiche de travail, et y inscrit les renseignements
suivants :
- Date de fin de réparation.
- Détail des pièces fournies.
- Temps de main-dʼœuvre.
- Réparation effectuée (commentaire).
La fiche est ensuite transmise au secrétariat et le matériel entreposé en vue de sa remise au client.
3 Facturation :
Dès réception de la fiche de travail, le secrétariat adresse au client un avis de mise à disposition de
son matériel et établit une facture qui lui sera remise lors de sa venue.
Il existe deux tarifs horaires suivant le type des pièces utilisées pour la réparation.
1) Etablir le Dictionnaire des données (nom symbolique, signification, type, longueur). (4 pts)
2) Schématiser le Modèle Conceptuel des Données (MCD). (8 pts)
3) Construire le Modèle logique des données (MLDR). (6 pts)
Partie 2 : Modélisation Objet UML 25pts
A – Connaissances de Cours 10pts
1. Quels sont les trois grands principes de la programmation orientée objet? 2Pts
2. En matière de conception orientée objet, qu’est-ce qu’un design pattern ? 2pts
Citez 2 design pattern de votre choix.
3. Quels sont les points communs et les différences qu’il y a entre une classe abstraite et une
interface ? 2pts
4. Lequel de ces langages n’est pas un langage orienté objet : C, C++, Java, SmallTalk. 2pts
5. Quels sont les deux grands concepts de la POO qui permettent de réutiliser le code ? 2pts
B – Cas pratique 15pts
Dans le cadre d’un projet de recherche en viticulture, on désire collecter les temps de travaux sur
des exploitations agricoles pilotes, pour travailler en particulier sur les opérations phytosanitaires.
Pour ce faire, un glossaire des opérations culturales types a été mis en place (afin que tout le
monde ait le même cadre analytique).
Des contraintes assez fortes sont apparues sur le projet : les ouvriers agricoles des exploitations
pilotes n’ont pas accès aux outils informatiques et la lourdeur d’enregistrement des temps de
travaux a donc de fait écarté l’utilisation d’un outil informatique.
La procédure suivante a ainsi été définie : chaque ouvrier agricole saisit ses temps de travaux sur un
cahier au format prédéfini. (dans ce cahier, il peut consulter en annexes le glossaire afin d’identifier
l’opération culturale type).
Nb : pour les opérations de type phytosanitaire, les informations complémentaires sont
demandées : liste des maladies visées, stade phénologique, méthodes de traitements et
observation.
En fin de mois, le chef d’exploitation vérifie la saisie effectuée sur le cahier et apporte
d’éventuelles corrections. Il saisit ensuite les opérations du mois sur une application internet
connectée à une base de données.
Le chercheur en charge du projet reçoit automatiquement un mail qui lui indique que la saisie
mensuelle a été effectuée.
Après avoir vérifié la pertinence de la saisie, il notifie au chef d’exploitation que tout s’est bien
passé et que les données intégrées dans la base de données sont valides et prêtes à être exploitées.
Le chef d’exploitation imprime alors 2 documents sur le mois écoulé :
- l’état mensuel des travaux pour chaque salarié (qui est remis à chaque salarié)
- l’état des opérations phytosanitaires (état Terravitis)
En fin d’année, le chercheur analyse toutes les opérations saisies et rédige une synthèse générale sur
les temps de travaux dans les différentes exploitations.
Cette synthèse est alors transmise à tous les chefs d’exploitation.
a. Modéliser cette situation à l’aide d’un diagramme de cas d’utilisation. 8pts
b. Modéliser ce système à l’aide d’un diagramme de séquences. 7pts
PARTIE 3 : Algorithmique et structure de données avancées (20 Pts)
A - Syntaxe d’algorithmes 8 pts
Ecrire un algorithme qui demande successivement 20 nombres à l’utilisateur, et
qui lui dise ensuite quel était le plus grand parmi ces 20 nombres :
Entrez le nombre numéro 1 : 12
Entrez le nombre numéro 2 : 14
etc.
Entrez le nombre numéro 20 : 6
Le plus grand de ces nombres est : 14
Modifiez ensuite l’algorithme pour que le programme affiche de surcroît en quelle position
avait été saisie ce nombre :
C’était le nombre numéro 2
B - Ecriture d’algorithmes 7 pts
Écrire un algorithme qui simule le jeu de pile ou face.
Déroulement du jeu : l'utilisateur saisit la lettre P pour pile, et F pour face, puis valide sa saisie (ou
bien il clique sur le bouton « Pile » ou le bouton « Face » dans le cas d'une interface graphique et
événementielle).
Le programme, lui, choisit aléatoirement un nombre entre 0 et 1.
Si le nombre tiré au sort est 0, alors pile est gagnant, face est perdant.
Si le nombre tiré au sort est 1, alors pile est perdant et face est gagnant.
Le programme affiche un message : gagné ou perdu.
C - Structures de données avancées 5pts
En vous servant d’un algorithme de tri de votre choix, écrivez l'algorithme qui permet d'afficher
dans l'ordre alphabétique 4 mots saisis dans un ordre quelconque.
Partie 4 : Manipulation des données 10 pts
Soit le MCD ci-dessus dans lequel les clés primaires sont en gras.
Ecriver les instructions SQL pour :
1. Créer toutes les tables avec les contraintes d’intégrité PK et FK.
2. Ajouter une contrainte positif (>=0) pour Montant de la table emprunt.
3. Modifier la valeur Null des Montants par la valeur 0.
4. Modifier les villes des Clients en minuscule.
5. Augmenter le solde de tous les clients habitant “yaoundé” de “0,5%”.
6. Afficher Liste des clients dont le nom se termine par E et le quatrième caractère est un A.
7. Afficher la Liste des agences ayant des emprunts-clients.
8. Afficher la liste des clients ayant un emprunt à “douala”.
9. Afficher la liste des clients ayant un compte et un emprunt à “bafoussam ”.
10. Afficher la liste des clients ayant un emprunt à la ville où ils habitent.
Partie 5 : INGÉNIERIE DU LOGICIEL (20 points)
1. Définitions
Génie logiciel, cahier des charges, logiciel, mock, cycle de vie d’un logiciel, test unitaire. (3 pts)
2.Énoncez de façon claire et précise la différence entre chacun des termes suivants ( 2,5 pts)
Test en boîte noire/ Test en boîte blanche ; test/débogage ; charge/durée; maître
d’œuvre(MOE)/maître d’ouvrage(MOA) ; logiciel/Programme.
3. Donner les 10 qualités d’un cahier de charges en expliquant brièvement chacune d’elle. (2,5 pts)
4. QCM : Cochez la ou les réponses justes. Ex : 1.a ; 1.b.
N.B : une réponse fausse cochée annule la question (4 pts)
Qcm1. La crise du logiciel vient du fait que :
a. les ordinateurs était de plus en plus coûteux
b. les délais de livraison des logiciels étaient rarement respectés
c. les langages de programmation de l’époque étaient trop lents
Qcm2. Un seul composant X est chargé de se connecter à une base de données, de lire dans cette
base de données, d’effectuer des calculs sur les données lues, d’envoyer des mails à
l’administrateur, d’effectuer des sauvegarde du système. Parlant d’un tel composant, on dira que :
a. la cohésion est forte
b. la cohésion est faible
c. il a été bien conçu
d. sa maintenance sera aisé
e. il sera difficile à maintenir
Qcm3. Le 20 Avril 2009, suite au rachat de Sun par Oracle, la société Informix décide de faire
passer son logiciel MedicalSoft du SGBD MySQL vers PostgreSQL. Pour cela, elle doit effectuer :
a. une maintenance corrective
b. une maintenance adaptative
c. une maintenance perfective
Qcm4. Une bonne conception doit avoir :
a. un couplage fort et une cohésion forte
b. un couplage faible et une cohésion faible
c. un couplage faible et une cohésion forte
d. un couplage fort et une cohésion faible
5. Un seul mot peut être mis dans les 2 espaces suivants, lequel ? (2 pts)
La ______________ représente le degré avec lequel une classe a une seule responsabilité unique et
spécifique. Une classe qui a une faible __________________ est donc une classe qui effectue à elle
seule des actions diverses et variées.
6. Quels sont les avantages et les inconvénients du modèle en cascade ? (3 pts)
7. Dans quelles situations faut-il utiliser le modèle par prototypage ? (3 pts)