Mission professionnelle
Gestion de tâches collaborative · ALTEN 2024
Mon premier projet en entreprise : concevoir en autonomie une application collaborative de gestion de tâches avec Symfony, en partant d’un modèle de domaine solide.
- Projet de stage
- Projet individuel
- Confidentiel
01Le point de départ
Contexte & mission
Le problème
Août 2024, premier stage en entreprise, chez ALTEN à Fès. Le sujet : une application collaborative de gestion de tâches, où plusieurs personnes partagent et suivent le même travail.
La mission
Concevoir et développer l’application en autonomie, en commençant par la modélisation du domaine, dans une architecture MVC.
Mon rôle
J’ai mené la conception et le développement en autonomie. Ce projet confidentiel est distinct de mon dépôt public « gestionnaire-tache ».
02Réalisation
Ce que j’ai fait
Le modèle d’abord
Avant d’écrire la moindre vue, j’ai modélisé le domaine : les entités et leurs relations, posées avant les écrans.
Héritage JOINED
Héritage Doctrine en stratégie JOINED : une table par type, des données communes factorisées, sans colonnes vides.
Énumérations
Des valeurs métier typées par énumérations plutôt que par chaînes libres.
Architecture MVC
Application Symfony structurée en MVC : Doctrine ORM pour la persistance sur MySQL, Twig pour les vues.
03Conception
Architecture
Symfony en MVC : les contrôleurs orchestrent, les entités Doctrine portent le modèle de domaine (héritage JOINED, énumérations) et sont persistées dans MySQL, Twig rend les vues.
- ContrôleursSymfony
- Modèle de domaineEntités · JOINED · enums
- Doctrine ORMPersistance
- MySQL
- TwigVues
04Impact
Résultats
- Une application collaborative de gestion de tâches conçue en autonomie, sur un domaine modélisé avant les écrans.
- Une première expérience complète en entreprise : du sujet à l’application, avec Symfony, Doctrine, Twig et MySQL.
05Bilan
Ce que j’en retiens
Ce que ce projet démontreQue, dès mon premier stage, je savais faire avancer un sujet en autonomie et poser un modèle de données propre avant de construire.
06Technologies
Stack complète
- PHP
- Symfony
- Doctrine
- Twig
- MySQL
- MVC