Scolaire — BTS SIO SLAM · 2025 → 2026

Conventio

Type Application Web
Stack Symfony 7.3 · PHP 8.2 · MySQL
Méthode Agile Scrum
Équipe Projet à deux
Client Lycée Gabriel Fauré
Code source GitHub ↗
À propos du projet

Conventio est une application web de gestion dématérialisée des conventions de stage, développée pour le Lycée Gabriel Fauré. Elle remplace un processus entièrement papier en centralisant la création, la validation et la signature des conventions entre les quatre acteurs clés : l'étudiant, le tuteur en entreprise, le professeur référent et l'administration (DDF).

Ce projet représente ma montée en compétences sur Symfony 7.3 avec une architecture multi-rôles avancée, un moteur de workflow pour le cycle de vie des conventions, l'intégration de l'API YouSign pour la signature électronique, et un système d'emails transactionnels sécurisés avec liens tokenisés.

Stack technique
Symfony Symfony 7.3 — PHP 8.2
MySQL MySQL & Doctrine ORM
Bootstrap Bootstrap 5.3
Symfony Mailer
Symfony Workflow
YouSign API
Phosphor Icons · Asset Mapper
Fonctionnalités clés
Initiation de convention par l'étudiant avec envoi automatique d'un lien sécurisé au tuteur.
Formulaire tokenisé côté entreprise — accès sans compte, lien à usage unique.
Workflow d'état complet : initié → complété → validé prof → validé DDF → signé.
Tableaux de bord distincts par rôle (étudiant, professeur, DDF, admin).
Validation pédagogique par le professeur référent avec notifications email.
Signature électronique intégrée via l'API YouSign.
Gestion des classes, niveaux et affectation des professeurs référents (back-office admin).
Emails HTML transactionnels avec templates responsive.
Architecture par module
Auth
Authentification
Inscription multi-rôle, connexion, reset mot de passe, vérification email.
Conv.
Convention
Création, suivi du workflow, accès par token pour le tuteur.
Valid.
Validation
Validation pédagogique (professeur) et administrative (DDF).
Sign.
Signature
Intégration YouSign — demande et suivi de signature électronique.
Admin
Administration
Gestion des classes, niveaux, professeurs référents.
Cycle de vie d'une convention
InitiéÉtudiant
ComplétéTuteur (token)
Validé profProfesseur
Validé DDFAdministration
SignéYouSign
Outils & Librairies
Doctrine ORM
Migrations & Entités (STI User → Étudiant / Professeur / Tuteur)
Symfony Workflow
Machine à états du cycle de vie des conventions
Symfony Mailer
Emails transactionnels HTML table-based
Symfony Security
Contrôle d'accès par rôle (Voter, IS_AUTHENTICATED)
YouSign API
Signature électronique légalement reconnue
Twig
Templates avec héritage, blocks et macros
Asset Mapper
Bundling ES6 moderne sans Webpack
Phosphor Icons
Bibliothèque d'icônes SVG cohérente

Un projet format entreprise

Méthode Agile Scrum · Projet à deux
Approche Scrum

Conventio a été conduit comme un vrai projet professionnel, en appliquant rigoureusement la méthode Agile Scrum tout au long du développement. Des mini-réunions régulières nous permettaient de faire le point : où on en était, ce qu'on allait faire ensuite, et de lever les blocages au plus tôt.

Sprint
Cycles itératifs
Développement découpé en sprints, avec des objectifs définis et livrables à chaque itération.
Stand-up
Points réguliers
Réunions courtes pour synchroniser l'équipe : avancement, prochaines tâches, blocages identifiés.
Review
Revues de sprint
Démonstration des fonctionnalités livrées et ajustement du backlog pour l'itération suivante.
Organisation avec GitHub Projects

Pour piloter le travail à deux, nous avons utilisé GitHub Projects en mode board Kanban. Chaque fonctionnalité était tracée sous forme de draft ou d'issue, déplacée entre Todo, In Progress et Done au fil de l'avancement — ce qui nous donnait une vision claire et partagée du backlog à tout moment.

Todo
Intégration YouSign
Export PDF convention
In Progress
Dashboard DDF
Emails tokenisés
Done
Workflow Symfony
Auth multi-rôles
Formulaire tuteur
GitHub Projects — Conventio
Board GitHub Projects du projet Conventio

Réunions avec la DDF

Conception & modélisation avec le client
Travailler avec le client réel

Nous avons tenu plusieurs réunions directement avec la DDF de l'établissement (Direction des Finances et des Formations) pour recueillir les besoins réels et affiner le périmètre de l'application. Ces échanges nous ont permis de co-construire le diagramme de classe, de valider les rôles et les transitions du workflow, et de nous assurer que chaque écran correspondait aux attentes concrètes de l'équipe administrative.

Travailler directement avec l'équipe qui allait utiliser l'outil au quotidien a considérablement orienté nos choix d'architecture et de design. Un projet ancré dans une réalité terrain, pas seulement dans un cahier des charges.

Diagramme de classe — Conventio
Diagramme de classe élaboré lors des réunions avec la DDF

Déployé pour le
Lycée Gabriel Fauré.