Projet de fin d'étude : Conception et réalisation d'une plateforme d'apprentissage à distance en architecture microservices

Etudiant : ESAAIDI AKRAM

Filière : LF Sciences Mathématiques et Informatique

Encadrant : Pr. SATORI HASSAN

Annèe : 2024

Résumé : Ce projet se concentre sur la création d’une application d’e-learning pour la plateforme SMI. L’ambition de ce projet est de développer un Système de Gestion de l’Apprentissage (E-learning SMI) spécialement conçu pour les étudiants du département Science Mathématique Informatique (SMI). Cette plateforme vise à enrichir l’expérience éducative en fournissant des outils d’apprentissage interactifs et adaptatifs qui répondent aux besoins spécifiques des étudiants et des enseignants de ce domaine. Dans la phase préliminaire, nous avons effectué une analyse approfondie des besoins éducatifs en informatique et les technologies du marche du travail et avons établi un cahier des charges détaillé. Le développement s’est appuyé sur une conception initiale utilisant le langage UML, ce qui nous a aidés à préciser les choix technologiques et à planifier les étapes de développement pour assurer des livrables de haute qualité. Le travail a été organisé en plu- sieurs phases, à commencer par l’étude conceptuelle et technique, suivie de l’implémentation des fonctionnalités via le développement du code. Technologiquement, nous avons opté pour une architecture backend basée sur Spring Boot, utilisant Java pour sa robustesse et sa capacité à gérer des applications complexes à grande échelle. Le frontend a été développé avec Next.js, choisi pour sa rapidité et sa flexibilité, permettant de créer une in- terface utilisateur dynamique et réactive. Cette combinaison de technologies assure non seulement une performance optimale mais aussi une expérience utilisateur enrichissante. En intégrant des pratiques DevOps avancées, notamment l’utilisation de Docker et Kubernetes [4] pour la conteneurisation et l’orchestration, ainsi que CI/CD [4] pour l’intégration et le déploiement continus, nous avons pu automatiser et optimiser le processus de développement. Cette approche nous a permis de répondre efficacement aux exigences du projet tout en offrant une plateforme stable et sécurisée. Grâce à ce projet, nous avons acquis une expérience précieuse dans le développement d’applications web modernes et dans l’utilisation de techno- logies de pointe.