Application Web pour Formations en Tunisie
Application Web pour Formations en Tunisie
Twin
StudySphere
Application Web Innovante pour la Centralisation des Centres de
Formation en Tunisie avec un Système de Recommandation
1
2
Dédicaces
Je dédie ce travail inoubliable à mes parents, qui ont été une source constante d'inspiration et
de motivation tout au long de mon parcours. Leur soutien constant et leurs encouragements
ont formé les bases sur lesquelles je me suis appuyé pour atteindre mes objectifs.
Je souhaite exprimer mes remerciements les plus sincères à mes amis, qui ont toujours
été là pour m'encourager et me soutenir.
Remerciements
Je tiens à exprimer ma profonde gratitude à mon encadrant, Neffati Ahmed, pour sa
disponibilité, son soutien constant, et la confiance qu'il m'a accordée tout au long de mon stage
de fin étude, en particulier lors de mon intégration dans le monde professionnel.
Je tiens également à remercier Madame ABDAOUI Noura pour son suivi attentif, ses
conseils avisés et son professionnalisme exemplaire.
Je souhaite exprimer ma sincère gratitude aux membres du jury pour avoir accepté
d'évaluer ce projet.
3
Table des matières
INTRODUCTION GENERALE ................................................................................................................................. 11
1 PRESENTATION GENERALE ..................................................................................................................... 12
INTRODUCTION ............................................................................................................................................... 12
1.1 CADRE GENERAL DE MON STAGE ............................................................................................................. 12
1.2 PRESENTATION DE L’ORGANISME D’ACCUEIL .............................................................................................. 12
1.2.1 Bee Coders ................................................................................................................................. 12
1.2.2 Services Proposés par bee coders................................................................................................ 13
................................................................................................................................................................... 13
1.3 PRESENTATION DU PROJET FORME .......................................................................................................... 13
1.3.1 Objectif général de Notre projet ................................................................................................. 13
1.3.2 Problématique ........................................................................................................................... 13
1.4 ETUDE PREALABLE ............................................................................................................................... 14
1.4.1 Etude de l’existant...................................................................................................................... 14
[Link] A l’échelle national ........................................................................................................................... 14
[Link] A l’échelle international.................................................................................................................... 15
1.4.2 Critique de l’existant .................................................................................................................. 15
................................................................................................................................................................... 15
................................................................................................................................................................... 15
1.4.3 Solution proposée ...................................................................................................................... 15
1.5 METHODOLOGIE DE TRAVAIL .................................................................................................................. 17
1.5.1 Choix du cadre SCRUM ............................................................................................................... 17
1.5.2 Les rôles dans la méthodologie SCRUM....................................................................................... 17
CONCLUSION .................................................................................................................................................. 18
2 ANALYSE ET SPECIFICATION DESBESOINS ............................................................................................. 19
INTRODUCTION ............................................................................................................................................... 19
2.1 IDENTIFICATION DES ACTEURS DE NOTRE APPLICATION .................................................................................. 19
2.2 ÉTUDE DES BESOINS ............................................................................................................................. 19
2.2.1 Les besoins fonctionnels ............................................................................................................. 19
2.2.2 Les Besoins non fonctionnels ...................................................................................................... 22
2.3 DIAGRAMME DE CAS D'UTILISATION GLOBALE ............................................................................................. 23
2.4 BACKLOG DU PRODUIT.......................................................................................................................... 23
2.5 DIAGRAMME DE CLASSE ........................................................................................................................ 26
2.6 ENVIRONNEMENT DE TRAVAIL DANS CE STAGE ............................................................................................ 27
2.6.1 Frameworks et Langages utilisés ................................................................................................ 27
2.6.2 Environnement Logiciel .............................................................................................................. 28
2.6.3 Exemple d'utilisation .................................................................................................................. 29
2.6.4 Environnement matériel ............................................................................................................. 31
2.7 ARCHITECTURE GLOBALE ....................................................................................................................... 32
2.7.1 Architecture Physique................................................................................................................. 32
2.7.2 Architecture Logique .................................................................................................................. 32
2.8 SPRINT BACKLOG GENERAL DE NOTRE APPLICATION ..................................................................................... 33
CONCLUSION .................................................................................................................................................. 33
3 SPRINT 1 : GESTION DE L'INSCRIPTION ET DE L'AUTHENTIFICATION....................................................... 34
INTRODUCTION SPRINT 1 .................................................................................................................................. 34
3.1 OBJECTIF DU SPRINT ............................................................................................................................ 34
3.2 ANALYSE DU SPRINT 1 .......................................................................................................................... 34
3.2.1 Sprint Backlog ............................................................................................................................ 34
3.2.2 Diagramme des cas d'utilisation Gestion de l'inscription et de l'authentification .......................... 35
[Link] Description textuelle des cas d'utilisation.......................................................................................... 36
4
3.2.3 Diagramme de séquence objet du sprint 1 .................................................................................. 36
3.3 REALISATION ..................................................................................................................................... 37
CONCLUSION .................................................................................................................................................. 38
4 SPRINT 2 : GESTION DES UTILISATEURS ET PROFIL UTILISATEUR ............................................................ 39
INTRODUCTION ............................................................................................................................................... 39
4.1 OBJECTIF DU SPRINT ............................................................................................................................ 39
4.2 ANALYSE DU SPRINT 2 .......................................................................................................................... 39
4.2.1 Sprint Backlog ............................................................................................................................ 39
4.2.2 Diagramme des cas d'utilisation du sprint 2 Gestion Utilisateurs ................................................. 41
[Link] Description textuelle des cas d'utilisation Gestion Utilisateurs ........................................................... 41
4.2.3 Diagramme des cas d'utilisation du sprint 2 Gestion Profile......................................................... 41
[Link] Description textuelle des cas d'utilisation Gestion Profile .................................................................. 42
4.2.4 Diagramme de séquence objet du sprint 2 .................................................................................. 42
[Link] Diagramme de séquence objet Gestion Des utilisateurs..................................................................... 42
[Link] Diagramme de séquence objet Gestion Des profiles .......................................................................... 43
4.3 REALISATION ..................................................................................................................................... 43
CONCLUSION .................................................................................................................................................. 46
5 SPRINT 3 : GESTION DES PREFERENCES ET L’EQUIPE ENSEIGNANT ......................................................... 47
INTRODUCTION ............................................................................................................................................... 47
5.1 OBJECTIF DU SPRINT ............................................................................................................................ 47
5.2 ANALYSE DU SPRINT 3 .......................................................................................................................... 47
5.2.1 Sprint Backlog ............................................................................................................................ 47
5.2.2 Diagramme des cas d'utilisation du sprint 3 ................................................................................ 48
[Link] Description textuelle des cas d'utilisation.......................................................................................... 49
5.2.3 Diagramme de séquence objet du sprint 3 .................................................................................. 49
5.3 REALISATION ..................................................................................................................................... 49
CONCLUSION .................................................................................................................................................. 51
6 SPRINT 4 : GESTION DES FORMATIONS ET RECOMMANDATION ............................................................ 52
INTRODUCTION ............................................................................................................................................... 52
6.1 OBJECTIF DU SPRINT ............................................................................................................................ 52
6.2 ANALYSE DU SPRINT 4 .......................................................................................................................... 52
6.2.1 Sprint Backlog ............................................................................................................................ 52
6.2.2 Diagramme des cas d'utilisation du sprint 4 ................................................................................ 53
[Link] Description textuelle des cas d'utilisation.......................................................................................... 54
6.3 REALISATION ..................................................................................................................................... 54
CONCLUSION .................................................................................................................................................. 55
7 SPRINT 5 : GESTION DES INSCRIPTION ET JOURNAUX ............................................................................ 56
INTRODUCTION ............................................................................................................................................... 56
7.1 OBJECTIF DU SPRINT ............................................................................................................................ 56
7.2 ANALYSE DU SPRINT 5 .......................................................................................................................... 56
7.2.1 Sprint Backlog ............................................................................................................................ 56
7.2.2 Diagramme des cas d'utilisation du sprint 5 ................................................................................ 57
[Link] Description textuelle des cas d'utilisation.......................................................................................... 57
7.3 REALISATION ..................................................................................................................................... 58
CONCLUSION .................................................................................................................................................. 59
8 SPRINT 6 : GESTION DES BADGES ET DE LA LISTE DE FAVORIS ................................................................ 60
INTRODUCTION ............................................................................................................................................... 60
8.1 OBJECTIF DU SPRINT ............................................................................................................................ 60
8.2 ANALYSE DU SPRINT 6 .......................................................................................................................... 60
8.2.1 Sprint Backlog ............................................................................................................................ 60
5
8.2.2 Diagramme des cas d'utilisation du sprint 6 Gestion du favori ..................................................... 61
[Link] Description textuelle des cas d'utilisation Gestion du favori ............................................................... 61
8.2.3 Diagramme des cas d'utilisation du sprint 6 Gestion des Badges ................................................. 62
[Link] Description textuelle des cas d'utilisation Gestion des Badges ........................................................... 62
8.2.4 Diagramme de séquence objet du sprint 6 .................................................................................. 62
[Link] Diagramme de séquence objet Gestion des badges ........................................................................... 62
[Link] Diagramme de séquence objet Gestion des favores........................................................................... 63
8.3 REALISATION ..................................................................................................................................... 63
CONCLUSION .................................................................................................................................................. 65
9 SPRINT 7 : GESTION DES NIVEAUX ET POINT XP ..................................................................................... 66
INTRODUCTION ............................................................................................................................................... 66
9.1 OBJECTIF DU SPRINT ............................................................................................................................ 66
9.2 ANALYSE DU SPRINT 7 .......................................................................................................................... 66
9.2.1 Sprint Backlog ............................................................................................................................ 66
9.2.2 Diagramme des cas d'utilisation du sprint 7 Gestion Niveaux et xp .............................................. 67
[Link] Description textuelle des cas d'utilisation.......................................................................................... 67
9.2.3 Diagramme de séquence objet du sprint 7 .................................................................................. 68
[Link] Diagramme de séquence Gestion des niveaux ................................................................................... 68
[Link] Diagramme de séquence Gestion des Xps ......................................................................................... 68
9.3 REALISATION ..................................................................................................................................... 69
CONCLUSION .................................................................................................................................................. 70
10 SPRINT 8 : GESTION DES EVALUATIONS ET EVENEMENT ........................................................................ 71
INTRODUCTION ............................................................................................................................................... 71
10.1 OBJECTIF DU SPRINT ............................................................................................................................ 71
10.2 ANALYSE DU SPRINT 8 .......................................................................................................................... 71
10.2.1 Sprint Backlog ........................................................................................................................ 71
10.2.2 Diagramme des cas d'utilisation du sprint 8 Gestion des Evènements ...................................... 72
[Link] Description textuelle des cas d'utilisation.......................................................................................... 72
10.2.3 Diagramme des cas d'utilisation du sprint 8 Gestion des évaluations....................................... 72
[Link] Description textuelle des cas d'utilisation Gestion des évaluations..................................................... 72
10.2.4 Diagramme de séquence objet du sprint 8 .............................................................................. 73
[Link] Diagramme de séquence objet Gestion Des évènement .................................................................... 73
[Link] Diagramme de séquence objet Gestion Des avis................................................................................ 73
10.3 REALISATION ..................................................................................................................................... 73
CONCLUSION .................................................................................................................................................. 74
11 SPRINT 9 : GESTION DES NOTIFICATION ................................................................................................. 75
INTRODUCTION ............................................................................................................................................... 75
11.1 OBJECTIF DU SPRINT ............................................................................................................................ 75
11.2 ANALYSE DU SPRINT 9 .......................................................................................................................... 75
11.2.1 Sprint Backlog ........................................................................................................................ 75
11.2.2 Diagramme des cas d'utilisation du sprint 9 Gestion des notifications ..................................... 75
[Link] Description textuelle des cas d'utilisation.......................................................................................... 76
11.3 REALISATION ..................................................................................................................................... 76
CONCLUSION .................................................................................................................................................. 77
CONCLUSION GENERALE ................................................................................................................................ 78
12 BIBLIOGRAPHIE ...................................................................................................................................... 79
6
Table des figures
Figure 1 Logo Bee Coders .................................................................................................... 13
Figure 2 Logo de Forme ....................................................................................................... 13
Figure 3 Logo de Tanitjobs ................................................................................................... 14
Figure 4 Logo de Formation Tunisie ..................................................................................... 14
Figure 5 Logo de Fabskill ..................................................................................................... 14
Figure 6 Logo de MaFormation ............................................................................................ 15
Figure 7 SCRUM ................................................................................................................. 17
Figure 8Explication méthode scrum ..................................................................................... 18
Figure 9 Besoins Fonctionnels des Utilisateurs ..................................................................... 20
Figure 10 Besoins Fonctionnels des Centres de formation..................................................... 21
Figure 11 Besoins Fonctionnels des Administrateurs ............................................................ 22
Figure 12 Besoins Fonctionnels des Modérateurs.................................................................. 22
Figure 13 Diagramme de cas d'utilisation globale Forme ...................................................... 23
Figure 14 Diagramme de classe ........................................................................................... 26
Figure 15 Logo Node js ........................................................................................................ 27
Figure 16 Logo Express js .................................................................................................... 27
Figure 17 Logo React ........................................................................................................... 27
Figure 18 Logo Tailwind css ............................................................................................... 27
Figure 19 Logo Bootstrap ..................................................................................................... 27
Figure 20 Logo MongoDB Compass ................................................................................... 28
Figure 21 Logo MongoDB atlas ........................................................................................... 28
Figure 22 Logo Postman ....................................................................................................... 28
Figure 23 Logo Docker......................................................................................................... 28
Figure 24 Logo de GitHub .................................................................................................... 28
Figure 25 Logo de StarUML................................................................................................. 28
Figure 26 Logo de webstorm ................................................................................................ 28
Figure 27 Logo de WakaTime .............................................................................................. 29
Figure 28 Logo de render...................................................................................................... 29
Figure 29 Logo de netlify ..................................................................................................... 29
Figure 30 Logo de Figma...................................................................................................... 29
Figure 31Exemple d'utilisation sketchup Figma .................................................................... 29
Figure 32Exemple d'utilisation Wierframes figma ................................................................ 29
Figure 33Exemple d'utilisation Désigne Système .................................................................. 30
Figure 34 Exemple d'utilisation MongoDB Atlas .................................................................. 30
Figure 35 Exemple d'utilisation MongoDB Compass ............................................................ 30
Figure 36 Mise en Ligne du Frontend sur GitHub ................................................................ 30
Figure 37 Mise en Ligne du Backend sur GitHub ................................................................. 30
Figure 38 Déploiement DockerHub FrontEnd ....................................................................... 31
Figure 39 Déploiement DockerHub BackEnd ....................................................................... 31
Figure 40 Exemple d'utilisation Netlify................................................................................. 31
Figure 41 Exemple d'utilisation Render ................................................................................ 31
Figure 42Notre Architecture Physique .................................................................................. 32
Figure 43Notre Architecture Logique .................................................................................. 32
Figure 44 Diagramme des cas d'utilisation du sprint 1 Gestion de l'inscription et de
l'authentification ................................................................................................................... 35
Figure 45 Diagramme de séquence objet du sprint 1 Gestion de l'inscription et de
7
l'authentification ................................................................................................................... 36
Figure 46 Notre Page d'Accueil ........................................................................................... 37
Figure 47 page d'Inscription.................................................................................................. 37
Figure 48 Interface Confirmation d'envoi email .................................................................... 37
Figure 49 Email de Vérification de votre inscription ............................................................. 37
Figure 50 Page d'inscription de centre de formation .............................................................. 38
Figure 51Page reset mot de passe......................................................................................... 38
Figure 52 Email de réinitialiser votre mot de passe ............................................................... 38
Figure 53page de Connexion ................................................................................................ 38
Figure 54 Diagramme des cas d'utilisation du sprint 2 Gestion Utilisateurs ........................... 41
Figure 55 Diagramme des cas d'utilisation du sprint 2 Gestion Profile .................................. 41
Figure 56 Diagramme de séquence objet du sprint 2 Gestion Utilisateur ............................... 42
Figure 57 Diagramme de séquence objet du sprint 2 Gestion Profile .................................... 43
Figure 58 dérouler de l'Utilisateur ......................................................................................... 43
Figure 59 Profil Utilisateur .................................................................................................. 43
Figure 60• Paramètres du compte.......................................................................................... 44
Figure 61 Modifier Profil Utilisateur .................................................................................... 44
Figure 62•Modifier Mot de Passe.......................................................................................... 44
Figure 63Gestion de tous les utilisateurs par l’administrateur ................................................ 44
Figure 64 Recherche des utilisateurs par nom ou prénom ...................................................... 45
Figure 65 Ajouter un utilisateur par un admin ....................................................................... 45
Figure 66 Attribution de Rôles par un administrateur ............................................................ 45
Figure 67Sélection des utilisateurs connecter ou déconnecter au temps réelle ....................... 45
Figure 68Trie la liste des utilisateurs par nom ou prénom ou les plus récent .......................... 46
Figure 69Afficher des utilisateur par un rôle spécifique ........................................................ 46
Figure 70Activer ou désactiver ou supprimer ou archiver un utilisateur ................................ 46
Figure 71 Modifier les informations d’un utilisateur ............................................................. 46
Figure 72 Diagramme des cas d'utilisation du sprint 3 Gestion des préférences ..................... 48
Figure 73 Diagramme de séquence objet du sprint 3 ............................................................. 49
Figure 74 Interface d’explication .......................................................................................... 49
Figure 75 Formulaire du préférence stp1 .............................................................................. 50
Figure 76 Formulaire du préférence stp2............................................................................... 50
Figure 77 Formulaire du préférence stp3............................................................................... 50
Figure 78 Formulaire de modification de la préférence ......................................................... 50
Figure 79 interface Consulter la liste des formateurs de mon centre ...................................... 51
Figure 80 Pop-up Ajouter un formateur à mon équipe ........................................................... 51
Figure 81 Diagramme des cas d'utilisation du sprint 4 Gestion des Formation ....................... 53
Figure 82 interface gestion des formation par un centre ........................................................ 54
Figure 83 Pop-up d'ajout une formation etape 1 .................................................................... 54
Figure 84 Pop-up d'ajout une formation etape 2 ................................................................... 55
Figure 85 Pop-up d'ajout une formation etape 3 .................................................................. 55
Figure 86 Interface d’accueil contient le système de recommandation .................................. 55
Figure 87 Diagramme des cas d'utilisation du sprint 5........................................................... 57
Figure 88 Interface Inscription à partir de l’accueil ............................................................... 58
Figure 89 Interface désinscription de façon très facile ........................................................... 58
Figure 90 Interface Inscription à partir de détails formation .................................................. 58
Figure 91 Interface affichage de nombre d’inscription a une formation ................................. 59
Figure 92 Interface de gestion des inscriptions ...................................................................... 59
8
Figure 93 Interface pour la gestion de logs ............................................................................ 59
Figure 94 Diagramme des cas d'utilisation du sprint 6 Gestion du favori ............................... 61
Figure 95 Diagramme des cas d'utilisation du sprint 6 Gestion des Badges ........................... 62
Figure 96 Diagramme de séquence objet du sprint 6 Gestion des Badges .............................. 62
Figure 97 Diagramme de séquence objet du sprint 6 Gestion des favoris............................... 63
Figure 98 Interface pour ajouter formation au favoris ........................................................... 63
Figure 99 Interface pour retire formation de favoris .............................................................. 63
Figure 100 Interface pour gère sa liste de favoris .................................................................. 64
Figure 101 Interface pour afficher ses badges ....................................................................... 64
Figure 102 Interface pour gestion de badges ......................................................................... 64
Figure 103 Pop-up pour ajouter badges ................................................................................. 65
Figure 104 Pop-up pour modifier badges .............................................................................. 65
Figure 105 Diagramme des cas d'utilisation du sprint 7 Gestion Niveaux et xp ..................... 67
Figure 106 Diagramme de séquence objet du sprint 7 Gestion des niveau ............................. 68
Figure 107 Diagramme de séquence objet du sprint 7 Gestion des Xps ................................. 68
Figure 108 Interface pour consulter les points xp .................................................................. 69
Figure 109 Interface pour gestion des Xp .............................................................................. 69
Figure 110 Pop-up pour ajouter un xp a un client .................................................................. 69
Figure 111 Pop-up pour modifier un xp ................................................................................ 70
Figure 112 Interface pour gère les niveaux ........................................................................... 70
Figure 113 Pop-up pour ajouter un niveau ............................................................................ 70
Figure 114 Pop-up pour modifier un niveau .......................................................................... 70
Figure 115 Diagramme des cas d'utilisation du sprint 8 Gestion des Evènements .................. 72
Figure 116 Diagramme des cas d'utilisation du sprint 8 Gestion des évaluations ................... 72
Figure 117Diagramme de séquence objet du sprint 8 Gestion des evenements ...................... 73
Figure 1181 Diagramme de séquence objet du sprint 8 Gestion des avis ............................... 73
Figure 119 Evaluer une formation......................................................................................... 73
Figure 120 Interface pour Gestion des évènements ............................................................... 74
Figure 121 Interface pour Ajouter un Evènement .................................................................. 74
Figure 122 Diagramme des cas d'utilisation du sprint 9 Gestion des notifications ................. 76
Figure 123 Liste des Notification par client .......................................................................... 76
Figure 124 Liste des Notifications pour un client .................................................................. 77
Figure 125 Notification de sécurité ....................................................................................... 77
Figure 126 Notification de bienvenue ................................................................................... 77
9
Table des tableaux
Tableau 1 Analyse du marché ............................................................................................... 15
Tableau 2 Backlog du produit ............................................................................................... 26
Tableau 3 Environnement matériel ....................................................................................... 31
Tableau 4 Sprint Backlog Général de notre application ......................................................... 33
Tableau 5 Sprint Backlog - Sprint 1 ...................................................................................... 35
Tableau 6 Description textuelle des cas d'utilisation du sprint 1 ............................................ 36
Tableau 7 Sprint Backlog - Sprint 2 ...................................................................................... 40
Tableau 8 Description textuelle des cas d'utilisation du sprint 2 Gestion Utilisateurs............. 41
Tableau 9 Description textuelle des cas d'utilisation du sprint 2 Gestion Profile .................... 42
Tableau 10 Sprint Backlog - Sprint 3 .................................................................................... 48
Tableau 11 Description textuelle des cas d'utilisation du sprint 3 .......................................... 49
Tableau 12 Sprint Backlog - Sprint 4 .................................................................................... 53
Tableau 13 Description textuelle des cas d'utilisation du sprint 4 .......................................... 54
Tableau 14 Sprint Backlog - Sprint 5 .................................................................................... 57
Tableau 15 Description textuelle des cas d'utilisation du sprint 5 .......................................... 57
Tableau 16 Sprint Backlog - Sprint 6 .................................................................................... 61
Tableau 17 Description textuelle des cas d'utilisation du sprint 6 .......................................... 61
Tableau 18 Description textuelle des cas d'utilisation du sprint 6 .......................................... 62
Tableau 19 Sprint Backlog - Sprint 7 .................................................................................... 67
Tableau 20 Description textuelle des cas d'utilisation du sprint 7 .......................................... 67
Tableau 21 Sprint Backlog - Sprint 8 .................................................................................... 72
Tableau 22 Description textuelle des cas d'utilisation du sprint 8 Gestion des Evènement ..... 72
Tableau 23 Description textuelle des cas d'utilisation du sprint 8 Gestion des évaluations ..... 72
Tableau 24 Sprint Backlog - Sprint 9 .................................................................................... 75
Tableau 25 Description textuelle des cas d'utilisation du sprint 8 Gestion des notifications ... 76
10
Introduction Générale
En Tunisie, malgré la diversité des opportunités de formation, l'absence d'une
plateforme centralisée constitue un obstacle majeur, limitant ainsi leur visibilité et leur
développement. Ce rapport présente la création d'une plateforme en ligne innovante, conçue
pour rassembler ces centres de formation, leur offrant la possibilité de promouvoir leurs services
et formations de manière coordonnée et inclusive. À travers une analyse approfondie des
besoins et un développement itératif structuré en sprints, ce projet a pour objectif de fournir une
solution intuitive aux centres de formation, de centraliser l'ensemble des formations disponibles
dans le pays, et d'offrir aux étudiants une expérience unifiée, simplifiée et à la pointe de la
technologie, afin de répondre aux exigences éducatives de la Tunisie.
Chaque chapitre inclut une introduction, une analyse des objectifs et des besoins
spécifiques liés au sprint, des diagrammes de cas d'utilisation et de séquence, ainsi que la mise
en œuvre des fonctionnalités planifiées. Le rapport se termine par une évaluation globale du
projet et des perspectives d'avenir.
11
1 Présentation Générale
Introduction
Dans ce premier chapitre, nous établissons les fondements du projet en offrant une vue
d'ensemble ainsi qu'une introduction à l'entreprise d'accueil. Nous débutons par définir le cadre
global du stage, situant ainsi notre travail dans son contexte approprié. Ensuite, nous présentons
Bee Coders, l'entreprise hôte, en détaillant ses services. Après cette introduction, nous décrivons
les grandes lignes du projet, en énonçant ses objectifs principaux et en identifiant les défis à
surmonter. Une étude préalable approfondie est menée, comprenant une analyse de l'existant,
une critique des faiblesses relevées et la proposition de solutions adaptées. Pour conclure, nous
détaillons la méthodologie adoptée, en justifiant le choix du cadre SCRUM et en précisant les
rôles qui y sont associés. Ce chapitre jette les bases de notre compréhension du projet en
clarifiant le contexte, les objectifs et la démarche méthodologique pour les atteindre.
12
1.2.2 Services Proposés par bee coders
Bee Coders offre une large gamme de services couvrant différents secteurs d'activité,
parmi lesquels :
1.3.2 Problématique
En Tunisie, bien que les opportunités de formation soient nombreuses, l'accès à une
plateforme centralisée demeure un défi majeur. Les étudiants peinent à obtenir des informations
actualisées, et les compagnies de formation rencontrent des difficultés à promouvoir
efficacement leurs programmes. De plus, le manque de concurrence entre les centres de
formation impacte négativement les prix et la qualité des formations offertes.
13
1.4 Etude préalable
Dans cette section, nous abordons une étude préliminaire qui se divise en trois volets
principaux : l'analyse de l'existant, sa critique, et enfin, la proposition de solutions.
14
[Link] A l’échelle international
15
Un système d'évaluation et de sanctions aidera à préserver un environnement
respectueux et sécurisé, tandis que des alertes automatiques informeront les administrateurs en
cas de comportements inappropriés. Avec ForMe, nous sommes résolus à développer une
plateforme éducative inclusive, éthique et technologique pour répondre aux besoins éducatifs
en Tunisie. Notre mission inclut :
• Le Développement d'une plateforme web intuitive et sécurisée pour le secteur de la
formation. : Nous créons une plateforme complète qui facilitera l'inscription des utilisateurs,
garantira une authentification sécurisée grâce à notre système de journaux, et permettra une
gestion intuitive de leur profil utilisateur.
• Recommandation des formations : Nous simplifions les processus de recherche pour les
utilisateurs, notamment pour l'inscription à des formations grâce à notre système de
recommandation basé sur les préférences de chaque client.
16
1.5 Méthodologie de travail
Dans cette section, nous analysons les approches agiles pour garantir l'atteinte des
objectifs fixés. Contrairement aux méthodes traditionnelles de conception logicielle, les
méthodologies agiles se montrent plus pragmatiques et encouragent une participation active du
client tout au long du processus de développement. Cette implication permet de répondre de
manière réactive aux besoins réels du client, plutôt que de se limiter à une stricte conformité
avec les termes du contrat de développement. De plus, les méthodologies agiles ont prouvé leur
capacité à augmenter la productivité et à réduire les délais de livraison.
Figure 7 SCRUM
17
Product Owner : Chargé de maximiser la valeur du projet, il est responsable de la
gestion du Backlog, ainsi que de la définition et de la priorisation des exigences selon
les besoins des parties prenantes.
Scrum Master : Il supervise l'avancement du projet et les activités de l'équipe, tout en
jouant un rôle de coach. Il organise les réunions SCRUM, facilite le processus, aide
l'équipe à adopter les bonnes pratiques, élimine les obstacles et améliore les interactions
au sein de l'équipe.
Équipe de développement : Un groupe de professionnels indépendants responsable de
la planification, de la conception, du développement et des tests du projet.
Chez Bee Coders, Monsieur Ahmed Neffati occupe les rôles de Product Owner et de
Scrum Master. Il est responsable de la gestion des priorités du projet et de la facilitation du
processus SCRUM, garantissant ainsi une collaboration efficace et l'atteinte des objectifs
fixés.
Conclusion
Dans ce premier chapitre, nous avons fourni une vue d'ensemble du projet. Nous avons
commencé par établir le cadre général du stage et introduire l'organisme d'accueil, Bee Coders,
en mettant en lumière ses services. Ensuite, nous avons décrit le projet en précisant ses objectifs
généraux et la problématique qu'il vise à résoudre. Nous avons également effectué une étude
préliminaire, incluant une analyse de l'existant, une critique de celui-ci, ainsi que la solution
proposée pour remédier aux lacunes identifiées. Enfin, nous avons présenté la méthodologie de
travail adoptée, fondée sur le cadre SCRUM,pour assurer une bonne exécution de ce projet.
Cette approche méthodique et structurée nous permettra d'atteindre les objectifs fixés de
manière efficace et rigoureuse.
18
2 Analyse et Spécification desBesoins
Introduction
Dans ce chapitre, nous nous concentrerons sur le Sprint 0, qui englobe l'analyse et la définition
des besoins. Nous commencerons par identifier les parties prenantes impliquées dans le projet,
puis nous examinerons en détail les besoins fonctionnels et non fonctionnels.. Par la suite, nous
présenterons notre diagramme global des cas d'utilisation ainsi que le backlog du produit. De
plus, notre diagramme de classe sera inclus pour représenter la structure du projet. Ensuite, nous
décrirons l'environnement de travail en mentionnant les langages de programmation, les
frameworks, les logiciels et le matériel utilisés. Pour conclure, nous exposerons l'architecture
globale du projet en détaillant ses composantes physiques et logiques.
• Les modérateurs : Ils sont désignés par l'administrateur pour superviser des sections
spécifiques de la plateforme.
19
s'inscrire sur la plateforme.
Les clients
Inscription : Les utilisateurs ont la possibilité de créer un compte sur la plateforme en
renseignant des informations de base telles que leur nom, prénom, adresse e-mail et mot de
passe.
Connexion: Les utilisateurs peuvent s'authentifier à l'aide de leur adresse e-mail et de leur mot
de passe.
Mot de passe oublier : L’utilisateur peut modifier son mot de passe par un envoi d’un mail
Consulter liste des formations : L'utilisateur peut consulter la liste des formations
recommander selon ses préférences et par catégorie avec un filtrage et trie data.
Gestion compte utilisateur: Chaque utilisateur possède un profil personnel lui permettant de
gérer ses informations, telles que son nom, son prénom, sa photo de profil et ses préférences. Il
peut également consulter ses points d'expérience, son niveau et ses badges, ainsi que sa liste de
favoris et ses inscriptions Les utilisateurs ont la possibilité de consulter et de modifier leurs
préférences ainsi que leur mot de passe à tout moment.
Sécurité : L’utilisateur peut modifier son mot de passe d’Une façon sécurisée.
Préférences : L'utilisateur peut saisir ses préférences personnelles des infos utiles pour le
système de recommandation.
S’inscrire à une formation : L'utilisateur peut S’inscrire facilement à une formation
Ajouter aux favoris : L'utilisateur peut ajouter facilement une formation aux favoris.
Évaluation par Étoiles : Les utilisateurs peuvent attribuer des évaluations par étoiles aux
formations. Ces avis facilitent la prise de décision pour les autres utilisateurs et offrent des
retours précieux aux centres ainsi qu'au formateur concerné..
Consulter liste des notifications : L'utilisateur peut consulter la liste de ces notifications.
Consulter son niveau, badges et point XP : L'utilisateur peut consulter son niveau et visualiser
ses badges et point XP
20
Les centres de formation
Gestion compte: Chaque centre dispose d'un profil personnel où il peut gérer ses informations
personnelles telles que son nom, prénom sa photo de profil et c’est préférences. Il peut
également consulter la liste de ses formateurs, ainsi que consulter la liste de ses formations. Les
centres de formation ont la possibilité de consulter et de modifier leur stuff et formation à tout
moment.
Ajouter un formateur : Chaque centre peut ajouter ou retire un formateur de son équipe
Gestion des formations : Chaque centre peut ajouter modifier ou supprimer une formation
Sécurité : Chaque centre peut modifier son mot de passe d’Une façon sécurisée.
Ajouter ses préférences : Chaque centre peut ajouter des préférences
Consulter liste des notifications : Chaque centre peut consulter la liste de ces notifications.
Consulter son niveau, badges et point XP : Chaque centre peut consulter son niveau et
visualiser ses badges et point xps
Les Administrateurs
Gestion des Utilisateurs : L'administrateur contrôle tous les utilisateurs de la plateforme. Il
peut rechercher un utilisateur par son nom, filtrer les utilisateurs par rôle, puis les trier, voir les
utilisateurs connectés à cet instant, ajouter ou archiver un utilisateur, modifier les détails d'un
utilisateur ou son mot de passe, ou encore désactiver un compte.
Gestion des logs : L'administrateur uniquement peut visualiser la liste de tous les logs de la
plateforme. Toute action ou requête passée dans l'application sera enregistrée ici.
Gestion des Badges : L'administrateur a la possibilité d'ajouter des badges pour récompenser
les centres de formation et leur engagement sur la plateforme, ainsi que pour motiver les
utilisateurs. Il peut également modifier ou supprimer ces badges.
Gestion des niveaux : : L'administrateur a la possibilité d’ajouter des niveaux. Il peut
également modifier les accès à cette niveau
Gestion des xps : L'administrateur a le contrôle sur les XP. Il peut ajouter ou diminuer 50 XP,
et tout changement de XP entraîne automatiquement la modification du niveau en fonction des
XP. Un utilisateur peut ainsi gagner des niveaux ou en perdre, de manière automatique.
Gestion des notifications : L'administrateur peut voir la liste des notifications pour tous les
21
utilisateurs. Il peut créer une notification personnalisée pour un utilisateur en cas de besoin
Gestion des formations : il a aussi le contrôle sur la liste des formations. Il peut supprimer,
modifier créer une formation en choisissant le centre et le formateur.
Gestion des évènements : il a accès à Ajouter et modifier ou supprimer un événement.
Les modérateurs
Gestion des Badges : L’modérateur a la possibilité d’ajouter des badges pour récompenser les
centres de beauté en fonction de leurs performances et de leur engagement sur la plateforme et pour
les utilisateurs pour les motiver. Il peut également modifier, supprimer.
Gestion des niveaux : L’modérateur a la possibilité d’ajouter des niveaux. Il peut également
modifier les accès à cette niveau
Gestion des xps : L’modérateur a le contrôle sur les XP des utilisateurs. Il peut ajouter ou diminuer
XP, et tout changement de XP entraîne automatiquement la modification du niveau en fonction des
XP. Un utilisateur peut ainsi gagner des niveaux ou perdre, de manière automatique.
Gestion des notifications : L’modérateur peut voir la liste des notifications pour tous les
utilisateurs. Il peut créer une notification personnalisée pour un utilisateur en cas de besoin
Gestion des formations : il a aussi le contrôle sur la liste des formations. Il peut supprimer,
modifier ou créer une formation en choisissant le centre et le formateur.
Gestion des évènements : il a accès à ajouter et modifier ou supprimer un événement.
Ergonomie : L'interface utilisateur a été conçue pour être intuitive et réactive, avec un design
responsif. Nous avons intégré des normes d'accessibilité pour garantir une utilisation fluide et
sans entrave pour tous les utilisateurs, en tenant compte des différents rôles et niveaux d'accès.
Traçabilité : Nous avons mis en place un système de journalisation qui enregistre toutes les
actions critiques (authentification, modification de données) afin de faciliter l'audit et l'analyse
22
ultérieure. De plus, chaque modification du système doit être tracée pour assurer une gestion
efficace des versions et permettre une réversibilité en cas de problème.
Sécurité : Dans le but de renforcer la sécurité, nous avons mis en place un système
d'authentification et d'autorisation robuste en utilisant des JSON Web Tokens (JWT) pour
protéger les sessions utilisateur contre les falsifications de jetons. De plus, nous utilisons
l'algorithme bcrypt pour garantir un hachage sécurisé des mots de passe avant leur stockage
dans la base de données, offrant ainsi une protection efficace contre les attaques par force brute.
26
2.6 Environnement de travail dans ce stage
2.6.1 Frameworks et Langages utilisés
• Node js est un environnement d'exécution JavaScript côté serveur, construit sur le
moteur JavaScript V8 de Chrome. Contrairement à JavaScript qui est traditionnellement
exécuté dans un navigateur, [Link] permet d'exécuter du code JavaScript sur un serveur,
ce qui en fait une technologie puissante pour le développement BackEnd.
• Express js est un framework web minimaliste et flexible pour [Link], conçu pour simplifier
le développement d'applications et d'API web. C'est l'un des frameworks les plus populaires
dans l'écosystème [Link], souvent utilisé dans le stack MERN.
• React js est une bibliothèque JavaScript développée par Facebook pour créer des interfaces
utilisateur dynamiques et réactives. C'est l'un des outils les plus populaires pour le
développement front-end, notamment utilisé dans des stacks comme MERN.
• Tailwind css est un framework CSS utilitaire qui permet de construire rapidement des
interfaces utilisateur sans avoir à écrire du CSS personnalisé. Il est conçu pour être flexible et
minimaliste, en fournissant des classes utilitaires prédéfinies directement dans votre HTML.
• Bootstrap est un framework CSS open-source développé par Twitter qui facilite la création
de sites web et d'applications responsives. Il fournit une collection de styles, de composants et
de plugins JavaScript pour aider à concevoir des interfaces utilisateur modernes et cohérentes.
27
2.6.2 Environnement Logiciel
• MongoDB Compass est une interface graphique pour MongoDB qui permet de
visualiser, interagir et gérer les bases de données MongoDB sans avoir besoin d'utiliser la
ligne de commande.
• MongoDB atlas est un service de base de données dans le cloud géré par MongoDB. Il permet
de déployer, gérer et faire évoluer des bases de données MongoDB sur des plateformes cloud
comme AWS, Google Cloud, et Azure.
• Postman est un outil populaire pour le développement et le test d'APIs. Il offre une interface
graphique conviviale pour créer, tester et gérer des requêtes HTTP et des API.
• Docker est une plateforme de conteneurisation qui permet de développer, expédier et exécuter
des applications de manière cohérente et portable. Les conteneurs Docker encapsulent une
application et ses dépendances dans un environnement isolé, assurant que l'application
fonctionne de manière uniforme, peu importe l'endroit où elle est déployée.
• Github est une plateforme de développement collaboratif basée sur Git, un système de gestion
de versions décentralisé. GitHub permet aux développeurs de stocker, gérer et collaborer sur du
code source.
• StarUML est un outil de modélisation UML conçu pour créer des diagrammes de
modélisation dans le développement de logiciels. Il est utilisé pour concevoir, documenter et
analyser des systèmes logiciels en utilisant des diagrammes standardisés.
• Render est un cloud unifié pour créer et exécuter toutes vos applications et sites Web avec
des certificats TLS gratuits, un CDN mondial, des réseaux privés et des déploiements
automatiques depuis Git.
• Netlify est une plateforme de déploiement et d'hébergement qui permet de créer, déployer et
gérer des sites web modernes et des applications web sans avoir à se soucier de l'infrastructure.
• Wireframes Figma sont des schémas simples qui représentent la structure et la disposition
de l'interface d'un site web ou d'une application.
29
• Désigne Système est un ensemble de normes, de règles, de principes et de composants
réutilisables qui guide la création d'interfaces utilisateurs cohérentes et harmonieuses au sein
d'une application ou d'un site web.
• Mongo DB Atlas est une plateforme de base de données MongoDB en tant que service
(DBaaS) entièrement gérée, proposée par MongoDB Inc.
• Mongo DB compass est une interface graphique (GUI) pour interagir avec une base de
données MongoDB.
• Netlify
• Render
31
2.7 Architecture globale
Dans cette section, nous décrivons l'architecture générale de la plateforme en analysant
ses dimensions physiques et logiques.
32
2.8 Sprint Backlog Général de notre application
Le Sprint Backlog général de notre application recense les tâches et fonctionnalités à
développer pour chaque sprint, fournissant ainsi une vue d'ensemble de la gestion des sprints.
Sprint i Taches
Sprint 0 Analyse + spécification des besoins + Cahier de charge + conceptions
Sprint 1 Gestion des Inscriptions
Gestion des authentifications
Sprint 2 Gestion des utilisateurs
Gestion Profil utilisateur
Sprint 3 Gestion des préférences
Gestion de l'équipe enseignante.
Sprint 4 Gestion des formations
Gestion des recommandation
Sprint 5 Gestion des inscriptions
Gestion des journaux
Sprint 6 Gestion la liste de favoris
Gestion des Badges
Sprint 7 Gestion des Niveaux
Gestion des XP
Sprint 8 Gestion des évaluations
Gestion des évènement
Sprint 9 Gestion des notifications
Tableau 4 Sprint Backlog Général de notre application
Conclusion
Dans ce deuxième chapitre, nous avons effectué une analyse approfondie des besoins
du projet lors du sprint 0. Nous avons identifié les acteurs du système, examiné les besoins
fonctionnels et non fonctionnels, et présenté le diagramme global des cas d'utilisation. De plus,
nous avons constitué le backlog du produit ainsi que le backlog général du sprint. Nous avons
également étudié le diagramme de classe et décrit l'environnement de travail, en précisant les
langages de programmation et les frameworks utilisés. Enfin, nous avons détaillé l'architecture
globale du système, tant sur le plan physique que logique.
33
3 Sprint 1 : Gestion de l'inscription et de
l'authentification
Introduction Sprint 1
Dans ce chapitre, nous avons examiné le premier sprint, axé principalement sur la
gestion de l'inscription et de l'authentification. Notre objectif était de développer les
fonctionnalités de base permettant aux utilisateurs de se connecter au système de manière
sécurisée. En outre, nous avons réalisé une analyse approfondie du sprint, incluant le sprint
backlog ainsi que les diagrammes associés, avant de passer à la phase de mise en œuvre.
34
sur la plateforme.
35
[Link] Description textuelle des cas d'utilisation
Titre Authentification
Acteurs Client , Formateur , Centre de formation , Modérateur et administrateur
Description Lorsqu’un utilisateur veut s’authentifier, il faut créer un compte et choisir en tant
que centre de formation ou client. S'il a déjà un compte, il doit se connecter à sa
session avec son adresse mail et son mot de passe.
Pré conditions L'utilisateur n'est pas connecté et doit avoir un compte
Scénario de base 1. L’utilisateur doit entrer son adresse email pour recevoir un mail de création
du compte.
2. Vérifier son email et cliquer sur "Créer un compte" pour poursuivre la
création du compte.
3. L'utilisateur saisit ses informations d'identification (nom, prénom d'utilisateur
et mot de passe) sur la page de connexion.
4. Le système vérifie la conformité des informations.
5. Le système donne l’accès a l’interface correspondante
Scénario alternatif 1. Adresse email inexistante
2. Les information ne sont pas conforme au norme
Tableau 6 Description textuelle des cas d'utilisation du sprint 1
36
3.3 Réalisation
Notre Page d'accueil : La page d'accueil de notre application web est accessible à nos clients,
leur permettant de visualiser nos formations et services sans avoir besoin de s'authentifier.
Cependant, pour s'inscrire ou bénéficier de notre système de recommandations, une
authentification est requise.
Page vérification email : Cette page est la première que nos clients voient. Pour créer un
compte, il est nécessaire de vérifier d'abord si l'adresse e-mail existe déjà dans notre système.
Page Confirmation d'envoi email : Si l'e-mail existe déjà, notre plateforme ForMe enverra un
message à cette adresse pour permettre à l'utilisateur de poursuivre les étapes de création de
compte.
Email personnaliser : Pour poursuivre la création de compte, il faut cliquer sur 'Créer mon compte'.
Page de réinitialiser mot de passe : Réinitialiser mot de passe vous devez insère votre Email
Email de réinitialiser mot de passe dans cette vous recevez un mail pour réinitialiser mdp
Conclusion
En résumé, ce sprint 1 s'est conclu avec succès, grâce à l'implémentation efficace de
fonctionnalités clés telles que l'inscription des utilisateurs, la confirmation par e-mail, et
l'authentification sécurisée pour les administrateurs, modérateurs, et utilisateurs. Ces progrès
constituent une base solide pour notre projet et renforcent notre engagement à fournir une
expérience utilisateur à la fois fluide et sécurisée.
38
4 Sprint 2 : Gestion des utilisateurs et profil
utilisateur
Introduction
Ce chapitre se consacre au sprint 2, consacré à la gestion des utilisateurs et des profils
sur notre plateforme ForMe. L'objectif était d'implémenter des fonctionnalités permettant à
l'administrateur de gérer les utilisateurs et leurs permissions, tout en offrant aux utilisateurs la
possibilité de consulter et de modifier leurs profils. Nous avons examiné ce sprint avec
attention, en intégrant le sprint backlog ainsi que les diagrammes associés, avant de passer à la
phase de mise en œuvre.
39
En tant qu'administrateur, je Développer les fonctionnalité de tir et
désire avoir la possibilité de filtrage et recherche .
trie filtre et chercher dans la
liste de tous les utilisateurs
inscrits sur la plateforme.
En tant qu'administrateur, je Développer le Service pour gérer Les
désire avoir la possibilité de rôles des utilisateurs
modifier les rôles des Développer une interface dans le
utilisateurs sur la plateforme panneau d'administration permettant
selon les besoins. aux Administrateurs de modifier les
rôles Spécifiques aux utilisateurs.
En qualité d'administrateur, je Développer les Services Nécessaires
désire avoir la possibilité pour Archiver / désarchiver un
d’archiver ou de désarchiver utilisateur.
un utilisateur sur la plateforme Ajouter des options d’Archiver et de
selon les besoins. Désarchiver dans la Liste des
utilisateurs.
En qualité d'administrateur, je Développer les Services Nécessaires
désire avoir la possibilité de pour Suspendre / réactiver un
suspendre ou de réactiver un utilisateur.
utilisateur sur la plateforme Ajouter des options Suspendre et de
selon les besoins. réactiver dans la Liste des utilisateurs.
En tant qu'administrateur, je Développer les Services Nécessaires
désire avoir la possibilité de pour ajouter un utilisateur.
ajouter un compte
d’utilisateur sur la plateforme.
En tant qu'utilisateur je peux Développer les services pour retour des
4 20 Jours
consulter mon profile informations de l'utilisateur.
Gestion Concevoir l'interface utilisateur pour
profile la manipulation du profil utilisateur.
utilisateur En tant qu'utilisateur, Développer les services pour mettre à
j'aimerais avoir la possibilité jour les informations de l'utilisateur.
de modifier mes informations Concevoir l'interface utilisateur pour
de profil, comme mon nom, la Modification du ses informations
prénom et ma photo de profil profil utilisateur.
En tant qu'utilisateur, Développer les fonctionnalité pour
j'aimerais avoir la possibilité mettre à jour mot de passe de
de modifier mon mot de passe l'utilisateur.
et tout sécurité
Implémenter la fonctionnalité de mise
à jour du mot de passe de façons
sécurisé.
Tableau 7 Sprint Backlog - Sprint 2
40
4.2.2 Diagramme des cas d'utilisation du sprint 2 Gestion Utilisateurs
4.3 Réalisation
Dans cette section, nous allons illustrer la réalisation de ce sprint à l'aide de captures
d'écran du projet.
Dérouler de l'Utilisateur : Lorsque l'utilisateur, qu'il soit formateur ou responsable de centre,
clique sur son profil, il peut consulter les détails de son compte, ses notifications ou gère son
compte.
Modifier Profil Utilisateur : Dans cette interface, l'utilisateur peut modifier ses informations
personnelles.
Modifier Mot de Passe Dans cette interface, l'utilisateur peut modifier son mot de passe de
manière sécurisée.
Gestion des utilisateurs par l’administrateur Seul l'administrateur a accès à cette interface,
lui permettant de gérer l'ensemble de la liste des utilisateurs à partir de cet espace.
44
Recherche des utilisateurs par nom ou prénom L’administrateur il peut chercher un
utilisateur par son nom ou prénom ou les plus récent dans notre plateforme ForMe
Ajouter un utilisateur par un admin L’administrateur il peut ajouter tout type d’utilisateur
(client, formateur, centre de formation, modérateur ou administrateur)
45
Trie la liste des utilisateurs par nom ou prénom ou les plus récent
Figure 68Trie la liste des utilisateurs par nom ou prénom ou les plus récent
Conclusion
En résumé, ce sprint 2 s'est conclu avec succès, permettant l'implémentation de
fonctionnalités essentielles pour la gestion des utilisateurs et des profils. L'administrateur peut
désormais gérer les utilisateurs et attribuer des autorisations spécifiques, tandis que les
utilisateurs peuvent consulter et modifier leurs profils de manière autonome. Cette avancée
constitue un progrès significatif dans l'amélioration de la sécurité et de la gestion des accès.
.
46
5 Sprint 3 : Gestion des préférences et
l’équipe enseignant
Introduction
Ce chapitre porte sur le sprint 3, consacré à la Gestion des préférences et l’équipe
enseignant sur notre plateforme ForMe. L'objectif était d'implémenter des fonctionnalités
permettant à l’utilisateur de gérer ses préférences et le centre de formation gère son équipe
d’enseignant. Nous avons minutieusement analysé ce sprint, en intégrant le sprint back log et
les diagrammes correspondants, avant de passer à la phase de mise en œuvre.
5.3 Réalisation
Interface d’explication Dans cette interface Bienvenue sur notre plateforme Web ! Nous vous
encourageons à remplir chaque étape de notre formulaire avec soin et précision.
Formulaire du préférence etape2 Deuxième étapes du formulaire, l'utilisateur doit insérer ses
préférences.
50
Consulter la liste des formateurs de mon centre Dans cette interface chaque centre il peut
visualiser de façon très simple les formateurs dans notre plateforme ForMe
Pop-up un formateur à mon équipe Dans cette interface, le centre de formation peut
facilement affecter un formateur à son établissement.
Conclusion
En résumé, ce sprint 3 s'est conclu avec succès, marquant la mise en place de
fonctionnalités essentielles pour la gestion des préférences et des équipes enseignant. Le client
peut gérer c’est préférence, tandis que les centre de formation ont la possibilité de consulter et
modifier leurs équipes enseignant en toute autonomie.
51
6 Sprint 4 : Gestion des formations et
recommandation
Introduction
Ce chapitre porte sur le sprint 4, consacré à la Gestion des formations et
recommandation sur notre plateforme ForMe. L'objectif était d'implémenter des fonctionnalités
permettant notre plateforme Web de recommander des formations à nos clients et le centre de
formation gère et crée ses formations. Nous avons minutieusement analysé ce sprint, en
intégrant le sprint back log et les diagrammes correspondants, avant de passer à la phase de
mise en œuvre.
52
avoir une recommandation des nécessaire dans pour le
formation préférence de formation
Préparation du fonction de
recommandation
En tant que modérateurs et Ajouter interface dans le
administrateur je souhaite ajouter Dashboard
une formation Création des service d’ajout
Développement des service
nécessaire pour l’ajout
En tant que modérateurs et Développer les fonction de
administrateur je souhaite modification
modifier une formation
En tant que modérateurs et Développer les fonctions
administrateur je souhaite nécessaire pour la
supprimer une formation suppression d’une
formation
En tant qu'utilisateur, je veux que Création du fonction de 20 jour
8 Gestion des
le site recommande des recommandation
recommandations formations en fonction de mes Prépare le système et le
préférences. personnaliser par un
recommandation au choix
du entreprise par priorité
Ajouter une partie de
recommandation dans le
accueils pour le mettre en
valeur
Tableau 12 Sprint Backlog - Sprint 4
53
[Link] Description textuelle des cas d'utilisation
6.3 Réalisation
Interface de gestion des formations Dans cette interface, le centre peut consulter ses
formations, les modifier ou les supprimer, ainsi qu’ajouter une nouvelle formation en
remplissant tous les détails requis.
Pop-up Ajouter une formation étape 1 Lors de la première étape pour ajouter une formation,
il est nécessaire tous les détails d’une formation
Pop-up Ajouter une formation étape 2 Lors de la deuxième étape du formulaire, il faut
indiquer le domaine, la liste des compétences, l'emplacement, le niveau de difficulté, le niveau
d'engagement, ainsi que les dates de début et de fin.
54
Figure 84 Pop-up d'ajout une formation etape 2
Pop-up Ajouter une formation étape 3 Lors de la troisième étape du formulaire, il est
nécessaire de saisir les disponibilités et les horaires dans la journée.
Conclusion
En résumé, ce sprint 4 s'est conclu avec succès, marquant la mise en place de
fonctionnalités essentielles pour la recommandation et gestion des formations. Le centre peut
gérer c’est formation, tandis que la plateforme peut recommander des formations selon les
présences du client en toute autonomie.
55
7 Sprint 5 : Gestion des inscription et
journaux
Introduction
Ce chapitre porte sur le sprint 5, consacré à la Gestion des formations et
recommandation sur notre plateforme ForMe. L'objectif était d'implémenter des fonctionnalités
permettant notre plateforme ForMe de recommander des formations à nos clients et le centre
de formation gère et crée ses formations. Nous avons minutieusement analysé ce sprint, en
intégrant le sprint back log et les diagrammes correspondants, avant de passer à la phase de
mise en œuvre.
57
7.3 Réalisation
Interface pour l’Inscription à partir de l’accueil Dans cette interface, notre application
propose des formations en fonction des préférences du client, qui peut s'y inscrire facilement.
Interface Inscription à partir de détails formation Dans cette interface, le client peut
s'inscrire facilement en cliquant sur le bouton bleu.
58
Interface affichage de nombre d’inscription a une formation Dans cette interface,
l'utilisateur peut voir le nombre d'inscriptions pour chaque formation.
Interface de gestion des inscriptions Ici, l'utilisateur peut gérer ses inscriptions.
Interface pour la gestion de logs Dans cette interface, l'administrateur peut visualiser les logs.
Conclusion
En résumé, ce sprint 5 s'est conclu avec succès, marquant la mise en place de
fonctionnalités essentielles pour la recommandation et gestion des formations. Le centre peut
gérer c’est formation, tandis que la plateforme peut recommander des formations selon les
présences du client en toute autonomie.
59
8 Sprint 6 : Gestion des Badges et de la liste
de favoris
Introduction
Ce chapitre porte sur le sprint 6, consacré à la Gestion des Badges et de la liste de favoris
notre plateforme ForMe. L'objectif était d'implémenter des fonctionnalités permettant notre
plateforme Web d’affecter des Badges à nos clients et le client peut gère et ajouter des
formations au liste de favoris. Nous avons minutieusement analysé ce sprint, en intégrant le
sprint back log et les diagrammes correspondants, avant de passer à la phase de mise en œuvre.
62
[Link] Diagramme de séquence objet Gestion des favores
8.3 Réalisation
Interface pour ajouter formation au favoris En cliquant sur l'étoile, la formation sera
automatiquement ajoutée aux favoris.
Interface pour retire formation de favoris En cliquant une autre fois sur l'étoile, la formation
sera automatiquement retire du favori.
Interface pour afficher ses badges Dans son profil, notre client peut voir ses badges.
Pop-up pour modifier badges Dans cette pop-up, l'administrateur et le modérateur peuvent
modifier un badge.
Conclusion
En résumé, ce sprint 6 s'est conclu avec succès, marquant la mise en place de
fonctionnalités essentielles pour la gestion du favori et gestion des badges. L’administrateur
peut gérer les badges, tandis que le client peut ajouter des formations au favoris selon les
présences du client en toute autonomie.
65
9 Sprint 7 : Gestion des Niveaux et Point XP
Introduction
Ce chapitre porte sur le sprint 7, consacré à la Gestion des Niveaux et Point XP.
L'objectif était d'implémenter des fonctionnalités permettant notre plateforme Web d’avoir des
niveaux et le client peut gagner ou perdre des point XP grâce à ces points il peut augmenter ou
diminuer dans les niveaux. Nous avons minutieusement analysé ce sprint, en intégrant le sprint
back log et les diagrammes correspondants, avant de passer à la phase de mise en œuvre.
66
supprimer 50 point XP a un Ajouter le buttons et le
utilisateur fonctionnalité
En tant que modérateurs et Développer le méthode
administrateur je souhaite d’affectation du badges
affecter un badge a utilisateur Ajouter le formulaire pour la
affectation
Cree l’interface dédier a cette
fonctionnalité
Tableau 19 Sprint Backlog - Sprint 7
67
9.2.3 Diagramme de séquence objet du sprint 7
68
9.3 Réalisation
• Interface pour consulter les points xp Dans son profil, notre client peut voir ses point xp.
• Interface pour gestion des XP Dans cette interface, l'administrateur ou le modérateur peut
gérer les point XP en les ajoutant, les modifiant ou les supprimant.
• Interface pour gère les niveaux Dans cette interface, l'administrateur ou le modérateur peut
gérer les Niveau en les ajoutant, les modifiant où les supprimant.
• Pop-up pour ajouter un niveau Dans cette pop-up, l'administrateur et le modérateur peuvent
ajouter un niveau.
Conclusion
En résumé, ce sprint 7 s'est conclu avec succès, marquant la mise en place de
fonctionnalités essentielles pour la gestion des niveaux et gestion des points XP.
L’administrateur peut gérer les niveaux et les XP des utilisateurs
70
10 Sprint 8 : Gestion des évaluations et
Evènement
Introduction
Ce chapitre porte sur le sprint 8, consacré à la Gestion des évaluations et Evènement.
L'objectif était d'implémenter des fonctionnalités permettant l’administrateur de gère des
évènements et le client peut donner son avis sur des formations. Nous avons minutieusement
analysé ce sprint, en intégrant le sprint back log et les diagrammes correspondants, avant de
passer à la phase de mise en œuvre.
Figure 115 Diagramme des cas d'utilisation du sprint 8 Gestion des Evènements
Figure 116 Diagramme des cas d'utilisation du sprint 8 Gestion des évaluations
10.3 Réalisation
Evaluer une formation
73
Interface pour Gestion des évènements Dans cette interface, l'administrateur ou le
modérateur peut gérer les événements en les ajoutant, les modifiant où les supprimant.
Conclusion
En résumé, ce sprint 8 s'est conclu avec succès, marquant la mise en place de
fonctionnalités essentielles pour la gestion des évaluations et gestion des événements.
L’administrateur peut gérer les évènements et les clients peuvent évaluer les formations.
74
11 Sprint 9 : Gestion des Notification
Introduction
Ce chapitre porte sur le sprint 9, consacré à la Gestion des Notification. L'objectif était
d'implémenter des fonctionnalités permettant l’administrateur de notifier un utilisateur et le
client peut consulter sa boite de notification. Nous avons minutieusement analysé ce sprint, en
intégrant le sprint back log et les diagrammes correspondants, avant de passer à la phase de
mise en œuvre.
Estimation
ID Feature Module User Story Taches
Gestion des En tant que client je souhaite Création des interface pour mettre en valeur cette 20
17 notifications consulter mes notification fonctionnalité
jour
Développement la fonction nécessaire pour la
récupération des notification
En tant qu’administrateur je Cree le formulaire
souhaite notifier un client Développer la fonction d’ajout
En tant que plateforme je Développer un système automatique pour notifier
souhaite notifier un client les client
Tableau 24 Sprint Backlog - Sprint 9
75
Figure 122 Diagramme des cas d'utilisation du sprint 9 Gestion des notifications
11.3 Réalisation
Liste des Notification par client
76
Figure 124 Liste des Notifications pour un client
Notification de sécurité
Notification de bienvenue
Conclusion
En résumé, ce sprint 9 s'est conclu avec succès, marquant la mise en place de
fonctionnalités essentielles pour la gestion des évaluations et gestion des événements.
L’administrateur peut gérer les évènements et les clients peuvent évaluer les formations.
77
Conclusion Générale
Ce stage au sein de Bee Coders a constitué une opportunité enrichissante tant sur le plan
technique que professionnel. Il m'a permis de mettre en pratique les compétences acquises au
cours de ma formation à travers le développement d’une plateforme web en ligne centralisée
pour les centres de formation en Tunisie.
Ce stage m’a non seulement permis de développer des compétences techniques, mais il
m’a aussi offert une vision plus claire des défis professionnels, des attentes en entreprise et de
l’importance d’une bonne collaboration. Au terme de cette expérience, je me sens plus préparé
et motivé à entrer pleinement dans le monde professionnel du développement web.
78
12 Bibliographie
[1] [Link]/fr 01/01/24
[6] [Link]/intl/fr-fr/blog/collaboration/methode-
agile#:~:text=La%20méthode%20agile%20est%20une,de%20l%27avancement%20
du%20projet. 28/9/24
79
80