Chapitre 29 minIntermédiaire
Les compétences du bloc 2 SLAM évaluées à l'E6
Par Josselyn C., prof de BTS SIO. Mis à jour le .
À la fin de ce chapitre, tu sauras
- citer les compétences du bloc 2 SLAM ;
- dire ce que la commission attend pour chacune ;
- repérer ce qui relève d'un autre bloc.
1 exercice corrigé1 schéma
Le bloc 2 de l'option SLAM, « Conception et développement d'applications », regroupe trois compétences : concevoir et développer une solution applicative, assurer sa maintenance corrective ou évolutive, et gérer les données. L'E6 les évalue toutes les trois. Ce chapitre donne leurs intitulés exacts, tirés du référentiel du BTS SIO, et traduit chaque indicateur officiel en preuve concrète que la commission peut voir.
Le référentiel ne numérote pas ces compétences. Tu verras souvent les codes C2.1, C2.2 et C2.3 dans les supports de cours, ou B2.1 à B2.3, qui sont les numéros des activités correspondantes. À l'oral, cite plutôt l'intitulé : il est sur la fiche descriptive et dans la grille de la commission.
Concevoir et développer une solution applicative
C'est la compétence la plus large : onze sous-compétences. La commission la regarde surtout pendant la phase 1 (analyse, architecture, choix des composants) et dans la qualité de ce que tu produis en phase 2.
| Sous-compétence (intitulé du référentiel) | Ce que la commission veut voir | Exemple de preuve |
|---|---|---|
| Analyser un besoin exprimé et son contexte juridique | ta solution répond au besoin écrit, y compris à ses contraintes contractuelles et juridiques | tu relèves qu'un motif de refus est une donnée personnelle et tu limites qui le lit |
| Participer à la conception de l'architecture d'une solution applicative | tu sais où se place ta modification dans les couches de l'application | un schéma « navigateur, API, base » avec la case que tu modifies |
| Modéliser une solution applicative | ta modélisation est conforme au besoin et ta maquette respecte les fonctionnalités | un MLD mis à jour, une maquette d'écran rapide |
| Exploiter les ressources du cadre applicatif (framework) | tu utilises ce que le framework fournit au lieu de le réécrire | un middleware Express, un validateur, un composant .NET |
| Identifier, développer, utiliser ou adapter des composants logiciels | le choix des composants est pertinent et ils sont validés par des tests | une bibliothèque choisie et justifiée, une classe réutilisée |
| Exploiter les technologies Web pour mettre en œuvre les échanges entre applications, y compris de mobilité | un service Web échange des données entre applications | une API REST qui renvoie du JSON, appelée par un front |
| Utiliser des composants d'accès aux données | les données persistantes passent par un langage de requête ou un ORM maîtrisé | des requêtes préparées, une couche DAO |
| Intégrer en continu les versions d'une solution applicative | un outil de gestion des versions est utilisé, et une documentation des versions accompagne l'intégration | des commits clairs, un CHANGELOG, des tests lancés à chaque push |
| Réaliser les tests nécessaires à la validation ou à la mise en production d'éléments adaptés ou développés | des tests unitaires, fonctionnels et d'intégration valident ce que tu livres | un test automatisé qui passe, un rapport de test |
| Rédiger des documentations technique et d'utilisation d'une solution applicative | un document par contexte d'utilisation, adapté à son lecteur | un README technique, une page d'aide pour l'utilisateur |
| Exploiter les fonctionnalités d'un environnement de développement et de tests | tu maîtrises ton IDE, ton débogueur, tes outils de test | un point d'arrêt posé pour trouver un bug |
Deux indicateurs de cette compétence passent souvent inaperçus : « le développement tient compte des préoccupations de développement durable » (ne pas charger 10 000 lignes pour en afficher 20, par exemple) et « un document est rédigé pour chaque contexte d'utilisation ». Ils te donnent des arguments faciles en entretien.
Assurer la maintenance corrective ou évolutive d'une solution applicative
C'est le cœur de l'E6 : l'expression des besoins te demande presque toujours de faire évoluer ou de corriger une application existante, la tienne. Cette compétence se joue en phase 2 et pendant la recette. Le cours Maintenance applicative la travaille pas à pas : reproduire un bug, le corriger sans régression, faire évoluer une fonctionnalité, tenir la documentation à jour.
| Sous-compétence (intitulé du référentiel) | Ce que la commission veut voir | Exemple de preuve |
|---|---|---|
| Recueillir, analyser et mettre à jour les informations sur une version d'une solution applicative | l'évolution répond aux besoins exprimés et tu sais situer ta version | un ticket, une entrée de CHANGELOG, un tag Git |
| Évaluer la qualité d'une solution applicative | tu adaptes des composants pour améliorer la qualité | une fonction dupliquée remplacée par une seule, un linter |
| Analyser et corriger un dysfonctionnement | le dysfonctionnement est corrigé selon une procédure et dans les délais | bug reproduit, cause trouvée, correction, test de non-régression |
| Mettre à jour des documentations technique et d'utilisation d'une solution applicative | la documentation suit le code | le README et le dictionnaire de données mis à jour |
| Élaborer et réaliser les tests des éléments mis à jour | les composants modifiés sont validés et les tests de non-régression sont faits | l'ancien test passe toujours, un nouveau test couvre l'évolution |
Les indicateurs ajoutent trois attentes que tu dois montrer pendant la recette : la modélisation existante est mise à jour, l'interface modifiée respecte les contraintes ergonomiques, et l'application modifiée reste « opérationnelle et stable dans l'environnement de production ».
Gérer les données
Quatre sous-compétences, toutes visibles dans ta base. Même quand une expression des besoins parle d'un écran, elle touche presque toujours aux données : une colonne, une requête, une contrainte.
| Sous-compétence (intitulé du référentiel) | Ce que la commission veut voir | Exemple de preuve |
|---|---|---|
| Exploiter des données à l'aide d'un langage de requêtes | l'exploitation des données construit l'information attendue | une requête avec jointure et regroupement qui donne le bon total |
| Développer des fonctionnalités applicatives au sein d'un système de gestion de base de données (relationnel ou non) | les traitements programmés dans la base sont conformes au besoin | une procédure stockée, un trigger, une vue |
| Concevoir ou adapter une base de données | les données sont modélisées selon le besoin et le type de base est pertinent | une table ajoutée avec ses clés et ses contraintes |
| Administrer et déployer une base de données | les accès respectent les habilitations, la base est sauvegardée, des restaurations sont testées | un compte applicatif aux droits limités, un mysqldump planifié, un test de restauration |
L'indicateur le plus oublié : « Des tests de restauration sont effectués. » Une sauvegarde jamais restaurée ne prouve rien. Fais-en un au moins une fois dans une de tes réalisations, et garde la trace.
Ce qui relève d'un autre bloc
La sécurité du code (contrôle d'accès, injection, mots de passe) appartient au bloc 3, évalué à l'écrit de l'E7. Elle reste présente à l'E6 de deux façons : l'indicateur « les accès aux données sont contrôlés conformément aux habilitations » fait partie de « Gérer les données », et une solution non sécurisée ne répond pas au besoin. Une route qui laisse un salarié lire la note de frais d'un collègue ne remplit pas la demande, même si elle renvoie le bon résultat. Le cours Sécurité applicative couvre ces failles une par une, et le cours Épreuve E7 SLAM prépare l'écrit lui-même : règlement, compétences du bloc 3, annales et épreuves blanches.
Exercices
Exercice Trouver la compétence dominante Réussi À revoir
Voici six demandes que l'on peut trouver dans une expression des besoins. Pour chacune, donne la compétence du bloc 2 la plus mobilisée et une sous-compétence précise.
- Ajouter un export CSV des notes de frais validées d'un mois.
- Corriger un bug : une note clôturée le dernier jour du mois n'apparaît pas dans la liste de ce mois.
- Afficher, pour chaque service, le total remboursé dans l'année.
- Interdire au niveau de la base l'ajout d'une installation quand toutes les licences d'un logiciel sont utilisées.
- Écrire les tests qui prouvent qu'un salarié ne peut pas valider sa propre note.
- Mettre à jour le guide utilisateur après l'ajout d'un écran.
Voir la réponseMasquer la réponse de l'exercice
- Concevoir et développer : « Identifier, développer, utiliser ou adapter des composants logiciels ». C'est aussi de la maintenance évolutive, puisque l'application existe.
- Maintenance : « Analyser et corriger un dysfonctionnement », puis « Élaborer et réaliser les tests des éléments mis à jour » pour le test de non-régression.
- Gérer les données : « Exploiter des données à l'aide d'un langage de requêtes » (jointure,
GROUP BY,SUM). - Gérer les données : « Développer des fonctionnalités applicatives au sein d'un SGBD » (un trigger).
- Concevoir et développer : « Réaliser les tests nécessaires à la validation… ». La règle elle-même relève des habilitations, un indicateur de « Gérer les données ».
- Maintenance : « Mettre à jour des documentations technique et d'utilisation ».
Une demande mobilise presque toujours les trois compétences. Repérer la dominante te dit où mettre ton effort et quel vocabulaire employer en entretien.
Tu avais trouvé ?