Vous avez résolu le même problème.
Maintenant, reprenez le leur.
À chaque sprint, votre équipe évalue les 4 autres bases de code : 30 points sur 100. Vous démarrez chaque base, vous vous y repérez, vous la modifiez. La question de la grille, « voudrais-je hériter de cette base ? », vous y répondez. Au prochain sprint, c'est peut-être la vôtre.
30 points
Le volet pairs, sur les 100 du sprint
4 épreuves
Reprise en main, architecture, changement sonde, confiance
Une journée
Le j9 entier, sur les bases gelées, toute l'équipe
Tous vers tous
Chaque base reçoit 4 fiches ; sa note est la médiane
Le croisement
Tous vers tous.
Chaque équipe relit les 4 autres bases, avec les mêmes consignes pour toutes. Chaque base reçoit donc 4 fiches indépendantes, et sa note est la médiane des 4 totaux, après modération. Le formateur traite au débrief les écarts entre les 4 fiches.
Le barème
4 épreuves, 30 points.
Vous mesurez l'effet de la grille : le temps qu'il vous faut pour démarrer la base, y retrouver quelque chose, la modifier.
Vous retenez le niveau dont vous observez tout. Si vous hésitez entre 2 niveaux, prenez le plus bas et écrivez ce qui manquait pour l'autre. Chaque note s'appuie sur un fait constaté et une piste d'amélioration.
Le détail
Ce que vous faites, niveau par niveau.
Reprise en main
/8Un binôme clone la branche de la base évaluée et suit uniquement le README. Ses 2 membres échangent seulement entre eux. Chacun travaille sur sa machine, dans l'environnement de référence de la promotion. On retient le temps le plus long et ce qui a différé.
- Le chrono démarre à la première commande du README et s'arrête quand l'application répond et que les tests sont verts. Les téléchargements comptent. Si un outil manque et que le README l'annonce dans ses prérequis, le chrono se met en pause le temps de l'installer. S'il manque sans être annoncé, le chrono tourne : la faute est au README.
- L'intégration continue atteste au gel que les tests passent. P1 mesure les étapes humaines.
- À 20 minutes, le chrono s'arrête, P1 est noté au niveau atteint, et le formateur donne la commande de démarrage pour que P2 et P3 se fassent sur une base qui tourne.
| Niveau | Points | On observe |
|---|---|---|
| Maîtrisé | 8 | Démarre et tests verts, en 10 minutes ou moins, en suivant le README sans aucune correction |
| Solide | 5 | Démarre et tests verts, en 10 à 20 minutes, ou avec une ou 2 corrections (variable, commande, version) |
| Fragile | 3 | L'un des 2 seulement ; ou plus de 20 minutes ; ou 3 corrections et plus ; ou pas de tests dans la base |
| Absent | 0 | Ni démarrage ni tests en suivant le README |
Se repérer dans la base
/7Le formateur a donné 3 éléments à localiser, pris dans ce que le sprint a ajouté (la règle métier X, la validation de la nouvelle route, l'accès à la nouvelle table). 3 membres cherchent, chacun seul et en silence, 10 minutes au plus. On note le temps médian et le nombre de trouveurs. Un élément est trouvé quand au moins 2 des 3 arrivent au même chemin.
| Niveau | Points | On observe |
|---|---|---|
| Maîtrisé | 7 | Les 3 éléments localisés, temps médian de 5 minutes ou moins |
| Solide | 5 | Les 3 éléments localisés, temps médian entre 5 et 10 minutes ; ou un élément se trouve à un endroit que le nommage contredit |
| Fragile | 2 | Un élément non localisé dans les 10 minutes, ou éclaté sur 3 fichiers ou plus |
| Absent | 0 | 2 éléments ou plus non localisés dans les 10 minutes |
Le changement sonde
/8Une petite modification imposée, identique pour les 4 bases : elle mesure ce qu'il en coûte de modifier la base. Elle est consignée avant le gel, et le formateur l'a réalisée lui-même sur chaque base en 5 minutes ou moins.
- Un binôme a 20 minutes chrono pour le changement, puis 5 minutes pour consigner le patch et les observations. Au sprint 1, le changement dispose de 30 minutes. Le travail se fait sur le clone de la branche gelée, sur une branche locale :
git checkout -b sonde-<votre-equipe>, et tout reste en local : la commandegit pushest proscrite. À la fin du chrono, on s'arrête là où on en est. - Le patch est joint à la fiche, puis la branche et le clone sont supprimés. Écrire le test est facultatif : dites si un test existant a réagi, et sinon dans quel fichier vous l'ajouteriez.
- P1 et P3 sont des faits : le formateur a démarré chaque base et réalisé la sonde avant la séance. Si votre binôme met 20 minutes là où il en a mis 5, il ramène la note au niveau qu'il a constaté.
| Niveau | Points | On observe |
|---|---|---|
| Maîtrisé | 8 | Changement fait en un seul endroit logique ; un test existant a réagi, ou un test ajouté figure dans le patch ; aucune surprise |
| Solide | 5 | Changement fait, mais 2 endroits touchés qui auraient dû n'en faire qu'un, ou aucun test ne le protège |
| Fragile | 3 | 3 endroits touchés ou plus ; ou des tests sans rapport ont cassé, mais la cause a été identifiée et corrigée dans le temps imparti |
| Absent | 0 | Pas de patch fonctionnel à la fin du chrono, ou la suite de tests reste en échec après le changement |
Confiance : « on en hériterait ? »
/7P4 est votre jugement d'ensemble, la synthèse de P1 à P3 et de votre lecture. Chaque force et chaque faiblesse porte un chemin de fichier, chaque faiblesse une piste. Vous en relevez autant que vous en constatez. Une faiblesse que l'équipe a documentée dans ses ADR se note « assumée ».
| Niveau | Points | On observe |
|---|---|---|
| Maîtrisé | 7 | Vous pourriez poursuivre le développement immédiatement : les faiblesses relevées sont localisées, comprises et documentées |
| Solide | 5 | Une zone (module ou dossier) à refaire avant de pouvoir avancer, que vous savez nommer |
| Fragile | 2 | 2 zones ou plus à refaire |
| Absent | 0 | La structure elle-même serait à refaire, et vous savez dire pourquoi |
La journée du j9
4 bases, 75 minutes chacune.
Le code est gelé à la fin du j8, le j9 à 00h00 : la base reste figée pendant les 2 derniers jours du sprint. Le j9 à 9h00, le formateur publie les bases gelées en branches du dépôt public de la promotion, et publie les 3 éléments à localiser, le changement sonde et les fiches pré-renseignées. La journée s'ouvre par la démonstration des 5 bases, puis vous clonez les 4 branches que vous évaluez. Les consignes sont identiques pour les 4 bases. Remise avant 17h00.
Démonstration des 5 bases
8 minutes par équipe : le produit qui tourne, le code fermé. L'entreprise marraine y est invitée. Rien ne s'y note.
Brief et mise en place
Publication des 5 branches, clone des 4 bases à relire, duplication des 4 fiches, répartition des rôles, désignation du gardien du temps.
Base 1
20 min de démarrage chronométré, 10 de localisation en silence, 20 de changement sonde puis 5 de consignation, 10 de verdict, 10 de fiche.
Base 2
Même protocole, mêmes consignes. Les rôles tournent d'une base à l'autre.
Base 3
Même protocole. Sur les 4 bases, chacun aura tenu au moins une fois le démarrage et une fois le changement sonde.
Base 4
Même protocole.
Relecture et remise
Mise au propre des 4 fiches, relecture par l'équipe, remise avant 17h00.
L'ordre des bases tourne d'une équipe à l'autre, et le formateur le publie au brief : l'équipe A commence par la base B, l'équipe B par la base C, et ainsi de suite. Au sprint 1, comptez 30 minutes de plus sur la première base, le temps de prendre le protocole en main. Le formateur tient un registre pour que chacun ait aussi rédigé au moins une fiche avant le sprint 3.
Bien relire
Comme quelqu'un qui va en hériter.
- La question à se poser : « si je devais continuer à développer dessus lundi, qu'est-ce qui m'arrêterait ? »
- La grille comme liste de contrôle : elle sert à nommer précisément ce que vous voyez (« critère 7 : l'erreur est avalée dans
services/order.py»). - Un chemin et une piste par faiblesse. «
api/users.jsvalide à la main ce que le schéma de validation ferait » est une revue. - Cherchez ce qui est mieux que chez vous. C'est la première ligne de la fiche : « ce qu'on reprendrait chez nous ». Reprendre une idée ou un pattern au sprint suivant est encouragé, en le citant dans votre README. L'autorisation exclut la copie de fichiers entiers.
- Lisez les ADR pour connaître les intentions de l'équipe. Si la justification manque, notez qu'elle manque : la soutenance tranchera.
- Les outils d'IA peuvent vous expliquer un fichier ou une commande. Les forces et faiblesses viennent de fichiers que vous avez ouverts vous-mêmes : au débrief, l'équipe qui a écrit une faiblesse jugée pas utile ou pas comprise la défend devant la promotion.
Votre revue, observée
4 qualités d'une bonne fiche.
La qualité de la revue donnée est une compétence, observée au livret de chacun (qui a tenu quel rôle, qui a trouvé quoi). La partie de la fiche transmise à l'équipe évaluée est anonyme.
Ancrage
Chaque force et faiblesse porte un chemin qui existe au tag de gel.
Justesse
Tout écart avec la base ou avec la référence du formateur est expliqué.
Utilité
Chaque faiblesse a une piste actionnable ; « ce qu'on reprendrait » cite du concret.
Conformité
Partie partagée anonyme, tous les niveaux justifiés, patch joint, remise à l'heure.
Les règles
Tout est publié à l'entrée.
- Mêmes consignes pour toutes les équipes : éléments et changement sonde conçus avant le gel, vérifiés sur chaque base, identiques pour tous.
- Chaque note porte sa justification. Une fiche incomplète est renvoyée le jour même ; si elle ne revient pas complétée, le formateur note le critère avec sa propre référence.
- Une note se modère sur les faits et les justifications. Le formateur corrige les notes qui ne sont pas étayées.
- La calibration des équipes évaluatrices est suivie : après chaque sprint, le formateur compare la note donnée par chaque équipe à la médiane des 3 autres sur la même base. Un écart systématique, dans un sens comme dans l'autre, signale un problème de calibration et se traite au débrief.
- La fiche évalue le code ; la progression de chacun vit dans son livret.
- La référence du formateur : il a démarré chaque base et réalisé la sonde avant la séance. Sur les faits (P1, P3), il corrige au niveau constaté ; sur le jugement (P2, P4), il ajuste d'un niveau au plus, par écrit, et un écart de 2 niveaux donne d'abord lieu à un échange avec vous. Une fiche dont les justifications manquent d'ancrage dans la base est écartée du calcul : la note de la base devient la médiane des 3 fiches restantes. Si 3 fiches ou plus sont écartées, le formateur note lui-même la base. Un désaccord argumenté compte comme une fiche valable.
- De 21 à 30, niveau attendu ; de 12 à 20, en cours. En dessous de 12, ou avec un « absent » après modération, le constat est consigné au livret ; l'équipe évaluée peut demander une remédiation : du temps d'encadrement en plus.
- Le j10 à 13h30, l'équipe évaluée reçoit les faiblesses relevées par les 4 fiches et y répond jusqu'à 15h30 : utile, pas utile, pas compris. À 15h30, les 4 fiches complètes arrivent avec les 3 notes. Une relecture de note se demande ensuite jusqu'au j1 à 9h00, avant l'annonce du classement.
- La fiche va aux 2 équipes et accompagne la base sélectionnée à la passation. Le débrief se tient hors la présence de l'entreprise marraine.
- Un membre absent est noté « non observé ». Une adaptation (temps majoré, binôme, timebox étendue) porte sur la personne : les seuils de la base restent les mêmes. Elle reste au livret.
- La fiche écrite est l'unique trace : la séance n'est pas enregistrée.
Au j10, de 15h45 à 17h00, les 5 équipes et le formateur se réunissent hors la présence de l'entreprise marraine. 5 tours de 13 minutes, un par base : une personne tirée au sort dans l'équipe évaluée présente les faiblesses reçues et ce que l'équipe en fait. Chaque « pas utile » et chaque « pas compris » de la réponse écrite rend la parole à l'équipe qui a écrit la faiblesse. Une faiblesse restée sans réponse à 15h30 est présentée comme les autres. Les 10 dernières minutes, chaque équipe dit ce qu'elle reprend de la base qu'elle a relue, et le formateur cite les 2 fiches les plus utiles de la promotion.
Les 3 notes
Le code, la pensée,
et ceux qui vont en hériter.
La grille de revue mesure ce qui est écrit, la soutenance ce qui est compris, la peer-review ce que ça fait de reprendre. Les 3 sont publiés.
Voir la grille de revue La soutenance · Le programme · Les dépôts · L'accueil