Rapportlaouinisarrapfevf 180628200603
Rapportlaouinisarrapfevf 180628200603
Rapportlaouinisarrapfevf 180628200603
Université de la Manouba
École Supérieure d’Économie Numérique
Rapport
de Projet de Fin d'Études
Sujet
Élaboré par :
Sarra LAOUINI
Organisme d'accueil
Encadré par
Parce que sans toi, je n’arriverai pas à avoir ce que j’ai, je te porterais à jamais dans mon cœur
et dans mon esprit, tes mots resteront éternellement dans ma mémoire écrite. Que Dieu, le
tout puissant, puisse t’avoir dans sa sainte miséricorde.
Et à qui continue de le faire chaque jour, à celle qui est restée éveillée alors que moi je dormais,
à celle sans qui je ne serais pas là, et à qui je dois tout ceci, à celle qui ne m’a jamais privé de
son amour ni de son attention, même lorsque j’étais loin de les mériter. A ma bien-aimée
Latifa tout ce que j'ai fait, c'est grâce à toi et pour toi.
Avec qui je partage une joie de vivre et une harmonie paisible qui illumine mes journées.
Aucune dédicace ne saurait exprimer l’amour, l’estime, le dévouement et le respect que j’ai
toujours eu pour vous.
A toute mon adorable famille
Pour leur patience et leur soutien qu’ils n’ont cessés d’apporter au cours de ma formation et
pour ses aident à franchir les épreuves difficiles.
Pour tous les moments inoubliables que nous avons passés ensemble. J’espère que notre amitié
durera éternellement.
SARRA
i
Remerciements
Je remercie tout d'abord Dieu tout puissant de m'avoir donné l'ardeur, l'énergie et la patience
d'achever ce modeste travail.
Je tiens à exprimer ma gratitude aux membres du jury pour l'honneur qu'ils m'ont fait d'accepter
de juger mon travail.
Je tiens à présenter mes reconnaissances et mes remerciements les plus sincères à mon
encadrant à l’École Supérieure d’Économie Numérique, Monsieur Chiheb BEN NSIR pour le
temps consacré à la lecture et aux réunions qui ont rythmé les différentes étapes de mon projet.
Les discussions que nous avons partagées m’ont permis, non seulement d’orienter mon travail
d’une manière pertinente mais aussi de garder le bon moral tout au long du stage. Je le remercie
pour sa suivie journalière par le journal PFE, aussi pour sa disponibilité à encadrer ce travail à
travers ses critiques et ses recommandations
Je tiens également à remercier Madame Siwar GUEMRI, pour avoir assuré l'encadrement de
ce travail et pour ses qualités humaines et professionnelles et son aide précieuse.
Je tiens à remercier aussi M Sami BEN HAMOUDA, pour son encadrement, pour ses conseils
qui m'ont été utiles et pour sa disponibilité durant la période de stage de fin d'études.
J'adresse mes sincères remerciements à mes collègues de travail Issa BEN MANSOUR,
Oussama AYARI et LAHMEDI Sawssen qui m'ont apporté leur support moral et intellectuel
et avec lesquels j'ai pu développer mon esprit d'équipe, mon organisation dans le travail ainsi
que mon professionnalisme.
Finalement, toutes mes gratitudes s’adressent et à tous ceux qui ont contribué de près ou de loin
pour je puisse mener à bien ma formation de mastère, à leur tête mes parents, mes professeurs
et mes amis et particulièrement l’équipe administrative et mes enseignants à l’École Supérieure
d’Économie Numérique.
ii
Table des matières
Introduction générale............................................................................................................................... 1
Chapitre 1 ................................................................................................................................................ 3
Étude de projet......................................................................................................................................... 3
Introduction ......................................................................................................................................... 4
1. Présentation de l’organisme d’accueil ......................................................................................... 4
1.1. Fiche d’identité de BNS ENGINEERING .......................................................................... 4
1.2. Activités de BNS ENGINEERING ..................................................................................... 5
2. Présentation du projet .................................................................................................................. 5
2.1. Cadre du projet .................................................................................................................... 5
2.2. Etude de l’existant ............................................................................................................... 6
2.3. Solution à proposer .............................................................................................................. 8
3. Choix de la méthodologie de développement............................................................................ 10
3.1. La méthodologie de Travail Scrum ................................................................................... 10
3.2. Les langages de modélisation ............................................................................................ 12
3.3. Environnement de travail .................................................................................................. 13
Conclusion ......................................................................................................................................... 15
Chapitre 2 .............................................................................................................................................. 16
Planification et architecture ................................................................................................................... 16
Introduction ....................................................................................................................................... 17
1. Recueil des besoins ................................................................................................................... 17
1.1. Identification des acteurs ................................................................................................... 17
1.2. Les besoins fonctionnels.................................................................................................... 19
1.3. Les besoins non fonctionnels............................................................................................. 20
1.4. Diagramme de cas d’utilisation globale ............................................................................ 21
2. Prototypage des interfaces ......................................................................................................... 22
3. Pilotage du projet avec Scrum ................................................................................................... 25
2.1. Technique utilisée.............................................................................................................. 25
2.2. Répartition des rôles .......................................................................................................... 25
2.3. Backlog du produit ............................................................................................................ 25
2.4. Planification des sprints ..................................................................................................... 27
4. Choix Architectural ................................................................................................................... 28
4.1. Architecture applicative..................................................................................................... 28
iii
4.2. Architecture technique....................................................................................................... 29
Conclusion ......................................................................................................................................... 29
Chapitre 3 .............................................................................................................................................. 30
Sprint 1 - Les missions principales de GRH ......................................................................................... 30
Introduction ....................................................................................................................................... 31
1. Backlog du sprint....................................................................................................................... 31
2. Capture des besoins ................................................................................................................... 33
2.1. Diagramme de cas d'utilisation du Sprint 1 ....................................................................... 33
2.2. Raffinement des cas d’utilisation ...................................................................................... 34
2.3. Descriptions textuelles des cas d’utilisation ...................................................................... 40
3. Analyse ...................................................................................................................................... 45
3.1. Diagrammes de séquence systèmes ................................................................................... 45
3.2. Diagrammes des classes participantes ............................................................................... 48
4. Conception................................................................................................................................. 50
4.1. Diagrammes de séquences détaillés .................................................................................. 50
4.2. Diagramme de classes du sprint 1 ..................................................................................... 52
5. Implémentation .......................................................................................................................... 52
5.1. La génération de la BD plus le dictionnaire de données ................................................... 52
5.2. Diagramme de composants................................................................................................ 57
5.3. Les interfaces du Sprint 1 .................................................................................................. 57
6. Test ............................................................................................................................................ 60
6.1. Tests de validation ............................................................................................................. 60
6.2. Test unitaires ..................................................................................................................... 61
Conclusion ......................................................................................................................................... 62
Chapitre 4 .............................................................................................................................................. 63
Sprint 2 – Gestion du recrutement ......................................................................................................... 63
Introduction ....................................................................................................................................... 64
1. Backlog du sprint....................................................................................................................... 64
2. Capture des besoins ................................................................................................................... 65
2.1. Diagramme de cas d'utilisation du Sprint 2 ....................................................................... 65
2.2. Raffinement des cas d’utilisation ...................................................................................... 66
2.3. Descriptions textuelles des cas d’utilisation ...................................................................... 69
3. Analyse ...................................................................................................................................... 71
3.1. Diagrammes de séquence systèmes ................................................................................... 71
iv
3.2. Diagrammes des classes participantes ............................................................................... 73
4. Conception................................................................................................................................. 74
4.1. Diagrammes de BPMN 2.0................................................................................................ 75
4.2. Diagrammes de séquences détaillés .................................................................................. 77
4.3. Diagramme de classes du sprint 2 ..................................................................................... 78
5. Implémentation .......................................................................................................................... 78
5.1. La génération de la BD plus le dictionnaire des données .................................................. 79
5.2. Diagramme de composants................................................................................................ 82
5.3. Les interfaces du Sprint 2 .................................................................................................. 83
6. Test ............................................................................................................................................ 85
6.1. Tests de validation ............................................................................................................. 86
6.2. Test unitaires ..................................................................................................................... 86
Conclusion ......................................................................................................................................... 88
Chapitre 5 .............................................................................................................................................. 89
Sprint 3 – Les flux de ............................................................................................................................ 89
travaux RH ............................................................................................................................................ 89
Introduction ....................................................................................................................................... 90
1. Backlog du sprint....................................................................................................................... 90
2. Capture des besoins ................................................................................................................... 91
2.1. Diagramme de cas d'utilisation du Sprint 3 ....................................................................... 91
2.2. Raffinement des cas d’utilisation ...................................................................................... 92
2.3. Descriptions textuelles des cas d’utilisation ...................................................................... 95
3. Analyse ...................................................................................................................................... 97
3.1. Diagrammes de séquence systèmes ................................................................................... 97
3.2. Diagrammes des classes participantes ............................................................................... 99
4. Conception................................................................................................................................. 99
4.1. Diagrammes de BPMN 2.0................................................................................................ 99
4.2. Diagrammes de séquences détaillés ................................................................................ 103
4.3. Diagramme de classes du sprint 3 ................................................................................... 104
5. Implémentation ........................................................................................................................ 104
5.1. La génération de la BD plus le dictionnaire de données ................................................. 105
5.2. Diagramme de composants.............................................................................................. 109
5.3. Les interfaces du Sprint 3 ................................................................................................ 110
6. Test .......................................................................................................................................... 112
v
6.1. Tests de validation ........................................................................................................... 112
6.2. Test unitaires ................................................................................................................... 113
Conclusion ....................................................................................................................................... 114
Conclusion et Perspectives .................................................................................................................. 115
Annexe A : Passage du diagramme de classes UML au modèle relationnel ....................................... 116
Bibliographie et webographie.............................................................................................................. 118
vi
Liste des figures
Figure 1 FICHE D'IDENTITE DE BNS .......................................................................................................... 4
Figure 2 Interface demande de congé dans l'Odoo ................................................................................ 6
Figure 3 Exemple d'interface Du PGI SAP ................................................................................................ 7
Figure 4 Diagramme de cas d'utilisation globale .................................................................................. 22
Figure 5 Interface d'authentification..................................................................................................... 23
Figure 6 Interface principale du module RH.......................................................................................... 23
Figure 7 Interface affectation contrat ................................................................................................... 23
Figure 8 Interface Gestion des employés .............................................................................................. 24
Figure 9 Interface d'ajout d'employé .................................................................................................... 24
Figure 10 Interface liste congés............................................................................................................. 24
Figure 11 PLANIFICATION DES SPRINTS ................................................................................................ 27
Figure 12 Le modèle REST [31] .............................................................................................................. 28
Figure 13 Schéma de l'architecture 3-tierces adoptée ......................................................................... 29
Figure 14 DIAGRAMME DE CAS D'UTILISATION DU SPRINT 1 ............................................................... 34
Figure 15 DIAGRAMME DE CAS D'UTILISATION "Gérer employé" ........................................................ 35
Figure 16 DIAGRAMME DE CAS D'UTILISATION "Gérer les enfants" .................................................... 35
Figure 17 DIAGRAMME DE CAS D'UTILISATION "Gérer les pièces jointes"........................................... 36
Figure 18 DIAGRAMME DE CAS D'UTILISATION "Gérer les services" .................................................... 36
Figure 19 DIAGRAMME DE CAS D'UTILISATION "Gérer les département " .......................................... 37
Figure 20 DIAGRAMME DE CAS D'UTILISATION "Gérer les postes" ...................................................... 37
Figure 21 DIAGRAMME DE CAS D'UTILISATION "Gérer les carrières" .................................................. 37
Figure 22 DIAGRAMME DE CAS D'UTILISATION "Gérer les contrats" ................................................... 38
Figure 23 DIAGRAMME DE CAS D'UTILISATION "Gérer les avancements" ........................................... 38
Figure 24 DIAGRAMME DE CAS D'UTILISATION "Gérer les affaires administratives" ........................... 39
Figure 25 DIAGRAMME DE CAS D'UTILISATION "Gérer les utilisateurs"............................................... 39
Figure 26 DIAGRAMME DE CAS D'UTILISATION "Gérer les rôles" ........................................................ 39
Figure 27 DIAGRAMME DE SEQUENCES SYSTEME DU CAS "S'AUTHENTIFIER" .................................... 45
Figure 28 DIAGRAMME DE SEQUENCES SYSTEME DU CAS "AJOUTER EMPLOYE"................................ 46
Figure 29 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " LISTER LES UTILISATEURS " ...................... 46
Figure 30 DIAGRAMME DE SEQUENCE SYSTEME DU CAS "MODIFIER EMPLOYE" ................................ 47
Figure 31 DIAGRAMME DE SEQUENCE SYSTEME DU CAS "CONSULTER LES DETAILS D'UN EMPLOYE" 47
Figure 32 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " SUPPRIMER UTILISATEUR" ....................... 48
Figure 33 DIAGRAMME DE CLASSES PARTICIPANTES DU MODULE "Gérer employé" .......................... 49
Figure 34 DIAGRAMME DE CLASSES PARTICIPANTES DU MODULE "Gérer contrat" ............................ 49
Figure 35 DIAGRAMME DE CLASSES PARTICIPANTES DU MODULE "Gérer utilisateur" ....................... 50
Figure 36 DIAGRAMME DE SEQUENCE OBJET DU CAS " S'authentifier " .............................................. 51
Figure 37 DIAGRAMME DE CLASSE DU SPRINT 1 .................................................................................. 52
Figure 38 Diagramme de composants du cas d’utilisation « Gérer employé » .................................... 57
Figure 39 Interface d’authentification .................................................................................................. 58
Figure 40 Interface ajouter employé ..................................................................................................... 58
Figure 41 Interfaces la listes des employés ........................................................................................... 59
Figure 42 Interface de suppression d’un employé ................................................................................ 59
vii
Figure 43 Interface d’ajout d’un contrat ............................................................................................... 60
Figure 44 Interface de la Lister des utilisateurs .................................................................................... 60
Figure 45 code Ajouter Poste ................................................................................................................ 61
Figure 46 Ajouter une poste avec POST ................................................................................................ 62
Figure 47 code d’afficher tous les postes .............................................................................................. 62
Figure 48 Lister tous les poste avec GET ............................................................................................... 62
Figure 49 DIAGRAMME DE CAS D'UTILISATION DU SPRINT 2 ............................................................... 65
Figure 50 DIAGRAMME DE CAS D'UTILISATION "Gérer les candidats" ................................................. 66
Figure 51 DIAGRAMME DE CAS D'UTILISATION " Gérer les postes à pourvoir "................................... 66
Figure 52 DIAGRAMME DE CAS D'UTILISATION " Gérer les offres d'emploi " ...................................... 67
Figure 53 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes de stage " ............................... 67
Figure 54 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes de stages " ............................ 68
Figure 55 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes d'emploi " ............................... 68
Figure 56 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes de stages " ............................ 68
Figure 57 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Ajouter demande de stage " .................... 72
Figure 58 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Consulter tableau de bord "..................... 72
Figure 59 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Traiter demande d'emploi " ..................... 73
Figure 60 DIAGRAMME DE CLASSES PARTICIPANTES DU MODULE "Gérer candidat" .......................... 74
Figure 61 DIAGRAMME DE CLASSES PARTICIPANTES DU MODULE "Traiter demande d'emploi" ........ 74
Figure 62 Diagramme de BPMN 2.0 de la demande de stage ............................................................... 75
Figure 63 Diagramme de BPMN 2.0 de la demande d'emploi .............................................................. 76
Figure 64 DIAGRAMME DE SEQUENCE OBJET DU CAS " Traiter demande d’emploi " ......................... 77
Figure 65 DIAGRAMME DE CLASSE DU SPRINT 2 .................................................................................. 78
Figure 66 Diagramme de composants du cas d’utilisation « Gérer candidat » .................................... 83
Figure 67 Interface Ajouter Candidat .................................................................................................... 84
Figure 68 Interface La liste des candidats ............................................................................................. 84
Figure 69 Interface d’Ajouter offre de recrutement ............................................................................. 85
Figure 70 Interface de modifier demande d'emploi ............................................................................. 85
Figure 71 méthode d'ajouter demande stage ....................................................................................... 86
Figure 72 l'ajoute d’une demande de stage .......................................................................................... 87
Figure 73 code GET les demandes de stage .......................................................................................... 87
Figure 74 L'affichage du résultat du méthode GET ............................................................................... 88
Figure 75 DIAGRAMME DE CAS D'UTILISATION DU SPRINT 3 ............................................................... 91
Figure 76 DIAGRAMME DE CAS D'UTILISATION "Gérer les absences" .................................................. 92
Figure 77 DIAGRAMME DE CAS D'UTILISATION "Gérer les demandes d'absence"............................... 92
Figure 78 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes d’absence " ........................... 93
Figure 79 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes de congé " .............................. 93
Figure 80 DIAGRAMME DE CAS D'UTILISATION " Traiter la demandes de congé " .............................. 94
Figure 81 DIAGRAMME DE CAS D'UTILISATION " Gérer les formations " ............................................. 94
Figure 82 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes de formation " ........................ 95
Figure 83 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes de formation " ...................... 95
Figure 84 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Établir un état d’absence "....................... 97
Figure 85 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Traiter la demande de congé " ................ 98
Figure 86 DIAGRAMME DE CLASSES PARTICIPANTES DU MODULE "Traiter demande de congé" ....... 99
Figure 87 Diagramme de BPMN 2.0 de la demande de congé............................................................ 100
viii
Figure 88 Diagramme de BPMN 2.0 de la demande d'absence .......................................................... 101
Figure 89 Diagramme de BPMN 2.0 de la demande de formation ..................................................... 102
Figure 90 DIAGRAMME DE SEQUENCE OBJET DU CAS " Ajouter demande de congé " ...................... 103
Figure 91 DIAGRAMME DE CLASSE DU SPRINT 3 ................................................................................ 104
Figure 92 Diagramme de composants du cas d’utilisation « Gérer les demandes de congé » ........... 109
Figure 93 Interface d'établir un état d'absence .................................................................................. 110
Figure 94 Interface d'ajouter une demande de congé ........................................................................ 110
Figure 95 Interface le tableau de bord ................................................................................................ 111
Figure 96 Interface traiter demande congé 1 ..................................................................................... 111
Figure 97 Interface Traiter demande congé 2 ..................................................................................... 112
Figure 98 Code traiter demande ......................................................................................................... 113
Figure 99 Traiter décision .................................................................................................................... 113
Figure 100 le résultat d'affecter l'observation à une demande .......................................................... 114
Figure 101 Règle de passage d’une classe et id .................................................................................. 116
Figure 102 Les associations ................................................................................................................. 116
Figure 103 Association de type N :M .................................................................................................. 116
Figure 104 Association de type 1 : N ................................................................................................... 117
Figure 105 Association de type 1 : 1.................................................................................................... 117
Figure 106 Héritage ............................................................................................................................. 117
ix
Liste des Tableaux
Tableau 1 Tableau d'identification des acteurs..................................................................................... 17
Tableau 2 BACKLOG DU PRODUIT ......................................................................................................... 25
Tableau 3 BACKLOG DU SPRINT 1 ......................................................................................................... 31
Tableau 4 Description textuelle du cas « S’authentifier » .................................................................... 40
Tableau 5 Description textuelle du cas « Ajouter employé » ............................................................... 40
Tableau 6 Description textuelle du cas « Affecter enfant à l’employé » .............................................. 41
Tableau 7 Description textuelle du cas « Lister les contrats » .............................................................. 42
Tableau 8 Description textuelle du cas « Consulter les détails d’un employé » ................................... 42
Tableau 9 Description textuelle du cas « Modifier avancement » ........................................................ 43
Tableau 10 Description textuelle du cas « Supprimer utilisateur » ...................................................... 44
Tableau 11 Description textuelle du cas « Rechercher employé » ....................................................... 44
Tableau 12 Table "employé " ................................................................................................................ 53
Tableau 13 Table « Contrat » ................................................................................................................ 54
Tableau 14 Table « Département » ....................................................................................................... 54
Tableau 15 Table « Poste ».................................................................................................................... 54
Tableau 16 Table « Avancement » ........................................................................................................ 54
Tableau 17 Table « Enfant » .................................................................................................................. 55
Tableau 18 Table « Pièce jointe employé » ........................................................................................... 55
Tableau 19Table « Type_pièce_jointe »................................................................................................ 55
Tableau 20 Table « Gouvernorat » ........................................................................................................ 56
Tableau 21 Table « Utilisateur »............................................................................................................ 56
Tableau 22 Table « Rôle » ..................................................................................................................... 56
Tableau 23 Table « Autority » ............................................................................................................... 56
Tableau 24 résultats du test .................................................................................................................. 61
Tableau 25 BACKLOG DU SPRINT 2 ....................................................................................................... 64
Tableau 26 Description textuelle du cas « Ajouter demande de stage ».............................................. 69
Tableau 27 Description textuelle du cas « Modifier demande d'emploi » ........................................... 69
Tableau 28 Description textuelle du cas « Consulter le tableau de bord » .......................................... 70
Tableau 29 Description textuelle du cas « Traiter demande d’emploi » .............................................. 71
Tableau 30 Table "candidat " ................................................................................................................ 79
Tableau 31 Table pièce jointe candidat................................................................................................. 79
Tableau 32 Table type pièce jointe ....................................................................................................... 79
Tableau 33 Table demande stage.......................................................................................................... 80
Tableau 34 Table Historique stage ........................................................................................................ 80
Tableau 35 Table Demande_emploi...................................................................................................... 80
Tableau 36 Table Historique_emploi .................................................................................................... 81
Tableau 37 Table Offre_emploi ............................................................................................................. 81
Tableau 38 Table poste_pouvoir ........................................................................................................... 82
Tableau 39 Table poste ......................................................................................................................... 82
Tableau 40 Table département ............................................................................................................. 82
Tableau 41 résultats du test .................................................................................................................. 86
Tableau 43 BACKLOG DU SPRINT 3 ....................................................................................................... 90
x
Tableau 44 Description textuelle du cas « Établir un état d’absence » ................................................ 95
Tableau 45 Description textuelle du cas « Traiter la demande de congé » .......................................... 96
Tableau 46 Table Historique_conge .................................................................................................... 105
Tableau 47 Table demande_conge ..................................................................................................... 105
Tableau 48 Table pièce_jointe ............................................................................................................ 106
Tableau 49 Table Absence ................................................................................................................... 106
Tableau 50 Table demande_absence .................................................................................................. 106
Tableau 51 Table Historique_absence ................................................................................................ 107
Tableau 52 Table demande_formation ............................................................................................... 107
Tableau 53 Table formation ................................................................................................................ 108
Tableau 54 Table Historique_formation ............................................................................................. 108
Tableau 55 résultats du test ................................................................................................................ 112
xi
Liste des acronymes
API : Application Programming Interface. En français « Interface de Programmation
Applicative »
BPM : Business Process Management, que l'on peut traduire en français « gestion des
processus métiers »
RH : Ressources Humaines
xii
Introduction générale
Introduction générale
Nous vivons l’époque de la transformation digitale des entreprises. Ces transitions numériques
sont vitales pour garder la compétitivité, l’efficacité et la pérennité de l’entreprise.
Dans ce contexte et dans le cadre de notre projet de fin d’études nous allons développer un
système de gestion des ressources humaines qui s’intégrera avec d’autre modules dans un ERP
adapté nativement au contexte des entreprises tunisiennes. Notre solution vise à gérer
et dématérialiser les processus métier de la GRH tel que les employés, les contrats, le
recrutement, les demandes établies dans l’entreprise.
Le présent rapport décrit les différentes étapes de la réalisation de cette solution durant la
période de stage. De ce fait, ce rapport comporte cinq chapitres :
Le premier chapitre « Étude de projet » sera réserver pour le contexte général du projet à
travers la présentation de l’organisme d’accueil ainsi que l’étude de l’existant et la
méthodologie du travail adoptée.
application dans son contexte, ensuite nous découpons notre projet en fonctionnalités, puis la
planification des sprints à réaliser et finalement l’architecture utilisée.
Le troisième chapitre « Sprint 1- les mission principales de GRH » présente les étapes de la
réalisation du premier sprint de ce projet.
Le dernier chapitre « Sprint 3- les flux de travaux RH » sera consacré pour le développement
du troisième sprint toujours en respectant les principes fondamentaux de Scrum.
2
Chapitre 1
Étude de projet
Chapitre 1 Étude de projet
Introduction
L’étude du projet est une étape primordiale pour la connaissance de l’environnement dans
laquelle s’est déroulé le stage de fin d’études ainsi que la présentation du projet. Ce chapitre
sera consacré tout d’abord à la présentation de l’entreprise BNS Engineering au sein de laquelle
j’ai effectué mon projet.
Et par la suite une présentation de contexte général du projet que m’a confié BNS Engineering
comme projet de fin d’études. Cette présentation inclura une étude de l’existant, la
problématique de projet, et la solution que j’ai proposé, aussi bien le choix de la méthodologie
de développement que je vais suivre pour la réalisation de ce projet.
BNS ne cesse de s’affirmer sur les marchés tunisiens et africains comme un acteur de référence
dans le monde des solutions à haute valeur ajoutée (ERP Métiers, e-Finance, e-Government),
des progiciels du marché financier, des prestations de conception et de développement et de
conseil en organisation et ingénierie des systèmes d’Information.
4
Chapitre 1 Étude de projet
2. Présentation du projet
La transition numérique pour les employés de l’entreprise en mettant à leur disposition les outils
et les moyens nécessaires à cette transformation digitale est devenue nécessaire pour pouvoir
accompagner le développement technologique dans le monde. C’est dans ce contexte s'inscrit
notre projet dans le cadre de la réalisation d’un stage de fin d’études et dont le titre est «
Modélisation et Dématérialisation des Processus Métier (BPM) de GRH_ADMINISTRATIVE
» qui vise à développer un module de gestion de la ressource humaine administrative. Il vient à
conclure ma formation de Mastère professionnel en Modélisation, Bases de Données et
Intégration des Systèmes à l’Ecole Supérieure d’Economie Numérique et a été réaliser au sein
de la société BNS ENGINEERING.
5
Chapitre 1 Étude de projet
6
Chapitre 1 Étude de projet
7
Chapitre 1 Étude de projet
Dans le but d’atténuer les problèmes cités dans la section précédente la solution consiste à
développer un module de gestion administrative des ressources humaines, spécifique aux
besoins des entreprises tunisiennes, bâti sur un socle technologique ouvert facilitant la
dématérialisation totale de l’ensemble des processus de ce domaine. Ce module fera partie des
modules d'un ERP en cours de réalisation au sein de la société BNS ENGINEERING. Le projet
s’est déroulé en deux étapes :
De ce fait, notre solution doit être bâtie sur une architecture qui offre un PGI pouvant généraliser
et industrialiser les intégrations, les maintenances et les évolutions du périmètre fonctionnel des
entreprises. Ce module du PGI sera capable de gérer toutes les fonctions standards de gestion
administrative des ressources humaines d’une entreprise tunisienne, et elle assurera plusieurs
interfaces accessibles par les utilisateurs, chacun suivant son profil et ses droits d’accès.
La dématérialisation des processus est l’acte de transformer un flux de documents papier, ainsi
que les traitements qui lui sont appliqués, en flux numériques et traitements automatisés.
8
Chapitre 1 Étude de projet
Comme exemples les plus connus, nous pouvons citer la dématérialisation des factures, la
dématérialisation des procédures administratives. La dématérialisation des processus présente
plusieurs avantages, notamment la réduction des coûts et des temps de traitement, la
sécurisation des flux, l’homogénéisation des processus documentaires et de faire, une meilleure
réponse aux contraintes légales et réglementaires de plus en plus fortes. [3]
▪ Processus Métier
Un processus métier est un ensemble d'activités et des tâches liées qui, une fois achevées,
permettra d'atteindre un objectif organisationnel et qui trouvera leur fin dans la prestation d'un
service ou d'un produit à un client. Le processus doit comprendre des entrées clairement définies
et une seule sortie. Ces entrées sont constituées de tous les facteurs qui contribuent (directement
ou indirectement) à la valeur ajoutée d'un service ou d'un produit. Ces facteurs peuvent être
classés dans les processus de gestion, les processus opérationnels et les processus opérationnels
de soutien. [4]
▪ Workflow
Workflow, littéralement "flux de travaux", est la représentation sous forme de flux des
opérations à réaliser pour accomplir l'ensemble des tâches ou activités regroupées en un même
processus métier. Le workflow permet la modélisation des processus métier dans le cadre d'une
démarche plus globale BPM Business Process Management. [5]
▪ BPMN 2.0
Business Process Model and Notation est une méthode de modélisation de processus d'affaires
pour décrire les flux d'activités et les procédures d'une organisation sous forme d'une
représentation graphique standardisée.
La notation consiste en un ensemble de symboles graphiques représentant des actions, des flux
ou des comportements dans un processus.
9
Chapitre 1 Étude de projet
▪ Les réunions quotidiennes : chaque jour, toute l’équipe se réunit, pendant 15 minutes
environ pour répondre aux 3 questions suivantes : qu’ai-je fait hier ? Que vais-je faire
aujourd’hui ? Y a-t-il un obstacle gênant aujourd’hui ?
▪ Les réunions de planifications : toute l’équipe se réunit pour décider des fonctionnalités
qui vont composer le sprint suivant et mettre à jour la liste générale.
▪ Les réunions de revue de travail : lors de cette réunion, chacun présente ce qu’il a fait
pendant la durée du sprint. Il s’agit d’une réunion informelle de 2 heures environ à
laquelle participe toute l’équipe.
▪ Les réunions de rétrospectives : à chaque fin de sprint, l’équipe fait le point sur ce qui a
bien fonctionné et sur ce qui a moins bien fonctionné. Lors de cette réunion d’une durée
10
Chapitre 1 Étude de projet
de 15 à 30 minutes où chacun est invité et parle en son nom, un vote de confiance est
organisé pour décider des améliorations à apporter.
Méthode itérative et incrémentielle : cela permet d’éviter « l’effet tunnel », c’est-à-dire le fait
de ne voir le résultat qu’à la livraison finale et rien ou presque rien pendant toute la phase de
développement, si fréquent dans les développements avec le cycle en V.
Méthode participative : chaque membre de l’équipe est invité à s’exprimer et il peut participer
à toutes les décisions prises sur le projet. Il est donc plus impliqué et plus motivé.
Product owner : Dans la majorité des projets, le responsable produit (product owner) est le
responsable de l’équipe projet client. C’est lui qui va définir et prioriser la liste des
fonctionnalités du produit et choisir la date et le contenu de chaque sprint sur la base des valeurs
(charges) qui lui sont communiquées par l’équipe.
11
Chapitre 1 Étude de projet
ScrumMaster : Véritable facilitateur sur le projet, il veille à ce que chacun puisse travailler au
maximum de ses capacités en éliminant les obstacles et en protégeant l’équipe des perturbations
extérieures. Il porte également une attention particulière au respect des différentes phases de
SCRUM.
Equipe : d’une taille allant de 4 à 10 personnes en général, l’équipe regroupe tous les rôles
habituellement nécessaires à un projet, à savoir l’architecte, le concepteur, le développeur, le
testeur, etc. L’équipe s’organise elle-même et elle reste inchangée pendant toute la durée d’un
sprint. [8]
Product Backlog : Appelé aussi carnet du produit, est une liste ordonnée de tout ce qui pourrait
être requis dans le produit. Il est destiné à recueillir tous les besoins du client que l’équipe projet
doit réaliser. Tous les éléments inclus dans le backlog scrum sont classés par priorité indiquant
l’ordre de leur réalisation. C'est l'artefact le plus important de Scrum. Les principaux critères
de classification des fonctionnalités à considérer sont :
▪ La priorité : représente le degré d’importance et d’indisponibilité d’une
fonctionnalité d’un cas d’utilisation par rapport au nombre total de cas d’utilisation.
▪ L’effort : est l’estimation initiale de la quantité de travail nécessaire pour la réalisation
d’un cas d’utilisation. Il est généralement calculé en nombre de jours/homme.
Planification du sprint : La planification du sprint est l’ensemble des items qui se déroule à
chaque début de sprint. L’objectif de la planification est de mettre l’équipe en situation de
planifier le sprint en se préparant le planning de travail et en se mettant le choix de la durée de
chaque sprint selon la complexité du projet et la taille de l'équipe.
12
Chapitre 1 Étude de projet
donc des diagrammes pour représenter le logiciel à développer : son fonctionnement, sa mise
en route, les actions susceptibles d’être effectuées par le logiciel, etc. [9]
Comme logiciel de
conception, nous avons choisi PowerAMC.
▪ Alfresco
Alfresco est une solution d’ECM, elle permet aux entreprises de créer leur outil de
dématérialisation, et elle propose l’ensemble des fonctionnalités attendues du domaine de la
gestion documentaire : métadonnées, types de documents, workflow documentaire et avancé
[14]
(avec un logiciel compagnon Activiti). Nous utiliserons pour notre projet Alfresco-
community-installer dans sa version 64bits.
13
Chapitre 1 Étude de projet
▪ Bower
Bower c’est donc un outil de management de librairies pour le web. Il s’installe avec la
commande : npm install -g bower. [15]
▪ Standard CMIS
Le standard CMIS permet l'interconnexion entre une GED Open Source et un CMS. Il s’agit
d’une norme émergente, pour homogénéiser les accès à une gestion de contenu, notamment
documentaire. Cette norme consiste à proposer un accès technique homogène aux outils de
gestion des contenus qui propose cette interface. [16]
▪ Oracle Database
C’est est un système de gestion de base de données relationnelle (SGBDR) qui depuis
l'introduction du support du modèle objet dans sa version 8 peut être aussi qualifié de système
[17]
de gestion de base de données relationnel-objet (SGBDRO). Nous utiliserons pour notre
projet Oracle XE Edition dans sa version 12g.
▪ Apache MAVEN
C’est est un outil pour la gestion et l'automatisation de production des projets logiciels Java en
général et Java EE en particulier. Maven utilise un paradigme connu sous le nom de Project
Object Model (POM) afin de décrire un projet logiciel, ses dépendances avec des modules
externes et l'ordre à suivre pour sa production. [18] Nous utiliserons pour notre projet MAVEN
dans sa version 3.3.9.
▪ PowerAMC
C’est est un logiciel de conception créé par la société SAP, qui permet de modéliser les
traitements informatiques et leurs bases de données associées. [19] Nous utiliserons pour notre
projet PowerAMC dans sa version 12.
3.3.2. Choix technique
Les Framework et langages de programmation qui seront utilisés sont :
Spring : Le Framework Spring est une boite à outils très riche permettant de structurer,
d'améliorer et de simplifier l'écriture d'application JEE et qui prend en charge l'infrastructure
complète pour le développement d'applications Java. [20]
SpringBoot : est un projet ou un micro framework qui a notamment pour but de faciliter la
configuration d’un projet Spring et de réduire le temps alloué au démarrage d’un projet, surtout
que le Spring est malheureusement connu pour sa configuration qui peut s’avérer complexe et
fastidieuse. [21]
Spring security : est un Framework qui met l'accent sur la fourniture de l'authentification et
l'autorisation d'applications Java. Comme tous les projets de printemps, la puissance réelle de
14
Chapitre 1 Étude de projet
la sécurité Spring se trouve dans la facilité avec laquelle il peut être étendu pour répondre aux
besoins personnalisés. [22]
AngularJS : AngularJS est un framework JavaScript qui étend le HTML pour le rendre
dynamique, et permet de développer ses propres balises et attributs HTML. C’est un framework
qui se veut extensible et qui pousse vers un développement structuré, en couches, le but n’étant
pas d’ajouter de simples animations au DOM, mais bien d’apporter un aspect applicatif au front-
office. [23]
Hibernate : est un framework permettant de résoudre le problème d'adaptation entre le
paradigme objet et les SGBD. [24] Nous utiliserons pour notre projet Hibernate dans sa version
4.
Bootstrap : Bootstrap est un framework CSS, mais pas seulement, puisqu'il embarque
également des composants HTML et JavaScript. Il comporte un système de grille simple et
efficace pour mettre en ordre l'aspect visuel d'une page web. [25]
HTML, CSS, JavaScript, JQuery et Ajax : Ce sont des langages utiles pour la création d'une
page web.
Conclusion
Au cours de ce chapitre, nous avons pu présenter l'organisme qui nous a accueilli durant la
période de notre stage de fin d'études et de mettre le projet dans son contexte. En second lieu,
nous avons évoqué l'étude de l'existant, après nous avons passé à la solution qu’on avait
proposée ainsi que l'état de l'art. Dans ce qui suit, nous avons étudié le processus de
développement que nous allons suivre tout au long de stage ainsi que l’environnement de
travail.
15
Chapitre 2
Planification et architecture
Chapitre 2 planification et architecture
Introduction
Après avoir introduit l’étude de notre projet, nous entreprendrons ce chapitre avec la
planification générale du projet. Appelée aussi Sprint 0, au cours de laquelle nous allons
identifier les profiles des utilisateurs et déterminer les différentes fonctionnalités du projet pour
pouvoir produire un backlog du produit qui servira ultérieurement à la réussite des sprints du
projet. Enfin, nous allons présenter l’architecture utilisée pour mener à bien ce projet.
Dans ce projet, nous avons identifié deux types d’acteurs qui interagissent avec cette solution :
L’utilisateur : C’est l’acteur principale de notre progiciel, auquel l’administrateur peut affecter
plusieurs profils et selon ce dernier, il peut gérer ses cas d’utilisation.
Dans le tableau 1 nous allons présenter la liste des acteurs ainsi que leurs profils et leurs
fonctionnalités
17
Chapitre 2 planification et architecture
DARH La consultation et le
traitement des demandes des
employés.
Directeur RH La consultation et le
traitement des demandes des
employés.
18
Chapitre 2 planification et architecture
19
Chapitre 2 planification et architecture
20
Chapitre 2 planification et architecture
1.3.1. Ergonomie
Le progiciel doit fournir une interface ergonomique et conviviale (une interface facile à
manipuler, des boutons ainsi que des libellés significatifs, un design agréable etc…) afin de
garantir l'exploitation facile de ses services.
1.3.2. Extensibilité
L’extensibilité est une spécification très importante pour le progiciel. L’architecture doit
supporter les extensions de nouvelles fonctionnalités sans pour autant la modifier énormément.
Le code devra être ferme à la modification et ouvert à l’extension.
1.3.3. Fiabilité
Le progiciel devra être opérationnel d'une façon continue et robuste. Les données transmises
sont très critiques, et la perte de l'information ne peut pas être tolérée.
1.3.4. Modularité
Le progiciel doit être bien structurée en module pour assurer une meilleure lisibilité, une
diminution du risque d'erreur et une possibilité de tests sélectifs.
1.3.5. Sécurité
Le progiciel doit fournir un espace sécurisé pour ses utilisateurs. Ainsi l’attribution des droits
d’accès appropriés aux différents acteurs du système, et il doit garantir la sécurité des données.
Nous présentons dans La figure 5 notre diagramme du cas d’utilisation global décrivant les
grandes fonctionnalités du module RH du progiciel de point de vue des acteurs, mais ce
diagramme général ne montre pas de façon détaillée le dialogue entre les acteurs et
les différents profils de chaque utilisateur. Dans les chapitres qui suivent, nous détaillerons,
avec raffinement itératif, les différents cas d’utilisation et nous mettrons les différents acteurs
par profil.
Nous allons dans figure 4 de présenter le diagramme des cas d’utilisation générale.
21
Chapitre 2 planification et architecture
22
Chapitre 2 planification et architecture
23
Chapitre 2 planification et architecture
24
Chapitre 2 planification et architecture
25
Chapitre 2 planification et architecture
Gérer les pièces jointes de En tant que responsable ressource humaine je veux 4 6
pouvoir affecter une pièce jointe à l’employé, ainsi que
l’employé
modifier, supprimer et lister les pièces jointes
Gérer les départements de En tant qu’agent service personnel je veux pouvoir 2 2
ajouter, modifier, supprimer et lister les départements
l’entreprise
Gérer les postes de En tant qu’agent service personnel je veux pouvoir 2 3
ajouter, modifier, supprimer et lister les postes
l’entreprise
Gérer les contrats En tant qu’agent service personnel je veux pouvoir 2 4
affecter un contrat à un employé, ainsi que consulter,
lister, modifier et résilier un contrat
Gérer les avancements En tant que responsable du recrutement je veux pouvoir 2 5
affecter l’avancement d’un employé, ainsi que modifier,
supprimer et lister les avancements
Gérer les postes à pourvoir En tant que responsable du recrutement je veux pouvoir 2 12
ajouter, modifier, supprimer, consulter et lister les postes
à pourvoir
Gérer les offres d'emploi En tant que responsable du recrutement je veux pouvoir 2 13
ajouter, modifier, supprimer, consulter et lister les offres
d'emploi
Gérer les demandes de stages En tant qu’agent de saisie je veux pouvoir ajouter, 2 16
modifier, supprimer, et lister les demandes de stages
Traiter les congés En tant que responsable RH, DARH, chef hiérarchique, 4 21
chef service personnel, directeur RH, ou directeur je veux
pouvoir consulter le tableau de bord, ainsi que consulter et
traiter la demande de congé
26
Chapitre 2 planification et architecture
Traiter les absences En tant que responsable RH, chef hiérarchique, DARH, 4 24
ou directeur je veux pouvoir consulter le tableau de bord,
ainsi que consulter et traiter la demande d’absence
Traiter les demandes de En tant que responsable RH, DARH ou directeur je veux 3 27
pouvoir consulter le tableau de bord, ainsi que consulter et
formation
traiter les demandes de la formation
27
Chapitre 2 planification et architecture
4. Choix Architectural
Avant d'entamer la conception et la réalisation de tout système informatique, il faut spécifier à
l'avance l'architecture applicative et technique que nous allons suivre tout au long de
développement. Notre choix architectural s'est porté sur les besoins exprimés précédant afin de
réaliser notre ERP autour d'une architecture évolutive, urbanisée et qui permet de supporter les
objectifs stratégiques et les processus métiers de l’entreprise.
28
Chapitre 2 planification et architecture
On se fondait sur l'architecture trois-tiers nous allons développer notre système qui doit être
divisé en trois couches différentes [32] :
▪ Couche présentation : Elle correspond à la partie de l’application visible et interactive
avec les utilisateurs. Elle relaie les requêtes de l'utilisateur à destination de la couche
métier, et en retour lui présente les informations renvoyées par les traitements de cette
couche.
▪ Couche applicative ou Couche métier : Elle correspond à la partie fonctionnelle de
l’application, celle qui implémente la « logique », et qui décrit les opérations que
l'application opère sur les données en fonction des requêtes des utilisateurs, effectuées
au travers de la couche présentation.
▪ Couche donnée : Elle consiste en la partie gérant l'accès aux gisements de données du
système. Ces données peuvent être propres au système, ou gérées par un autre système.
Conclusion
Dans ce chapitre, nous avons commencé par énoncer les différents besoins spécifiés dans le
cahier des charges qui nous a été communiqué avec la société BNS ENGINEERING. Pour
mieux cerner le travail demandé et le résultat attendu, nous avons eu recours à des réunions
avec les différents employés de l'entreprise ce qui nous aider à l'élaboration du carnet du produit
(backlog product) et à la maitrise des différents processus métier.
29
Chapitre 3
Introduction
Au cours de ce chapitre, nous allons déclencher une nouvelle sprint nommée « Les missions
principales de GRH ». Ce premier sprint se présente comme le plus prioritaire des sprints.
Tout d'abord, et avant de se lancer dans un sprint, il faut identifier le but de ce dernier en terme
métier. De ce fait, nous avons décidé après une réunion avec le propriétaire du produit le but
suivant : « terminer le développement de la partie qui concerne les affaires administratives, la
gestion des employés ainsi que les ressources liées aux employés tels que les contrats, la
position dans l’organigramme et l’avancement de l’employé ».
1. Backlog du sprint
Dans le backlog de ce sprint du tableau 3, nous citons les différentes fonctionnalités (User
stories) en leur attribuant des efforts. Dans ce contexte, le terme effort désigne l'estimation de
temps de travail nécessaire pour développer une fonctionnalité. Cette estimation est présentée
par un nombre de jours qui varie d'un cas d'utilisation à un autre.
31
Chapitre 3 Sprint 1 – les missions principales de GRH
Ajouter employé 3
Modifier employé 1
Gérer les employés Supprimer employé 1
32
Chapitre 3 Sprint 1 – les missions principales de GRH
Nous passons dans ce qui suit au noyau de notre projet : les activités et le cycle de
développement. Dans un sprint, nous devons extraire cinq activités principales qui sont la
capture des besoins, l’analyse, la conception, l’implémentation et le test. Tout au long de ce
sprint, nous respectons ces activités pour construire le plan de notre travail.
33
Chapitre 3 Sprint 1 – les missions principales de GRH
34
Chapitre 3 Sprint 1 – les missions principales de GRH
▪ Cas d’utilisation « Gérer les enfants » et « Gérer les pièces jointes de l’employé »
Nous avons fait raffiné dans les figures 16 et 17 les sous cas d’utilisation « Gérer les enfants »
et « Gérer les pièces jointes de l’employé » du cas d’utilisation « Gérer les employés ».
35
Chapitre 3 Sprint 1 – les missions principales de GRH
36
Chapitre 3 Sprint 1 – les missions principales de GRH
37
Chapitre 3 Sprint 1 – les missions principales de GRH
38
Chapitre 3 Sprint 1 – les missions principales de GRH
39
Chapitre 3 Sprint 1 – les missions principales de GRH
40
Chapitre 3 Sprint 1 – les missions principales de GRH
41
Chapitre 3 Sprint 1 – les missions principales de GRH
42
Chapitre 3 Sprint 1 – les missions principales de GRH
43
Chapitre 3 Sprint 1 – les missions principales de GRH
Acteurs Administrative
44
Chapitre 3 Sprint 1 – les missions principales de GRH
3. Analyse
Le modèle d'analyse doit fournir des spécifications fonctionnelles totales du système que l'on
veut développer sans aucune référence à l'environnement de développement. La phase de
[33]
développement (conception & implémentation) sera conduite à partir de ce modèle. Cette
analyse est présentée à travers les diagrammes de séquence système et les diagrammes de
classes participantes.
45
Chapitre 3 Sprint 1 – les missions principales de GRH
Figure 29 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " LISTER LES UTILISATEURS "
46
Chapitre 3 Sprint 1 – les missions principales de GRH
Figure 31 DIAGRAMME DE SEQUENCE SYSTEME DU CAS "CONSULTER LES DETAILS D'UN EMPLOYE"
47
Chapitre 3 Sprint 1 – les missions principales de GRH
48
Chapitre 3 Sprint 1 – les missions principales de GRH
simplifier les diagrammes, nous ne mettrons au niveau des classes « dialogues » que
l’identifiant et les opérations.
49
Chapitre 3 Sprint 1 – les missions principales de GRH
4. Conception
Après avoir terminé la phase de la capture des besoins et la phase d'analyse, nous entamons
dans cette section la phase de conception. Elle se traduit par les diagrammes de séquence
détaillés et le diagramme de classes du sprint 1.
50
Chapitre 3 Sprint 1 – les missions principales de GRH
51
Chapitre 3 Sprint 1 – les missions principales de GRH
Departement
Poste
1..* 1..* Utilisateur - id : Long
Role Affecter - id : Long
- id : Long - departement : String
- id_role : Long 1..1 - poste : String
- role : String - login : String
- password : String
1..1
- dateCreation : Date
- activation : Boolean contenir contenir
1..* 1..*
1..*
Contrat
Avancement - id : Long
Avoir
- id : Long 1..* - type_contrat : String
- echelon : int 1..* affecter - date_debut : Date
- echelle : String tenir - date_fin : Date
- date_avancement : Date - niveau_qualification : String
1..1 1..1 1..1 - régime_payment : String
- activation : Boolean
Employe
- id : Long
- matricule : String
Piéce_jointe_employe
- nom : String
- id : Long - prenom : String
- label : String 1..* Posséder - num_cin : Long
- url : String
1..1 - date_naissance : Date
- nom : String - lieu : String
- genre : String
- adresse_electronique : String
1..* - num_tel : String
- sit_fam : String
- num_permis : Long
Avoir - note : int
- categorie_diplome : String
appartenir
- rue : String
0..* - ville : String
1..1
- code_postale : int
- date_debut : date 1..1 Avoir
type pièce jointe - nom_conjoint : String
- id : Long - prenom_conjoint : String
- type_pièce : String - cin_conjoint : Long
1..1 - num_cnss_conjoint : Long
- num_cnrps_conjoint : Long 0..*
Gouvernorat - fonction_conjoint : String Enfant
- id : Long - image : Byte
- id : Long
- gouvernorat : String - nom : String
- prenom : String
- date_naissance : Date
- situation_enfant : String
5. Implémentation
Dans cette phase d'implémentation, nous présenterons la génération de la BD plus le
dictionnaire de données et le diagramme de composants, ainsi que les interfaces graphiques des
histoires utilisateurs que nous avons réalisés durant ce sprint.
52
Chapitre 3 Sprint 1 – les missions principales de GRH
Date_naissance Date --
Lieu Varchar(Max) --
Note Int --
Categorle_diplome Varchar(Max) NOT NULL
Rue Varchar(Max) --
Ville Varchar(Max) --
Code_postale Int --
Date_debut Date --
Nom_conjoint Varchar(Max) --
Prenom_conjoint Varchar(Max) --
cin_conjoint Long --
Num_cnss_conjoint Long --
Num_cnrps_conjoint Long --
fonction_conjoint Varchar(Max) --
Image Byte --
53
Chapitre 3 Sprint 1 – les missions principales de GRH
Niveau_qualification Varchar(Max) --
54
Chapitre 3 Sprint 1 – les missions principales de GRH
Date_avancement Date --
Prenon Varchar(Max) --
Date_naissance Date --
Situation_enfant Varchar(Max) --
55
Chapitre 3 Sprint 1 – les missions principales de GRH
Date_creation Date --
Activation Boolean --
Nous notons que « Authority » est une table de jointure c’est-à-dire table intermédiaire entre la
table « utilisateur » et la table « rôle ».
56
Chapitre 3 Sprint 1 – les missions principales de GRH
57
Chapitre 3 Sprint 1 – les missions principales de GRH
58
Chapitre 3 Sprint 1 – les missions principales de GRH
59
Chapitre 3 Sprint 1 – les missions principales de GRH
6. Test
Pour valider ce sprint, nous avons déroulé des tests afin de vérifier le bon fonctionnement des
histoires utilisateurs réalisées durant ce sprint.
60
Chapitre 3 Sprint 1 – les missions principales de GRH
Scénarios
61
Chapitre 3 Sprint 1 – les missions principales de GRH
Conclusion
Le premier sprint réalisé durant ce chapitre nous a permis de toucher de plus près le secteur des
ressources humaines, d'appliquer ce que nous avons appris dans le génie logiciel et de pratiquer
le développement informatique avec des technologies qui occupent une place importante dans
le monde.
62
Chapitre 4
Sprint 2 – Gestion du
recrutement
Chapitre 4 Sprint 2 – gestion du recrutement
Introduction
Ce chapitre est consacré au deuxième sprint, nous suivons le même principe que le sprint
précédent, alors nous commençons par définir le but suivant : « terminer le développement de
la partie qui concerne la gestion des candidats, la gestion des postes à pourvoir, la gestion des
offres et des demandes d'emploi, et la gestion des demandes de stages.
1. Backlog du sprint
Ce Backlog du sprint représente les fonctionnalités du Sprint 2 ainsi que leurs estimations.
Tableau 25 BACKLOG DU SPRINT 2
Ajouter candidats 1
Modifier candidat 1
Supprimer candidat 1
64
Chapitre 4 Sprint 2 – gestion du recrutement
Nous illustrons dans la figure 49 le diagramme du cas d’utilisation du notre deuxième sprint
« Gérer le recrutement ». Ensuite, nous allons montrer le raffinement de chaque cas d’utilisation
dans la prochaine section.
65
Chapitre 4 Sprint 2 – gestion du recrutement
Dans cette section nous allons présenter le diagramme de cas d’utilisation du deuxième Sprint,
le raffinement et la description textuelle de quelques cas d’utilisation.
Figure 51 DIAGRAMME DE CAS D'UTILISATION " Gérer les postes à pourvoir "
66
Chapitre 4 Sprint 2 – gestion du recrutement
Figure 52 DIAGRAMME DE CAS D'UTILISATION " Gérer les offres d'emploi "
Figure 53 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes de stage "
Le sous cas d’utilisation « Traiter la demande de stage » va être représenter dans la section
suivante par un diagramme de bpmn 2.0.
67
Chapitre 4 Sprint 2 – gestion du recrutement
Figure 54 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes de stages "
Figure 55 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes d'emploi "
Figure 56 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes de stages "
68
Chapitre 4 Sprint 2 – gestion du recrutement
69
Chapitre 4 Sprint 2 – gestion du recrutement
70
Chapitre 4 Sprint 2 – gestion du recrutement
3. Analyse
Dans cette partie, nous allons illustrer les diagrammes UML qui nous ont aidés au
développement de ce sprint à commencer par les diagrammes des séquences systèmes.
71
Chapitre 4 Sprint 2 – gestion du recrutement
Figure 57 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Ajouter demande de stage "
Figure 58 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Consulter tableau de bord "
72
Chapitre 4 Sprint 2 – gestion du recrutement
Figure 59 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Traiter demande d'emploi "
73
Chapitre 4 Sprint 2 – gestion du recrutement
4. Conception
A ce niveau, nous allons présenter les diagrammes de bpmn, les diagrammes de séquence
détaillés et le diagramme des classes du Sprint 2.
74
Chapitre 4 Sprint 2 – gestion du recrutement
75
Chapitre 4 Sprint 2 – gestion du recrutement
76
Chapitre 4 Sprint 2 – gestion du recrutement
Figure 64 DIAGRAMME DE SEQUENCE OBJET DU CAS " Traiter demande d’emploi "
77
Chapitre 4 Sprint 2 – gestion du recrutement
avoir
0..*
Piéce_jointe_candidat
- id : Long HistoriqueStage
- label : String - id : Long
1..* - url : String - dateDecision : Date
- nom : String - decideur : String
- type_piece : int - decision : String
- signataire : String
Posséder - motif : String
1..*
candidat posséder
- id : Long
1..1 - cin : String 1..1
- nom : String
- prenom : String DemandeStage
- genre : String - id : Long
- date_naissance : Date 1..1 avoir - date_demande : Date
- adresse_electronique : String 1..* - date_debut : Date
avoir - num_tel : Long - date_fin : Date
- adresse : String - Periode : String
1..1 - etat_civil : String - Etablissement : String
- etat : String
1..*
DemandeEmploi
- id : Long offre_emploi
- date_demande : Date - id : Long
- description : String - description_poste : String
- dateDecision : Date 1..* contenir 1..1 - date_limite : Date
- decideur : String - date_debut : Date Poste à pourvoir
- decision : String - duree_contrat : String
1..* disposer - id : Long
- singnataire : String - diplome : String
1..1 - description_poste : String
- motif : String - experience_prof : String
- nationalite : String
- ageLimite : int
1..1 1..* 1..*
posséder contenir
contenir
1..*
HistoriqueEmploi
- id : Long 1..1 1..1
- dateDecision : Date
- decideur : String Poste Departement
- decision : String - id : Long - id : Long
- singnataire : String - poste : String - departement : String
- motif : String
5. Implémentation
Dans cette partie du chapitre, nous allons présenter le dictionnaire des données, le diagramme
de composant ainsi que les interfaces du deuxième Sprint.
78
Chapitre 4 Sprint 2 – gestion du recrutement
Prenom Varchar(Max) --
Genre Varchar(Max) --
Date_de_naissance Date --
Num_tel Long --
Adresse Varchar(Max) --
Etat_civil Varchar(Max) --
Nom Varchar(Max) --
79
Chapitre 4 Sprint 2 – gestion du recrutement
Periode Varchar(Max) --
Etat Varchar(Max) --
Motif Varchar(Max) --
Description Varchar(Max) --
80
Chapitre 4 Sprint 2 – gestion du recrutement
Motif Varchar(Max) --
Date_Limite Varchar(Max) --
Duree_contrat Double --
Diplome Varchar(Max) --
81
Chapitre 4 Sprint 2 – gestion du recrutement
Experince_prof Varchar(Max) --
Nationalite Varchar(Max) --
Age_limit Int --
Droit_civique Varchar(Max) --
Apptitude_physique Varchar(Max) --
82
Chapitre 4 Sprint 2 – gestion du recrutement
Nous présentons dans cette section les différentes interfaces élaborées dans le sprint 2.
83
Chapitre 4 Sprint 2 – gestion du recrutement
84
Chapitre 4 Sprint 2 – gestion du recrutement
6. Test
Comme dans le sprint précédent, nous allons représenter les tests de validation ainsi que les
tests unitaires du Sprint 2.
85
Chapitre 4 Sprint 2 – gestion du recrutement
Scénarios
Comme le sprint président, nous allons procéder à des tests unitaires du deuxième Sprint.
Nous commençons par le code ensuite nous présentons le résultat par l’outil POSTMAN.
86
Chapitre 4 Sprint 2 – gestion du recrutement
87
Chapitre 4 Sprint 2 – gestion du recrutement
Conclusion
Nous arrivons à la fin de développement du deuxième sprint qui concerne la gestion du
recrutement. Suivant le même plan de travail, nous présenterons dans le chapitre qui suit le
dernier sprint de ce projet.
88
Chapitre 5
Introduction
Dans les sprints précédents, nous avons pu mettre en œuvre les fonctionnalités principales de
la GRH ainsi que les fonctionnalités liées au recrutement. Dans ce sprint, nous nous
intéresserons à toutes les autres fonctionnalités incluent les flux de travaux.
Le but de ce sprint était la réalisation des parties qui concerne les absences, la demande du
congé, la demande d'absences et la formation dans l'entreprise. De ce fait et en suivant la même
démarche adoptée pour les Sprints précédents, nous allons détailler les différentes phases de
développement au cours de ce sprint.
1. Backlog du sprint
En partant par le même principe des sprints précédents, nous présentons dans ce tableau le
backlog du sprint 3.
Tableau 42 BACKLOG DU SPRINT 3
Ajouter formation 1
Modifier formation 1
Supprimer formation 1
90
Chapitre 5 Sprint 3 – Les flux de travaux RH
91
Chapitre 5 Sprint 3 – Les flux de travaux RH
92
Chapitre 5 Sprint 3 – Les flux de travaux RH
Figure 78 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes d’absence "
Figure 79 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes de congé "
93
Chapitre 5 Sprint 3 – Les flux de travaux RH
94
Chapitre 5 Sprint 3 – Les flux de travaux RH
Figure 82 DIAGRAMME DE CAS D'UTILISATION " Gérer les demandes de formation "
Figure 83 DIAGRAMME DE CAS D'UTILISATION " Traiter les demandes de formation "
95
Chapitre 5 Sprint 3 – Les flux de travaux RH
4-b- -Le système saisit des données invalides (de types ou formats
invalides)
4-b- -Le système saisit des données invalides (de types ou formats
invalides)
96
Chapitre 5 Sprint 3 – Les flux de travaux RH
3. Analyse
Nous allons traiter à ce niveau les digrammes de séquence systèmes et le diagramme de classe
participante.
Figure 84 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Établir un état d’absence "
97
Chapitre 5 Sprint 3 – Les flux de travaux RH
Figure 85 DIAGRAMME DE SEQUENCE SYSTEME DU CAS " Traiter la demande de congé "
98
Chapitre 5 Sprint 3 – Les flux de travaux RH
4. Conception
Comme le deuxième sprint nous allons présenter dans cette section les diagrammes de BPMN,
les diagrammes de séquence détaillés et le diagramme des classes du Sprint 3.
En suivant la même démarche adoptée au cours du sprint 2, nous présentons dans cette section
tous les digrammes de BPMN 2.0 utilisé dans ce sprint.
Dans La figure 71 nous avons modélisé le diagramme de BPMN 2.0 de la demande de congé.
99
Chapitre 5 Sprint 3 – Les flux de travaux RH
100
Chapitre 5 Sprint 3 – Les flux de travaux RH
Dans La figure 72 nous avons modélisé le diagramme de BPMN 2.0 de la demande d’absence.
101
Chapitre 5 Sprint 3 – Les flux de travaux RH
Dans La figure 73 nous avons modélisé le diagramme de BPMN 2.0 de la demande d’absence.
102
Chapitre 5 Sprint 3 – Les flux de travaux RH
Figure 90 DIAGRAMME DE SEQUENCE OBJET DU CAS " Ajouter demande de congé "
103
Chapitre 5 Sprint 3 – Les flux de travaux RH
5. Implémentation
Dans cette section nous allons présenter le dictionnaire des données, le diagramme de
composant ainsi que les interfaces du troisième Sprint.
104
Chapitre 5 Sprint 3 – Les flux de travaux RH
Motif Varchar(Max) --
Pièce_justificative Varchar(Max) --
Motif Varchar(Max) --
105
Chapitre 5 Sprint 3 – Les flux de travaux RH
Nom Varchar(Max) --
Pièce_justificative Varchar(Max) --
106
Chapitre 5 Sprint 3 – Les flux de travaux RH
Motif Varchar(Max) --
Motif Varchar(Max) --
Motif Varchar(Max) --
107
Chapitre 5 Sprint 3 – Les flux de travaux RH
Formateur Varchar(Max) --
Motif Varchar(Max) --
108
Chapitre 5 Sprint 3 – Les flux de travaux RH
109
Chapitre 5 Sprint 3 – Les flux de travaux RH
110
Chapitre 5 Sprint 3 – Les flux de travaux RH
111
Chapitre 5 Sprint 3 – Les flux de travaux RH
6. Test
Nous présentons dans ce qui suit quelques tests de validation et tests unitaires que nous avons
effectué pour valider ce sprint.
Scénarios
112
Chapitre 5 Sprint 3 – Les flux de travaux RH
113
Chapitre 5 Sprint 3 – Les flux de travaux RH
Conclusion
Avec ce dernier chapitre, nous arrivons à la fin de développements du module « les flux de
travail RH ». De ce fait, nous avons terminé la réalisation de ce sprint.
114
Conclusion et perspectives
Conclusion et Perspectives
Tout au long de notre projet de fin d'études, nous avons pu réaliser une solution de gestion des
flux de ressource humaine intégrant nativement un moteur workflow et assurant les interactions
avec un système GED. Le présent rapport couvre l’étude, la conception et l’implémentation de
notre solution. En appliquant la méthodologie Scrum, nous avons développé notre application
sprint par sprint.
Cette solution permet de gérer les missions principales du RH, de gérer le recrutement et de
gérer les fonctionnalités dans un environnement workflows tel que la demande de congé,
d'absence, et de formation. Aussi, elle permet d'automatiser et de dématérialiser tous les
processus liés à la gestion administrative des ressources humaines, de substituer les documents
et les dossiers en format papier par des dossiers électroniques. Ainsi, cette plateforme permet
de migrer les procédures basées sur la circulation de l'information en mode papier vers le mode
électronique afin d'améliorer la productivité, réduire les coûts et gagner du temps. Cette solution
devra aider les utilisateurs et les différents intervenants à collaborer sur des dossiers communs.
Durant la phase de réalisation de notre projet, nous nous sommes familiarisés au Framework
JEE AngularJS-Spring et à l’utilisation des techniques workflow (BPMN 2.0 et Activiti) et
GED, consommant les web services de type REST.
Finalement, notre travail ne s’arrête pas à ce niveau, en effet il sera nécessaire d’enrichir
fonctionnellement la solution à travers l’adjonction de nouveaux modules à l’ERP,
particulièrement liées à la gestion des processus de mobilité des employés ainsi qu’à la gestion
des compétences des ressources humaines.
115
Annexe
Le choix du modèle logique dépend du choix du SGBD. Nous allons utiliser dans ce projet le
modèle relationnel. Pour passer du modèle conceptuel au modèle logique relationnel nous
appliquons les règles de transformation suivantes : [35]
116
Annexe
117
Bibliographie et webographie
Bibliographie et webographie
[1] « BNS ENGINEERING » http://www.bns.tn Consulté le 05/02/2017
[2] http://www.maformationsap.com/sap.html & https://www.sap.com/france/index.html
Consulté le 03/01/2017
[3] http://www.icdc.caissedesdepots.fr/Dematerialisation-des-processus-et-archivage Consulté
le 21/02/2017
[4] http://fr.appian.com/about-bpm/definition-of-a-business-process/ Consulté le 21/02/2017
[5] http://wayofcode.fr/implmentation-de-services-web-rest-avec-le-framework-spring/
Consulté le 05/04/2017
[6] https://fr.wikipedia.org/wiki/Business_process_model_and_notation
&http://bonitasoft.developpez.com/tutoriels/business-process-management/guide-ultime-
bpmn2/ Consulté le 28/02/2017
[7] http://www.agiliste.fr/guide-de-demarrage-scrum/ Consulté le 03/06/2017
[8] https://www.pentalog.fr/notre_demarche/methode-agile-scrum.htm Consulté le 03/06/2017
[9]https://openclassrooms.com/courses/debutez-l-analyse-logicielle-avec-uml/uml-c-est-quoi
Consulté le 04/04/2017
[10] http://www.bpms.info/bpmn-la-norme-du-bpm/ Consulté le 04/04/2017
[11] https://spring.io/tools/sts Consulté le 15/03/2017
[12] http://www.bpms.info/outils-d-architecture-d-entreprise/#Bizagi Consulté le 21/02/2017
[13] https://fr.wikipedia.org/wiki/Activiti_(logiciel) Consulté le 15/03/2017
[14] http://www.open-source-guide.com/Solutions/Applications/Ged-ecm/Alfresco &
http://www.starxpert.fr/PDF/10_cas_usage_alfresco.pdf Consulté le 21/02/2017
[15] http://blog.xebia.fr/2013/06/05/jai-essaye-bower-loutil-de-gestion-des-dependances-
front-end/ Consulté le 20/03/2017
[16] http://www.pulsar-informatique.com/services/ged-open-source/modalites-d-acces-d-une-
ged/interoperabilite-et-ged/standard-cmis Consulté le 15/03/2017
[17] https://fr.wikipedia.org/wiki/Oracle_Database Consulté le 16/03/2017
[18] https://fr.wikipedia.org/wiki/Apache_Maven Consulté le 16/03/2017
[19] https://fr.wikipedia.org/wiki/PowerAMC Consulté le 16/03/2017
[20] http://docs.spring.io/spring/docs/4.3.3.RELEASE/spring-framework-
reference/html/overview.html & http://jean-luc.massat.perso.luminy.univ-amu.fr/ens/jee/tp-
spring.html Consulté le 03/16/2017
[21] http://www.groupeafg.com/spring-boot-kesako/ Consulté le 26/03/2017
[22] https://projects.spring.io/spring-security/ Consulté le 26/03/2017
118
Bibliographie et webographie
[27]
https://www.ibm.com/support/knowledgecenter/fr/SS8PJ7_9.1.2/com.ibm.xtools.modeler.doc
/topics/cucd.html Consulté le 15/04/2017
[28] http://www.usabilis.com/ressources/prototypage-maquettage/ Consulté le 15/04/2017
[29] http://wayofcode.fr/implmentation-de-services-web-rest-avec-le-framework-spring/
Consulté le 05/04/2017
[30] http://www.figer.com/publications/REST.htm#.WOk0sdI1_IU Consulté le 05/04/2017
[31]
http://www.prideparrot.com/blog/archive/2012/3/creating_a_rest_service_using_asp_net_web
_api Consulté le 05/04/2017
[32] https://wikimonde.com/article/Architecture_trois_tiers Consulté le 05/04/2017
[33] http://www-igm.univ-mlv.fr/~dr/COURS/analyse/node6.html Consulté le 16/04/2017
[34] http://laurent-audibert.developpez.com/Cours-UML/?page=mise-en-oeuvre-uml Consulté
le 16/04/2017
[35] http://docplayer.fr/13702624-Chapitre-3-le-modele-relationnel.html Consulté le
16/05/2017
119
الملخص
يندرج هذا التقرير كجزء من مشروع التخرج المنجز في شركة األنظمة المعلوماتية بهدف الحصول على الماجستير المهني
هذا المشروع يعنى بتصميم وبرمجة برنامج تطبيق ويب بهدف التصرف.الملتميديا وقواعد البيانات ودمج المنظومات
.البشرية يسمح هذا التطبيق بإدارة التنظيم اإلداري للموارد.وإدارة الموارد البشرية
Résumé
Le présent rapport été élaboré dans le cadre du projet de fin d’étude au sein de la société BNS
ENGINEERING, afin d’obtenir le diplôme de Mastère professionnel en Modélisation, Bases
de Données et Intégration des Systèmes. Notre projet permet de concevoir et mettre en œuvre
un système de gestion des flux des ressources humaines. Cette solution permet la gestion
administrative des ressources humaines.
Abstract
This report was prepared as the final of studies project to obtain a Master's Degree in Modeling,
Databases and Systems Integration. Our graduation project aims to design and implement an
application that dematerializes the business processes (BPM) of Human Resources
Administration, handle requests and manage the workflow. This solution will allow Treasury
configuration and setting, manage the movements and manage the bank reconciliations.