Académique Documents
Professionnel Documents
Culture Documents
Développement d'une
Application Web HRMS
pour la Gestion des
Ressources Humaines
Date: 15-08-2023
1
Un remerciement particulier est également adressé au Monsieur EL
RADOUANI, pour sa supervision avisée et son accompagnement
technique. Votre expertise pointue et votre disponibilité ont été des
piliers indispensables à la réalisation de ce projet.
Je souhaite également dédier cette réalisation à mon école, l'École
Nationale Supérieure d'Arts et Métiers de Rabat, pour son
enseignement de qualité et son environnement propice à
l'apprentissage. Votre soutien constant a joué un rôle essentiel dans ma
formation et a été un tremplin pour la réussite de ce projet.
Je n'oublie pas de reconnaître les efforts de mes collègues stagiaires pour
leur collaboration et leur soutien constants.
Enfin, cette réalisation est dédiée à ma famille et à mes amis, dont le
soutien indéfectible m'a encouragé à donner le meilleur de moi-même.
Chaque personne évoquée dans cette dédicace a joué un rôle unique et
crucial dans l'accomplissement de ce projet. Je suis profondément
reconnaissant envers chacun pour sa contribution à ce succès
retentissant.
2
Table des Matières
Remerciement…………………………………..………………….…….…….…1
Introduction générale……………….…………………………….……..…..13
Chapitre 1 : Présentation de la Province…………….………………14
1. Introduction…….…………………………………….…………………..14
2. Province…………….………………………………….……………………14
3. Structuration…………………….………………….…………………….16
3.1 L’organigramme de la province..…………………………….17
4. Conclusion………………………………………………..………………..17
Chapitre 2 : Contexte général et description du projet…….…18
1. Introduction………………………………..…………………………..…18
2. Cahier de charge………………………………………..…………..….18
2.1 Travail demandé…………..……………………………………….18
2.2 Les objectifs de l’application………………………………….19
2.3 Outils et langages utilisés………………………………………19
2.4 Spécification des besoins………………………..…………….20
2.4.1 Besoins non fonctionnels…..………..………………….21
2.4.2 Besoins fonctionnel…………………………………………22
3. Description du projet…………………………………………………..22
3
3.1 Problématique………………………………………………………..22
3.2 Solution proposée….………………………………………………..22
4. Conclusion………………….……………………………………….………..23
Chapitre 3 : Analyse et Conception……………………………..……….24
1. Introduction…………………………………………………………………24
2. Identification des acteurs………………………..…………………..24
3. Identification des cas d’utilisation………………………………..26
3.1 Cas d’utilisation employé………………………………….……….26
3.2 Cas d’utilisation
Équipe………………………………………………………………………………….30
3.3 Cas d’utilisation Admin……………………………………………..37
3.4 Diagramme de classe……………………………………….….…...70
4. Conclusions..........................................................................75
Chapitre 4 : Développement et réalisation du projet………….76
1. Introduction………………………………………………………………..76
2. Besoins techniques……………………………………………………..76
2.1 Outils de développement………………….…………………..76
3. Présentation des interfaces de l’application web..……….81
3.1 Authentification……………………………………….…………….81
3.2 Partie Admin………………………………………………….……….81
3.2.1 Gestion des Équipes…………………………………….……81
a. Ajouter Équipe…………………….…………………………….82
4
b. Gestion des Équipes………………………..………...………82
3.2.2 Gestion des Départements….………………………………83
a. Ajouter Département….…………………………………….84
b. Gestion des Départements………………………………..84
3.2.3 Gestion des Services……………………….……………………85
a. Ajouter Service……………………………..……………………85
b. Gestion des Services……………………….………………….86
3.2.4 Gestion des Périodes………………….………………………..88
a. Ajouter Période…………………………………………………..88
b. Gestion des Périodes………………………………..…………88
3.2.5 Gestion des Employé…………………..………..……………..89
a. Ajouter Employé…………………….……………………………89
b. Gestion Employé…………………….…………………………..89
3.2.6 Gestion des Missions……………………….…………………..91
a. Ajouter Mission……………………………………..…………..92
b. Gestion des Missions……………………………………….…92
3.2.7 Consulter la Présence………………………………………....94
a. Récupérer la date de Présence des employés…....95
b. Télécharger fichier PDF de Présence…………………..95
3.2.8 Message des employés………………………………………..97
a. Consulter message d’employé…………………………….97
b. Répondre au message d’employé……………………….97
5
c. Télécharger fichier PDF des messages des employés..98
3.2.9 Message d’équipe……………………………………….………….98
a. Consulter message d’équipe………………………………….99
b. Répondre au message d’équipe……..……………………..99
c. Télécharger fichier PDF des messages des équipes..100
3.2.10 Congé d’employé………………………………….……………..101
a. Consulter demande congé d’employé..………………...101
b. Répondre à la demande congé d’employé.……………101
c. Télécharger fichier PDF des demandes congé des
Employés……………………………………………………….………102
3.2.11 Congé des
équipes………………………………………………………………………………………..103
a. Consulter demande congé d’équipe…………….…………103
b. Répondre à la demande congé d’équipe…………………103
c. Télécharger fichier PDF des demandes congé des
Équipes…………..………………………………………………………104
3.2.12 Modifier le profile.....................................................105
3.2.13 Changer la langue………………………………………………….105
3.2.14 Visualisation des Statistiques et Informations avec
Graphiques…………………………………..………………………..106
3.3 Partie Équipe………………………………………….……………………….107
3.3.1 Voir les employés sous l’équipe………….…………………….107
6
a. Consulter les employés sous l’équipe ........................107
b. Télécharger fichier PDF des employés……………………..108
3.3.2 Consulter les missions……………………………..……………….109
a. Télécharger fichier PDF des Missions……….………………110
3.3.3 Gestion de Présence………………………………………….……..110
a. Enregistrer La Présence……………………..…………………….110
b. Consulter et Modifier la Présence………….………………..111
c. Télécharger fichier PDF de Présence…………………………112
3.3.4 Gestion de résultat d’évaluation de missions…..………..113
a. Ajouter Résultat…………………………………………………….…113
b. Consulter Résultat……………………………..…………..……..…113
c. Télécharger fichier PDF de Résultat…………….……..……..114
3.3.5 Demande de Congé………………………….……………………..…115
3.3.6 Envoyer Message…………………………….………….…………..…116
3.3.7 Modifier le profile………………………..…………………………....116
3.3.8 Changer la langue……………………………………………………….117
3.3.9 Visualisation des Statistiques et Informations avec
Graphiques…………………………………………………………………117
3.4 Partie Employé…………………………………………………………..…….118
3.4.1 Consulter la présence………………………………………………..118
3.4.2 Consulter résultat d’évaluation……………………………….…119
3.4.3 Demande Congé…………………………………………………………120
7
3.4.4 Envoyer message…………………………………………………..…..120
3.4.5 Modifier le profile……………………………………………..……….121
3.4.6 Changer la langue………………………………………………..…….121
3.4.7 Visualisation des Statistiques et Informations avec
Graphiques………………………………………………………………..122
4. Conclusion……………………………………………………………………………..122
Conclusion générale……………………………………………………………………….124
Webographie………………………………………………………………………………….126
8
Liste des figures
Figure 1 : province de Zagora……………………..………………………………….15
Figure 2 : Organigramme de la province ………..………………………………17
Figure 3 : Diagramme de cas d’utilisation d’employé………………………27
Figure 4 : Diagramme de cas d’utilisation d’équipe ……..…………………31
Figure 5 : Diagramme de cas d’utilisation d’admin …………………………40
Figure 6 : Diagramme de Classe de Système ………………………………….71
Figure 7 : interface d’Authentification …………..……………………………….81
Figure 8 : ajouter équipe ……………………………………………………………….82
Figure 9 : gestion des équipes ........ ………………………………………………82
Figure 10 : fichier PDF des équipes ……………………………………………….83
Figure 11 : ajouter département …………………………………………………..84
Figure 12 : gestion des départements ……………………………..……………84
Figure 13 : ajouter service ……………………………………………………………85
Figure 14 : gestion des services …………………………………………………….86
Figure 15 : fichier PDF total des services ……………………………………….87
9
Figure 16 : ajouter période ………………………………………….………………88
Figure 17 : gestion des périodes ………………………………..…………………88
Figure 18 : ajouter employé …………………………………………………………89
Figure 19 : gestion des employés ………………………………..………………90
Figure 20 : fichier PDF des détails employés ……………………..…………91
Figure 21 : ajouter mission …………………………………………………….……92
Figure 22 : gestion des missions …………………………………….……………93
Figure 23 : fichier PDF du total de missions………………………….………94
Figure 24 : récupérer la date de présence des employés
………………………………………………………………………………………………….…95
Figure 25 : fichier PDF de Présence des employés …………….…………96
Figure 26 : consulter message des employés …………………………….…97
Figure 27 : répondre au message des employés ………………..…………97
Figure 28 : fichier PDF des messages des employés..………………….…98
Figure 29 : consulter message des équipes …………………………….……99
Figure 30 : répondre au message des équipes ……………….……………99
Figure 31 : fichier PDF des messages des équipes ………………………100
Figure 32 : consulter demande congé des employés
……………………………………………………………………………………………….……101
Figure 33 : répondre à la demande congé des employés
………………………………………………………………………………………….…………102
Figure 34 : fichier PDF de demande congé des employés
………………………………………………………………………………………….…………102
10
Figure 35 : demande congé des équipe …………………………………….…103
Figure 36 : Répondre à la demande congé d’équipe…..…………………103
Figure 37 : fichier PDF des demandes congé des équipes……….……104
Figure 38 : modifier le profile d’administrateur …………………………105
Figure 39 : changer la langue d’interface
d’administrateur…………………………………………………………………….……105
Figure 40 : visualisation des statistiques et informations avec graphiques
d’interface administrateur ………………………………………………….………106
Figure 41 : consulter les employés sous l’équipe …..……………………107
Figure 42 : fichier PDF des employés sous l’équipe ………………………108
Figure 43 : consulter les missions d’équipe …………………………………109
Figure 44 : fichier PDF des Missions d’équipe ………………………..……110
Figure 45 : enregistrer la présence d’employée ……………………..……111
Figure 46 : consulter et modifier la présence d’employé
………………………………………………………………………………………………….…111
Figure 47 : fichier PDF de présence d’employé …….………………………112
Figure 48 : ajouter résultat d’employé …………………………………………113
Figure 49 : consulter résultat des employés …………………..……………114
Figure 50 : fichier PDF de résultat des employés sous l’équipe
……………………………………………………………………………………………….……114
Figure 51 : demande de congé par équipe ……………………..……………115
Figure 52 : fichier PDF de congé des équipes..………………………………115
Figure 53 : envoyer message par équipe ……………………………..………116
11
Figure 54 : modifier le profile d’équipe…………………………………….……116
Figure 55 : changer la langue d’interface d’équipe …………………..……117
Figure 56 : visualisation des statistiques et informations avec graphiques
pour l’interface d’équipe…………………………………..…………………………117
Figure 57 : consulter la présence d’employé …………….…………………118
Figure 58 : consulter résultat d’évaluation par l’employé
……………………………………………………………………………………………………119
Figure 59 : demande congé par l’employé ……………………….…………120
Figure 60 : envoyer message par l’employée ………………………………120
Figure 61 : modifier le profil d’interface d’employé ………….…………121
Figure 62 : changer la langue d’interface des employés
……………………………………………………………………………………………………121
Figure 63 : visualisation des statistiques et informations avec graphiques
pour l’interface d’employé……………………………………………………….…122
12
Introduction
générale
Dans le cadre de ma formation dans l’école Nationale Supérieure
d’Arts et Métiers de Rabat (ENSAM-R), L’Etablissement cherche à
évoluer les compétences et le savoir-faire de ses étudiants par divers
moyens tels que les Travaux pratique, les projets …
13
L’élaboration de ce rapport a pour principale source les différents
enseignements qu’on a pu acquérir au fil de mon projet par la pratique
des différentes tâches et missions qu’on a dû accomplir, ainsi que de
mes connaissances acquises tout au long de ma formation scolaire et de
mes recherches personnelles pour ce qui est des questions théoriques.
Aussi, les divers encadrements qu’on a eus avec m’encadrant j’ai
également beaucoup aidé.
1. Introduction :
Ce chapitre se focalise sur la présentation de la province
accueillante et sa structuration (organigramme et présentation
de la cellule informatique).
2. Province de Zagora :
14
La province de Zagora a été créée par le décret n° : 2.97.281 du
01 Dilhija 1417 correspondant au 09 Avril 1997 dans le cadre de
la politique de rapprochement de l'administration du citoyen,
est située au Sud-Est du Royaume, et fait partie de la région
économique Draa Tafilalet. Elle est composée de trois cercles,
deux Pachaliks, dix Caïdats et 25 Commune dont 2 communes
Urbaines.
Elle s'étend sur une superficie de 23 000 km2 , et compte
d'après le recensement de 2004 une population de 283 368
habitants dont 240 566 personnes en milieu rural.
15
3. Structuration :
❖ Gouverneur
❖ Secrétaire Général :
- Cellule d’informatique
- S. des systèmes d’information et
juridique et du contentieux
❖ Division Affaire Intérieures (D.A.I) :
- S. de la règlementation et de libertés
publiques
- S. des affaires générales de la sécurité et
d’ordre public
❖ Division d’Urbanisme et
Environnement (D.U.E)
❖ Division des affaires économique et de
la coordination (D.A.E.C)
❖ Division des ressources humaines
(D.R.H)
❖ Division de collectivités locales (D.C.L)
❖ Division des équipements (D.E)
❖ Division d’action sociale (D.A.S)
16
3.1 L’organigramme :
4. Conclusion :
Dans ce chapitre j’ai présenté la province de Zagora, son
organigramme et ses différentes divisions. Cette occasion m’a
permis de voir de près le déroulement de travail au sein de la
préfecture.
17
Chapitre 2 : Contexte général et
description du projet
1. Introduction :
Dans ce chapitre, je vais explorer en détail le contexte et la
portée de notre projet de Système de Gestion des Employés
pour la province. Je vais aborder les exigences du projet, les
objectifs de l'application et les outils technologiques que j’ai
utilisés pour sa réalisation
2. Cahier de charge :
Le cahier de charge définit les paramètres fondamentaux du
projet et les attentes en termes de fonctionnalités et de
performances. Il guide le développement de l'application tout
en veillant à ce qu'elle réponde aux besoins spécifiques de la
province et de ses employés.
18
de créer une plateforme qui facilite la gestion des ressources
humaines et des opérations liées.
19
interactifs, j'ai intégré Chart.js à mon projet.
Cela m'a permis de créer des visualisations
dynamiques pour les évaluations, les
statistiques de présence et d'autres données
importantes.
• Interopérabilité et interaction : J'ai utilisé
jQuery pour simplifier la manipulation du
DOM et gérer les interactions utilisateur.
L'intégration de Popper.js m'a également
aidée à gérer les éléments contextuels et les
info-bulles, améliorant ainsi l'expérience
utilisateur globale.
• Backend : Pour la gestion des données et
des fonctionnalités côté serveur, j'ai choisi le
Framework Django, qui est basé sur le
langage de programmation Python.
L'utilisation de Python avec Django m'a
permis de créer une architecture backend
solide, de gérer efficacement les bases de
données, de mettre en œuvre des
fonctionnalités de gestion des employés, des
équipes et des missions, ainsi que la
génération de fichiers PDF.
20
La spécification des besoins détaille les exigences
fonctionnelles et non fonctionnelles de l'application.
21
pour garantir que les utilisateurs puissent y
accéder à tout moment sans interruption
majeure.
2.4.2 Besoins fonctionnels :
Les besoins fonctionnels incluent la gestion
des équipes, des départements, des services,
des employés et des missions par les
administrateurs. Les équipes doivent pouvoir
gérer la présence, les évaluations, les congés, les
messages et les profils des employés.
L'application doit permettre l'ajout, la
modification, la suppression et la génération de
fichiers PDF pour ces différentes entités.
3. Description du projet :
3.1 Problématique :
Avant la création de l'application, la province était
confrontée à des défis complexes en matière de
gestion des employés, de suivi des opérations et de
communication au sein de différentes équipes. Les
processus manuels et les systèmes désorganisés
entraînaient des inefficacités, des erreurs et une
difficulté à obtenir des informations en temps réel.
22
Pour résoudre ces problèmes, j'ai proposé de
développer une application web complète de gestion
des employés. Cette solution permettrait de
centraliser la gestion des équipes, des départements,
des services, des employés, des missions, des congés,
des évaluations et bien plus encore. L'application
offrirait des fonctionnalités de suivi de la présence, de
génération de rapports, de communication interne et
de visualisation des données.
4. Conclusion :
En conclusion de ce chapitre, j’ai présenté de manière détaillée
le projet de développement de notre application web de
gestion des employés pour la province. J’ai exposé les objectifs
clés, les outils et les langages utilisés, ainsi que les besoins
fonctionnels et non fonctionnels du projet. Ces éléments
fournissent une base solide pour notre exploration approfondie
de l'analyse, de la conception et de la réalisation de
l'application dans les chapitres suivants.
23
Chapitre 3 : Analyse et conception
1. Introduction :
Dans ce chapitre central de notre projet, nous plongeons
profondément dans l'analyse approfondie et la conception
réfléchie de notre application web de gestion des employés.
Nous explorerons en détail les interactions entre les utilisateurs
et l'application, et nous traduirons ces interactions en interfaces
conviviales et fonctionnelles.
Acteur Rôle
24
consultation de sa présence,
la visualisation de ses
évaluations, la gestion de ses
demandes de congé, l'envoi
de messages et la mise à jour
de son profil. L'employé
recherche des fonctionnalités
qui lui permettent de gérer
ses propres informations et
d'interagir avec son équipe.
Membre d’équipe Ce groupe d'acteurs est
composé des membres d'une
équipe spécifique. Ils ont des
responsabilités similaires à
celles de l'employé individuel,
mais ils peuvent également
gérer les membres de leur
équipe, les missions assignées
à leur équipe, enregistrer la
présence de leur équipe et
collaborer efficacement avec
les autres membres.
Administrateur Les administrateurs sont des
utilisateurs ayant un contrôle
complet sur l'application. Ils
ont la capacité de gérer
l'ensemble du système, y
compris la création, la
25
modification et la suppression
d'équipes, de départements,
de services, d'employés et de
missions. Ils peuvent
également accéder à des
fonctionnalités de génération
de rapports et de visualisation
statistique.
Système L'application elle-même agit
en tant qu'acteur dans
certains scénarios, effectuant
des opérations automatisées
telles que la génération de
rapports, la gestion des
données et la validation des
interactions utilisateur.
26
Figure 3 : Diagramme de cas d’utilisation
d’employé
Scénario du diagramme de cas
d'utilisation pour la Partie Employé :
27
1) Voir la présence :
28
Actions :
L'employé accède à l'application.
L'employé sélectionne l'option "Demande Congé".
L'employé remplit le formulaire de demande avec les
détails.
L'employé enregistre la demande de congé.
Postconditions : La demande de congé est enregistrée
dans le système.
4) Envoyer message :
29
L'employé enregistre les modifications.
Postconditions : Le profil de l'employé est mis à jour.
6) Changer la langue :
Description : L'employé peut changer la langue de
l'interface de l'application.
Actions :
L'employé accède à l'application.
L'employé sélectionne l'option "Changer la langue".
L'employé choisit la nouvelle langue.
Postconditions : L'interface de l'application est affichée
dans la nouvelle langue.
7) Visualisation Statistiques et Informations avec
Graphiques :
30
Figure 4 : Diagramme de cas d’utilisation d’équipe
31
Description : Un membre de l'équipe peut consulter la liste des
employés faisant partie de son équipe.
Actions :
Le membre de l'équipe accède à l'application.
Le membre de l'équipe sélectionne l'option "Voir les employés
sous l'équipe".
Le système affiche la liste des employés de l'équipe.
Postconditions : Le membre de l'équipe peut voir la liste des
employés de son équipe.
2) Voir les missions :
32
3) Gestion de Présence :
33
Le membre de l'équipe accède à l'application.
Le membre de l'équipe sélectionne l'option "Gestion de résultat
d'évaluation de missions".
Le membre de l'équipe peut ajouter un résultat d'évaluation
pour une mission.
Le membre de l'équipe peut voir les résultats d'évaluation avec
les détails.
Le membre de l'équipe peut télécharger un fichier PDF des
résultats d'évaluation.
Postconditions : Les résultats d'évaluation des missions sont
gérés par le membre de l'équipe.
5) Demande de Congé :
34
Postconditions : La demande de congé est enregistrée dans le
système.
6) Envoyer Message :
35
Postconditions : Le profil du membre de l'équipe est mis à jour.
8) Changer la langue :
36
Le système affiche les graphiques et statistiques pertinents.
Postconditions : Le membre de l'équipe a accès aux
informations statistiques.
37
38
39
Figure 5 : Diagramme de cas d’utilisation d’admin
40
1) Gestion des Équipes - Ajouter Équipe :
41
L'administrateur met à jour les informations de l'équipe.
L'administrateur enregistre les modifications.
Postconditions : Les informations de l'équipe sont mises à jour.
3) Gestion des Équipes - Supprimer Équipe :
42
L'administrateur sélectionne l'option "Gestion des Équipes".
L'administrateur choisit l'option "Voir les Équipes".
Le système affiche la liste des équipes avec les détails.
Postconditions : L'administrateur peut voir la liste des équipes.
5) Gestion des Équipes - Télécharger fichier PDF des Équipes :
43
Actions :
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Gestion des
Départements".
L'administrateur choisit l'option "Ajouter Département".
L'administrateur remplit les détails du nouveau département.
L'administrateur enregistre les informations.
Postconditions : Le nouveau département est ajouté au
système.
2) Gestion des Départements - Modifier Département :
44
Postconditions : Les informations du département sont mises à
jour.
3) Gestion des Départements - Supprimer Département :
45
L'administrateur sélectionne l'option "Gestion des
Départements".
L'administrateur choisit l'option "Voir les Départements".
Le système affiche la liste des départements avec les détails.
Postconditions : L'administrateur peut voir la liste des
départements.
4) Gestion des Départements - Télécharger fichier PDF des
Départements :
46
1) Gestion des Services - Ajouter Service :
47
L'administrateur met à jour les informations du service.
L'administrateur enregistre les modifications.
Postconditions : Les informations du service sont mises à jour.
3) Gestion des Services - Supprimer Service :
48
L'administrateur sélectionne l'option "Gestion des Services".
L'administrateur choisit l'option "Voir les Services".
Le système affiche la liste des services avec les détails.
Postconditions : L'administrateur peut voir la liste des services.
5) Gestion des Services - Télécharger fichier PDF des Services :
49
Actions :
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Gestion des Périodes".
L'administrateur choisit l'option "Ajouter Période".
L'administrateur remplit les détails de la nouvelle période.
L'administrateur enregistre les informations.
Postconditions : La nouvelle période est ajoutée au système.
2) Gestion des Périodes - Modifier Période :
50
3) Gestion des Périodes - Supprimer Période :
51
Postconditions : L'administrateur peut voir la liste des périodes.
5) Gestion des Périodes - Télécharger fichier PDF des Périodes:
52
L'administrateur accède à l'application et s'authentifie en tant
qu'administrateur.
L'administrateur sélectionne l'option "Gestion des Employés".
L'administrateur peut ajouter un nouvel employé en fournissant
les détails tels que le nom, le prénom, le poste, etc.
L'administrateur peut modifier les informations d'un employé
existant, y compris le nom, le prénom, le poste, etc.
L'administrateur peut supprimer un employé de la liste.
L'administrateur peut afficher la liste complète des employés
avec leurs informations.
L'administrateur peut télécharger un fichier PDF contenant la
liste des employés.
Postconditions :
Les modifications apportées aux informations des employés
sont enregistrées dans le système.
Les employés peuvent être ajoutés, modifiés, supprimés,
visualisés et exportés au format PDF par l'administrateur.
53
Actions :
L'administrateur accède à l'application et s'authentifie en tant
qu'administrateur.
L'administrateur sélectionne l'option "Gestion des Missions".
L'administrateur peut ajouter une nouvelle mission en
spécifiant les détails tels que le titre, la description et la date.
L'administrateur peut modifier les détails d'une mission
existante, y compris le titre, la description et la date.
L'administrateur peut supprimer une mission de la liste.
L'administrateur peut afficher la liste complète des missions
avec leurs détails.
L'administrateur peut télécharger un fichier PDF contenant la
liste des missions.
Postconditions :
Les modifications apportées aux missions sont enregistrées
dans le système.
Les missions peuvent être ajoutées, modifiées, supprimées,
visualisées et exportées au format PDF par l'administrateur.
1) Voir la Présence :
54
Description : L'administrateur peut voir les informations de
présence enregistrées pour les employés à une date spécifique.
Actions :
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Voir la Présence".
L'administrateur choisit la date pour laquelle il souhaite voir la
présence.
Le système affiche la liste des employés avec leurs états de
présence pour la date sélectionnée.
Postconditions : L'administrateur peut voir les informations de
présence des employés pour la date spécifiée.
2) Récupérer la date de Présence :
55
Le système affiche la liste des dates pour lesquelles des
informations de présence sont enregistrées.
Postconditions : L'administrateur obtient la liste des dates de
présence enregistrées.
3) Récupérer les données d’employé de Présence :
56
Description : L'administrateur peut télécharger un fichier PDF
contenant les informations de présence des employés pour une
date donnée.
Actions :
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Voir la Présence".
L'administrateur choisit la date pour laquelle il souhaite
télécharger les informations de présence.
L'administrateur sélectionne l'option "Télécharger fichier PDF
de Présence".
Le système génère un fichier PDF contenant les informations de
présence des employés pour la date spécifiée.
Postconditions : L'administrateur télécharge le fichier PDF des
informations de présence.
1) Message d'employé :
57
L'administrateur sélectionne l'option "Message d’employé".
Le système affiche la liste des messages envoyés par les
employés.
Postconditions : L'administrateur peut voir la liste des messages
d'employés.
2) Voir message d'employé :
58
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Message d’employé".
L'administrateur choisit un message dans la liste.
L'administrateur sélectionne l'option "Répondre".
L'administrateur rédige et envoie la réponse au message.
Postconditions : L'administrateur envoie une réponse au
message d'employé.
4) Télécharger fichier PDF des messages des employés :
59
1) Message d'équipe :
60
Postconditions : L'administrateur peut voir le contenu du
message d'équipe.
3) Répondre au message d'équipe :
61
L'administrateur sélectionne l'option "Télécharger fichier PDF
des messages des équipes".
Le système génère un fichier PDF contenant la liste des
messages d'équipes.
Postconditions : L'administrateur télécharge le fichier PDF des
messages d'équipes.
1) Congé d'employé :
62
Description : L'administrateur peut voir les détails d'une
demande de congé spécifique d'un employé.
Actions :
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Congé d'employé".
L'administrateur choisit une demande de congé dans la liste.
Le système affiche les détails complets de la demande de
congé.
Postconditions : L'administrateur peut voir les détails de la
demande de congé.
3) Répondre à la demande congé d'employé :
63
Postconditions : L'administrateur envoie une réponse à la
demande de congé d'employé.
4) Télécharger fichier PDF des demandes congé des Employés:
1) Congé d'équipe :
64
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Congé d'équipe".
Le système affiche la liste des demandes de congé de l'équipe.
Postconditions : L'administrateur peut voir la liste des
demandes de congé de l'équipe.
2) Voir demande congé d'équipe :
65
Actions :
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Congé d'équipe".
L'administrateur choisit une demande de congé dans la liste.
L'administrateur sélectionne l'option "Répondre".
L'administrateur rédige et envoie la réponse à la demande de
congé.
Postconditions : L'administrateur envoie une réponse à la
demande de congé d'équipe.
4) Télécharger fichier PDF des demandes congé des Équipes :
66
Postconditions : L'administrateur télécharge le fichier PDF des
demandes de congé de l'équipe.
1) Modifier le profil :
67
L'administrateur sélectionne l'option "Gestion des Employés".
L'administrateur choisit un employé dans la liste.
L'administrateur sélectionne l'option "Modifier Employé".
L'administrateur met à jour les informations nécessaires dans le
formulaire de modification.
L'administrateur enregistre les modifications.
Postconditions : Le profil de l'employé est mis à jour avec les
nouvelles informations.
3) Modifier le profil d'une Équipe :
68
Postconditions : Le profil de l'équipe est mis à jour avec les
nouvelles informations.
1) Changer la langue :
69
Description : L'administrateur peut visualiser les statistiques et
les informations sous forme de graphiques pour obtenir un
aperçu visuel des données pertinentes.
Actions :
L'administrateur accède à l'application en tant qu'admin.
L'administrateur sélectionne l'option "Visualisation des
Statistiques et Informations avec Graphiques".
Le système affiche différents types de graphiques et de
représentations visuelles des données, tels que des graphiques
à barres, des graphiques circulaires, des diagrammes en ligne,
etc.
Postconditions : L'administrateur peut analyser visuellement les
statistiques et les informations grâce aux graphiques générés
par le système, ce qui facilite la prise de décision éclairée et la
compréhension des tendances et des performances.
70
Figure 6 : Diagramme de Classe
71
Voici une explication du modèle :
72
Department : Modèle pour les départements. Il a un
identifiant unique, un nom de département, des
horodatages de création et de mise à jour.
73
AttendanceReport : Modèle pour les rapports de
présence individuels des employés/stagiaires. Il a un
identifiant unique, une référence à l'employé, à l'entrée
de présence, le statut de présence et des horodatages.
74
EmployeeResult : Modèle pour les résultats des
employés/stagiaires pour des missions spécifiques. Il a
un identifiant unique, une référence à l'employé, à la
mission, les notes pour la mission et des horodatages.
4. Conclusion :
Le chapitre 3 de l'analyse et de la conception a posé les
bases solides pour notre système de gestion des
ressources humaines et des équipes. Les cas d'utilisation
détaillés et les scénarios ont clarifié les interactions
utilisateur-système, tandis que les diagrammes de classe
ont structuré les relations entre les entités clés. Chaque
partie de l'application, des administrateurs aux employés
en passant par les équipes, a été abordée en détail avec
des actions spécifiques et des fonctionnalités. Cependant,
la véritable mise en œuvre et les tests à venir seront
essentiels pour concrétiser cette vision en une application
fonctionnelle et utile.
75
Chapitre 4 : Développement et Réalisation
du Projet
1. Introduction :
Ce chapitre se concentre sur le processus de
développement et de réalisation du projet de gestion
des ressources humaines pour la province de Zagora.
Nous allons détailler les outils de développement
utilisés, ainsi que les étapes suivies pour concrétiser
les fonctionnalités clés du projet.
2. Besoins Techniques :
2.1 Outils de Développement :
Pour la création de l'application de gestion des
ressources humaines, nous avons utilisé une
combinaison d'outils de développement
largement reconnus et adaptés aux besoins du
projet. Ces outils ont été choisis en fonction de
leur convivialité, de leur efficacité et de leur
compatibilité avec les technologies web
modernes.
❖ Environnement de Développement
Intégré (IDE) :
76
• Visual Studio Code (VS Code) : C'est un
environnement de développement intégré
(IDE) léger et extensible développé par
Microsoft. Il est populaire pour son
support de nombreux langages de
programmation, ses extensions
personnalisables et son interface
utilisateur conviviale.
❖ Gestion de Version :
• Git : Git est un système de contrôle de
version distribué utilisé pour suivre les
modifications du code source, gérer les
branches de développement et faciliter la
collaboration entre les membres d'une
équipe de développement.
• GitHub : C'est une plateforme
d'hébergement de code source basée sur
Git. Elle offre des fonctionnalités de suivi
des problèmes, de gestion des versions, de
collaboration et de partage de code.
❖ Langages de Programmation :
Frontend : Nous avons utilisé HTML, CSS
et JavaScript pour la conception de l'interface
utilisateur interactive
77
• HTML (HyperText Markup Language) :
C'est le langage de balisage utilisé pour
structurer le contenu d'une page web. Il
définit la structure et les éléments de
base de la page, tels que les titres, les
paragraphes et les liens.
• CSS (Cascading Style Sheets) : Il s'agit
d'un langage utilisé pour définir la
présentation et le style visuel des
éléments HTML d'une page web, tels
que les couleurs, les polices, les marges
et les dispositions.
• JavaScript : C'est un langage de
programmation de script utilisé pour
ajouter des fonctionnalités interactives
et dynamiques aux pages web. Il est
souvent utilisé pour créer des
animations, gérer les interactions
utilisateur et manipuler les données.
• jQuery : C'est une bibliothèque
JavaScript populaire qui simplifie la
manipulation du DOM (Document
Object Model) et l'ajout d'interactions
dynamiques aux pages web. jQuery
facilite également les appels AJAX et
fournit une large gamme de
fonctionnalités pour le développement
web.
Backend : Python a été le langage principal
78
Pour la logique métier, avec Django, un Framework
Web robuste, pour la gestion des modèles, des vues
Et des contrôleurs.
• Python : C'est un langage de
programmation polyvalent et facile à
lire, souvent utilisé pour le
développement web, l'automatisation
de tâches, l'analyse de données et
bien d'autres applications.
❖ Bibliothèques et Framework :
• Django : C'est un Framework de
développement web en Python qui
facilite la création d'applications web
robustes et évolutives. Il suit le
modèle Modèle-Vue-Contrôleur
(MVC) et fournit des fonctionnalités
prêtes à l'emploi pour la gestion des
bases de données, la gestion des
utilisateurs et plus encore.
• Bootstrap : C'est un Framework CSS
populaire qui fournit des composants
et des styles prédéfinis pour la
création rapide d'interfaces utilisateur
modernes et responsives.
79
• Chart.js : C'est une bibliothèque
JavaScript qui permet de créer
facilement des graphiques et des
visualisations interactives à partir des
données.
❖ Bases de Données :
• SQLite : Utilisé pour la gestion de la base
de données pendant le développement.
❖ Conception et de Diagrammes :
• PlantUML : Utilisé pour créer les
diagrammes de classe, de séquence et
autres diagrammes UML.
❖ Autres Outils :
• Clavier Arabe Virtuel : Intégré dans
l'application pour permettre la saisie en
arabe.
80
3. Présentation des interfaces de l’application
web :
3.1 Authentification :
81
a. Ajouter Équipe :
82
Figure 10 : fichier PDF des équipes
83
a. Ajouter Département :
b. Gestion Département :
84
3.2.3 Gestion des Services :
a. Ajouter Service :
85
b. Gestion des Services :
86
Figure 15 : fichier PDF total des services
87
3.2.4 Gestion des Périodes :
a. Ajouter Période :
88
3.2.5 Gestion des Employés :
a. Ajouter Employé :
89
Figure 19 : gestion des employés
90
Figure 20 : fichier PDF des détails employés
91
a. Ajouter Mission :
92
Figure 22 : gestion des missions
93
Figure 23 : fichier PDF du total de missions
94
a. Récupérer la date de Présence
des employés :
95
Figure 25 : fichier PDF de Présence des employés
96
3.2.8 Messages des employés :
a. Consulter message d’employé :
97
c. Télécharger fichier PDF des
messages des employés :
98
a. Consulter message d’équipe :
99
c. Télécharger fichier PDF des
messages des équipes :
100
3.2.10 Congés des employés :
a. Consulter demande congé
d’employé :
101
Figure 33 : répondre à la demande congé des employés
c. Télécharger fichier PDF des
demandes congé des Employés :
102
3.2.11 Congés des équipes :
a. Consulter demande congé
d’équipe :
103
c. Télécharger fichier PDF des
demandes congé des Équipes :
104
3.2.12 Modifier le profile :
105
3.2.14 Visualisation des Statistiques et
Informations avec Graphiques :
106
3.3 Partie Équipe :
3.3.1 Consulter les employés sous
l’équipe :
a. Consulter les employés sous
l’équipe :
107
b. Télécharger fichier PDF des
employés :
108
3.3.2 Consulter les missions :
109
a. Télécharger fichier PDF des
Missions :
110
Figure 45 : enregistrer la présence d’employé
b. Consulter et Modifier la
Présence :
111
c. Télécharger fichier PDF de
Présence :
112
3.3.4 Gestion de résultat d’évaluation de
missions :
a. Ajouter Résultat :
113
Figure 49 : consulter résultat des employés
c. Télécharger fichier PDF de
Résultat :
114
3.3.5 Demande de Congé :
115
3.3.6 Envoyer Message :
116
3.3.8 Changer la langue :
117
3.4 Partie Employé :
3.4.1 Consulter la présence :
118
3.4.2 Consulter résultat d’évaluation :
119
3.4.3 Demande Congé :
120
3.4.5 Modifier le profil :
121
3.4.7 Visualisation des Statistiques et
Informations avec Graphiques :
122
spécifiques de chaque utilisateur. La diversité des options,
allant de la gestion des équipes aux statistiques visuelles,
souligne l'ampleur de cette réalisation. En somme, ce
chapitre consolide l'aboutissement réussi de la phase de
développement et jette les bases d'une application
fonctionnelle et adaptable pour l'ensemble des
utilisateurs.
123
Conclusion
générale
En conclusion générale, ce projet a abouti au développement
réussi d'une application web dédiée à la gestion des ressources
humaines (HRMS). Avec une structure divisée en trois parties
distinctes - "Admin", "Équipe" et "Employé" - l'application offre
une panoplie de fonctionnalités qui répondent aux besoins
spécifiques de chaque groupe d'utilisateurs. Les administrateurs
peuvent gérer efficacement les équipes, les départements, les
services, les employés et les missions grâce à des options d'ajout,
de modification, de suppression et de génération de fichiers PDF.
Les équipes bénéficient d'outils pour gérer la présence, les
évaluations, les congés, les messages et les profils au sein de leurs
équipes respectives. Les employés individuels ont accès à des
fonctionnalités pour consulter leur présence, leurs évaluations,
demander des congés, envoyer des messages et personnaliser leur
profil.
124
Ce projet constitue une réalisation significative, rendue possible
grâce à l'investissement au sein de l'École Nationale Supérieure
d'Arts et Métiers et lors de mon stage d'observation. En mettant
en œuvre les connaissances acquises, j'ai pu développer une
application HRMS complète et fonctionnelle. Cela témoigne de
l'application pratique des compétences et des compétences
acquises au cours de mon parcours académique.
125
Webographie :
- https://www.djangoproject.com/
- https://www.python.org/
- https://chat.openai.com/
- https://stackoverflow.com/
- Django 4 By Example: Build powerful
and reliable Python web applications
from scratch, 4th Edition book
126