Rapport Rim
Rapport Rim
Takoua HICHRI
i
Remerciements
Takoua HICHRI
ii
Table des matières
Introduction générale 1
1 Contexte général 3
1.1 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1 Ses services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.2 Les métiers de ArabSoft . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Étude et critique de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1 Description et critique de l’existant . . . . . . . . . . . . . . . . . . 6
1.2.2 Solution proposée . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.3 Travail demandé . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Méthodologie de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.1 Méthodes agiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.2 Méthodologie retenue . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.3 Rôles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
[Link] Product Owner . . . . . . . . . . . . . . . . . . . . . . . . 10
[Link] Scrum Master . . . . . . . . . . . . . . . . . . . . . . . . . 11
[Link] Équipe Scrum . . . . . . . . . . . . . . . . . . . . . . . . . 11
[Link] Daily Standup Meeting . . . . . . . . . . . . . . . . . . . 11
[Link] Scrum Board . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4 Présentation du diagramme de Gantt . . . . . . . . . . . . . . . . . . . . . 12
2 Sprint 0 : Initiation du projet 13
2.1 Cadrage de besoin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.1 Analyse des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
[Link] Besoins fonctionnels . . . . . . . . . . . . . . . . . . . . . 14
[Link] Besoins non fonctionnels . . . . . . . . . . . . . . . . . . . 15
2.1.2 Diagramme de cas d’utilisation globale . . . . . . . . . . . . . . . . 15
2.2 Backlog de produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
iii
2.3 Architecture globale de l’application . . . . . . . . . . . . . . . . . . . . . . 18
2.4 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4.2 Environnement de développement . . . . . . . . . . . . . . . . . . . 19
2.4.3 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . 19
3 Sprint 1 : Authentification, Consulter ses informations 21
3.1 Backlog du sprint 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.1 Diagramme de cas d’utilisation raffiné « Sprint 1 » . . . . . . . . . 23
3.2.2 Description de cas d’utilisation raffiné « Sprint1 » . . . . . . . . . . 23
[Link] Description du cas d’utilisation « Authentification » . . 23
[Link] Description du cas d’utilisation « Consulter Ses infor-
mations » . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.1 Scénario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
[Link] Diagramme de séquence « Authentification » . . . . . . 26
[Link] Diagramme de séquence « Consulter ses informations » 27
3.3.2 Diagramme de Classes . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4 Sprint 2 : Gérer Formations, Gérer utilisateurs, Approuver les de-
mandes de formation 30
4.1 Backlog du sprint 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.2.1 Diagramme de cas d’utilisation raffiné « Sprint 2 » . . . . . . . . . 32
4.2.2 Description de cas d’utilisation raffiné « Sprint 2 » . . . . . . . . . 33
[Link] Description du cas d’utilisation « Créer une demande
de formation » . . . . . . . . . . . . . . . . . . . . . . . 33
[Link] Description du cas d’utilisation « Approuver des de-
mandes de formation » . . . . . . . . . . . . . . . . . 34
4.2.3 Diagramme de cas d’utilisation raffiné « Gérer utilisateurs » . . . . 35
4.2.4 Description de cas d’utilisation raffiné «Sprint 2 :Gérer utilisateurs» 36
[Link] Description du cas d’utilisation « Gérer utilisateurs » . 36
4.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.3.1 Scénario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
[Link] Diagramme de séquence « Créer une demande de for-
mation » . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
iv
[Link] Diagramme de séquence « Approuver la demande de
formation » . . . . . . . . . . . . . . . . . . . . . . . . . 41
[Link] Diagramme de séquence « Ajouter utilisateur » . . . . 42
[Link] Diagramme de séquence « Supprimer utilisateur » . . 43
4.3.2 Diagramme de Classes . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5 Sprint 3 : Gestion des emplois et compétences 50
5.1 Backlog du sprint 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.2.1 Diagramme de cas d’utilisation raffiné « Sprint 3 » . . . . . . . . . 52
5.2.2 Description de cas d’utilisation raffiné « Sprint 3 » . . . . . . . . . 54
[Link] Description du cas d’utilisation « Gérer les emplois » . 54
[Link] Description du cas d’utilisation « Gérer les compétences
» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.3.1 Scénario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
[Link] Diagramme de séquence « Ajouter Emlpoi » . . . . . . 62
[Link] Diagramme de séquence « Supprimer Emploi » . . . . 63
[Link] Diagramme de séquence « Modifier Compétence » . . 64
5.3.2 Diagramme des Classes . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.3.3 Description des classes . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Conclusion générale 68
Bibliographie 69
v
Table des figures
vi
4.13 Interface gérer formation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.14 Interface Approuver formation . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.15 Interface Approuver formation . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.16 Interface gérer formation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
vii
Liste des tableaux
viii
Introduction générale
Introduction générale
L’avènement de la numérisation représente une avancée majeure, comparable à l’im-
pact révolutionnaire de l’imprimerie au XVe siècle. Les ordinateurs ont ouvert les portes
d’un nouveau monde, façonné par des avancées telles que les plate-formes en ligne, les
applications mobiles et le commerce électronique. En l’espace de quelques années, l’essor
exponentiel des technologies numériques a transféré une part significative de nos interac-
tions sociales vers cet univers virtuel.
Cette transition offre des opportunités sans précédent pour les entreprises, les inci-
tant à dématérialiser leurs données et documents. Dans ce contexte, les départements des
ressources humaines (RH) jouent un rôle crucial en favorisant l’adoption d’une culture nu-
mérique au sein de leurs organisations. Cette évolution se traduit par une transformation
des processus internes et des structures organisationnelles, orientées vers la digitalisation.
C’est dans ce paysage en mutation que s’inscrit mon projet de fin d’études, intitulé
« Gestion des personnels : formations, emplois et compétences ». Mené au sein de l’en-
treprise « ArabSoft » en collaboration avec la Faculté des Sciences de Gafsa, ce projet
vise à concevoir une application web innovante. Son objectif est d’améliorer la gestion
des ressources humaines en mettant l’accent sur la formation et le développement des
compétences. En capitalisant sur le potentiel humain, cette initiative contribuera à ren-
forcer la compétitivité de l’organisation, assurant ainsi une adéquation continue entre les
compétences disponibles et les besoins opérationnels.
—Dans le deuxième chapitre, nous exposons le fameux sprint 0, qui constitue la phase
d’initiation d’un projet Scrum. Il traite d’abord le recueil des besoins, et l’élaboration
du Backlog du produit, ensuite, la présentation d’une vue architecturale et conceptuelle
globale de notre application.
—Les trois derniers chapitres , auront le même plan : un Backlog Sprint, cadrage des
besoins, la conception et la réalisation, qui reflètent le déroulement des itérations.
1
Introduction générale
• Enfin ,le troisième Sprint s’occupe la partie de La gestion des emplois et la gestion
des compétences.
2
Chapitre 1
Contexte général
Plan
1.1 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3.3 Rôles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3
Chapitre 1. Contexte général
Introduction
Ce chapitre vise à situer notre projet dans son contexte général. Nous commence-
rons par présenter l’organisme d’accueil, ARABSOFT. Ensuite, nous décrirons l’étude de
l’existant et ses limites afin d’en déduire la solution proposée. Enfin, nous détaillerons la
méthodologie adoptée pour la réalisation de notre projet.
Créé en 1985 par Mohamed TRIKI, ARABSOFT s’est spécialisée dans l’étude, le
développement et la distribution de solutions de gestion notamment pour le secteur public.
Forte d’une expérience de plus d’une trentaine d’années, dans l’édition des solutions
standards et spécifiques, au profit de clients opérant dans des secteurs vitaux tels que
l’énergie, l’eau, la fiscalité, les finances, l’industrie chimique, l’hôtellerie, etc., ARAB-
SOFT a pu éprouver et affiner une méthodologie de gestion des projets fiable et efficace.
ARABSOFT a travaillé avec des experts reconnus dans tous les secteurs
En tant que firme certifié ISO 9001 version 2008, ARABSOFT a construit une relation
de confiance avec ses clients, en les accompagnant dans toutes les étapes de leurs projets
avec un souci constant de qualité. Deux Plans Qualité Projet (PQP) distincts ont été mis
en place pour répondre aux exigences de nos clients [1].
AJIR : est conçu pour les grandes entreprises à multiples structures disposant d’une
base documentaire comportant les textes réglementaires relatifs aux ressources humaines.
4
Chapitre 1. Contexte général
• Génie logiciel.
• Ingénieur Système.
• La cyber-sécurité.
• Cloud Computing .
5
Chapitre 1. Contexte général
SAP SuccessFactors est une suite logicielle de gestion des ressources humaines (HRM)
basée sur le cloud, offrant une gamme complète de fonctionnalités pour la gestion des
talents, y compris la gestion des formations, des compétences, des emplois et des perfor-
mances des employés. La solution est conçue pour aider les entreprises à gérer et dévelop-
per leurs talents, améliorer l’engagement des employés et optimiser les processus RH. Les
modules de SuccessFactors couvrent des domaines tels que le recrutement, l’intégration, la
gestion de la performance, l’apprentissage et le développement, ainsi que la planification
de la succession.
• Problème de coût : Les coûts initiaux de licence et les frais récurrents de maintenance
sont élevés, ce qui peut être prohibitif pour les petites et moyennes entreprises.
6
Chapitre 1. Contexte général
adaptations difficiles, limitant ainsi sa capacité à répondre aux besoins évolutifs des
entreprises.
En outre, sur le plan ergonomique, l’interface de cette application est peu conviviale, ce
qui peut avoir un impact négatif sur l’expérience utilisateur et son utilisation au quotidien.
Pour répondre aux limitations identifiées dans SAP SuccessFactors et offrir une solu-
tion plus adaptée aux besoins actuels des entreprises en matière de gestion des ressources
humaines, nous proposons de développer une application web innovante qui digitalise les
processus internes de l’entreprise en utilisant des outils de développement modernes. Cette
solution vise à être plus flexible, conviviale et économique tout en répondant aux exigences
de gestion des talents , Cela inclut :
• Gestion des utilisateurs : Permet d’administrer les comptes et les permissions des
utilisateurs de la plateforme, de gérer les accès aux fonctionnalités et aux données
en fonction des rôles et des responsabilités de chaque utilisateur.
• Gestion des emplois et des compétences : Permet de structurer les différents emplois
au sein de l’organisation, d’identifier les compétences requises pour chaque emploi
et de gérer la correspondance entre les compétences des employés et les exigences
d’emploi.
• Gestion des formations : Un module complet pour planifier, suivre et gérer les pro-
grammes de formation des employés.
Dans le cadre de la tâche de Gestion des utilisateurs, notre objectif est d’assurer
une disponibilité élevée et des performances optimales de l’application. L’utilisation de
nouvelles technologies de développement est cruciale pour créer une architecture robuste
et évolutive. L’interaction entre l’utilisateur et l’application revêt une importance capitale
pour favoriser la fidélisation.
Pour ce projet de fin d’études, notre intention est de développer une application web
qui digitalise les processus internes des ressources humaines, tout en réduisant les coûts
7
Chapitre 1. Contexte général
Il existe de nombreuses méthodes agiles disponibles, y compris les méthodes les plus
populaires :
Extreme Programming, ou XP, est une méthode agile de gestion de projet particulière-
ment bien adaptée aux projets de développement informatique. Le principe de base de la
méthode XP est de faire travailler en étroite collaboration tous les participants au projet
et de choisir convient aux itérations de développement très courtes. La planification des
8
Chapitre 1. Contexte général
tâches est toujours très flexible, et l’estimation des charges simplifiée par des prévisions
à très court terme. Par conséquent, la correspondance entre les attentes des clients et les
réalisations est garantie. Des fonctionnalités sont fournies régulièrement pour des tests et
des vérifications via des prototypes opérationnels .
• Scrum
9
Chapitre 1. Contexte général
Dans notre projet, nous essayons d’adapter Scrum à nos besoins. Par conséquent, nous
utiliserons toutes les bonnes pratiques suivantes
• Extraction des fonctions à développer après avoir complété la liste de tâches produit ;
• Rencontrer l’encadrant de la société tous les jours pour suivre les progrès ;
1.3.3 Rôles
Les Product Owners sont les champions de leur produit, ils ne sont pas des chefs de
projet. Chez ARABSOFT c’était le cas de Triki Mohamed . Ils sont concentrés sur la
10
Chapitre 1. Contexte général
compréhension des Opérations Team et exigences du marché, puis ils priorisent les tâches
à réaliser par l’équipe d’ingénieurs en conséquence.
— S’assurer que tout le monde comprend les éléments de travail du backlog produit.
C’était le rôle du CTO Balti Aymen . Il était responsable de s’assurer que l’équipe vit
selon les valeurs et les pratiques de Scrum. Il était toujours là en nous aidant en tant que
coach et poussant à faire de notre mieux afin d’offrir le meilleur produit possible. [3]
En tant qu’équipe Scrum, tout le monde devait laisser une trace de ses tâches quo-
tidiennes. Le meeting est un vrai rendez-vous, chaque membre de l’équipe répond aux
questions suivantes :
Un sprint chez ArabSoft dure trois semaines. A la fin de chaque Sprint nous faisons
un sprint Commitment Meeting tous les Jeudi à 10H. Au cours de cette réunion, nous
commençons par un Sprint Review, où chaque membre de l’équipe partage son écran et
présente l’avancement de ses tâches. Puis un Sprint Planning, où sont présentées les tâches
programmées pour le sprint suivant [4].
11
Chapitre 1. Contexte général
• Sprint Backlog
Le Sprint Backlog est une liste de tâches identifiées par l’équipe Scrum à réaliser pendant
le Sprint. Nous sélectionnons ces tâches lors du Sprint Planning, et qui se présentent
généralement sous la forme des user stories où nous attribuons des estimations temporelles
à chacune d’entre elles, chez ArabSoft.
• User Stories
Les User Stories sont des descriptions courtes et simples d’une fonctionnalité racontée du
point de vue d’une personne non-technique qui désire la nouvelle « Feature », généralement
un utilisateur ou un client du système.
Conclusion
Dans le prochain chapitre, nous nous concentrerons sur l’analyse et la spécification des
besoins.
12
Chapitre 2
Sprint 0 : Initiation du projet
Plan
2.1 Cadrage de besoin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
13
Chapitre 2. Sprint 0 : Initiation du projet
Introduction
Dans ce chapitre, nous abordons la première étape de notre projet, à savoir le sprint
zéro. Nous commençons par répertorier les besoins fonctionnels et non fonctionnels, ainsi
que par définir le cas d’utilisation général. Ensuite, nous détaillons le backlog du produit et
des sprints. Par la suite, nous nous attardons sur la conception d’une structure appropriée
pour l’application. Enfin, nous offrons un aperçu succinct du matériel de base, des tech-
nologies et des langages de programmation utilisés pour mettre en place l’environnement
de travail.
Au sein de cette section, nous allons présenter en détail les exigences fonctionnelles
et non fonctionnelles de notre application. Nous identifierons ensuite les divers acteurs
impliqués, pour ensuite définir le diagramme des cas d’utilisation global de l’application.
Nous allons identifier les besoins fonctionnels ainsi que les non fonctionnels.
Après une analyse approfondie du système, cette section se consacre à décrire les
besoins fonctionnels de chaque participant de l’application. Ces exigences sont répertoriées
dans un diagramme de cas d’utilisation. Les besoins des utilisateurs comprennent :
• Consulter ses informations sera gérée par l’utilisateur : l’utilisateur peut consulté
ses informations.
• Gestion des utilisateurs : La gestion des utilisateurs sera gérée par l’administra-
teur système ; l’administrateur peut ajouter, modifier, supprimer et consulter un
utilisateur.
• Gestion des Formations : La gestion des formations permet aux utilisateurs de rem-
plir un formulaire électronique d’une demande de formation. Par la suite il peut
consulter l’état de demande.
14
Chapitre 2. Sprint 0 : Initiation du projet
• Gestion des emplois : La gestion des emplois sera gérée par l’administrateur système ;
l’administrateur peut ajouter, modifier, supprimer un emploi.
• Gestion des compétences : La gestion des compétences sera gérée par l’administra-
teur système ; l’administrateur peut ajouter, modifier, supprimer un compétences.
Les besoins non fonctionnels décrivent toutes les contraintes qui rendent le fonction-
nement de l’application plus performant et plus efficace.
— Instantanéité :L’application doit optimiser les processus pour garantir des temps
de réponse courts.
— Maintenabilité :Le code source de l’application doit être clair et bien documenté
pour permettre des modifications et des évolutions faciles en fonction des besoins de
l’entreprise.
Le diagramme de cas d’utilisation globale permet de structurer les besoins des utilisa-
teurs et les objectifs correspondants d’un système
La figure 2.1 illustre toute les cas utilisations de base afin d’avoir une vue globale du
comportement de l’application.
15
Chapitre 2. Sprint 0 : Initiation du projet
Le backlog est une liste de tâches proposées qui définit les caractéristiques du produit,
c’est un artefact fondamentale de la méthodologie Scrum, C’est l’ensemble des caractéris-
tiques techniques ou fonctionnelles qui constituent le produit souhaité.
16
Chapitre 2. Sprint 0 : Initiation du projet
Le tableau 2.1 présente le backlog produit et identifie les différents « User Stories » :
17
Chapitre 2. Sprint 0 : Initiation du projet
La figure 2.2 présente l’architecture globale de l’application, qui est composée de deux
sous- applications, Frontend et Backend. Les derniers communiquent à travers des API
REST.
Afin de réaliser ce projet, nous avons utilisé un ordinateur portable qui dispose de la
configuration suivante :
18
Chapitre 2. Sprint 0 : Initiation du projet
— ASUS ExpertBook : 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz 2.42 GHz,
Ram :16.0 Go ;
— Angular : est un framework pour clients, open source, basé sur TypeScript
et codirigé par l’équipe du projet « Angular » chez Google ainsi que par une commu-
nauté de particuliers et de sociétés. Angular est une réécriture complète d’AngularJS,
cadriciel construit par la même équipe. Il permet la création d’applications Web et plus
particulièrement d’applications Web monopages [8].
— Spring Boot :Le Spring Framework est très largement utilisé dans la commu-
nauté Java. Il permet d’accélérer le développement d’applications d’entreprise (notamment
le développement d’applications Web et d’API Web). Mais on trouve des applications ba-
sées sur le Spring Framework dans bien d’autres domaines [9].
19
Chapitre 2. Sprint 0 : Initiation du projet
— Visual Studio Code :est un éditeur de code source développé par Micro-
soft pour Windows, macOs et Linux, Il comprend un support intégré pour JavaScript,
TypeScript et [Link]. Utilisé pour la partie Frontend [12].
— Postman : est une application permettant de tester des API, créée en 2012
par Abhinav Asthana, Ankit Sobti et Abhijit Kane à Bangalore pour répondre à une
problématique de test d’API partageable [15].
Conclusion
Dans ce chapitre, nous avons présenté les besoins fonctionnels et non fonctionnels de
notre système ainsi que le cas d’utilisation global. Ensuite, nous avons détaillé le backlog
du produit et des sprints. Nous avons également identifié l’environnement matériel et
logiciel nécessaire pour réaliser notre plateforme. Dans le chapitre suivant, nous nous
concentrerons sur le développement du premier sprint de ce projet.
20
Chapitre 3
Sprint 1 : Authentification, Consulter ses
informations
Plan
3.1 Backlog du sprint 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.1 Scénario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
21
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
Introduction
Dans ce présent chapitre, nous allons présenter le premier sprint. Ce dernier touchera
la partie sécurité, l’authentification et Consulter des informations. En organisant le travail
sur trois parties principales qui sont l’analyse, la conception et la réalisation.
Dans cette partie, nous allons présenter la partie spécification des besoins de notre
«Sprint 1» afin de décrire les résultats attendus en terme de fonctionnalités.
22
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
Ce sprint, dans un premier lieu, est responsable de consulter ses informations ,il traite
les informations de chaque utilisateurs .
Titre Authentification
Acteur L’utilisateur (utilisateur et Administrateur)
Résumé L’outil permet l’authentification de l’administrateur et l’utilisateur
pour protéger le système
Description des enchainements
23
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
Pré conditions
• L’utilisateur doit avoir un compte déjà actif et créé ;
Post condi-
tions
• L’utilisateur est connecté à son compte avec les autorisations
associées à son rôle.
Scénario nominale
Scénario alternatif
Le tableau 3.3 fournit une description du cas d’utilisation « Consulter Ses informations
»
24
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
Post condi-
tions
• L’utilisateur est connecté à son compte avec les autorisations
associées à son rôle.
Scénario nominale
Scénario alternatif
25
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
3.3 Conception
Nous allons, dans cette partie, présenter la partie de conception en exposant les scé-
narios à réaliser.
3.3.1 Scénario
26
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
dans ce cas, une condition « alt » est présente , si l’accès à la base de données est accepté,
un msg d’authentification sera créé et envoyé vers l’utilisateur, et par la suite la page
d’accueil de l’application sera affichée.
Sinon, un message d’erreur « nom utilisateur ou mot de passe incorrecte » sera affiché
à l’utilisateur.
L’utilisateur commence en cliquant sur le bouton "Profil" dans l’interface. Cette ac-
tion envoie une requête au service utilisateur, qui interroge ensuite la base de données
pour obtenir les informations de l’utilisateur via la méthode getUserById(id). La base de
données traite la demande et renvoie les données au service utilisateur, qui les transmet
à l’interface utilisateur. Enfin, les informations du profil sont affichées à l’utilisateur.
27
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
Le tableau 3.4 décrit la description des classe participantes dans le premier sprint.
Classe Description
3.4 Réalisation
28
Chapitre 3. Sprint 1 : Authentification, consulter ses informations
Conclusion
29
Chapitre 4
Sprint 2 : Gérer Formations, Gérer
utilisateurs, Approuver les demandes de
formation
Plan
4.1 Backlog du sprint 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.3.1 Scénario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
30
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Introduction
Dans ce présent chapitre, nous allons présenter le deuxième sprint. Ce dernier abordera
la gestion des utilisateurs , la gestion des formations et la gestion d’approuver les demandes
de formation . En organisant le travail sur trois parties principales qui sont l’analyse, la
conception et la réalisation.
Le tableau 4.1 présente la backlog de sprint 2. Nous citons que l’Acteur définit l’uti-
lisateur ou l’Administrateur
31
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Dans un deuxième lieu, il s’occupe aussi de la gestion des formations, il peut créer les
demandes et consulter son état (Accepter ou Refuser).
Dans la partie gestion des formation, nous avons un acteur qui joue le rôle d’un
utilisateur.
• Après que l’utilisateur créer une demande ,il peut consulter l’état de sa demande ;
Dans cette partie, nous allons exposer la partie spécification des besoins de notre «
Sprint 2 » afin de décrire les résultats attendus en terme de fonctionnalités.
32
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Figure 4.1 – Diagramme de cas d’utilisation raffiné du Sprint 2 "Gestion des formations
et Approuver les demandes de formation"
Le tableau 4.2 fournit une description du cas d’utilisation « Créer une demande de
formation »
Post condi-
tions
• La demande de formation est crée.»
Scénario nominal
33
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Scénario alternatif
Le tableau 4.3 fournit une description du cas d’utilisation « Approuver des demandes
de formation»
34
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Pré conditions
• L’administrateur authentifié ;
Post condi-
tions
• Demande de formation accepter ou refuser
Scénario nominal
35
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Post condi-
tions
• L’utilisateur est ajouté.
Scénario nominal
36
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Scénario alternatif
Post condi-
tions
• L’utilisateur est supprimé.
Scénario nominal
37
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Scénario alternatif
Post condi-
tions
• L’utilisateur est modifié.
Scénario nominal
38
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Scénario alternatif
Le tableau 4.7 fournit une description du cas d’utilisation « Consulter liste utilisa-
teurs »
39
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Post condi-
tions
• Liste des utilisateurs est affiché.
Scénario nominal
4.3 Conception
4.3.1 Scénario
40
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
l’interface request va s’afficher une nouvelle demande de formation dont l’état par
défaut :« waiting ».
Une liste des demandes de formation en attente de confirmation sera affiché, dans
ce cas, l’administrateur va choisir de confirmer ou refuser la demande selon le sujet de
formation remplir par l’utilisateur.
41
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
42
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
43
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
44
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Le tableau 4.8 décrit la description des classe participantes dans le deuxième sprint.
Classe Description
4.4 Réalisation
Pour modifier les coordonnées d’un utilisateur, l’administrateur va afficher la liste des
utilisateurs et cliquer sur le boutton ’Edit’ d’un utilisateur. il devra ensuite remplir le
formulaire et valider les données.
45
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
46
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
47
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Pour consulter la liste des formations l’administrateur doit ouvrir la page formation
dans le menu principal.
48
Chapitre 4. Sprint 2 : Gérer utilisateurs, Gérer Formations, Approuver les demandes de
formation
Après que l’administrateur Approuver les demandes de formation l’état sera changer
dans l’interface de Gérer formation (4.16).
Conclusion
Au cours de ce sprint, nous avons aborder la gestion des utilisateurs ,la gestion de
formations et la gestion d’approuver les demandes de formation en passant par l’analyse
des spécifications des besoins, la conception et la réalisation.
À ce stade il reste les deux modules la gestion des emplois et compétences qui feront
le but du suivant sprint.
49
Chapitre 5
Sprint 3 : Gestion des emplois et compétences
Plan
5.1 Backlog du sprint 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.3.1 Scénario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
50
Chapitre [Link] 3 : Gestion des emplois et compétences
Introduction
Dans ce chapitre, nous allons mettre en relief le dernier sprint qui abordera la gestion
des emplois et les compétences.
Dans cette partie, nous allons exposer la partie spécification des besoins de notre
troisième Sprint afin de décrire les résultats attendus en terme de fonctionnalités.
51
Chapitre [Link] 3 : Gestion des emplois et compétences
Dans un deuxième lieu, il s’occupe aussi du gestion des compétences, il peut ajouter ,
modifier et supprimer une compétence
L’administrateur a la possibilité de :
Figure 5.1 – Diagramme de cas d’utilisation raffiné du troisième Sprint "Gestion des
emplois"
Pour la partie gestion des compétences, nous avons un acteur qui joue le rôle d’un
administrateur.
52
Chapitre [Link] 3 : Gestion des emplois et compétences
La figure 5.2 illustre le raffinement du cas d’utilisation du Sprint 3 « Gestion des compé-
tences»
Figure 5.2 – Diagramme de cas d’utilisation raffiné du troisième Sprint "Gestion des
compétences"
53
Chapitre [Link] 3 : Gestion des emplois et compétences
Post condi-
tions
• l’emploi est ajouté.
Scénario nominal
Scénario alternatif
54
Chapitre [Link] 3 : Gestion des emplois et compétences
Post condi-
tions
• L’emploi est supprimé.
Scénario nominal
Scénario alternatif
55
Chapitre [Link] 3 : Gestion des emplois et compétences
Post condi-
tions
• L’emploi est modifié.
Scénario nominal
Scénario alternatif
56
Chapitre [Link] 3 : Gestion des emplois et compétences
Le tableau 5.5 fournit une description du cas d’utilisation « Consulter liste emplois
»
Post condi-
tions
• Liste des emplois est affichée.
Scénario nominal
57
Chapitre [Link] 3 : Gestion des emplois et compétences
Pré conditions
• L’administrateur authentifié ;
Post condi-
tions
• la compétence est ajouté.
Scénario nominal
Scénario alternatif
58
Chapitre [Link] 3 : Gestion des emplois et compétences
Pré conditions
• L’administrateur authentifié ;
Post condi-
tions
• La compétence est supprimé.
Scénario nominal
Scénario alternatif
59
Chapitre [Link] 3 : Gestion des emplois et compétences
Post condi-
tions
• La compétence est modifié.
Scénario nominal
Scénario alternatif
60
Chapitre [Link] 3 : Gestion des emplois et compétences
Le tableau 5.9 fournit une description du cas d’utilisation « Consulter liste com-
pétences »
Post condi-
tions
• Liste des compétences est affichée.
Scénario nominal
61
Chapitre [Link] 3 : Gestion des emplois et compétences
5.3 Conception
5.3.1 Scénario
L’administrateur commence en cliquant sur le bouton "add Job" dans l’interface. L’in-
terface demande alors à l’utilisateur de remplir les champs nécessaires et de valider les
informations.
Une fois validées, l’interface envoie une requête au Service Job, qui traite cette requête
et appelle la méthode addJob() pour ajouter le nouvel emploi dans la base de données
(BD : Jobs). Finalement, l’emploi est ajouté à la base de données, complétant ainsi le
processus.
62
Chapitre [Link] 3 : Gestion des emplois et compétences
Les composants impliqués sont l’utilisateur, JobList, Service Job et la base de données.
63
Chapitre [Link] 3 : Gestion des emplois et compétences
L’administrateur commence en cliquant sur le bouton "Skills list" dans l’interface skills
list. L’interface retourne la liste des compétences.
Après l’interface envoie une requête au Service skill, qui traite cette requête et appelle
la méthode getSkillById(idc) pour récupérer les détails de compétence de la base de
données (BD : Skills) et l’afficher dans l’interface .
Puis, l’administrateur change les cordonnées et valider , une requête envoyer vers
service skill et appelle la méthode "updateSkill(skill)" pour enregistrer les modifications.
Finalement la (BD :Skills) retourne la liste des compétences avec les changement
appliquées.
64
Chapitre [Link] 3 : Gestion des emplois et compétences
Dans cette section nous décrivons les classes participantes dans ce dernier Sprint (Ta-
bleau 5.10 ).
Classe Description
65
Chapitre [Link] 3 : Gestion des emplois et compétences
5.4 Réalisation
66
Chapitre [Link] 3 : Gestion des emplois et compétences
Conclusion
67
Conclusion générale
Ce rapport est le résultat du travail réalisé au sein de l’entreprise Arabsoft dans le cadre
d’un projet de fin d’études pour l’obtention du diplôme national de licence en sciences
informatiques à la Faculté des sciences de Gafsa (FSG). Le but de ce projet était de
développer une application web permettant la digitalisation des processus internes d’une
entreprise en utilisant de nouveaux outils de développement, afin de créer une solution de
gestion des personnels, formations, emplois et compétences .
Nous avons utilisé les méthodes agiles pour le suivi et la gestion du projet, en choisis-
sant la méthode Scrum basée sur des sprints. Pour ce rapport, le travail a été accompli
en trois sprints. De plus, la réalisation de cette application web a été très bénéfique à la
fois techniquement et professionnellement.
En conclusion, ce travail a atteint ses objectifs, mais ce n’est que le début d’un long pro-
cessus. Plusieurs fonctionnalités pourraient enrichir notre application, notamment l’ajout
d’un système de messagerie entre les employés et l’administrateur, ainsi qu’une section
pour la gestion de la paie.
68
Bibliographie
69
Bibliographie
70