Projet de fin d'étude : Contribution à la modernisation des applications Jakarta EE legacy : Automatisation de la migration Struts et du socle technique

Etudiant : TAZI EL MEHDI

Filière : Master Qualité du Logiciel (MQL)

Encadrant : Pr. CHENFOUR NOUREDDINE

Annèe : 2026

Résumé : Ce rapport présente le déroulement de notre stage de fin d'études effectué au sein de l'entreprise CGI, dans le cadre de notre dernière année du Master Qualité du Logiciel (MQL) à la Faculté des Sciences Dhar El Mehraz de Fès. Le stage s'est déroulé dans le secteur de l'assurance, pour le client CNP Assurances, dans un contexte de modernisation et de transformation digitale de son système d'information. Notre mission s'est articulée autour de deux axes principaux. D'une part, nous avons été intégrés comme développeur au sein de l'équipe projet CNP pour participer aux activités de modernisation des applications. Nos responsabilités incluaient la migration des tests unitaires de JUnit 4 vers JUnit 5, l'augmentation du taux de couverture de code, la modernisation des suites de tests existantes et la résolution des problèmes de qualité remontés par SonarQube. D'autre part, nous avons conçu et développé le module JSP2Thymeleaf, composant responsable de la conversion automatique des vues dans la moulinette de migration de Struts. Ce module de conversion automatise la transformation des pages JSP en templates Thymeleaf, s'intégrant parfaitement dans le processus global de migration des applications JEE-Legacy vers Spring MVC. L'architecture développée comprend un moteur de conversion principal, un plugin Maven pour l'intégration dans les chaînes de build, et une interface en ligne de commande. L'ensemble de ces travaux a été réalisé en suivant la méthodologie Agile Scrum, avec des livraisons itératives et une collaboration étroite avec les équipes CGI et CNP. Cette double mission nous a permis de développer une expertise approfondie tant dans l'amélioration de la qualité logicielle que dans le développement d'outils d'automatisation pour la modernisation d'applications d'entreprise. Mots-clés : MOULINETTE DE MIGRATION, JSP2THYMELEAF, SPRING MVC, JSP, THYMELEAF, SPRING AI, JUNIT 5, MOCKITO, COUVERTURE DE CODE, SONARQUBE, QUALITÉ LOGICIELLE, CGI, CNP ASSURANCES, MAVEN PLUGIN, MODERNISATION D'APPLICATIONS, LLM, JAVA , AUTOMATISATION.