Chemin critique — 30 minutes
Vérifié contre le produit le .
Sept blocs, trente minutes, aucune branche. Si tout passe, le produit tient debout : on peut démontrer, livrer, ou dormir.
| Domaine | transverse — les sept zones dont la panne rend une démonstration impossible |
| Durée | ~30 min, environnement déjà démarré |
| Niveau | critique |
| Étiquette | manuel — il traverse sept écrans et deux établissements, et son intérêt est justement l’œil humain sur l’enchaînement |
Préparation
Section intitulée « Préparation »Jeu de données : bun run demo:seed — l’établissement « Institut Supérieur Delacroix — DÉMO ».
L’environnement doit être démarré et vérifié avant de commencer : c’est exactement ce que produit Avant une démonstration. Déroulez cette page-là d’abord ; les trente minutes ci-dessous ne les comptent pas.
Comptes :
| Compte | Ce qu’il est |
|---|---|
demo@delacroix.example / Demo-Delacroix-2026! |
administrateur de l’établissement de démonstration |
prof@delacroix.example |
compte enseignant, lié à une fiche |
| carol | à créer au bloc 7 — administratrice d’un second établissement |
Adresses : l’application sur http://localhost:3000. La table complète est sur
le gabarit.
Les sept blocs
Section intitulée « Les sept blocs »1. Connexion — 2 min
Section intitulée « 1. Connexion — 2 min »| # | Action | Résultat attendu |
|---|---|---|
| 1.1 | Ouvrir http://localhost:3000 |
la carte « Connexion », sous-titrée « Accédez à l’espace de planification de votre établissement. » |
| 1.2 | Saisir demo@delacroix.example / Demo-Delacroix-2026!, « Se connecter » |
l’accueil s’affiche : « Bienvenue, Démo Delacroix » |
| 1.3 | Regarder la section « Vos accès » | les cartes couvrent toutes les sections, Administration comprise — c’est un administrateur |
2. La grille peuplée — 3 min
Section intitulée « 2. La grille peuplée — 3 min »| # | Action | Résultat attendu |
|---|---|---|
| 2.1 | Ouvrir Planification | la grille affiche une semaine dense — des blocs sur tous les jours, pas un écran vide |
| 2.2 | Cliquer « Semaine suivante », puis « Aujourd’hui » | la grille change de semaine sans état de chargement visible |
| 2.3 | Dans le panneau de filtres, choisir une promotion | la grille se réduit aux cours de cette promotion |
| 2.4 | Remettre le filtre sur « Tous les groupes » | la grille redevient dense |
Si la grille est vide : le seed n’a pas tourné, ou l’année académique affichée n’est pas la bonne. Arrêtez-vous là — les cinq blocs suivants en dépendent.
3. Placement, heatmap et explicabilité — 8 min
Section intitulée « 3. Placement, heatmap et explicabilité — 8 min »Le cœur du produit. C’est le bloc le plus long, et celui qu’il ne faut pas abréger.
| # | Action | Résultat attendu |
|---|---|---|
| 3.1 | « Créer un cours », choisir « Algorithmique — TD » | le panneau affiche l’enseignant, l’effectif et la durée du cours |
| 3.2 | « Détecter les créneaux éligibles » | la grille se colore ; les compteurs annoncent les créneaux possibles et les exclus |
| 3.3 | Regarder le mercredi | les cellules du mercredi sont hachurées et portent l’icône d’interdiction : Hugo Martin est indisponible |
| 3.4 | Survoler une cellule hachurée du mercredi | l’infobulle nomme la raison : « Hugo Martin est indisponible le mercredi… » |
| 3.5 | Cliquer une cellule notée de valeur moyenne | le panneau « Détail du créneau » s’ouvre avec sa checklist de contraintes |
| 3.6 | Lire le pied du panneau | l’arithmétique est affichée : « 100 − … de pénalités = …/100 » |
| 3.7 | Déplier « Contraintes satisfaites (…) » | chaque contrainte porte son nom, sa justification en français et sa part |
| 3.8 | Cliquer « Placer ici », confirmer | « Séance créée en brouillon. », et le bloc apparaît sur la grille |
Ce bloc valide trois choses à la fois : la heatmap calcule, l’explicabilité rend ses raisons en français, et le placement écrit. Une seule qui tombe et la démonstration n’a plus d’argument.
4. L’anti-conflit — 3 min
Section intitulée « 4. L’anti-conflit — 3 min »| # | Action | Résultat attendu |
|---|---|---|
| 4.1 | Aller en semaine 2 | la grille change de semaine |
| 4.2 | Basculer l’affichage sur Occupation | les plages occupées apparaissent avec leur semis de points |
| 4.3 | Repérer B-201, mardi 09:45 | la plage est occupée — c’est la réservation « Conseil pédagogique » |
| 4.4 | Tenter d’y déposer une séance | le fantôme du geste affiche « Destination impossible » |
| 4.5 | Relâcher malgré tout | un message de refus apparaît, nommant l’occupant et ses heures : « Salle occupée : B-201 · 09:45 – 11:15 » |
| 4.6 | Regarder la grille | elle n’a pas bougé : rien n’a été écrasé, rien n’est à défaire |
5. Réservation — 5 min
Section intitulée « 5. Réservation — 5 min »| # | Action | Résultat attendu |
|---|---|---|
| 5.1 | Ouvrir Réservation | l’écran « Trouver une salle » avec ses filtres |
| 5.2 | Saisir une date, une plage horaire, une capacité minimale, lancer la recherche | le compte de résultats s’affiche : « … salle(s) disponible(s) » |
| 5.3 | Mettre une capacité minimale absurde — 9 999 | « Aucune salle ne correspond à ces critères sur ce créneau. » |
| 5.4 | Revenir à une capacité réaliste, cliquer « Réserver » sur une salle | le formulaire « Réserver … » s’ouvre, avec le créneau rappelé |
| 5.5 | Renseigner un motif, valider | « Réservation confirmée. » ou « Demande d’approbation envoyée. » |
| 5.6 | Ouvrir l’onglet « Mes réservations » | la réservation figure sous « À venir », avec son statut |
Les deux issues du 5.5 sont toutes deux correctes — elles dépendent des règles du profil. Ce qui compte est qu’une des deux arrive, avec son message.
6. Mon planning — 3 min
Section intitulée « 6. Mon planning — 3 min »| # | Action | Résultat attendu |
|---|---|---|
| 6.1 | Se déconnecter, se reconnecter avec prof@delacroix.example |
l’accueil s’affiche, beaucoup plus court — pas de section Administration |
| 6.2 | Ouvrir Mon planning | la semaine en cours s’affiche, avec la salle en évidence sur chaque entrée |
| 6.3 | Vérifier la séance placée au bloc 3 | elle n’y est pas — elle est en brouillon, et cette vue ne montre que le publié |
| 6.4 | Naviguer d’une semaine | la vue suit sans erreur |
Le 6.3 est le point du bloc, et il se rate facilement : l’absence de la séance est le résultat attendu, pas un échec. C’est la preuve que le brouillon ne fuit pas.
7. Isolation entre établissements — 6 min
Section intitulée « 7. Isolation entre établissements — 6 min »Le bloc le plus long après le placement, et le plus important : il prouve qu’aucune donnée ne traverse la frontière d’un établissement.
| # | Action | Résultat attendu |
|---|---|---|
| 7.1 | Dans un autre navigateur (ou une fenêtre privée), ouvrir http://localhost:3000 |
l’écran de connexion |
| 7.2 | « Créer un compte » — nom, e-mail, mot de passe, et un « Nom de l’établissement » distinct, par exemple « École B » | le compte est créé et l’établissement avec |
| 7.3 | Ouvrir Réservation, lancer une recherche large | aucune salle de l’Institut Delacroix n’apparaît : « Aucune salle ne correspond à ces critères sur ce créneau. » |
| 7.4 | Ouvrir Référentiel & parc | l’arborescence est vide : « Aucun campus. Créez le premier. » |
| 7.5 | Ouvrir Administration → Journal d’audit | aucune entrée de l’Institut Delacroix |
| 7.6 | Revenir au premier navigateur, recharger | l’établissement de démonstration est intact |
Ce scénario enchaîne assez de requêtes d’authentification pour déclencher le limiteur de débit — un refus muet qui n’a rien à voir avec vos identifiants. Il est décrit une fois pour toutes sur Les pièges connus.
La checklist
Section intitulée « La checklist »- Connexion —
demo@delacroix.example→ « Bienvenue, Démo Delacroix » - Vos accès contient bien la carte Administration
- Planification — la grille de la semaine est dense, pas vide
- Navigation « Semaine suivante » puis « Aujourd’hui » → la grille suit
- Filtre sur une promotion, puis retour à « Tous les groupes » → la grille se réduit puis redevient dense
- « Créer un cours » → « Algorithmique — TD » → « Détecter les créneaux éligibles » → la grille se colore
- Les cellules du mercredi sont hachurées →
Hugo Martinest indisponible - Clic sur une cellule notée → le détail affiche « 100 − … de pénalités = …/100 »
- « Placer ici » → « Séance créée en brouillon. »
- Semaine 2, mode Occupation →
B-201mardi 09:45 est occupée - Dépôt sur
B-201→ « Salle occupée : B-201 · 09:45 – 11:15 », et la grille n’a pas bougé - Réservation — capacité 9 999 → « Aucune salle ne correspond à ces critères sur ce créneau. »
- Réservation d’une salle → « Réservation confirmée. » ou « Demande d’approbation envoyée. »
- Onglet « Mes réservations » → la réservation est sous « À venir »
- Connexion
prof@delacroix.example→ Mon planning affiche la semaine, salle en évidence - La séance placée en brouillon n’apparaît pas dans Mon planning
- Second navigateur → création d’un compte et d’un établissement distinct
- Recherche de salle → « Aucune salle ne correspond à ces critères sur ce créneau. »
- Référentiel & parc → « Aucun campus. Créez le premier. »
- Journal d’audit → aucune entrée de l’autre établissement
Ce que ce parcours ne couvre pas
Section intitulée « Ce que ce parcours ne couvre pas »Volontairement, pour tenir en trente minutes :
- l’optimisation multi-cours — elle prend une minute de calcul à elle seule ; elle est au script de démonstration et aura son scénario de domaine ;
- la publication et ses notifications ;
- les approbations de réservation ;
- les imports, l’analytique, les contraintes.
Tout cela relève de la recette complète. Le chemin critique répond à une seule question : « est-ce que je peux montrer le produit maintenant ? »
Traçabilité
Section intitulée « Traçabilité »STORY-025 (grille), STORY-026 et STORY-027 (détection, heatmap), STORY-028
(explicabilité), STORY-013 (anti-conflit et occupation unifiée), STORY-015 et STORY-016
(recherche et réservation), STORY-030 (brouillon / publié), STORY-038 (mon planning),
STORY-002 (isolation par établissement).
Pages liées
Section intitulée « Pages liées »- Avant une démonstration — à dérouler avant celle-ci.
- Le gabarit d’un scénario — le format, les comptes, les ports.
- La recette — le parcours complet, quand il y a trois heures devant soi.
- Heatmap et score de créneau et Pastilles de contrainte et explicabilité — ce que les blocs 3 et 4 traversent.
- Brouillon et publié — la notion que le bloc 6 éprouve.