📝
Correction de l’épreuve de
pratique professionnelle
Partie A : Cryptographie
Exercice 1: QCM (5 points)
1. Que représente un certificat numérique ?
B. Un moyen de garantir la relation univoque entre une clef publique
et son véritable propriétaire
2. Une entreprise utilise le cryptage symétrique. Laquelle des énoncés
suivants, serait une raison valide pour migrer vers le cryptage asymétrique
?
B. Le cryptage symétrique peut rendre l'administration des clés
difficile
3. Lequel des mots de passe suivants, peut être considéré comme le plus sûr
?
B. Y*opx04>O
4. Que se passe-t-il si vous cryptez un message confidentiel avec votre clé
privée ?
B. Le monde entier pourra le déchiffrer
5. Selon le système de César, quel est le mot caché derrière ce code :
FUBSWRKUDSKLH ?
B. Cryptographie
Exercice 2: Chiffrement par Décalage (5 points)
1. Coder le message "la rencontre est prévue à la cafétéria" à l’aide du
chiffrement par décalage et de la clé K = 5.
Correction de l’épreuve de pratique professionnelle 1
Pour coder avec un décalage de 5 :
'a' devient 'f'
'b' devient 'g'
etc.
Voici le message codé :
"la rencontre est prévue à la cafétéria" devient "qf wjshtsywj jxy
uwajzj f qf hfjéynwnf"
2. Décoder le message “RGNEIDVGPEWXTRAPHHXFJT” sachant qu’il a été
créé par un chiffrement par décalage.
Méthode à suivre :
Utiliser une analyse de fréquence pour déterminer le décalage le plus
probable.
Essayer des décalages de 1 à 25 jusqu'à obtenir un texte lisible.
Par exemple, avec un décalage de 5, le texte
"RGNEIDVGPEWXTRAPHHXFJT" se décode en
"MBIZDYBQKZRSOMVKKCSAE".
Exercice 3: Analyse Fréquentielle (10 points)
Message codé : SVOXFYIKNKXCVKVSQEBSOKMRODOBNOCCYVNKDC
1. Trouver la clé avec l'analyse de fréquence :
Les lettres les plus fréquentes en français sont 'E' et 'A'.
Les lettres les plus fréquentes dans le message codé sont 'K' et 'O'.
Si 'K' correspond à 'E' (K = 10e lettre et E = 5e lettre), décalage = 10 - 5
= 5.
Si 'O' correspond à 'A' (O = 15e lettre et A = 1re lettre), décalage = 15 - 1
= 14.
2. Déchiffrer le message avec la clé trouvée (K = 10) :
Message décodé avec K = 10, après ajout des espaces : "IL ENVOYA
DANS LA LIGURDE CHEZ VERD SES OL DA VS"
Méthode : Insérer les espaces pour obtenir un texte cohérent.
Correction de l’épreuve de pratique professionnelle 2
Partie B : Développement d'applications distribuées
1. Définitions (5 points)
1. Activité : Une tâche unique dans une application Android.
2. Application mobile : Logiciel conçu pour fonctionner sur des appareils
mobiles.
3. DVM (Dalvik Virtual Machine) : Machine virtuelle spécifique à Android pour
exécuter des applications compilées en bytecode Java.
4. ADB (Android Debug Bridge) : Outil en ligne de commande pour
communiquer avec un appareil Android.
5. ADT (Android Development Tools) : Plugin Eclipse pour le développement
d'applications Android.
2. QCM (7 points)
1. Cycle de vie de l'activité Android :
b. onCreate() −>onStart() −>onResume() −>onPause() −>onStop()
−>onRestart() −>onDestroy()
2. Sous quelle Licence Android est autorisé ?
c. Apache/MIT
3. Lequel des noyaux suivants est utilisé dans Android ?
c. Linux
4. Que signifie AVD ?
a. Android Virtual Device
5. Composant Android affichant une partie d'une activité ?
a. View
6. Où s'affichent les erreurs ?
d. Logcat
7. Contenu du manifest.xml ?
c. Autorisation requise par l'application
3. Avantages d'Android (2 points)
Correction de l’épreuve de pratique professionnelle 3
1. Open Source
2. Large Écosystème
3. Compatibilité Multiplateforme
4. Personnalisation
4. Formulaire Layout activity_main.xml
4.1 Composants graphiques (3 points)
Button
EditText
TextView
CheckBox
RadioButton
Spinner
4.2 Code source de la méthode OnCreate() (3 points)
javaCopier le code
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button okButton = findViewById(R.id.okButton);
EditText nameInput = findViewById(R.id.nameInput);
EditText emailInput = findViewById(R.id.emailInput);
okButton.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
String name = nameInput.getText().toString();
String email = emailInput.getText().toString();
String message = "Name: " + name + ", Email: "
+ email;
Toast.makeText(MainActivity.this, message, Toas
Correction de l’épreuve de pratique professionnelle 4
t.LENGTH_LONG).show();
}
});
}
Partie D : Méthodes du génie logiciel
1. Définitions (4 points)
Logiciel : Ensemble de programmes, procédures et documents relatifs au
fonctionnement d'un système informatique.
Génie logiciel : Discipline de l'ingénierie qui traite de la conception, du
développement, et de la maintenance des logiciels.
Modélisation : Processus de création d'un modèle abstrait d'un système
logiciel pour comprendre, analyser et documenter ses caractéristiques et
comportements.
Planification : Processus d'élaboration d'un plan détaillé pour accomplir les
tâches de développement logiciel, y compris l'estimation des ressources, la
gestion des risques et l'établissement d'un calendrier.
1. Quatre critères de qualité d’un logiciel (2 points)
Fiabilité
Efficacité
Sécurité
Maintenabilité
1. Cycle de vie d’un logiciel et ses étapes (4 points)
Le cycle de vie d'un logiciel est un modèle décrivant les phases successives de
développement et de maintenance d'un logiciel. Les étapes typiques sont :
1. Conception et spécification des exigences
2. Conception de l'architecture et du design
3. Implémentation et codage
4. Tests et validation
5. Déploiement et maintenance
Correction de l’épreuve de pratique professionnelle 5
6. Trois modèles de cycles de vie avec un exemple pour chacun (3 points)
7. Modèle en cascade : Phases linéaires et séquentielles. Exemple :
Développement de systèmes d'exploitation.
8. Modèle en spirale : Itératif avec évaluation des risques. Exemple :
Développement de systèmes complexes nécessitant une évaluation
fréquente des risques.
9. Modèle Agile : Développement itératif et incrémental. Exemple :
Développement d'applications web avec des exigences changeantes.
10. Description d'une méthode de développement objet (2 points)
Méthode UML (Unified Modeling Language) : Utilisée pour la modélisation
de systèmes orientés objet. UML offre un ensemble de diagrammes pour
représenter les différentes perspectives du système, telles que la structure
statique (diagrammes de classes), le comportement dynamique
(diagrammes de séquence), et les interactions (diagrammes de
collaboration).
Correction de l’épreuve de pratique professionnelle 6