Ultimate Erp Solutions
Ultimate Erp Solutions
Génie logiciel
EDDIB Khadija
à tous ceux qui ont constamment prié pour mon succès et m'ont soutenu dans la réalisation de
mes objectifs. Vos prières, vos sacrifices et votre amour ont été une source inestimable
d'inspiration pour moi. Je suis profondément reconnaissant pour vos efforts et votre soutien
indéfectible. Que Dieu vous bénisse et vous accorde la santé et le bonheur.
À mes frères
je vous suis reconnaissant pour votre soutien moral et votre encouragement constants.
À mes amis
je vous exprime ma gratitude pour votre gentillesse et votre compréhension, ainsi que pour
les moments précieux que nous avons partagés ensemble.
À toute ma famille
à tous ceux qui me chérissent, je vous adresse un grand merci pour votre amour et votre
soutien inconditionnels.
RACHID Aymane
REMERCIEMENTS
Tout d'abord, nous exprimons notre profonde reconnaissance envers Dieu le Tout-
Puissant pour nous avoir dotés de la santé et de la détermination nécessaires pour entreprendre
et mener à bien ce projet. Nous tenons également à adresser nos plus sincères remerciements à
nos parents, dont le soutien constant et les encouragements inébranlables ont été des sources
d'inspiration tout au long de notre parcours académique. Leur confiance en nos capacités nous
a stimulés à atteindre nos objectifs et à concrétiser ce travail de fin d'études dans le domaine
du développement informatique.
Nous souhaitons exprimer notre profonde gratitude envers Madame AIT EL HADJ
Maryem, pour son encadrement exceptionnel, son dévouement et sa disponibilité inégalés tout
au long de ce stage. Ses conseils éclairés et son soutien précieux ont été des atouts
indispensables à la réussite de ce travail. Nos remerciements les plus sincères vont également
à notre superviseur, Monsieur El Oukili Yahya, dont l'expertise et les conseils avisés ont été
d'une importance capitale pour mener à bien ce projet.
Nous tenons également à remercier chaleureusement toutes les personnes qui ont
contribué, de près ou de loin, à la réalisation de ce travail. Leur implication et leur soutien ont
été des éléments clés de notre réussite. Enfin, nous exprimons notre profonde gratitude à toute
l'équipe pédagogique de l'Universiapolis de Laayoune pour leur intérêt constant pour notre
formation, ainsi que pour leur disponibilité et leur soutien tout au long de ce parcours
académique enrichissant.
À tous ceux qui ont contribué, de quelque manière que ce soit, à la réalisation de ce
projet, nous adressons nos plus chaleureux remerciements. Votre soutien et votre
collaboration ont été d'une valeur inestimable et ont grandement contribué au succès de ce
travail
I
TABLE DES MATIÈRES
REMERCIEMENTS.............................................................................................................................................................I
TABLE DES MATIÈRES...................................................................................................................................................II
TABLE DES ILLUSTRATIONS......................................................................................................................................IV
I. LISTE DES TABLEAUX..............................................................................................................................................................................IV
II. LISTE DES FIGURES...................................................................................................................................................................................IV
LISTE DES ABRÉVIATIONS...........................................................................................................................................V
RÉSUMÉ............................................................................................................................................................................VI
ABSTRACT......................................................................................................................................................................VII
INTRODUCTION GÉNÉRALE..........................................................................................................................................1
CHAPITRE I: CONTEXTE DU PFE..................................................................................................................................3
I. INTRODUCTION.............................................................................................................................................................................................4
II. PRESENTATION DE L’ENTREPRISE..........................................................................................................................................................4
1. Sa création.........................................................................................................................................................4
2. Organigramme de l’entreprise...........................................................................................................................5
3. Fiche technique.................................................................................................................................................6
4. Solutions de l’entreprise....................................................................................................................................6
5. Les clientèles de ULTIMATE ERP SOLUTIONS...........................................................................................7
III. PRESENTATION DE PROJET..................................................................................................................................................................9
1. Contexte............................................................................................................................................................9
2. Les objectifs......................................................................................................................................................9
3. Étude de l’existant...........................................................................................................................................10
IV. CAHIER DES CHARGES.......................................................................................................................................................................10
1. Étude................................................................................................................................................................10
2. Fonctionnalités de projet.................................................................................................................................11
3. Les besoins......................................................................................................................................................12
3.1. Besoins fonctionnels..............................................................................................................................12
3.2. Besoins non fonctionnels.......................................................................................................................12
V. CONDUITE DE PROJET...............................................................................................................................................................................12
1. Cycle de vie.....................................................................................................................................................12
2. Diagramme de Gantt.......................................................................................................................................13
VI. CONCLUSION.........................................................................................................................................................................................14
CHAPITRE II: ANALYSE ET CONCEPTION................................................................................................................15
I. INTRODUCTION...........................................................................................................................................................................................16
II. DIAGRAMME DE CLASSES.......................................................................................................................................................................16
III. DIAGRAMME DE CAS D’UTILISATION............................................................................................................................................17
1. Diagramme de cas d’utilisation d’admin........................................................................................................18
2. Diagramme de cas d’utilisation de recruteur...................................................................................................19
3. Diagramme de cas d’utilisation du candidat...................................................................................................20
IV. DIAGRAMME DE SÉQUENCE.............................................................................................................................................................20
1. Scénario d’authentification.............................................................................................................................21
2. Scénario de gestion d’offres............................................................................................................................22
3. Scénario de postulation...................................................................................................................................23
4. Scénario de gestion des candidatures..............................................................................................................24
V. CONCLUSION...............................................................................................................................................................................................25
CHAPITRE III: RECHERCHE BIBLIOGRAPHIQUE....................................................................................................26
I. INTRODUCTION...........................................................................................................................................................................................27
II. ARCHITECTURE TECHNIQUE..................................................................................................................................................................27
III. OUTILS UTILISES..................................................................................................................................................................................28
1. Monday............................................................................................................................................................28
II
2. Power AMC.....................................................................................................................................................28
3. Visual studio....................................................................................................................................................28
4. Visual studio code...........................................................................................................................................29
5. GitHub.............................................................................................................................................................29
IV. TECHNOLOGIES DEPLOYEES............................................................................................................................................................29
1. .Net Core.........................................................................................................................................................29
2. Angular............................................................................................................................................................29
3. Bootstrap.........................................................................................................................................................30
4. SQL Server......................................................................................................................................................30
5. Swagger...........................................................................................................................................................30
6. JWT.................................................................................................................................................................30
V. CONCLUSION...............................................................................................................................................................................................31
CHAPITRE IV: DEVELOPPEMENT...............................................................................................................................32
I. INTRODUCTION...........................................................................................................................................................................................33
II. PRÉSENTATION DES INTERFACES.........................................................................................................................................................33
1. Interfaces d’accueil.........................................................................................................................................33
2. Interfaces admin..............................................................................................................................................36
3. Interfaces recruteur..........................................................................................................................................40
4. Interfaces candidat...........................................................................................................................................43
III. PROBLÈMES RENCONTRÉS................................................................................................................................................................43
IV. CONCLUSION.........................................................................................................................................................................................44
CONCLUSION GÉNÉRALE ET PERSPECTIVE...........................................................................................................45
BIBLIOGRAPHIE.............................................................................................................................................................46
ANNEXE............................................................................................................................................................................47
III
TABLE DES ILLUSTRATIONS
IV
LISTE DES ABRÉVIATIONS
Acronyme Désignation
V
Resume
Ce rapport présente le développement d'une application web dédiée à la gestion des lieux
géographiques au sein de la Wilaya de Laâyoune. L'objectif principal est de simplifier et d'optimiser
la gestion des districts, annexes, lieux et catégories, en mettant l'accent sur les besoins des
utilisateurs annexes.
En mettant en avant les fonctionnalités clés, les technologies utilisées et les résultats
obtenus, ce rapport offre un aperçu complet du processus de création de l'application de gestion des
lieux géographiques.
VI
ABSTRACT
This report presents the development of a web application dedicated to managing geographic
locations within the Wilaya of Laâyoune.
The main objective is to simplify and optimize the management of districts, annexes,
locations, and categories, focusing on the needs of annex users.
The report details the different phases of the project, from analysis to design, including
literature review and actual application development. By highlighting key features, technologies used,
and results achieved, this report provides a comprehensive overview of the process of creating the
geographic location management application.
VII
INTRODUCTION GÉNÉRALE
Dans le cadre de mon stage au sein de la Wilaya de Laâyoune, j'ai été chargé de concevoir
et développer une application web dédiée à la gestion des lieux géographiques. Cette application
vise à simplifier et optimiser la gestion des différents districts, annexes, lieux et catégories au sein
de la Wilaya, en mettant l'accent sur les besoins spécifiques des utilisateurs annexes.
Dans ce contexte, l'application que je vais concevoir offrira des fonctionnalités avancées
permettant aux utilisateurs annexes de saisir et de gérer les informations relatives aux différents
lieux géographiques. Ces fonctionnalités incluront notamment la possibilité d'ajouter de nouveaux
lieux, de les associer aux districts et annexes correspondants, ainsi que de spécifier leur catégorie et
leur utilisation.
8
commencerons par présenter le diagramme de classes, illustrant la structure des différentes entités et
relations au sein du système. Ensuite, nous aborderons le diagramme de cas d'utilisation, décrivant
les différentes fonctionnalités destinées aux utilisateurs tels que les administrateurs, les recruteurs et
les candidats. Ce chapitre inclura également un diagramme de séquence, offrant une vision des
divers scénarios d'utilisation de l'application.
Enfin, le dernier chapitre, intitulé « DEVELOPPEMENT », fournira une vue détaillée des
fonctionnalités concrètement implémentées, en utilisant les technologies et les outils mentionnés
dans le chapitre précédent. Nous présenterons les résultats tangibles issus du développement de
l'application.
9
Chapitre I: CONTEXTE DU PFE
1
0
Chapitre I: CONTEXTE DU PFE
I. Introduction
Dans ce premier chapitre, le contexte du Projet de Fin d’Études (PFE) sera exploré en
mettant en avant l'entreprise d'accueil et les éléments essentiels du projet. Premièrement,
l’entreprise d’accueil sera présentée, incluant son organigramme, ses domaines (informatique,
réseaux informatiques et sécurité). Deuxièmement, une présentation détaillée du projet suivra,
incluant le contexte, les objectifs et une étude de l'existant. Ensuite, un cahier des charges
détaillé mettra en évidence les fonctionnalités et les besoins du projet. La conduite du projet
sera également abordée, en expliquant le cycle de vie choisi et en fournissant un diagramme de
Gantt pour la planification du projet. Enfin, ce chapitre se conclura en résumant les points clés
qui y ont été traités.
2. Organigramme de la wilaya
DIVISION DES
SYSTEMES
D’INFORMATION ET DE
Développer de Nouvelles Applications et des Interfaces entre des briques logicielles existantes.
Coordonner et Animer l’activité de Développement Informatique au sein du Service du Systèmes
d’Information.
12
Chapitre I: CONTEXTE DU PFE
Concevoir, Développer et Maintenir Toutes Sortes d’Applications Informatiques pour les divers
Services de la Province.
Assurer le bon Fonctionnement du Matériels, des Logiciels, des Réseaux et de la Sécurité de
l’information.
Installation, Exploitation et Suivi des différents Systèmes d’Information « Applications
Informatiques » du Ministère de l’Intérieur au niveau de la Province et les Annexes
Administratives Locales sur le Réseaux Intranet du Ministère dans le cadre des Normes, Méthodes
d’exploitation et de Sécurité du Central.
Administration et Supervision des Annexes Administratives Locales et la Promotion Nationale
Connectées au Réseau Intranet du Ministère de l’Intérieur (WhatsApp Gold).
Améliorer des Systèmes d'Information et Gérer les Droits d'Accès des Utilisateurs.
5. Domaine De La Sécurité
14
Chapitre I: CONTEXTE DU PFE
15
Chapitre I: CONTEXTE DU PFE
1. Contexte
La gestion efficace des lieux géographiques revêt une importance cruciale dans la planification
urbaine et la prise de décision territoriale. Dans le cadre de ce projet, nous nous intéressons
spécifiquement à la Wilaya de Laâyoune, une région où les autorités locales font face à des défis
significatifs en matière de gestion géographique. La Wilaya de Laâyoune est une zone géographique
complexe, avec une variété de districts, d'annexes, de lieux et de catégories qui nécessitent une gestion
précise et coordonnée.
2. Les objectifs
L'objectif principal de ce projet est de concevoir et de développer une application web dédiée à
la gestion des lieux géographiques au sein de la Wilaya de Laâyoune. Cette application vise à fournir
une plateforme centralisée et conviviale permettant aux utilisateurs annexes de saisir, de gérer et de
visualiser facilement les informations géographiques pertinentes. Les objectifs spécifiques incluent :
Simplifier la saisie et la gestion des informations géographiques, en automatisant les processus
manuels.
Améliorer la précision et la fiabilité des données géographiques en les centralisant dans une
seule plateforme.
Optimiser la planification territoriale et la prise de décision grâce à une meilleure
16
Chapitre I: CONTEXTE DU PFE
compréhension et visualisation des données géographiques.
3. Étude de l’existant
Les processus de gestion territoriale actuels, englobant la planification urbaine, la gestion des
ressources naturelles et la sécurité territoriale, sont fragmentés et manquent de coordination, soulignant
ainsi des opportunités d'amélioration. Les besoins des utilisateurs et des parties prenantes, recueillis à
travers des entretiens, mettent en lumière la nécessité d'une solution informatique intégrée offrant des
fonctionnalités de collecte, d'analyse et de visualisation des données géographiques.
En outre, les contraintes budgétaires, les limitations technologiques et les risques liés à la
sécurité des données constituent des défis à prendre en compte dans le développement du nouveau
système. Cette étude de l'existant fournit ainsi un aperçu complet des besoins, des défis et des
opportunités qui guideront la conception et la mise en œuvre du système de gestion des endroits
géographiques pour la Wilaya de Laayoune.
4. Problématique
5. Solutions Proposées
Pour résoudre ces problèmes, nous proposons le développement d'une application web dédiée à
la gestion des lieux géographiques. Cette application offrira une interface conviviale permettant
aux utilisateurs annexes de saisir, de visualiser et de gérer facilement les informations
géographiques pertinentes. Elle intégrera des fonctionnalités avancées telles que la
géolocalisation, la cartographie interactive et la génération de rapports personnalisés. En
17
Chapitre I: CONTEXTE DU PFE
centralisant les données et en automatisant les processus, cette solution permettra d'optimiser la
gestion territoriale et de faciliter la prise de décision au sein de la Wilaya de Laâyoune.
1. Étude
L'objectif de ce cahier des charges est de définir les spécifications fonctionnelles et techniques
pour le développement d'une application web de gestion des lieux géographiques au sein de la Wilaya
de Laâyoune. Cette application vise à simplifier la saisie, la gestion et la visualisation des informations
relatives aux districts, annexes, lieux et catégories, en mettant l'accent sur les besoins des utilisateurs
annexes.
2. Fonctionnalités de projet
3. Les besoins
V. Conduite de projet
1. Méthodologie De Travail
La gestion de projet revêt une importance capitale dans la réussite d'un projet, car elle englobe
la planification, l'organisation, la coordination et le contrôle de toutes les activités nécessaires pour
atteindre les objectifs fixés, tout en respectant les contraintes de temps, de budget et de qualité. Elle
permet également d'identifier et de gérer les risques, de communiquer efficacement avec toutes les
parties prenantes et d'optimiser l'utilisation des ressources disponibles.
2. Diagramme de Gantt
19
Chapitre I: CONTEXTE DU PFE
20
Chapitre I: CONTEXTE DU PFE
influencer le résultat final du produit. Afin de prévenir de telles situations, nous avons élaboré un
inventaire exhaustif des risques potentiels susceptibles de compromettre la réalisation des objectifs
du projet.
Ces risques ont été catégorisés en fonction de leur gravité et de leur impact sur
l'avancement du projet..
Risques Types Sévérités Impact Solutions
pour l'éviter
entraîner - Augmenter la
Logiciel Technique Très Grave des erreurs couverture du
d'exécution code avec les
tests.
VII. Conclusion
Pour conclure ce chapitre, nous avons présenté le contexte du Projet de Fin d'Études,
soulignant l'importance de l'entreprise d'accueil et les éléments clés du projet. Ces informations ont
établi les bases nécessaires pour une compréhension approfondie du projet, offrant une vue
d'ensemble de l'entreprise d'accueil, du contexte du projet, des objectifs et des exigences. Ce
chapitre revêt une importance cruciale pour la suite du rapport.
21
Chapitre II: ANALYSE ET CONCEPTION
22
Chapitre II: ANALYSE ET CONCEPTION
I. Introduction
Le diagramme de classes est une représentation visuelle de la structure et des relations entre les
classes d'objets dans le système. Il est important puisqu’il permet de conceptualiser et de
communiquer la structure de l’application de manière claire et concise.
Le recruteur (Recruiter) appartient à une et une seule entreprise (Company), une entreprise
(Company) peut contenir plusieurs recruteurs (Recruiter).
Le recruteur (Recruiter) contrôle une ou plusieurs offres d’emploi ou de stage (Offer). Une
offre (Offer) est associée à un seul recruteur (Recruiter).
Le candidat (Candidate) peut consulter plusieurs offres (Offer) publiées et une offre (Offer)
peut être consultée par plusieurs candidats (Candidate).
24
Chapitre II: ANALYSE ET CONCEPTION
Le diagramme de cas d'utilisation est un outil de modélisation qui permet de représenter les
différentes fonctionnalités d'un système, du point de vue des acteurs impliqués. Il est composé
d'acteurs, qui sont les utilisateurs ou les entités extérieures qui interagissent avec le système, et de
cas d'utilisation, qui sont les différentes actions ou fonctionnalités du système.
Dans le cadre de l’application de gestion de recrutement, trois acteurs principaux sont identifiés : le
recruteur, le candidat et l'administrateur. Chacun de ces acteurs a des fonctionnalités et des rôles
différents au sein de l'application.
25
Chapitre II: ANALYSE ET CONCEPTION
Les figures ci-dessous présentent les différents cas d'utilisation pour chaque acteur, afin de mieux
comprendre comment l'application fonctionne et comment les différents utilisateurs peuvent
interagir avec elle.
Le rôle de l'administrateur est crucial pour assurer le bon fonctionnement de l'ensemble du système.
L'administrateur est responsable de l'installation et de la maintenance de l'application, ainsi que de
la gestion des droits d'accès, il a également la responsabilité de gérer les comptes utilisateurs. En
outre, l'administrateur est chargé de veiller à ce que l'application soit sécurisée et de résoudre les
problèmes techniques éventuels.
26
Chapitre II: ANALYSE ET CONCEPTION
Le rôle de recruteur dans ce système est un rôle central et structuré en plusieurs tâches distinctes et
interdépendantes. Le recruteur est responsable de la gestion des offres d'emploi et des candidatures
correspondantes, de la planification et de la coordination des entretiens, ainsi que de la
communication avec les candidats. La création et la publication d'une offre d'emploi sont les
premières étapes du processus de recrutement, suivies de la gestion des candidatures et du tri des
profils de candidats. Enfin, le recruteur est responsable de la planification et de la coordination des
entretiens avec les candidats sélectionnés. Ce processus comprend la fixation de la date et de l'heure
de l'entretien.
Le rôle de recruteur dans notre système est donc un rôle-clé pour la réussite du processus de
recrutement.
27
Chapitre II: ANALYSE ET CONCEPTION
Les rôles des candidats sont bien structurés afin de leur permettre une expérience utilisateur fluide
et efficace. Après la création du compte du candidat, plusieurs actions seront mises à sa disposition,
notamment la consultation des offres publiées, la mise à jour de son profil, la soumission de sa
candidature à une offre spécifique, la vérification de l'état de sa candidature. Tous ces cas
d'utilisation sont pensés pour offrir aux candidats une expérience utilisateur transparente et
simplifiée.
Le diagramme de séquence est un outil de modélisation visuelle qui permet de représenter les
interactions entre les différents objets d'un système, ainsi que leur ordre chronologique. Il s'agit d'un
outil très utile pour décrire les scénarios d'utilisation d'un système et comprendre les différents
échanges d'informations entre les acteurs du système. Dans ce projet de développement d'une
application de gestion de recrutement, les diagrammes de séquence sont créés pour représenter les
différents scénarios d'utilisation du système, tels que l'authentification, la gestion des offres, la
candidature à une offre, etc.
Ces diagrammes ont permis de mieux comprendre les interactions entre les différents acteurs de
l'application et de clarifier les différentes étapes de chaque scénario.
28
Chapitre II: ANALYSE ET CONCEPTION
1. Scénario d’authentification
Le scénario d'authentification est une étape cruciale pour garantir la sécurité et la confidentialité des
données des utilisateurs de l'application. Lorsqu'un utilisateur accède à l'application, il est invité à
s'identifier en fournissant son email et son mot de passe. Ce scénario permet de s'assurer que seuls
les utilisateurs autorisés peuvent accéder à leur compte et effectuer des actions qui leur ont
assignées.
29
Chapitre II: ANALYSE ET CONCEPTION
Le scénario de gestion d'offres consiste en plusieurs étapes pour permettre aux recruteurs de publier
et de gérer les offres d'emploi de manière efficace.
30
Chapitre II: ANALYSE ET CONCEPTION
Le recruteur peut également créer une nouvelle offre en cliquant sur le bouton "Nouvelle
offre" et en saisissant les informations nécessaires telles que le titre de l'offre, la description
de poste, les critères de sélection.
Le recruteur peut aussi supprimer une offre en cliquant sur le bouton "Supprimer l'offre".
Le recruteur peut modifier une offre existante en cliquant sur le bouton "Modifier l'offre" et
en apportant les changements nécessaires.
3. Scénario de postulation
Le scénario de postulation permet aux candidats de postuler facilement à des offres d'emploi et aux
recruteurs de gérer efficacement les candidatures reçues.
31
Chapitre II: ANALYSE ET CONCEPTION
Le scénario de postulation commence lorsque le candidat souhaite postuler à une offre d'emploi
disponible sur l'application. Tout d'abord, le candidat recherche des offres d'emploi en utilisant les
critères de recherche appropriés. Une fois qu'il trouve l’offre qui l'intéresse, il peut postuler. Le
système enregistre alors sa candidature et le recruteur peut la consulter.
Dans le cas où le candidat est retenu pour un entretien, le système envoie une invitation d'entretien
par e-mail et le candidat peut accepter ou refuser l'invitation en fonction de sa disponibilité. Si le
candidat est finalement embauché, le statut de sa candidature est mis à jour dans le système. Si sa
candidature est rejetée, le candidat est informé par e-mail que sa candidature n'a pas été retenue.
32
Chapitre II: ANALYSE ET CONCEPTION
sa candidature en ligne. Les recruteurs peuvent ensuite consulter les candidatures reçues et les trier
en fonction de critères tels que le niveau d'expérience, les compétences et la formation. En fin de
compte, les recruteurs sélectionnent les candidats qu'ils souhaitent convoquer ou embaucher et
mettent à jour l'état de leur candidature dans la plateforme en conséquence. Ce scénario montre
comment la plateforme de gestion des candidatures facilite le processus de recrutement en offrant
une interface centralisée pour les recruteurs et les candidats pour interagir, gérer et suivre les
candidatures.
V. Conclusion
33
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
34
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
I. Introduction
Dans cette section introductive, nous plongeons au cœur de la préparation de notre projet de
stage en réalisant une étude bibliographique essentielle. Notre thème de stage, axé sur le développement
d'un système de gestion des endroits géographiques au sein de la Wilaya de Laayoune, requiert une
connaissance approfondie des pratiques, des théories et des technologies existantes dans ce domaine.
Nous débuterons cette étude en réaffirmant le thème central de notre projet, soulignant ainsi
l'importance de notre recherche dans le contexte de la gestion territoriale spécifique à Laayoune. En
parallèle, nous identifierons les outils et les méthodes qui seront notre guide lors de la mise en œuvre de
notre stage.
Cette introduction pose ainsi les bases nécessaires pour une exploration approfondie de la
littérature existante, nous permettant de mieux comprendre les enjeux, les pratiques recommandées et
les technologies émergentes dans le domaine de la gestion des endroits géographiques.
L'architecture technique du projet repose sur une combinaison d'Angular pour le frontend et
Spring Boot pour le backend. Cette approche suit un modèle client-serveur où Angular agit comme une
interface utilisateur interactive côté client, tandis que Spring Boot fournit un framework robuste pour le
développement d'applications Java côté serveur.
Côté backend, Spring Boot offre une plateforme Java simplifiée et flexible pour la création
d'applications web robustes et évolutives. Il prend en charge l'ensemble du cycle de développement, de
la configuration initiale à la mise en production, en fournissant des fonctionnalités telles que l'inversion
de contrôle, la gestion des dépendances, et la création de services web RESTful avec Spring MVC.
Côté frontend, Angular est utilisé pour développer une interface utilisateur moderne et
réactive. Grâce à son architecture basée sur les composants, Angular facilite la création de pages web
dynamiques et interactives. Les modules, les composants et les services Angular permettent de
structurer l'application frontend de manière modulaire et de faciliter la réutilisation du code.
La communication entre le frontend et le backend se fait via des requêtes HTTP RESTful.
Spring Boot expose des points de terminaison RESTful pour permettre à l'application Angular
d'interagir avec les données stockées dans la base de données ou de réaliser des opérations métier.
En combinant Angular 7 et Spring Boot 2, le projet vise à fournir une solution complète et
robuste pour le développement d'applications web modernes. Cette architecture offre une séparation
claire des préoccupations entre le frontend et le backend, maintenabilité et l'évolutivité de l'application.
35
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
1. Gant Project
2. Power AMC
36
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
Visual Studio Code, un éditeur de code simplifié, est offert gratuitement en open source
par Microsoft. Il est compatible avec les systèmes d'exploitation Windows, macOS et
Linux. Cet environnement de développement intégré fournit aux développeurs une
gamme complète d'outils, allant de l'édition de code à la construction et au débogage des
projets techniques. Dans le cadre de notre projet, cet outil a été employé pour le
Figure 18:Visual Studio développement de la partie frontend utilisant Angular.
Code
4. GitHub
1. Angular
2. Spring Boot
37
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
38
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
3. Bootstrap
4. MYSQL
5. JWT
Les « JSON Web Token » ou JWT sont des jetons générés par un serveurlors
de l’authentification d’un utilisateur sur une application Web, et qui sont
ensuite transmis au client. Ils seront renvoyés avec chaque requête HTTP au
serveur, ce qui lui permettra d’identifier l’utilisateur. [13]
Figure 25: JWT
39
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
En utilisant ces technologies, une application web moderne, performante et conviviale sera créée. Les
capacités et la flexibilité de .NET permettront de gérer efficacement les opérations côté serveur, tandis
que Angular et Bootstrap faciliteront la création d'interfaces utilisateur interactives et dynamiques côté
client. Enfin, SQL Server fournira un stockage de données solide et fiable pour l'application.
6. TypeScript
7. HTML
8. CSS
V. Serveur Utilisée
1. Xampp
XAMPP est une suite complètesuite dede solutions de serveur Web gratuites et
open source créées par Apache Friends.solutions de serveur Web gratuites
et open source créées par Apache Friends. Il se compose principalement d'
un HTTP ApacheHTTP serveur,, d'une base de données MariaDB et d'un
interpréteur pour les langages de programmation PHP et Perl .une base de
données MariaDB et un interpréteur pour les langages de programmation
PHP et Perl . De nombreux serveurs Web les serveurssont déployés en
utilisant les mêmes composants que XAMPP, il est donc simple de passer
d' un serveur de test local à un serveur en ligne .
2. PhpMyAdmin
40
Chapitre III: RECHERCHE BIBLIOGRAPHIQUE
interface largement utilisée pour gérer efficacement les bases de données MySQL sur les
serveurs PHP . est gratuit ou coûte de l'argent, de nombreux hébergeurs le mettent à
disposition, éliminant ainsi le besoin pour les utilisateurs de l' installer eux-mêmes.
L’interface pratique facilite l’exécution de requêtes sans connaissance approfondie de la
base de données. En conséquence, les opérations de routine telles que la création,
l'insertion, la mise à jour et la suppression de tables ainsi que la modification de l'
architecture de la base de données sont facilitées . gérer les droits d'accès en accordant et
en annulant les autorisations et en effectuant des opérations d'importation/exportation .
VI. Conclusion
Pour résumer, ce chapitre de recherche bibliographique a jeté des fondations solides pour le projet en
définissant l'architecture technique, en exposant notre cadre de travail et en expliquant les technologies
sélectionnées. Ces éléments constituent des bases essentielles pour les étapes à venir, qui se
concentreront sur la mise en œuvre pratique de l'application.
41
Chapitre IV: DEVELOPPEMENT
42
Chapitre IV: DEVELOPPEMENT
I. Introduction
Les interfaces créées seront présentées en détail, mettant en avant les fonctionnalités offertes et leur
rôle dans le contexte global de l'application. Des captures d'écran et des maquettes seront fournies
pour une meilleure compréhension visuelle. Les défis techniques rencontrés durant le
développement seront également abordés, incluant les erreurs, les bugs et les obstacles.
1. Interfaces d’accueil
Les interfaces d'accueil constituent la première interaction des utilisateurs avec l'application. Elles
sont conçues pour offrir une présentation attrayante et fournir des informations pertinentes,
permettant ainsi aux visiteurs de comprendre rapidement le concept de la plateforme. Les interfaces
d'accueil mettent en évidence les fonctionnalités clés de l'application et facilitent la navigation vers
différentes sections. De plus, les utilisateurs peuvent explorer la liste des offres disponibles, qui leur
permet de consulter les opportunités d'emploi et de postuler une fois qu'ils se sont authentifiés sur la
plateforme. Les interfaces d'accueil offrent donc une expérience conviviale et intuitive pour les
candidats potentiels.
La capture d'écran ci-dessous présente l'interface d'accueil de l'application. Elle propose aux
visiteurs une vue d'ensemble des catégories d'offres disponibles ainsi qu'une liste des offres les plus
récentes. Pour faciliter la recherche, une barre de recherche est mise à disposition, permettant aux
utilisateurs de filtrer les offres en fonction du nombre d'années d'expérience demandées, du type de
contrat, du diplôme requis, de la ville… Chaque offre est accompagnée d'un bouton "Détails de
l’offre" afin de permettre aux utilisateurs de consulter attentivement les exigences spécifiques de
chaque offre. Cette interface conviviale et intuitive offre aux candidats potentiels un moyen simple
et efficace d'explorer les opportunités d'emploi disponibles.
43
Chapitre IV: DEVELOPPEMENT
44
Chapitre IV: DEVELOPPEMENT
Une fois qu'un utilisateur clique sur le bouton "Voir les détails" d'une offre spécifique, il est dirigé
vers la page ci-dessous qui affiche les informations détaillées de l'offre. Cette page fournit un
aperçu complet des exigences de l'offre, telles que les compétences demandées, les missions à
accomplir, le type de contrat proposé, le salaire, le lieu, et bien d'autres détails importants.
Les utilisateurs ont ainsi la possibilité de consulter attentivement tous les aspects de l'offre et de
prendre des décisions éclairées quant à la soumission de leur candidature. Cette interface détaillée
facilite la compréhension des attentes de l'employeur et permet aux candidats de déterminer leur
adéquation avec l'offre proposée.
45
Chapitre IV: DEVELOPPEMENT
La figure ci-dessus représente l'interface de contact de l'application. Cette interface permet aux
visiteurs d'entrer en contact avec l'entreprise de manière facile et directe. Elle offre un moyen
pratique pour les utilisateurs d'envoyer des messages, des questions ou des demandes d'information
à l'entreprise, en fournissant un formulaire de contact clair et convivial. Cette fonctionnalité
encourage l'échange et la discussion entre les visiteurs et l'entreprise.
2. Interfaces admin
L’administrateur a la possibilité de gérer les entreprises, les recruteurs et les candidats enregistrés
sur la plateforme. De plus, il a accès aux candidatures et aux entretiens effectués par les candidats,
ce qui lui permet de suivre le processus de recrutement et de prendre des décisions éclairées.
46
Chapitre IV: DEVELOPPEMENT
47
Chapitre IV: DEVELOPPEMENT
L'interface ci-dessous présente une liste complète des recruteurs. De plus, l'administrateur a la
possibilité de consulter les informations détaillées d'un recruteur spécifique ainsi que la possibilité
d'ajouter de nouveaux recruteurs à la liste, de supprimer des recruteurs existants si nécessaire, ainsi
que de modifier les informations relatives à un recruteur.
48
Chapitre IV: DEVELOPPEMENT
L'interface de gestion des candidats permet à l'administrateur d'accéder à une liste complète des
candidats enregistrés, offrant ainsi une vue d'ensemble de tous les profils disponibles. Pour faciliter
la recherche et la sélection, l'interface propose des options de filtrage. En utilisant ce filtre, la liste
ci- dessous affiche uniquement les candidats correspondant au critère spécifique d'expérience de
trois ans.
L’interface ci-dessous fournit des informations complètes et spécifiques sur le candidat sélectionné.
49
Chapitre IV: DEVELOPPEMENT
3. Interfaces recruteur
Les interfaces destinées aux recruteurs sont axées sur la gestion des offres d'emploi, le tri des
candidatures et la communication avec les candidats. Elles offrent des fonctionnalités avancées
telles que la création et la publication d'offres d'emploi, la visualisation des profils des candidats, la
gestion des candidatures et la planification des entretiens.
Les interfaces mentionnées ci-dessus présentent les fonctionnalités liées aux offres d'emploi pour
les recruteurs. La première interface montre la liste des offres déjà ajoutées par ce recruteur, ce qui
lui permet de voir les offres qu'il a publiées dans le système. L'autre interface est le formulaire
d'ajout d'une nouvelle offre, où le recruteur peut saisir les informations nécessaires pour créer une
nouvelle offre d'emploi. Cette interface fournit des champs et des options pour spécifier le titre du
poste, les compétences requises, les missions, et d'autres détails pertinents.
50
Chapitre IV: DEVELOPPEMENT
Les captures d'écran ci-dessous présentent les fonctionnalités liées aux candidatures reçues par les
recruteurs. La première capture montre la liste des candidatures spécifiques à chaque offre publiée
par le recruteur. Cela permet au recruteur de gérer uniquement les candidatures liées à ses propres
offres.
La deuxième capture d'écran affiche les détails d'un candidat en particulier qui a postulé à une offre.
Elle fournit des informations plus détaillées sur le candidat, telles que son profil professionnel, ses
compétences, son parcours académique et sa motivation pour le poste. Cette capture permet au
recruteur d'examiner attentivement les informations du candidat afin de prendre des décisions
éclairées lors du processus de recrutement.
51
Chapitre IV: DEVELOPPEMENT
Les captures d'écran ci-dessus présentent les fonctionnalités liées à la planification et gestion des
entretiens par les recruteurs. La première capture montre l’interface qui permet au recruteur de
planifier un entretien pour un candidat spécifique. Une fois que le recruteur souhaite changer le
statut de la candidature à "convoqué", une fenêtre s’ouvre (Figure 39) pour permettre la
planification de l'entretien. Le recruteur peut spécifier la date, le lieu et le format de l'entretien pour
le candidat sélectionné.
La deuxième capture d’écran affiche la liste des entretiens pour le recruteur. Le recruteur a la
possibilité d'éditer le statut de l'entretien, la date, le lieu et le format. Cela permet une gestion
efficace des entretiens réalisés par les recruteurs.
52
Chapitre IV: DEVELOPPEMENT
4. Interfaces candidat
Les interfaces destinées aux candidats sont spécifiquement conçues pour faciliter leur inscription,
leur profilage et leur recherche d'emplois. Ces interfaces offrent une expérience utilisateur intuitive
et conviviale, permettant aux candidats de créer leur profil, de consulter les offres d'emploi
disponibles, de postuler aux offres qui correspondent à leurs compétences et de suivre l'état de leurs
candidatures.
Le Candidat a la possibilité de modifier son profil avec des informations personnelles telles que son
expérience, ses compétences, etc. Cela permet aux recruteurs de mieux évaluer le profil du Candidat
lors de la sélection.
Le Candidat peut également consulter la liste complète des offres d`emploi disponibles. Chaque
offre affiche des détails tels que le titre, la description, les qualifications requises, etc. Le Candidat
peut parcourir les offres et choisir celle qui correspond le mieux à ses intérêts et compétences. Une
fois que le Candidat a sélectionné une offre, il peut postuler en ajoutant sa motivation pour ce poste.
Le Candidat a la possibilité de décrire ses qualifications, sa motivation et pourquoi il est intéressé
par cette opportunité d'emploi.
Dans l'onglet "Candidatures", le Candidat peut consulter l'état de ses candidatures. Il peut voir si sa
candidature est en cours d'examen, a été acceptée ou a été rejetée. Cela permet au Candidat de
suivre l'évolution de ses candidatures et de prendre des mesures supplémentaires si nécessaire.
Si un entretien a été planifié pour le Candidat, il sera affiché dans l'onglet "Entretiens". Le Candidat
peut consulter les détails de l'entretien tels que la date, l'heure, le lieu et le format. De plus, le
Candidat peut voir le statut de l'entretien, s'il est réussi ou reporté etc. Cela permet au Candidat de
se préparer en conséquence et de prendre les mesures nécessaires pour l'entretien.
Ces fonctionnalités offrent au Candidat une expérience complète et transparente lors de sa recherche
d'emploi et de sa participation aux processus de candidature et d'entretien.
Durant la réalisation de ce projet, j'ai été confronté à plusieurs problèmes auxquels j'ai dû faire face
et trouver des solutions. L'un des principaux problèmes auquel j'ai été confronté était de ne pas
savoir par où commencer le projet, étant donné que le langage .NET proposé par l'entreprise était
nouveau pour moi, ainsi que je n'aie eu aucune expérience préalable avec ce langage. Un autre défi
était de déterminer quel langage de front-end serait le plus compatible avec .NET et comment les
deux seraient interconnectés.
des candidats. Face à ces problèmes, j'ai dû consacrer du temps à la recherche, à l'apprentissage et à
l'expérimentation afin de trouver des solutions adaptées. J'ai consulté des documentations, des
forums en ligne. Grâce à ces efforts, j'ai pu progresser dans le développement du projet et résoudre
les problèmes rencontrés.
Ces défis ont été une occasion d'apprentissage et de croissance professionnelle, me permettant
d'acquérir de nouvelles compétences et de mieux comprendre le fonctionnement du langage .NET et
les bonnes pratiques de développement. Ils m'ont également appris l'importance de la persévérance
et de la recherche approfondie pour surmonter les obstacles techniques et aboutir à une solution
efficace.
IV. Conclusion
Les interfaces développées sont fonctionnelles, intuitives et répondent aux besoins. Ce chapitre de
développement a constitué une étape essentielle dans la réalisation de ce projet. Il a permis
d'acquérir de nouvelles compétences et de consolider la compréhension des technologies utilisées.
54
CONCLUSION GÉNÉRALE ET PERSPECTIVE
L'application web propose une interface conviviale et intuitive, offrant aux utilisateurs la possibilité
de naviguer aisément et d'accéder aux fonctionnalités spécifiques à leur rôle : candidat, recruteur ou
administrateur. Les interfaces d'accueil permettent une vue d'ensemble des offres d'emploi
disponibles, tandis que les interfaces dédiées à chaque rôle permettent aux utilisateurs de superviser
le processus de recrutement.
L'application web développée constitue un outil précieux pour les entreprises collaborant avec
Ultimate, simplifiant le processus de recrutement et améliorant l'expérience utilisateur. Elle ouvre
également des perspectives d'améliorations futures, afin de répondre aux besoins évolutifs du
marché de l'emploi.
En outre, il est important de souligner que le projet n'est pas exempt de limites et de possibilités
d'amélioration. Par exemple, en raison de contraintes de temps, la traduction du site web dans
différentes langues n'a pas été réalisée, et seule une langue a été prise en compte. De plus, le
déploiement complet de l'application n'a pas été effectué dans sa totalité.
Cependant, il est essentiel de noter que ces aspects peuvent être considérés comme des opportunités
d'amélioration pour les futures itérations du projet. En envisageant la traduction du site web dans
plusieurs langues, l'application pourrait être accessible à un public plus large et répondre aux
besoins spécifiques des utilisateurs dans différentes régions.
55
BIBLIOGRAPHIE
56
ANNEXE
57
Figure 43: Structure de code de l'application coté frontend
58