SlideShare a Scribd company logo
1 of 76
Download to read offline
République Tunisienne
Ministère de l’Enseignement Supérieur
et de la Recherche Scientifique
Université de Tunis El Manar
Institut Supérieur d’Informatique d’El Manar
MEMOIRE DE MASTER
Présenté en vue de l’obtention du
Diplôme National de Master Professionnel en Sciences et Technologies
Mention : Informatique
Spécialité : Sécurité des Systèmes Informatiques Communicants et Embarqués
Par :
Mohamed Amine MAHMOUDI
Conception et Réalisation d’une Application
Sécurisée de Gestion des Ressources Humaines
Encadrant professionnel :
Encadrant académique :
Madame Sawssen MAHMOUDI
Madame Sourour MHENNI
Ingénieur
Maître Assistante
Réalisé au sein de SSCF Ariana
Année Universitaire 2018 - 2019
République Tunisienne
Ministère de l’Enseignement Supérieur
et de la Recherche Scientifique
Université de Tunis El Manar
Institut Supérieur d’Informatique d’El Manar
Rapport de Projet de Fin d’Études
Présenté en vue de l’obtention du
Diplôme National de Master Professionnel en Sciences et Technologies
Mention : Informatique
Spécialité : Sécurité des Systèmes Informatiques Communicants et Embarqués
Par
Mohamed Amine MAHMOUDI
Conception et Réalisation d’une Application
Sécurisée de Gestion des Ressources Humaines
Encadrant professionnel :
Encadrant académique :
Madame Sawssen MAHMOUDI
Madame Sourour MHENNI
Ingénieur
Maître Assistante
Réalisé au sein de SSCF Ariana
Année Universitaire 2018 - 2019
J’autorise l’étudiant à faire le dépôt de son rapport de stage en vue d’une soutenance.
Encadrant professionnel, Madame Sawssen MAHMOUDI
Signature et cachet
J’autorise l’étudiant à faire le dépôt de son rapport de stage en vue d’une soutenance.
Encadrant académique, Madame Sourour MHENNI
Signature
Dédicaces
Je dédie ce projet à :
Madame Sawssen MAHMOUDI, Madame Sourour MHENNI pour m’avoir
encadré et fait de leurs mieux afin de m’aider.
Mes chers parents, que nulle dédicace ne puisse exprimer mes sincères sentiments, Pour
leurs patience illimitée, leur encouragement contenu, leur aide, en témoignage de Mon
profond amour et respect pour leurs grands sacrifices.
Mes chers grands parents, pour me assistant.
Mes chers frères pour leur grand amour et leur soutien qu’ils trouvent ici l’expression de ma
haute gratitude.
Mes chers amis qui sans leur encouragement ce travail n’aura jamais vu le jour.
Et à toute ma famille et à tous ceux que j’aime.
Mohamed Amine MAHMOUDI
ii
Remerciements
Au terme de ce projet fin d’études je tien a exprimer mes respects mais
connaissances et mes sincère remerciement au personnels du SSCF Ariana, le
directrice de la société Mme. MAHMOUDI Sawssen, qui ont contribués à
l’élaboration de ce rapport modeste. J’exprime mes profonds remerciements les
plus sincères à Mme. MHENNI Sourour, mon encadreur à l’institut, pour son
assistance, ses directives et ses conseils précieux. Ainsi ceux qui mon aidées
durant cette période pour effectuer mon projet dans les meilleurs conditions, et
je tiens également à remercier virement tous ceux qui m’ont fait preuve d’un
grand esprit de collaboration et d’initiative tous les personnels de l’équipe
technique et qui m’apportent une aide précieuse par leurs suggestion et leurs
conseils. Que tous ceux qui ont contribué de près ou de loin à la réalisation de
ce travail trouvent ici l’expression de nos sincères gratitudes. En résumé,
j’adresse mes sincère sentiments de vivre reconnaissance à tous ceux qui ont
contribué du près ou de loin à fin que ce modeste projet voie le jour.
iii
Table des matières
Introduction générale 1
1 Présentation de l’organisme d’accueil et étude de l’existant 2
1.1 Cadre du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.1 Activités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.2 Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.3 Organigramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Description du projet demandé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 État de l’art 7
2.1 Définition de la gestion des ressources humaines . . . . . . . . . . . . . . . . . . . . . 8
2.2 Évaluation des besoins des ressources humaines . . . . . . . . . . . . . . . . . . . . . 8
2.3 Historique des applications des ressources humaines . . . . . . . . . . . . . . . . . . . 9
2.4 Solutions existantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.5 Étude comparative des solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3 Solution proposée 13
3.1 Solution proposée et objectifs globaux du projet . . . . . . . . . . . . . . . . . . . . . 14
3.2 Identification des acteurs du système . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2.1 Administrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2.2 Directeur des ressources humaines . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2.3 Employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3 Identification des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.1 Besoins fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.2 Besoins non fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4 Choix méthodologique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.5 Langage de modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.6 Diagramme de GANTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
iv
3.7 Diagramme des cas d’utilisation général . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.8 Raffinement des cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.8.1 Raffinement du cas d’utilisation « Authentification » . . . . . . . . . . . . . . 20
3.8.2 Raffinement du cas d’utilisation « Gérer les comptes des DRH » . . . . . . . 21
3.8.3 Raffinement du cas d’utilisation « Gérer les comptes d’employés » . . . . . . 23
3.8.4 Raffinement du cas d’utilisation « Gérer de la paie . . . . . . . . . . . . . . . 25
3.8.5 Raffinement du cas d’utilisation « Gérer compte» . . . . . . . . . . . . . . . . 26
4 Conception 29
4.1 l’architecture MVT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2 Langage de conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2.1 Langage UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2.2 Justification du choix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.3 Conception détaillée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.3.1 Acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.3.2 Diagramme des cas d’utilisations . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3.3 Vue statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3.4 Vue dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.5 Diagramme des séquences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5 Réalisation 40
5.1 Environnement du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.1.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.1.2 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.1.3 Langage de programmation et les technologies utilisées . . . . . . . . . . . . . 43
5.2 Travail réalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.2.1 Interfaces d’authentification . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.2.2 Interfaces d’administrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.2.3 Interfaces DRH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.2.4 Interface d’employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Conclusion générale 60
v
Bibliographie 61
Annexes 62
Annexe 1. Bulletin de Paie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
vi
Table des figures
1.1 Logo Entreprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Organigramme de l’entreprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1 Logo Eurécia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Logo Apptivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3 Logo Zenefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.4 Logo OrangeCRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.1 Les Acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 Modèle en cascade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3 Diagramme de GANTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4 Diagramme des cas d’utilisation général du projet . . . . . . . . . . . . . . . . . . . . 19
3.5 Raffinement du cas d’utilisation « Authentification » . . . . . . . . . . . . . . . . . . 20
3.6 Raffinement du cas d’utilisation « Gérer les comptes des DRH » . . . . . . . . . . . . 22
3.7 Raffinement du cas d’utilisation « Gérer les comptes d’employés » . . . . . . . . . . . 23
3.8 Raffinement du cas d’utilisation « Gérer de la paie » . . . . . . . . . . . . . . . . . . 25
3.9 Raffinement du cas d’utilisation « Gérer compte » . . . . . . . . . . . . . . . . . . . 27
4.1 Diagramme de classes du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Diagramme des sequences "Authentification" . . . . . . . . . . . . . . . . . . . . . . 36
4.3 Diagramme des sequences "Gérer de la paie" . . . . . . . . . . . . . . . . . . . . . . 37
4.4 Diagramme des sequences "Demande de congé" . . . . . . . . . . . . . . . . . . . . . 38
5.1 Logo PyCharm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2 Logo Star UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.3 IHM SQLite Database Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.4 Interfaces d’authentification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.5 Interface liste des DRH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.6 Interface journal d’accès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.7 Interface journal d’activités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.8 Interface liste d’employés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
vii
5.9 Interface détails de l’employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.10 Interface supprimer employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.11 Interface de recrutement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.12 Interface de pointage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.13 Interface des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.14 Interface principale de la gestion de la paie . . . . . . . . . . . . . . . . . . . . . . . . 53
5.15 Interface de traitement d’une fiche de paie . . . . . . . . . . . . . . . . . . . . . . . . 54
5.16 Interface principale de la gestion de formation . . . . . . . . . . . . . . . . . . . . . . 55
5.17 Interface détails des formations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.18 Interface des congés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.19 Interface de page d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.20 Interface bulletin de paie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.21 Interface planning des congés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
viii
Liste des tableaux
2.1 l’avantages et les inconvénients des solutions . . . . . . . . . . . . . . . . . . . . . . . 11
3.1 Description du cas d’utilisation « Authentification » . . . . . . . . . . . . . . . . . . 20
3.2 Description du cas d’utilisation « Gérer les comptes des DRH » . . . . . . . . . . . . 22
3.3 Description du cas d’utilisation « Gérer les comptes d’employés » . . . . . . . . . . . 24
3.4 Description du cas d’utilisation « Gérer de la paie » . . . . . . . . . . . . . . . . . . 25
3.5 Description du cas d’utilisation « Gérer compte » . . . . . . . . . . . . . . . . . . . . 27
4.1 Description des classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.1 Caractéristiques matériels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2 Comparaison entre les plateformes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
ix
Liste des abréviations
— API = Application Programming Interfaces
— CRM = Customer Relationship Management
— CRUD = Create-Read-Update-Delete
— CU = Cas d’Utilisation
— DRH = Direction des Ressources Humaines
— DRH = Directeur des Ressources Humaines
— DRY = Don’t Repeat Yourself
— EDI = Environnement de Développement Intégré
— JSON = JavaScript Object Notation
— MVC = Modèle-View-Controlleur
— MVT = Modèle-View-Template
— ORM = Object Relational Mapping
— PME = Petite ou Moyenne Entreprise
— SQL = Structured Query Language
— UML = Unified Modeling Language
x
Introduction générale
Dans un monde très actif et continuellement évolutif, la motivation d’avoir des moyens
performants et efficaces de communication et d’échange d’informations devient de plus en plus
fondamentale. Cette motivation donne naissance à une révolution favorisant le travail à distance
et l’accès aux besoins en temps réduit à l’aide d’internet qui a bouleversé les habitudes de travail
dans de nombreux métiers ainsi le besoin de la sécurité est un défi.
Dans ce cadre, il nous a été proposé de mettre en place un outil logiciel pour la gestion des ressources
humaines afin de déterminer les mesures techniques et d’organisation appropriées pour sécuriser
l’information dans cette application.
Pour une meilleure accessibilité à ces informations, nous avons décidé de développer une application
web capable de gérer et d’exposer toutes ses informations à l’utilisateur autorisé.
Ce rapport détaillera les différentes phases dont nous sommes passées par afin d’aboutir à une
application fiable et satisfaisante. Pour cela le rapport définit le travail qui nous avons effectué, il
est composé par cinq grands chapitres.
D’abord, dans le premier chapitre, nous présentons le cadre général du projet, la présentation
de la société accueillente en introduisant des notions liées au projet demandé. Dans le deuxième
chapitre nous définirons l’état de l’art en exposent les différentes solutions existantes dans le marché.
ensuite dans le troisième chapitre nous proposons une solution adaptée à notre besoin. par ailleurs
le quatrième consiste à définir une modeste conception choisie du projet.le dernier chapitre nous
présentons la phase de réalisation durant le développement de l’application.
1
Chapitre 1
Présentation de l’organisme
d’accueil et étude de l’existant
Plan
1 Cadre du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3 Description du projet demandé . . . . . . . . . . . . . . . . . . . . . . . . 5
4 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant
Introduction
Dans ce chapitre nous allons présenter l’entreprise au sein de laquelle nous avons effectué notre
stage . Nous procéderons ensuite à l’étude du projet demandé avec la proposition de la problématique.
1.1 Cadre du projet
Le projet entre dans le cadre de préparation de stage de fin d’études pour l’obtention du
diplôme national de master profressionnel en sciences et technologies notamment la sécurité des
systèmes informatiques, communicants et embarqués (SSICE) au sien de l’institut supérieur de
l’informatique Université de Tunis El Manar . Ce projet a été effectué au sein de la société SSCF
Ariana durant la période du 4 mois.
1.2 Organisme d’accueil
La réalisation de notre projet est accompagnée par un stage au sein de l’entreprise SSCF
d’une période de quatre mois du 01/02/2019 au 15/06/2019. SSCF est un centre de formation
professionnelle agréé par l’état sous le numéro : 12–739–17 qui s’est imposé depuis 2017 comme
l’un des principaux intervenants sur le marché national de la formation continue. SSCF propose
des formations professionnelles dans les domaines de développement web, mobile, Cloud et systèmes
embarqués. SSCF est spécialisé dans l’encadrement et le développement des solutions Cloud et
internet des objets. L’équipe de SSCF se compose entre autres de 15 ingénieurs qui dispensent des
formations visant à aider à réussir des projets divers.
Figure 1.1: Logo Entreprise
3
Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant
1.2.1 Activités
SSCF propose des suites des formations professionnelles dans les domaines de développement
WEB, MOBILE, CLOUD, et SYSTEMES EMBARQUES.
Ainsi il est spécialisé dans l’encadrement et le développement des solutions CLOUD et INTERNET
DES OBJETS (IOT).
— Formation professionnelle.
— Création des services et produits informatiques et multimédias.
— Recherche scientifique.
— Accompagnement de projet et conseils.
— Sécurité et audit.
1.2.2 Services
Service formation : assure l’intégration des nouveaux embauchés ainsi que la planification.
Service des Ressources Humaines : est chargé :
— D’assurer la gestion des ressources humaines qui vont permettre la réalisation des objectifs
industriels de l’établissement.
— De garantir la formation et la gestion des compétences.
— D’établir la paie et la gestion administrative.
— De maintenir un bon climat social.
Service Maintenance : est chargé :
— De maitriser le taux de disponibilité des moyens et minimiser le coût d’exploitation des
équipements.
— D’assurer la maintenance effective des moyens .
— De participer à la mise en service des nouveaux moyens.
— D’assurer la formation maintenance intégrée des opérateurs.
— De proposer et réaliser des actions d’amélioration.
Service d’achat : assure les achats des divers besoins de toutes les entités de SSCF .
4
Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant
Figure 1.2: Organigramme de l’entreprise
1.2.3 Organigramme
La figure 5.1 présente l’organisation de SSCF est représentée par l’organigramme suivant :
La gestion des ressources humaines comprend des fonctions administratives et opérationnelles.
Dans ce sujet on va étudier les tâches de la direction des ressources humains au sein des sociétés.
1.3 Description du projet demandé
dans ce cadre la société SSCF veut développer un système d’information concernant la gestion
des ressources humaines des sociétés ayant des difficultés :
— Les dossiers des employés sont traités de manière papier et numérique (des fichiers de type
EXCEL) ou uniquement sous format papier.
— Les traitements des slaires ont été traités de manière manuel (erreurs humaines)
— Les problèmes presence des employés surtout les dates entrée/sortie et les autorisations
— Des entretiens sont planifiés avec les candidats qui ont été choisis et qui vont être informés par
un email.
— Ambiguïté des conges
— Perte des ressources et du temps
1.4 Problématique
Les processus des ressources humaines, mentionné ci-dessus, leur permet de traiter la tâches
d’une manière fiable mais non efficace. Des solutions sont utilisées afin de satisfaire les besoins du
5
Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant
personnel, mais ces outils ne sont pas toujours efficaces, très coûteux et limités du fait qu’ils sont
divisés sur plus qu’un service indépendant et contenant une grande partie traitée manuellement non
centralisée et non partagée à l’accès du système informatique. En général, les méthodes classiques
consistent à consulter les ressources.
Il a été nécessaire de trouver une méthode rapide et efficace d’où l’extension de la gestion des
ressources humaines à travers le web.
Conclusion
Dans ce chapitre, nous avons présenté l’entreprise d’accueil SSCF. Nous avons posé la problématiquede
ce projet et nous avons pris une vision plus claire sur le sujet. Par ailleurs, nous avons pu déterminer
les objectifs à atteindre. Lors du chapitre suivant ,nous allons exposer l’état de l’art.
6
Chapitre 2
État de l’art
Plan
1 Définition de la gestion des ressources humaines . . . . . . . . . . . . . . 8
2 Évaluation des besoins des ressources humaines . . . . . . . . . . . . . . 8
3 Historique des applications des ressources humaines . . . . . . . . . . . 9
4 Solutions existantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5 Étude comparative des solutions . . . . . . . . . . . . . . . . . . . . . . . 11
Chapitre 2. État de l’art
Introduction
Après la présentation de la société accueillante, dans ce chapitre nous avons présente l’état
de l’art dont le but de décrire les applications des gestions des ressources humaines et la présentation
des solutions existantes avec une étude comparative entre eux.
2.1 Définition de la gestion des ressources humaines
La GRH est l’ensemble des activités qui visent à développer l’efficacité collective des personnes
qui travaillent pour l’entreprise. L’efficacité étant la mesure dans laquelle les objectifs sont atteints, la
GRH aura pour mission de conduire le développement des RH en vue de la réalisation des objectifs
de l’entreprise. La GRH définit les stratégies et les moyens en RH, les modes de fonctionnement
organisationnels et la logistique de soutien afin de développer les compétences nécessaires pour
atteindre les objectifs de l’entreprise.[1]
Notre mission consiste à développe une application pour la gestion des ressources humaines.
2.2 Évaluation des besoins des ressources humaines
Le domaine des ressources humaines est un domaine très important dans l’administration des
sociétés, à partir des années 1980, la GRH devient une fonction stratégique et participe à la création
de valeur dans l’entreprises.
Les tâches de la direction des ressources humaines sont multiples et liés entre eux, habituellement les
transactions sur papiers et les logiciels bureautiques sont fortement utilisées La gestion des ressources
humaines contient les importants modules suivants :
— La gestion d’employés
— La gestion de pointage
— La gestion de recrutement
— La gestion de la paie
— La gestion de la formation
8
Chapitre 2. État de l’art
2.3 Historique des applications des ressources humaines
L’informatique et les ressources humaines peuvent apparaître comme des domaines étrangers
l’un à l’autre. d’un côté, l’univers froid du traitement automatique des données servi par la rationalité
des mathématiques appliquées ; de l’autre, l’univers des personnes, êtres de désirs aux aspirations plus
ou moins conscientes, changeantes et parfois contradictoires. Le rapprochement de ces deux univers
fascine quelques-uns et suscite chez d’autres une véritable répulsion. Entre ces deux extrêmes, il
y a, heureusement, place pour une attitude raisonnable bâtie sur la connaissance des apports de
l’informatique et sur celle de ses limites. En tant qu’elle est gestion, la GRH ne peut ignorer les
apports d’un traitement automatisé des informations1. Si tous s’accordent à dire que l’informatique
n’est qu’un moyen, il est clair que ce moyen a pris une place de premier plan dans les organisations.
La masse croissante des traitements à effectuer donne à la technique un poids considérable dans les
activités gestionnaires. Afin d’éviter le désordre, l’allongement des délais, l’enlisement dans les tâches
paperassières et, finalement, l’insatisfaction de ses interlocuteurs, il est de première importance pour
les services Ressources Humaines d’organiser le recueil, l’exploitation et la diffusion de l’information
recueillie. Dans l’un des rares ouvrages de la littérature francophone, spécialement consacrés à
l’informatisation de la GRH, Jean-Marie Peretti (1993) évoque la manière dont l’informatique a
changé le travail quotidien au sein des directions du personnel, contribuant à l’évolution d’une
fonction «Personnel» vers une fonction «Ressources Humaines». [2]
2.4 Solutions existantes
Il y a plusieurs solutions dans le marché. nous avons choisi qautre solutions pour faire l’étude
de l’éxistant.
Eurécia : c’est une solution RH privilégié des entreprises, elle est le trait d’union entre
salariés, managers et direction pour les aider à améliorer la performance économique de l’entreprise.[3]
9
Chapitre 2. État de l’art
Figure 2.1: Logo Eurécia
Apptivo : Ce produit freemium est gratuit jusqu’à trois utilisateurs, mais limite le stockage
des données à 500 Mo pour les comptes gratuits (entre 3 à 10 Go pour les comptes payants). La
version gratuite exclut l’assistance téléphonique et l’accès illimité aux applications mobiles. [4]
Figure 2.2: Logo Apptivo
Zenefits : Zenefits est l’un des systèmes RH gratuits les plus populaires sur le marché.
Le système de base est entièrement gratuit et offre des fonctions d’administration des prestations
sociales, d’intégration des salariés et de gestion des départs. Il est agrémenté entre autres d’un portail
self-service pour les employés. Zenefits offre également des modules payants en option.
Figure 2.3: Logo Zenefits
OrangeCRM : Ce logiciel de RH open source propose une version SaaS payante qui inclut
l’hébergement et l’assistance technique, mais aussi une version code source que vous pouvez héberger
sur vos propres serveurs.
10
Chapitre 2. État de l’art
Figure 2.4: Logo OrangeCRM
2.5 Étude comparative des solutions
Le tableau 2.1 ci-dessous illustre une étude comparative entre les solutions :
Tableau 2.1: l’avantages et les inconvénients des solutions
Solution Avantages inconvénients
Eurécia • Interfaces très modernes.
• Outil hautement intuitif.
• Ciblant clairement le marché des
PME et des start-up.
• Trop basique pour les plus
grandes entreprises.
Apptivo • Flexibilité
• Permet de choisir les
fonctionnalités dont vous avez
besoin.
• Créez en quelque sorte votre
propre outil.
• Elle ne sera pas toujours
suffisamment spécialisée pour les
responsables RH et pourra parfois
manquer de fonctionnalités et les
outils
Zenefits • Produit gratuit et complet.
• Fonctionnel et bien pensé.
• Complexité de certaines tâches.
11
Chapitre 2. État de l’art
OrangeCRM • Outil très complet qui offre un
grand nombre de modules.
• IHM intuitive.
• La facilité d’utilisation.
• L’utilisateurs ayant opté pour
l’option d’assistance technique
payante.
• Mauvaise qualité du service
offert.
Conclusion
Dans ce chapitre, nous avons présenté l’entreprise d’accueil SSCF.Nous avons posé la problématique
de ce projet et nous avons pris une vision plus claire sur le sujet. Par ailleurs, nous avons pu
déterminer les objectifs à atteindre en faisant une étude de l’existant. Lors du chapitre suivant ,
nous allons exposer l’état de l’art.
12
Chapitre 3
Solution proposée
Plan
1 Solution proposée et objectifs globaux du projet . . . . . . . . . . . . . 14
2 Identification des acteurs du système . . . . . . . . . . . . . . . . . . . . 14
3 Identification des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4 Choix méthodologique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5 Langage de modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6 Diagramme de GANTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
7 Diagramme des cas d’utilisation général . . . . . . . . . . . . . . . . . . . 18
8 Raffinement des cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . 19
Chapitre 3. Solution proposée
Introduction
Après la présentation de la société accueillante, ainsi l’étude de l’existant du projet, nous
définissons notre solution proposée pour laquelle nous identifions les acteurs, les besoins (fonctionnels
et non fonctionnels), le choix de la méthode de développement, langage de modélisation, un diagramme
de GANTT, illustre le diagramme de cas d’utilisation général, identification des scénarions et finir
avec les raffinements des cas d’utilisation.
3.1 Solution proposée et objectifs globaux du projet
C’est pourquoi ce projet d’une application web nous a été proposé, afin de gérer les besions
de direction des ressources humaines aussi de mettre un accès à l’information aux employés de
l’entreprise, Cette application doit respecter les conditions suivantes :
• Centralisation l’information et les données.
• Sécuriser l’informations
• Diminuer le temps des traitements.
• Partager plus facilement l’information aux employés.
3.2 Identification des acteurs du système
Dans cette section nous allons définir les acteurs de l’application, dans notre application il y
a trois acteurs principaux :
3.2.1 Administrateur
L’administrateur ou bien l’approbateur c’est le premier acteur, son rôle principal de gérer les
actions qui seront effectuées dans l’application, c’est-à-dire un autre utilisateur a supprimé une ligne
dans un tableau donc il a enregistré dans le journal d’activités (base de données) ainsi la création
d’utilisateur (directeur des ressources humaines).
3.2.2 Directeur des ressources humaines
Est l’acteur la plus importante dans ce projet, il a plusieurs modules tels que la gestion
d’employés, congés, formations, présence ...etc.
Son rôle général de gérer les affaires d’employés de la société et la validation des tâches comme le
14
Chapitre 3. Solution proposée
payement.
3.2.3 Employé
Est un acteur le plus intéressant, ce que fait tous les modules sont autour de cet acteur, mais
son rôle c’est de gérer son propre compte avec la consultation des autres informations comme l’état
de leur demandes de congé, les formations, voir et imprimer les fiches de paie ...etc.
Figure 3.1: Les Acteurs
La figure 3.1 montre les liens entre les acteurs du projet
3.3 Identification des besoins
La spécification de besoins constitue la phase de départ de toute application à développer.
Dans cette partie nous allons identifier les besoins de notre application. Nous allons mettre l’accent
sur les besoins fonctionnels ainsi que les besoins non fonctionnels pour éviter le développement d’une
application non satisfaisante.
3.3.1 Besoins fonctionnels
Les besoins fonctionnels sont l’exigence du projet donc notre application doit être répondue
aux besoins fonctionnels suivants :
— La sécurité : dans l’autres applications la sécurité est un besoin non fonctionnel mais l’importance
des données surement très confidentielles qu’elles nécessitent de ce besoin dans notre projet.
L’administrateur du système peut gérer les journaux d’activités et les tentatives des connexions
aux comptes.
— Gérer les comptes d’employés : d’une part le DRH crée les comptes d’employés et d’une
autre part l’employé peut accéder au compte et consulter ces informtions et affecter quelques
modifications dans le besoin.
15
Chapitre 3. Solution proposée
— Gérer Les recrutements : seulement le DRH peut accéder a cette fonctionnalité.
— Gérer le pointage : le DRH valide les présences et l’employés peuvent visualiser leurs états
fiches de présence.
— Gérer le paie : le traitement des fiches de paie.
— Gérer les formations : le DRH peut créer et gérer les formations.
— Gérer les congés : l’employé a demandé les congés et le DRH a validé par refus ou
l’acceptation ainsi l’affichage du planning dans un calendrier.
— La séparation des tâches : les tâches des acteurs doivent être séparées.
3.3.2 Besoins non fonctionnels
Les besoins non fonctionnels décrivent les objectifs liés aux performances du système et
aux contraintes de son environnement. Ses exigences techniques sont souvent exprimées sous forme
d’objectifs spécifiques que doit atteindre le système. Les besoins non fonctionnels de cette application
sont les suivants :
— Assurer une cohérence et une crédibilité aux informations stockées dans la base de données.
— L’ergonomie des interfaces de l’application mobile et web.
— Qualité
— Accessibilité et performance
— Renouvellement
— Fiabilité
3.4 Choix méthodologique
Dans cette phase, nous allons présenter la méthodologie pour la conception et le développement
à fin de la réalisation de notre projet.
Pour la décision d’un modèle adapté à notre projet, nous avons choisi d’utiliser le modèle en
"cascade", ce modèle se caractérise généralement par six phases :
• l’analyses des besoins : font l’objet d’une expression des besoins
• Spécifications : les besoins sont analysés pour établir un cahier des charges.
• Conception : le projet est spécifié et conçu de sorte à pouvoir être réalisé.
• Réalisation : le projet est réalisé sur la base des spécifications.
16
Chapitre 3. Solution proposée
• Test : le projet est testé et vérifié et sa conformité aux besoins.
• Maintenance : le projet est livré, exploré et amélioré.
Figure 3.2: Modèle en cascade
3.5 Langage de modélisation
Nous avons choisi une méthodologie pour cette raison, nous avons choisi l’UML comme un
langage de modélisation, c’est un langage de modélisation très connue et très utile pour la conception
des systèmes d’informations.Cette dernière appréhende le système comme un ensemble d’objets qui
interagissent entre eux , assure une évolution du logiciel et une réutilisation des objets.Il est idéal pour
modéliser le fonctionnement métier,les données,et déployer une architecture logicielle développée
dans un langage objet.
Dans la phase de conception de notre projet, nous utilisons les diagrammes suivants :
• le diagramme de cas d’utilisation
• le diagramme de séquences
• le diagramme des classes
17
Chapitre 3. Solution proposée
3.6 Diagramme de GANTT
Pour bien organiser notre projet il faut planifier les tâches principales dans notre cas les
grandes tâches sont :
— La partie conception
— Le réalisation : partie développement
— La rédaction du rapport
— Les tests et la maintenance
— La préparation de la présentation
Figure 3.3: Diagramme de GANTT
La figure 3.3 montre les tâches à réaliser du mois février jusqu’au mois de juin avec l’estimation des
jours pour chaque tâche.
3.7 Diagramme des cas d’utilisation général
Le diagramme de cas d’utilisation général nous donne un coup d’oeil sur les fonctionnalités
de notre système.
La figure 3.4 ci-dessous montre les trois acteurs principaux du système avec les cas de chacun d’une
manière générale, par ailleurs nous avons vu une hiérarchie de niveau supérieur « Administrateur
» à niveau inférieur « Employé » et l’authentification est le processus le plus important pour accès
l’un des cas.
18
Chapitre 3. Solution proposée
Figure 3.4: Diagramme des cas d’utilisation général du projet
3.8 Raffinement des cas d’utilisation
Dans cette partie nous allons raffiner les cas d’utilisation et décrire le scénario des quelques
cas.
Pour raffiner le diagramme de cas d’utilisation, il existe trois types de relations standards entre les
cas d’utilisation :
— Une relation d’inclusion nommée «include» : le cas d’utilisation de base en incorpore explicitement
un autre, de façon obligatoire.
— Une relation d’extension, nommée «extend» : le cas d’utilisation de base en incorpore implicitement
un autre, de façon optionnelle.
— Une relation de généralisation et spécialisation : les cas d’utilisation descendants héritent de
la description de leur parent commun. Chacun d’entre eux peut néanmoins comprendre des
19
Chapitre 3. Solution proposée
interactions spécifiques supplémentaires.
3.8.1 Raffinement du cas d’utilisation « Authentification »
Le processus de l’authentification est plus important qu’il utilise dans la plupart des projets
pour assuré l’authenticité et la séparation des tâches.
La figure 3.5 présente le raffinement du cas d’utilisation « Authentification » :
Figure 3.5: Raffinement du cas d’utilisation « Authentification »
Le tableau 3.1 présente la description textuelle du cas d’utilisation :
Tableau 3.1: Description du cas d’utilisation « Authentification »
Cas d’utilisation • Authentification
Acteur • Administrateur
• DRH
• Employé
Objectif • Vérifier l’identité d’utilisateur
20
Chapitre 3. Solution proposée
Préconditions • l’utilisateur ayant eu une
autorisation d’accès
Scénario 1. l’utilisateur saisi le nom
d’utilisateur et le mot de passe
2. vérification de l’existante dans la
base de données
3. Afficher page d’accueil
Post-condition • Toutes les tentatives des connexions
seront enregistrées dans les journaux
d’accès
Exception • Si la limite du nombre
d’essai est dépassée le processus
d’authentification sera bloqué
pendant 15 minutes.
• Si les données saisies sont incorrecte,
le système affiche un message d’erreur
et lui demande de répéter le processus
d’authentification.
3.8.2 Raffinement du cas d’utilisation « Gérer les comptes des DRH »
L’acteur principal a eu l’accès pour gérer les comptes des DRH, il peut créer les comptes,
imprimer, modifier l’état de l’utilisateur " validé ou non" et la suppression des comptes.
Pour la suppression d’un compte ou la modification de l’état il faut valider par le mot de passe de
l’administrateur. Le diagramme 3.6 présente ce cas :
21
Chapitre 3. Solution proposée
Figure 3.6: Raffinement du cas d’utilisation « Gérer les comptes des DRH »
Le tableau 3.2 présente la description textuelle du cas d’utilisation :
Tableau 3.2: Description du cas d’utilisation « Gérer les comptes des DRH »
Cas d’utilisation • Gérer les comptes des DRH
Acteur • Administrateur
Objectif • Permet de gérer les comptes des directeurs
des ressources humaines dans laquelle il peut
créer, modifier l’état, supprimer etlister les
comptés
Préconditions • l’administrateur doit être authentifié
Scénario 1. Le système affiche la liste des DRH
2. L’administrateur peut créer un nouveu
compte
3. L’administrateur peut imprimer la liste des
comptes :
4. L’administrateur peut modifier l’état d’un
compte avec la validation par mot de passe.
• L’administrateur peut supprimer un
compte avec la validation par mot de passe.
22
Chapitre 3. Solution proposée
Post-condition • Toutes manipulations de données
(ajout, suppression ou modification) seront
enregistrées dans la base de données
Exception • Lors de suppression d’un compte il faudra
saisir le mot de passe s’il est incorrect un
message d’erreur s’affiche.
• Lors de modification de l’état d’un compte
il faudra saisir le mot de passe s’il est
incorrect un message d’erreur s’affiche.
• Lors de création d’un nouveau compte,
un message d’erreur s’affiche s’il existe des
champs incorrects.
3.8.3 Raffinement du cas d’utilisation « Gérer les comptes d’employés »
Nous avons vu dans le diagramme de cas d’utilisation général que le directeur des ressources
humaines peut gérer les comptes d’employés dont le but de créer, modifier ou supprimer les comptes.
le diagramme 3.7 ci-dessous présente ce cas.
Figure 3.7: Raffinement du cas d’utilisation « Gérer les comptes d’employés »
Le tableau 3.3 présente la description textuelle du cas d’utilisation :
23
Chapitre 3. Solution proposée
Tableau 3.3: Description du cas d’utilisation « Gérer les comptes d’employés »
Cas d’utilisation • Gérer les comptes d’employés
Acteur • DRH
Objectif • Permet de gérer les comptes
d’employés dans laquelle il peut créer,
modifier, supprimer, lister, imprimer
et visualiser les comptés
Préconditions • le DRH doit être authentifié
Scénario 1. Le système affiche la liste
d’employés
2. L’utilisateur peut créer un nouveu
employé
3. L’utilisateur peut choisir un
employé :
• Visualiser les détails
• Modifier un employé
• Supprimer un employé
Post-condition • Toutes manipulations de données
(ajout, suppression ou modification)
seront enregistrées dans la base de
données et les journaux d’activitès.
Exception • Lors de suppression d’un compte
il faudra saisir le mot de passe s’il
est incorrect un message d’erreur
s’affiche.
• Lors de la modification ou bien de
l’ajout, un message d’erreur s’affiche
s’il existe des champs incorrects.
24
Chapitre 3. Solution proposée
3.8.4 Raffinement du cas d’utilisation « Gérer de la paie
La gestion de partie fait partie de notre système, le DRH peut consulter la liste d’employés
et après il choisit un employé dont il opte le mois et l’année de la fiche de paie et il traite cette fiche
avec les rubriques.
La figure 3.8 montre ce cas d’utilisation
Figure 3.8: Raffinement du cas d’utilisation « Gérer de la paie »
Le tableau 3.4 présente la description textuelle du cas d’utilisation :
Tableau 3.4: Description du cas d’utilisation « Gérer de la paie »
Cas d’utilisation • Gérer de la paie d’employés
Acteur • DRH
Objectif • Permet de gérer la gestion de a
paie pour laquelle le directeur des
ressources humaines peut traité les
fiches des paies pour l’employés
Préconditions • le DRH doit être authentifié
25
Chapitre 3. Solution proposée
Scénario 1. Le système affiche la liste
d’employés
2. Le DRH choisit l’employé d’après la
liste
3. Le DRH choisit le mois et l’année
4. Le DRH traité la fiche et ces
rubriques
5. Le DRH valider la fiche
6. Le DRH peut imprimer la fiche de
paie
Post-condition • Toutes manipulations de données
(ajout, suppression ou modification)
seront enregistrées dans la base de
données.
Exception • Lors de la validation d’une fiche de
paie il faudra saisir le mot de passe
s’il est incorrect un message d’erreur
s’affiche.
• Lors de la validation d’une fiche de
paie si le mois et l’année déjà existe
un message d’erreur s’affiche.
3.8.5 Raffinement du cas d’utilisation « Gérer compte»
Pour chaque employé il y a son propre compte dont il peut accéder et il voix ces informations.
Il s’agit la gestion de compte qui pourra gérer les contacts, l’expérience profesionnelle, l’études
univérsitaires, ainsi le changement de le mot de passe et la photo de profile.
le diagramme 3.9 ci-dessous présente ce cas.
26
Chapitre 3. Solution proposée
Figure 3.9: Raffinement du cas d’utilisation « Gérer compte »
Le tableau 3.5 présente la description textuelle du cas d’utilisation :
Tableau 3.5: Description du cas d’utilisation « Gérer compte »
Cas d’utilisation • Gérer compte
Acteur • Employé
Objectif • Permet de gérer l’informations
(partiellement) de l’employé lui-même
et gérer les contact, études et
expérience
Préconditions • l’employé doit être authentifié
Scénario 1. Le système affiche le compte de
l’employé concerne
2. L’employé voit ces informations
3. L’employé peut traiter ces
informations
27
Chapitre 3. Solution proposée
Post-condition • Toutes manipulations de données
(ajout, suppression ou modification)
seront enregistrées dans la base de
données.
Exception • Lors de la modification ou bien
del’ajout, un message d’erreur
s’affiches’il existe des champs
incorrects.
Conclusion
Dans ce chapitre, nous avons exposé la solution proposée du système que nous allons réaliser.
L’étude comporte la description de la solution proposée et les objectifs globaux du projet, l’identification
les acteurs qui interagissent avec le système, l’identification des besoins fonctionnels et non fonctionnels,
précis le choix de la méthodologie, le langage de modélisation, le diagramme de GANTT et en
finir par l’exposition du diagramme de cas d’utilisation général et les raffinements de quelques cas
d’utilisation.
Actuellemnt on peut terminer la tâche de la conception que nous allons définir dans le chapitre
suivant.
28
Chapitre 4
Conception
Plan
1 l’architecture MVT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2 Langage de conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3 Conception détaillée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Chapitre 4. Conception
Introduction
Le Modèle conceptuel de données est une représentation statique du système d’information.
Il a comme objectif de constituer une représentation claire et cohérente des données manipulées dans
le système d’information. Cette section sera présentée comme suit : nous commençons par le choix
de la méthodologie de conception et justification, Ensuite nous identifions les diagrammes des cas
d’utilisation, puis nous présentons les diagrammes de séquence, enfin le diagramme de classe.
4.1 l’architecture MVT
Le MVT représente une architecture orientée autour de trois pôles : le modèle, la vue et le
template. Elle s’inspire de l’architecture MVC, très répandue dans les frameworks web. Son objectif
est de séparer les responsabilités de chaque pôle afin que chacun se concentre sur ses tâches.[5]
l’abréviation MVT a défini comme suit :
— Modèle : comme d’habitude le modèle interagit avec la base de données
— Vue : sa responsabilité est de recevoir une requête HTTP et d’y répondre de manière intelligible
par le navigateur
— Template : est un fichier HTML lié avec les vues
4.2 Langage de conception
Pour élaborer cette application on doit établir une conception modeste pour attentera le but
de notre projet pour cela on doit choisira un langage de conception adaptable avec nos besoins.
4.2.1 Langage UML
Le Langage de Modélisation Unifié, de l’anglais Unified Modeling Language (UML), est
un langage de modélisation graphique à base de pictogrammes conçu pour fournir une méthode
normalisée pour visualiser la conception d’un système. Il est couramment utilisé en développement
logiciel et en conception orientée objet.[6]
Les 14 diagrammes UML sont dépendants hiérarchiquement et se complètent, de façon à permettre
la modélisation d’un projet tout au long de son cycle de vie. Ces diagrammes sont :
— Diagrammes structurels ou statiques :
— Diagramme de classes
30
Chapitre 4. Conception
— Diagramme d’objets
— Diagramme de composants
— Diagramme de déploiement
— Diagramme des paquetages
— Diagramme de structure composite
— Diagramme de profils
— Diagrammes comportementaux :
— Diagramme des cas d’utilisation
— Diagramme états-transitions
— Diagramme d’activité
— Diagrammes d’interaction ou dynamiques :
— Diagramme de séquence
— Diagramme de communication
— Diagramme global d’interaction
— Diagramme de temps
4.2.2 Justification du choix
L’UML est un langage formel et normalisé en termes de modélisation objet. Son indépendance
par rapport aux langages de programmation, son caractère polyvalent et sa souplesse ont fait de lui
un langage universel. En plus UML est essentiellement un support de communication, qui facilite
la représentation et la compréhension de solution objet. Sa notation graphique permet d’exprimer
visuellement une solution objet, ce qui facilite la comparaison et l’évaluation des solutions. L’aspect
de sa notation, limite l’ambigüité et les incompréhensions.
4.3 Conception détaillée
4.3.1 Acteurs
Un acteur représente l’abstraction d’un rôle joué par des entités externes (utilisateur, dispositif
matériel ou autre système) qui interagissent directement avec le système (réception d’information,
etc.). Pour notre application, il y trois acteurs principaux.
31
Chapitre 4. Conception
4.3.2 Diagramme des cas d’utilisations
Chaque usage que les acteurs font du système est représenté par un cas d’utilisation. Chaque
cas d’utilisation représente une fonctionnalité qui leur est offerte afin de produire le résultat attendu.
Ainsi, le diagramme de cas d’utilisation décrit l’interaction entre le système et l’acteur en déterminant
les besoins de l’utilisateur et tout ce que doit faire le système pour l’acteur. Dans ce sens nous avons
fait une application web pour la gestion des ressources humaines.
4.3.3 Vue statique
Représenter par des diagrammes qui définissent l’avis statique de conception comme le
diagramme de classes, cas d’utilisations ... etc.
4.3.3.1 Diagramme de classe
Le diagramme de classes exprime la structure statique du système en termes de classes et
de relations entre ces classes. La figure 4.1 montre le diagramme de classes qui collaborent au
fonctionnement de notre application.
32
Chapitre 4. Conception
Figure 4.1: Diagramme de classes du système
33
Chapitre 4. Conception
4.3.3.2 Description des classes
Dans cette phase nous avons décrit chaque classe de notre système avec les relations entre
les différentes classes.
Tableau 4.1: Description des classes
Nom de la classe Description
Administrateur • Cette classe contient l’identifients de
l’administrateur qui pourra accéder à son
compte.
DRH • Cette classe contient l’identifients du directeur
des ressources humaines.
• DRH hérite de la classe administrateur
Employé • Cette classe présente les employés
• Employé hérite de la classe DRH
• Cette classe avoir les rélation plusieurs autres
classes
Jour repos • La classe de configuration les jours repos dans
la semaine.
Recrutement • La classe pour faire les rercutement des
employés.
Contrat • La classe qui regroupe les contacts de
l’employé.
Contrat • La classe qui regroupe les contrats du travail
employé.
Pointage • La classe pour la gestion de présence de
l’employé.
Formation • La classe ayant les listes des formations.
Form emp • La classe de laision entre la classe employé et
la classe formation.
Paie • La classe pour regrouper les fiches de paies.
34
Chapitre 4. Conception
Rubrique • La classe pour lister les rubriques pour chaque
paie.
Autorisation • La classe contient l’autorisations d’employés.
Etude • La classe contient l’études de l’employé.
Expérience • La classe contient l’expérience de l’employé.
Congé • La classe contient l’congés de l’employé.
Activitylogs • La classe contient l’informations sur les
requêtes exécutes (suppression et modification)
sur la base de données.
AccesLog • La classe contient l’informations sur les accès
non autorisés au système.
4.3.4 Vue dynamique
Dans cette phase nous allons choisir le diagramme des séquences pour présenter quelques
scénarios, pour bien évaluer notre système.
4.3.5 Diagramme des séquences
Dans cette section nous allons définir les diagrammes des séquences de notre système.
4.3.5.1 Diagramme des séquences « Authentification »
Le diagramme 4.2 ci-dessous montre les scénarios pour s’authentifier en tantque administrateur,
DRH ou bien employé.
Notre diagramme contient un seul acteur et trois objets
35
Chapitre 4. Conception
Figure 4.2: Diagramme des sequences "Authentification"
Le diagramme montre les scénarios d’authentifcation quelque soit l’utilisateur "administrateur,
DRH ou bien employé).
Pour l’authentification de l’utilisateur doit être saisir le nom d’utilisateur et son mot de passe, comme
d’habitude la vérification dans la base de données. Dans le cas le nombre d’essais est dépasse la limite
un blocage sera effectué au formulaire d’authentification.
4.3.5.2 Diagramme des séquences « Gérer de la paie »
Le diagramme 4.3 ci-dessous montre les scénarios pour gérer les salaires d’employés de la
société.
36
Chapitre 4. Conception
Figure 4.3: Diagramme des sequences "Gérer de la paie"
37
Chapitre 4. Conception
Le scénario définit comme suit :
— Le systme affiche la liste des employés
— Le DRH choisit l’employé et le mois et l’année
— Si la date déjà existe un message d’erreur s’affiche
— Sinon la fiche de paie s’affiche
— Le DRH peut traiter les rubriques et valider par son mot de passe
— Si le mot de passe est incorrect on aura un message d’erreur
— Sinon le traitement sera effectué avec succès.
4.3.5.3 Diagramme des séquences « Demande de congé »
Le diagramme 4.4 ci-dessous montre les scénarios pour s’authentifier en tantque administrateur,
DRH ou bien employé.
Figure 4.4: Diagramme des sequences "Demande de congé"
38
Chapitre 4. Conception
Le diagramme montre les scénarios pour l’employé peut passer un demande de congé comme
suit :
— L’employé choisit la page de demande congé
— L’interface sera affichée contient un calendrier la liste des congé demandés
— L’employé choisi la date de début du congé et la durée et valider
— Le DRH valider le congé par oui ou non.
Conclusion
Dans ce chapitre nous avons présenté le langage de modélisation et la justification du choix,
par ailleurs nous avons dégagé les tâches majeures avec les diagrammes des classes et le diagramme
des séquences. Dans la partie qui suit nous essayerons de décrire l’implémentation de notre application.
39
Chapitre 5
Réalisation
Plan
1 Environnement du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2 Travail réalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Chapitre 5. Réalisation
Introduction
En détaillent ce chapitre, nous sommes déjà passé par les étapes nécessaires à fin d’entrainer
la phase de la réalisation. Le problème a été profondément analysé, nous avons défini une conception
complète à notre jugement. Une conception qui comporte et décrit tous les besoins de l’application.
Dans ce chapitre nous commencerons par la description de l’environnement de développement
(matériel et logiciel) ainsi que les différents outils utilisées. Ensuite, nous présenterons les différents
aspects de fonctionnement de notre application.
5.1 Environnement du travail
Dans ce paragraphe, nous allons présenter l’environnement matériel et logiciel de développement
de l’application que nous avons utilisée.
5.1.1 Environnement matériel
Pour élaborer le travail nous sommes besoins d’un ordinateur, Le tableau 5.1 ci-dessous
illustre les différentes caractéristiques de notre ordinateur :
Tableau 5.1: Caractéristiques matériels
Marque • ACER
Modèle • Aspire E 15
Processeur • Intel Core i7 2.4 GHz
RAM • 8 GB
Disque Dur • 1 TB
Système d’exploitation • Windows 10 Professionnel 64 bits
5.1.2 Environnement logiciel
L’offre d’une application satisfaisante aux besoins dépend un environnement de développement
solid et efficace ayant eu des documentations, pour cela l’EDI est nécessaire pour le développement
de notre application :
• PyCharm : est un environnement de développement intégré spécialement dédié au
développement en Python, il s’agit d’un produit commercial mais une solution académique existe.
Il permet l’analyse de code et contient un débogueur graphique. Il permet également la gestion des
41
Chapitre 5. Réalisation
tests unitaires, l’intégration de logiciel de gestion de versions, et supporte le développement web
avec Django. Développé par l’entreprise tchèque JetBrains, c’est un logiciel multi-plateforme qui
fonctionne sous Windows, Mac OS X et Linux. Il est décliné en édition professionnelle, diffusé sous
licence propriétaire, et en édition communautaire diffusé sous licence Apache. [7]
Figure 5.1: Logo PyCharm
c’est un logiciel propriétaire, profesionnel et portable qui facilité la phase de développement
du projet.
• Star UML : est un logiciel de modélisation UML de notre projet.
Figure 5.2: Logo Star UML
• Sqlite Browser : est un outil visuel et open source de haute qualité pour créer, concevoir
et éditer des fichiers de base de données compatibles avec SQLite. Il est destiné aux utilisateurs et
aux développeurs souhaitant créer des bases de données, rechercher et modifier des données. Il utilise
une interface similaire à une feuille de calcul et vous n’avez pas besoin d’apprendre des commandes
SQL compliquées.[8]
42
Chapitre 5. Réalisation
Figure 5.3: IHM SQLite Database Browser
c’est un SGBD très simple pour gerer les bases de données du projet.
5.1.3 Langage de programmation et les technologies utilisées
L’application doit être bâtie sur des nouvelles technologies dont laquelle on pourra respecter
nos exigences du projet. Le tableau 5.2 ci-dessous illustre les différents avantages et inconvénients
des platefomes.
Tableau 5.2: Comparaison entre les plateformes
Plateforme Avantages Inconvénients
Django • l’architecture MTV
• Les vues génériques
• Les formulaires automatiques
• Sécurite
• Protabilité
• Complication de la migration
J2EE • Architecture claire
• Adopté aux grands projets
• Portabilité
• API nombreuses
• Code difficilement réutilisable
• Application monolithique
43
Chapitre 5. Réalisation
PHP • Syntaxe classique et pratique
• Maintenance facile
• Interprété par le serveur
• Absence de débuggeur
• Il n’est pas une architecture
fiable
.NET • Microsoft l’a utilisé
• Développement rapide avec
beaucoup d’options pré-codées
• Une excellente interface
utilisateur pour les développeurs
• le déploiement se fait
uniquement sous Windows
Ruby on Rails • Migration aisée
• Utilisation simple
• Communauté riche
• Support AJAX et Javascript
• Débogage très diffcile
• Ressources inutiles
Après la comparaison les différents plateformes web, nous avons choisi la plateforme Djando
qui répond à nos exigences et offre un environnement sécurisé et efficace. pour cela nous avons eu
les langages de programmation suivants :
• Python : est un langage de programmation simple et très performante aussi très utilisables
dans les domaines embarque, web et des applications du bureau. nous avons choisi la version 3.6.4.
• HTML 5 : est un langage de balisage pour représenter les pages web "partie client".
• Javascript : est un langage de programmation côté client et aussi dans les autres cas côté
serveur pour les pages web interactives.
• Bootstrap 4 : est une collection d’outils utiles à la création du design (graphisme,
animation et interactions avec la page dans le navigateur, etc.) Pour rappel, un framework est un
ensemble d’outils et de composants logiciels organisés conformément à un plan d’architecture et
des patterns, l’ensemble formant ou promouvant un « squelette » de programme. Il est souvent
fourni sous la forme d’une bibliothèque logicielle, et accompagné du plan de l’architecture cible du
framework. L’un des frameworks les plus connus, agréables, complets est Boostrap. Actuellement en
version 4. Le CSS étant de base assez archaïque, Bootstrap se charge pour vous de réaliser toute la
structure en CSS pour que votre site soit visuellement agréable et en plus de ça, responsive et dans
44
Chapitre 5. Réalisation
des teintes de couleurs attrayantes Il permet ainsi un large gain de temps pour un meilleur rendu [9]
Nous préférons utiliser cette plateforme qui offre les besoins des interfaces et ergonomie.
• SQL signifie Structured Query Language c’est-à-dire Langage d’interrogation structuré.
En fait SQL est un langage complet de gestion de bases de données relationnelles. Il a été conçu
par IBM dans les années 70. Il est devenu le langage standard des systèmes de gestion de bases de
données (SGBD) relationnelles (SGBDR). [10]
5.2 Travail réalisé
Cette section comporte des captures d’écran de quelques interfaces de l’application réalisée
accompagnée par une brève description.
5.2.1 Interfaces d’authentification
Dans un premier lieu, l’utilisateur (Administrateur, Directeur des ressources humaines ou
l’employé) doit s’authentifier pour accéder aux différentes fonctionnalités de l’application.
Figure 5.4: Interfaces d’authentification
45
Chapitre 5. Réalisation
la figure 5.4 montre les scénarios d’authentification des trois acteurs principaux :
— 1 : Après le lancement de l’application la première interface sera affiché qui contient les
liens pour accès aux comptes pour chaque acteur (ADMINISTRATEUR, DIRECTEUR DES
RESSOURCES HUMAINES et EMPLOYÉ).
— 2 : L’utilisateur a choisi le type de compte, il existe un formulaire d’authentification pour
accès au compte, le bouton de retour vers la première interface, le deuxième qui s’appelle
"ANNULER" pour vider le formulaire et le dernier pour valider la connexion.
— 3 : Dans le cas de la connexion si le nombre de tentative d’échec dépasse la limite (cinq
tentative) on aura un blocage de quinze minutes dans le formulaire le bouton "CONNEXION"
sera désactivée pendant quinze minutes sinon l’utilisateur pourra accès à son compte avec
succès.
5.2.2 Interfaces d’administrateur
L’administrateur est le premier acteur dans une hiérarchie générale des acteurs, il gère les
tâches d’administration
5.2.2.1 Interfaces gérer DRH
Le rôle principal de l’administrateur de créer l’acteur "DRH" et garder le trafic des données
c’est-à-dire les journaux d’activités et l’accès aux comptes pour les autres utilisateur (DRH et
employés).
46
Chapitre 5. Réalisation
Figure 5.5: Interface liste des DRH
La figure 5.5 présente l’interface de gérer les comptes des DRH
— Il y a un tableau qui affiche les comptes de manière dynamique, la possibilité de filtrage,
pagination et le triage de données.
— L’administrateur peut supprimer les comptes après la validation par son mot de passe.
— Pour créer un nouveau compte, il faut cliquer sur le bouton "NOUVEAU" pour afficher
l’interface d’ajout les nouveaux comptes qui sont créent manuellement sauf le mot de passe
qui sera généré automatiquement et l’y envoyer par e-mail.
— Pour imprimer la liste des comptes il faut cliquer sur le bouton "IMPRIMER".
5.2.2.2 Interface journal d’accès
47
Chapitre 5. Réalisation
Figure 5.6: Interface journal d’accès
La figure 5.6 a montrée la liste des tentatives pour accès aux comptes utilisateurs avec échec,
qui compte les nombres des tentatives et collecte les données comme l’adresse IP, la date et le type
de compte utilisateur. L’administrateur peut afficher les détails et l’imprimer de la liste.
5.2.2.3 Interface journal d’activités
Figure 5.7: Interface journal d’activités
Comme l’interface précédente la figure 5.7 regroupée la liste d’activités d’utilisateurs de niveau
hiérarchique inférieure, cette interface montre les actions qui seront affectées aux données (exemple :
48
Chapitre 5. Réalisation
la suppression, modification de données). D’après cette liste l’administrateur pourra consulter les
tables.
5.2.3 Interfaces DRH
Le directeur des ressources humaines est le deuxième acteur dans hiérarchie de l’application et
la plupart des actions seront affectées au niveau de son part. Le DRH peut gérer les tâches suivantes :
— La gestion d’employés
— La gestion des recrutements
— La gestion des pointages
— La gestion des payements
— La gestion des formations
— La gestion des congés
5.2.3.1 Interfaces gestions d’employés
Le DRH peut créer, modifier et supprimer l’employé, ainsi ces informations supplimentaires
(l’études, l’experiences, les contrats ...)
Figure 5.8: Interface liste d’employés
Dans le cas de choisir la gestion d’employés, une liste sera affichée, la figure 5.8 ci-dessus
illustre cette liste qui offre la recherche, le tri et le filtrage ainsi la pagination de données. pour
supprimer un employé il faut cliquer sur le bouton dans la colonne d’actions et valider par le mot de
49
Chapitre 5. Réalisation
passe du DRH (voir la figure 5.10), la modification aussi existe et permet de faire une mise à jour
de données de l’employé. L’affichage des détails pour chaque employé, l’impression et la création de
nouveaux employés.
Figure 5.9: Interface détails de l’employé
La page détail contient toutes les données pour chaque employé. on note que l’existant des
informations personnelles (carte d’identité nationale, la date de naissance ...), les contacts (numéros
téléphonique et les adresses électroniques), la photo de profile si elle existe, les contrats, l’expériences,
l’études et les fiches de paie (il peut le visualiser, imprimer et l’exporter en format PDF en cas de
besoin).
50
Chapitre 5. Réalisation
Figure 5.10: Interface supprimer employé
L’assurance d’une application sécurisée nécessite un facteur de vérification avant la suppression
d’informations. pour cela la validation par mot de passe existe, si le mot de passe a été vérifié, les
données auront supprimé et auront ajouté aux journaux d’activités, sinon un message d’erreur sera
affiché.
5.2.3.2 Interface de recrutement
Figure 5.11: Interface de recrutement
Pour gérer la gestion de recrutement, le DRH peut ajouter et visualiser l’état de chaque offre
51
Chapitre 5. Réalisation
d’emploi.
5.2.3.3 Interfaces de la gestion des pointages
La gestion de pointage est une tâche très importante dans les ressources humaines, dans ce
projet notre application sera liée avec une pointeuse qui compte les absences et les retards d’employés.
Figure 5.12: Interface de pointage
Selon la figure 5.12 l’interface principale contient la liste de présence et la liste d’autorisation
avec la possibilité de la recherche par date, dans les actions le DRH peut modifier les paramètres,
ajouter les autorisations et l’importation des fiches de présences.
52
Chapitre 5. Réalisation
Figure 5.13: Interface des paramètres
La figure 5.13 illustré les jours de repos et la liste des jours fériés.
5.2.3.4 Interfaces de la gestion de la paie
La gestion de la paie aussi une tâche de RH très importante, les méthodes classiques de calcul
les salaires sont de gaspillages les ressources et le temps.
Figure 5.14: Interface principale de la gestion de la paie
La figure 5.14 ci-dessus montre une liste d’employés pour chacun on peut traiter son salaire
après la sélection du mois et de l’année et validation le choix.
53
Chapitre 5. Réalisation
Figure 5.15: Interface de traitement d’une fiche de paie
Notre application offre une interface lisible et simple à utiliser dans la figure 5.15 on observe
il y a des informations de l’employé, le contrat et le salaire brut. Le DRH peut ajouter, supprimer et
modifier des rubriques. Lors de validé la fiche de paie l’utilisateur doit valider par son mot de passe
sinon un message d’erreur sera affiché.
5.2.3.5 Interface de la gestion de formation
Pour chaque entreprise certaine de ces employés nécessitent des cours ou des formations dans
les nouvelles technologies ou dans les autres domaines.
54
Chapitre 5. Réalisation
Figure 5.16: Interface principale de la gestion de formation
Le DRH peut affecter les actions suivantes :
— Créer les nouvelles formations
— Modifier et supprimer les formations
— Afficher les détailles
Figure 5.17: Interface détails des formations
Ici l’utilisateur peut ajouter l’employés aux cours.
55
Chapitre 5. Réalisation
5.2.3.6 Interface la gestion des congés
La planification des congés est un grand défi pour chaque société notamment le congé annuel.
Figure 5.18: Interface des congés
Le DRH a reçu des demandes des congés (figure 5.18). Après l’examiner des demandes il faut
prendre une décision par l’acceptation ou le refus qui seront affichés dans la calendrier.
5.2.4 Interface d’employé
L’employé est l’acteur de niveau hiérarchique inférieure dans notre projet, donc son rôle c’est
de consulter leur information (exemple : voir les fiches de paies).il peut voir les rubriques suivantes :
— Compte : affichage l’identification de l’employé (informations personnelles, contacts, études,
expérience ...)
— Pointage : visualiser l’état de pointage et l’autorisation
56
Chapitre 5. Réalisation
— Paie : Afficher et imprimer les bulletins de paie
— Formation : lister les formations y participer
— Congé : voir et demander les congés
l’employé validé l’authentification, il ira à la page d’accueil qui contient le compte de l’employé.
Figure 5.19: Interface de page d’accueil
Cette page (La figure 5.19) contient toutes l’informations de l’employé qu’il peut modifier
et ajouter les contacts, la photo de profile, l’expérience et l’étude, d’autre part il voit les données
concernant les contrats et le travail.
57
Chapitre 5. Réalisation
Figure 5.20: Interface bulletin de paie
La figure 5.20 ci-dessus montre la liste des bulletins de paie de l’employé, qui pourra voir,
imprimer et exporter.
Figure 5.21: Interface planning des congés
L’employé peut demander les congés grâce l’application et le suivi l’état de chaque demande :
• Rouge : demande réfusée
• Vert : demande acceptée
58
Chapitre 5. Réalisation
Conclusion
Dans ce chapitre on a mis l’accent sur la description des caractéristiques de l’environnement
du travail et décrit les plateformes matérielles et logicielles sur lesquelles nous avons construit notre
application d’une part, d’autre part par la représentation des différentes interfaces développées tout
au long de l’application.
59
Conclusion générale
Dans le cadre de projet de fin d’études, nous avons conçu et nous avons réalisé une application
web pour la gestion des ressources humaines des sociétés, dans l’entreprise accueillante SSCF Ariana
durant quatre mois de stage.
Notre mission consiste à déploie cette application pour gérer les tâches dans les sociétés avec un
environnement sécurisé, d’interfaces hommes machines simples, cohérentes et la facilité d’utilisation
ainsi l’assurance de l’ergonomie.
Pour réussir de cette mission nous avons choisi un environnement de développement qui réponde à
nos exigences c’est le plate-forme Django et le travail initialement avec la base de données Sqlite.
Pour l’organisation de notre travail nous avons choisi le modèle en cascade comme la méthodologie
du travail vu sa architucture simple.
Finalement nous avons terminé notre projet dans la phase de conception et la phase de développement
de l’application dont l’application en mode de production, il ne reste que les améliorations en lui
ajoutant quelques fonctionnalités et le développement d’une application mobile pour facilité l’accès
à distant et éviter la centralisation de données.
Ce stage a été la bonne occasion pour renforcer nos compétences techniques dans le domaine de
développement ainsi pour sortir du cadre académique et appliquer les connaissances acquises lors des
études dans les environnements réels de travail qui nous a permis de passer au domaine professionnel
et d’apprendre plusieurs attitudes et habitudes sociales telles que le travail en groupe et la collection
d’informations pour extraire les besoins des acteurs du système à mettre en œuvre.
60
Bibliographie
[1] P. ROUSSEL. (1998). Méthodes de recherche en Gestion des Ressources Humaines. [MAI
2019], Toulouse School of Management Research, adresse : https://tsm- research.fr/
annuaire/128-patrice-roussel.
[2] P. Gilbert. (2001). Informatisation de la GRH. [MAI 2019], IAE de Paris – Université Paris
I, adresse : http://www.gregoriae.com/dmdocuments/2001-06.pdf.
[3] P. Grémiaux. (JUIN 2019). A propos. [MAI 2019], eurecia, adresse : https://www.eurecia.
com/societe.
[4] S. Mokrani. (JUIN 2019). Top 10 des logiciels RH open source. [MAI 2019], capterra, adresse :
https://www.capterra.fr/blog/269/top-10-logiciels-rh-open-source-gratuits.
[5] C. M. Sanchez. (2018). Decouvrez le framework Django. [MAI 2019], OpenClassrooms, adresse :
https://openclassrooms.com/fr/courses/4425076-decouvrez-le-framework-django.
[6] L. AUDIBERT. (2013). UML 2 De l’apprentissage à la pratique. [MAI 2019], OpenClassrooms,
adresse : https://laurent-audibert.developpez.com/Cours-UML/?page=introduction-
modelisation-objet.
[7] J.-P. HERMAND. (MAI 2015). Programmation en Python. [MAI 2019], LISA (Laboratories of
Image Synthesis et Analysis), adresse : http://lisa.ulb.ac.be/index.php/Programmation_
en_Python.
[8] C. CFAURY. (4 FÉVRIER 2018). DB Browser for SQLite. [MAI 2019], blaisepascal, adresse :
http://info.blaisepascal.fr/cpge-db-browser-for-sqlite.
[9] C. QUENTEL. (Nouvembre 2016). Bootstrap. [MAI 2019], supinfo, adresse : https://www.
supinfo.com/articles/single/3732-utiliser-bootstrap-designer-votre-site-web.
[10] R. Grin. (2008). Langage SQL. [MAI 2019], Université de Nice Sophia-Antipolis, adresse :
http://deptinfo.unice.fr/~grin/messupports/sql.pdf.
61
Annexes
Annexe 1. BULLETIN DE PAIE
62
.
.
:
Résumé
Ce travail est inscrit dans le cadre du projet de fin d’étude pour l’obtention du diplôme national
en master professionnel en sciences et technologies spécialité sécurité des systèmes informatiques
communicants et embarqués. Il a pour objectif de concevoir et réalisation d’une application de
gestions des ressources humaines pour les sociétés. Pour la réalisation de ce projet, nous avons
utilisé les méthodologies et le framework de développement Django de Python.
Mots clés : Sécurité, ressources humaines, développement, Python
Abstract
This work is a part of the final project study for obtaining the national diploma in a professional
master’s degree in science and technology specialty security communicating and embedded com-
puter systems.Its objective is to design and implement a human resource management application
for companies. For the realization of this project, we used the methodologies and development
framework Django of Python.
Keywords : Security, Human Resources, Development, Python
isi@isi.rnu.tn : 71 706 698 : 71 706 164 : 2080 2
2, Abou Raihane Bayrouni 2080 l’Ariana Tél : 71 706 164 Fax : 71 706 698 Email : isi@isim.rnu.tn

More Related Content

What's hot

présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.pptMohamed Ben Bouzid
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Sofien Benrhouma
 
rapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFErapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFEDonia Hammami
 
Rapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidRapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidBadrElattaoui
 
Présentation de mon PFE
Présentation de mon PFEPrésentation de mon PFE
Présentation de mon PFENadir Haouari
 
Rapport de stage développement informatique
Rapport de stage développement informatique Rapport de stage développement informatique
Rapport de stage développement informatique MehdiOuqas
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développementDonia Hammami
 
Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Ahmed Makni
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...Ramzi Noumairi
 
Rapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed AmineRapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed AmineMohamed Amine Mahmoudi
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineMohamed Amine Mahmoudi
 
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...Hajer Dahech
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiDonia Hammami
 

What's hot (20)

présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.ppt
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 
Rapport pfe
Rapport pfeRapport pfe
Rapport pfe
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
rapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFErapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFE
 
Rapport Projet Fin d'Études PFE
Rapport Projet Fin d'Études PFERapport Projet Fin d'Études PFE
Rapport Projet Fin d'Études PFE
 
Rapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidRapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application Android
 
Présentation de mon PFE
Présentation de mon PFEPrésentation de mon PFE
Présentation de mon PFE
 
Rapport de stage développement informatique
Rapport de stage développement informatique Rapport de stage développement informatique
Rapport de stage développement informatique
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développement
 
Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
 
Rapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed AmineRapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed Amine
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
 
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
Présentation Projet de fin d'études
Présentation Projet de fin d'étudesPrésentation Projet de fin d'études
Présentation Projet de fin d'études
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammami
 
Rapport pfe licence
Rapport pfe licenceRapport pfe licence
Rapport pfe licence
 
Rapport De PFE
Rapport De PFERapport De PFE
Rapport De PFE
 

Similar to Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme National de Master

Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...Adem Amen Allah Thabti
 
Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Mohamed Aziz Chetoui
 
pfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdfpfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdfnesrine haloui
 
Projet de conception et de développement
Projet de conception et de développementProjet de conception et de développement
Projet de conception et de développementGlei Hadji
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITLina Meddeb
 
Outpatient Department System (OPD)
Outpatient Department System (OPD) Outpatient Department System (OPD)
Outpatient Department System (OPD) Ben Ahmed Zohra
 
Gestion des actifs applicatifs
Gestion des actifs applicatifsGestion des actifs applicatifs
Gestion des actifs applicatifsSafaAballagh
 
Implémentation et mise en place d’un système décisionnel pour la solution Meg...
Implémentation et mise en place d’un système décisionnel pour la solution Meg...Implémentation et mise en place d’un système décisionnel pour la solution Meg...
Implémentation et mise en place d’un système décisionnel pour la solution Meg...Houssem Eddine Jebri
 
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Yasmine Lachheb
 
Rapport pfe isi_Big data Analytique
Rapport pfe isi_Big data AnalytiqueRapport pfe isi_Big data Analytique
Rapport pfe isi_Big data AnalytiqueYosra ADDALI
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...mouafekmazia
 
OpenERP - Gestion de prix de revient
OpenERP - Gestion de prix de revientOpenERP - Gestion de prix de revient
OpenERP - Gestion de prix de revientTaieb Kristou
 
réaliser une plateforme d’automatisation et de génération des rapports de test
réaliser une plateforme d’automatisation et de génération des rapports de testréaliser une plateforme d’automatisation et de génération des rapports de test
réaliser une plateforme d’automatisation et de génération des rapports de testahmed oumezzine
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Ilyas CHAOUA
 
Evaluation de la quantité de travail (in)utile dans l’exécution des programmes
Evaluation de la quantité de travail (in)utile dans l’exécution des programmesEvaluation de la quantité de travail (in)utile dans l’exécution des programmes
Evaluation de la quantité de travail (in)utile dans l’exécution des programmesBenjamin Vidal
 
Projet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objetsProjet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objetsUniversité de Rennes 1
 

Similar to Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme National de Master (20)

Belwafi bilel
Belwafi bilelBelwafi bilel
Belwafi bilel
 
Belwafi bilel
Belwafi bilelBelwafi bilel
Belwafi bilel
 
Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...
 
Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...
 
pfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdfpfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdf
 
Projet de conception et de développement
Projet de conception et de développementProjet de conception et de développement
Projet de conception et de développement
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
Outpatient Department System (OPD)
Outpatient Department System (OPD) Outpatient Department System (OPD)
Outpatient Department System (OPD)
 
Gestion des actifs applicatifs
Gestion des actifs applicatifsGestion des actifs applicatifs
Gestion des actifs applicatifs
 
Implémentation et mise en place d’un système décisionnel pour la solution Meg...
Implémentation et mise en place d’un système décisionnel pour la solution Meg...Implémentation et mise en place d’un système décisionnel pour la solution Meg...
Implémentation et mise en place d’un système décisionnel pour la solution Meg...
 
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
 
Rapport pfe isi_Big data Analytique
Rapport pfe isi_Big data AnalytiqueRapport pfe isi_Big data Analytique
Rapport pfe isi_Big data Analytique
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
 
OpenERP - Gestion de prix de revient
OpenERP - Gestion de prix de revientOpenERP - Gestion de prix de revient
OpenERP - Gestion de prix de revient
 
réaliser une plateforme d’automatisation et de génération des rapports de test
réaliser une plateforme d’automatisation et de génération des rapports de testréaliser une plateforme d’automatisation et de génération des rapports de test
réaliser une plateforme d’automatisation et de génération des rapports de test
 
Rapport de stage
Rapport de stageRapport de stage
Rapport de stage
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...
 
Evaluation de la quantité de travail (in)utile dans l’exécution des programmes
Evaluation de la quantité de travail (in)utile dans l’exécution des programmesEvaluation de la quantité de travail (in)utile dans l’exécution des programmes
Evaluation de la quantité de travail (in)utile dans l’exécution des programmes
 
Fourth year internship report
Fourth year internship reportFourth year internship report
Fourth year internship report
 
Projet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objetsProjet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objets
 

Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme National de Master

  • 1. République Tunisienne Ministère de l’Enseignement Supérieur et de la Recherche Scientifique Université de Tunis El Manar Institut Supérieur d’Informatique d’El Manar MEMOIRE DE MASTER Présenté en vue de l’obtention du Diplôme National de Master Professionnel en Sciences et Technologies Mention : Informatique Spécialité : Sécurité des Systèmes Informatiques Communicants et Embarqués Par : Mohamed Amine MAHMOUDI Conception et Réalisation d’une Application Sécurisée de Gestion des Ressources Humaines Encadrant professionnel : Encadrant académique : Madame Sawssen MAHMOUDI Madame Sourour MHENNI Ingénieur Maître Assistante Réalisé au sein de SSCF Ariana Année Universitaire 2018 - 2019
  • 2.
  • 3. République Tunisienne Ministère de l’Enseignement Supérieur et de la Recherche Scientifique Université de Tunis El Manar Institut Supérieur d’Informatique d’El Manar Rapport de Projet de Fin d’Études Présenté en vue de l’obtention du Diplôme National de Master Professionnel en Sciences et Technologies Mention : Informatique Spécialité : Sécurité des Systèmes Informatiques Communicants et Embarqués Par Mohamed Amine MAHMOUDI Conception et Réalisation d’une Application Sécurisée de Gestion des Ressources Humaines Encadrant professionnel : Encadrant académique : Madame Sawssen MAHMOUDI Madame Sourour MHENNI Ingénieur Maître Assistante Réalisé au sein de SSCF Ariana Année Universitaire 2018 - 2019
  • 4. J’autorise l’étudiant à faire le dépôt de son rapport de stage en vue d’une soutenance. Encadrant professionnel, Madame Sawssen MAHMOUDI Signature et cachet J’autorise l’étudiant à faire le dépôt de son rapport de stage en vue d’une soutenance. Encadrant académique, Madame Sourour MHENNI Signature
  • 5. Dédicaces Je dédie ce projet à : Madame Sawssen MAHMOUDI, Madame Sourour MHENNI pour m’avoir encadré et fait de leurs mieux afin de m’aider. Mes chers parents, que nulle dédicace ne puisse exprimer mes sincères sentiments, Pour leurs patience illimitée, leur encouragement contenu, leur aide, en témoignage de Mon profond amour et respect pour leurs grands sacrifices. Mes chers grands parents, pour me assistant. Mes chers frères pour leur grand amour et leur soutien qu’ils trouvent ici l’expression de ma haute gratitude. Mes chers amis qui sans leur encouragement ce travail n’aura jamais vu le jour. Et à toute ma famille et à tous ceux que j’aime. Mohamed Amine MAHMOUDI ii
  • 6. Remerciements Au terme de ce projet fin d’études je tien a exprimer mes respects mais connaissances et mes sincère remerciement au personnels du SSCF Ariana, le directrice de la société Mme. MAHMOUDI Sawssen, qui ont contribués à l’élaboration de ce rapport modeste. J’exprime mes profonds remerciements les plus sincères à Mme. MHENNI Sourour, mon encadreur à l’institut, pour son assistance, ses directives et ses conseils précieux. Ainsi ceux qui mon aidées durant cette période pour effectuer mon projet dans les meilleurs conditions, et je tiens également à remercier virement tous ceux qui m’ont fait preuve d’un grand esprit de collaboration et d’initiative tous les personnels de l’équipe technique et qui m’apportent une aide précieuse par leurs suggestion et leurs conseils. Que tous ceux qui ont contribué de près ou de loin à la réalisation de ce travail trouvent ici l’expression de nos sincères gratitudes. En résumé, j’adresse mes sincère sentiments de vivre reconnaissance à tous ceux qui ont contribué du près ou de loin à fin que ce modeste projet voie le jour. iii
  • 7. Table des matières Introduction générale 1 1 Présentation de l’organisme d’accueil et étude de l’existant 2 1.1 Cadre du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2.1 Activités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2.2 Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2.3 Organigramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Description du projet demandé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.4 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 État de l’art 7 2.1 Définition de la gestion des ressources humaines . . . . . . . . . . . . . . . . . . . . . 8 2.2 Évaluation des besoins des ressources humaines . . . . . . . . . . . . . . . . . . . . . 8 2.3 Historique des applications des ressources humaines . . . . . . . . . . . . . . . . . . . 9 2.4 Solutions existantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.5 Étude comparative des solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3 Solution proposée 13 3.1 Solution proposée et objectifs globaux du projet . . . . . . . . . . . . . . . . . . . . . 14 3.2 Identification des acteurs du système . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.1 Administrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.2 Directeur des ressources humaines . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.3 Employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.3 Identification des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.3.1 Besoins fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.3.2 Besoins non fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.4 Choix méthodologique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.5 Langage de modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.6 Diagramme de GANTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 iv
  • 8. 3.7 Diagramme des cas d’utilisation général . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.8 Raffinement des cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.8.1 Raffinement du cas d’utilisation « Authentification » . . . . . . . . . . . . . . 20 3.8.2 Raffinement du cas d’utilisation « Gérer les comptes des DRH » . . . . . . . 21 3.8.3 Raffinement du cas d’utilisation « Gérer les comptes d’employés » . . . . . . 23 3.8.4 Raffinement du cas d’utilisation « Gérer de la paie . . . . . . . . . . . . . . . 25 3.8.5 Raffinement du cas d’utilisation « Gérer compte» . . . . . . . . . . . . . . . . 26 4 Conception 29 4.1 l’architecture MVT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.2 Langage de conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.2.1 Langage UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.2.2 Justification du choix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.3 Conception détaillée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.3.1 Acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.3.2 Diagramme des cas d’utilisations . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3.3 Vue statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3.4 Vue dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.3.5 Diagramme des séquences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5 Réalisation 40 5.1 Environnement du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.1.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.1.2 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.1.3 Langage de programmation et les technologies utilisées . . . . . . . . . . . . . 43 5.2 Travail réalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.2.1 Interfaces d’authentification . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.2.2 Interfaces d’administrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.2.3 Interfaces DRH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 5.2.4 Interface d’employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Conclusion générale 60 v
  • 9. Bibliographie 61 Annexes 62 Annexe 1. Bulletin de Paie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 vi
  • 10. Table des figures 1.1 Logo Entreprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Organigramme de l’entreprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1 Logo Eurécia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2 Logo Apptivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3 Logo Zenefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.4 Logo OrangeCRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.1 Les Acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2 Modèle en cascade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.3 Diagramme de GANTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.4 Diagramme des cas d’utilisation général du projet . . . . . . . . . . . . . . . . . . . . 19 3.5 Raffinement du cas d’utilisation « Authentification » . . . . . . . . . . . . . . . . . . 20 3.6 Raffinement du cas d’utilisation « Gérer les comptes des DRH » . . . . . . . . . . . . 22 3.7 Raffinement du cas d’utilisation « Gérer les comptes d’employés » . . . . . . . . . . . 23 3.8 Raffinement du cas d’utilisation « Gérer de la paie » . . . . . . . . . . . . . . . . . . 25 3.9 Raffinement du cas d’utilisation « Gérer compte » . . . . . . . . . . . . . . . . . . . 27 4.1 Diagramme de classes du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.2 Diagramme des sequences "Authentification" . . . . . . . . . . . . . . . . . . . . . . 36 4.3 Diagramme des sequences "Gérer de la paie" . . . . . . . . . . . . . . . . . . . . . . 37 4.4 Diagramme des sequences "Demande de congé" . . . . . . . . . . . . . . . . . . . . . 38 5.1 Logo PyCharm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 5.2 Logo Star UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 5.3 IHM SQLite Database Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.4 Interfaces d’authentification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.5 Interface liste des DRH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.6 Interface journal d’accès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.7 Interface journal d’activités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.8 Interface liste d’employés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 vii
  • 11. 5.9 Interface détails de l’employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 5.10 Interface supprimer employé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.11 Interface de recrutement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.12 Interface de pointage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 5.13 Interface des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 5.14 Interface principale de la gestion de la paie . . . . . . . . . . . . . . . . . . . . . . . . 53 5.15 Interface de traitement d’une fiche de paie . . . . . . . . . . . . . . . . . . . . . . . . 54 5.16 Interface principale de la gestion de formation . . . . . . . . . . . . . . . . . . . . . . 55 5.17 Interface détails des formations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.18 Interface des congés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 5.19 Interface de page d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.20 Interface bulletin de paie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 5.21 Interface planning des congés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 viii
  • 12. Liste des tableaux 2.1 l’avantages et les inconvénients des solutions . . . . . . . . . . . . . . . . . . . . . . . 11 3.1 Description du cas d’utilisation « Authentification » . . . . . . . . . . . . . . . . . . 20 3.2 Description du cas d’utilisation « Gérer les comptes des DRH » . . . . . . . . . . . . 22 3.3 Description du cas d’utilisation « Gérer les comptes d’employés » . . . . . . . . . . . 24 3.4 Description du cas d’utilisation « Gérer de la paie » . . . . . . . . . . . . . . . . . . 25 3.5 Description du cas d’utilisation « Gérer compte » . . . . . . . . . . . . . . . . . . . . 27 4.1 Description des classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 5.1 Caractéristiques matériels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.2 Comparaison entre les plateformes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 ix
  • 13. Liste des abréviations — API = Application Programming Interfaces — CRM = Customer Relationship Management — CRUD = Create-Read-Update-Delete — CU = Cas d’Utilisation — DRH = Direction des Ressources Humaines — DRH = Directeur des Ressources Humaines — DRY = Don’t Repeat Yourself — EDI = Environnement de Développement Intégré — JSON = JavaScript Object Notation — MVC = Modèle-View-Controlleur — MVT = Modèle-View-Template — ORM = Object Relational Mapping — PME = Petite ou Moyenne Entreprise — SQL = Structured Query Language — UML = Unified Modeling Language x
  • 14. Introduction générale Dans un monde très actif et continuellement évolutif, la motivation d’avoir des moyens performants et efficaces de communication et d’échange d’informations devient de plus en plus fondamentale. Cette motivation donne naissance à une révolution favorisant le travail à distance et l’accès aux besoins en temps réduit à l’aide d’internet qui a bouleversé les habitudes de travail dans de nombreux métiers ainsi le besoin de la sécurité est un défi. Dans ce cadre, il nous a été proposé de mettre en place un outil logiciel pour la gestion des ressources humaines afin de déterminer les mesures techniques et d’organisation appropriées pour sécuriser l’information dans cette application. Pour une meilleure accessibilité à ces informations, nous avons décidé de développer une application web capable de gérer et d’exposer toutes ses informations à l’utilisateur autorisé. Ce rapport détaillera les différentes phases dont nous sommes passées par afin d’aboutir à une application fiable et satisfaisante. Pour cela le rapport définit le travail qui nous avons effectué, il est composé par cinq grands chapitres. D’abord, dans le premier chapitre, nous présentons le cadre général du projet, la présentation de la société accueillente en introduisant des notions liées au projet demandé. Dans le deuxième chapitre nous définirons l’état de l’art en exposent les différentes solutions existantes dans le marché. ensuite dans le troisième chapitre nous proposons une solution adaptée à notre besoin. par ailleurs le quatrième consiste à définir une modeste conception choisie du projet.le dernier chapitre nous présentons la phase de réalisation durant le développement de l’application. 1
  • 15. Chapitre 1 Présentation de l’organisme d’accueil et étude de l’existant Plan 1 Cadre du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 Description du projet demandé . . . . . . . . . . . . . . . . . . . . . . . . 5 4 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
  • 16. Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant Introduction Dans ce chapitre nous allons présenter l’entreprise au sein de laquelle nous avons effectué notre stage . Nous procéderons ensuite à l’étude du projet demandé avec la proposition de la problématique. 1.1 Cadre du projet Le projet entre dans le cadre de préparation de stage de fin d’études pour l’obtention du diplôme national de master profressionnel en sciences et technologies notamment la sécurité des systèmes informatiques, communicants et embarqués (SSICE) au sien de l’institut supérieur de l’informatique Université de Tunis El Manar . Ce projet a été effectué au sein de la société SSCF Ariana durant la période du 4 mois. 1.2 Organisme d’accueil La réalisation de notre projet est accompagnée par un stage au sein de l’entreprise SSCF d’une période de quatre mois du 01/02/2019 au 15/06/2019. SSCF est un centre de formation professionnelle agréé par l’état sous le numéro : 12–739–17 qui s’est imposé depuis 2017 comme l’un des principaux intervenants sur le marché national de la formation continue. SSCF propose des formations professionnelles dans les domaines de développement web, mobile, Cloud et systèmes embarqués. SSCF est spécialisé dans l’encadrement et le développement des solutions Cloud et internet des objets. L’équipe de SSCF se compose entre autres de 15 ingénieurs qui dispensent des formations visant à aider à réussir des projets divers. Figure 1.1: Logo Entreprise 3
  • 17. Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant 1.2.1 Activités SSCF propose des suites des formations professionnelles dans les domaines de développement WEB, MOBILE, CLOUD, et SYSTEMES EMBARQUES. Ainsi il est spécialisé dans l’encadrement et le développement des solutions CLOUD et INTERNET DES OBJETS (IOT). — Formation professionnelle. — Création des services et produits informatiques et multimédias. — Recherche scientifique. — Accompagnement de projet et conseils. — Sécurité et audit. 1.2.2 Services Service formation : assure l’intégration des nouveaux embauchés ainsi que la planification. Service des Ressources Humaines : est chargé : — D’assurer la gestion des ressources humaines qui vont permettre la réalisation des objectifs industriels de l’établissement. — De garantir la formation et la gestion des compétences. — D’établir la paie et la gestion administrative. — De maintenir un bon climat social. Service Maintenance : est chargé : — De maitriser le taux de disponibilité des moyens et minimiser le coût d’exploitation des équipements. — D’assurer la maintenance effective des moyens . — De participer à la mise en service des nouveaux moyens. — D’assurer la formation maintenance intégrée des opérateurs. — De proposer et réaliser des actions d’amélioration. Service d’achat : assure les achats des divers besoins de toutes les entités de SSCF . 4
  • 18. Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant Figure 1.2: Organigramme de l’entreprise 1.2.3 Organigramme La figure 5.1 présente l’organisation de SSCF est représentée par l’organigramme suivant : La gestion des ressources humaines comprend des fonctions administratives et opérationnelles. Dans ce sujet on va étudier les tâches de la direction des ressources humains au sein des sociétés. 1.3 Description du projet demandé dans ce cadre la société SSCF veut développer un système d’information concernant la gestion des ressources humaines des sociétés ayant des difficultés : — Les dossiers des employés sont traités de manière papier et numérique (des fichiers de type EXCEL) ou uniquement sous format papier. — Les traitements des slaires ont été traités de manière manuel (erreurs humaines) — Les problèmes presence des employés surtout les dates entrée/sortie et les autorisations — Des entretiens sont planifiés avec les candidats qui ont été choisis et qui vont être informés par un email. — Ambiguïté des conges — Perte des ressources et du temps 1.4 Problématique Les processus des ressources humaines, mentionné ci-dessus, leur permet de traiter la tâches d’une manière fiable mais non efficace. Des solutions sont utilisées afin de satisfaire les besoins du 5
  • 19. Chapitre 1. Présentation de l’organisme d’accueil et étude de l’existant personnel, mais ces outils ne sont pas toujours efficaces, très coûteux et limités du fait qu’ils sont divisés sur plus qu’un service indépendant et contenant une grande partie traitée manuellement non centralisée et non partagée à l’accès du système informatique. En général, les méthodes classiques consistent à consulter les ressources. Il a été nécessaire de trouver une méthode rapide et efficace d’où l’extension de la gestion des ressources humaines à travers le web. Conclusion Dans ce chapitre, nous avons présenté l’entreprise d’accueil SSCF. Nous avons posé la problématiquede ce projet et nous avons pris une vision plus claire sur le sujet. Par ailleurs, nous avons pu déterminer les objectifs à atteindre. Lors du chapitre suivant ,nous allons exposer l’état de l’art. 6
  • 20. Chapitre 2 État de l’art Plan 1 Définition de la gestion des ressources humaines . . . . . . . . . . . . . . 8 2 Évaluation des besoins des ressources humaines . . . . . . . . . . . . . . 8 3 Historique des applications des ressources humaines . . . . . . . . . . . 9 4 Solutions existantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5 Étude comparative des solutions . . . . . . . . . . . . . . . . . . . . . . . 11
  • 21. Chapitre 2. État de l’art Introduction Après la présentation de la société accueillante, dans ce chapitre nous avons présente l’état de l’art dont le but de décrire les applications des gestions des ressources humaines et la présentation des solutions existantes avec une étude comparative entre eux. 2.1 Définition de la gestion des ressources humaines La GRH est l’ensemble des activités qui visent à développer l’efficacité collective des personnes qui travaillent pour l’entreprise. L’efficacité étant la mesure dans laquelle les objectifs sont atteints, la GRH aura pour mission de conduire le développement des RH en vue de la réalisation des objectifs de l’entreprise. La GRH définit les stratégies et les moyens en RH, les modes de fonctionnement organisationnels et la logistique de soutien afin de développer les compétences nécessaires pour atteindre les objectifs de l’entreprise.[1] Notre mission consiste à développe une application pour la gestion des ressources humaines. 2.2 Évaluation des besoins des ressources humaines Le domaine des ressources humaines est un domaine très important dans l’administration des sociétés, à partir des années 1980, la GRH devient une fonction stratégique et participe à la création de valeur dans l’entreprises. Les tâches de la direction des ressources humaines sont multiples et liés entre eux, habituellement les transactions sur papiers et les logiciels bureautiques sont fortement utilisées La gestion des ressources humaines contient les importants modules suivants : — La gestion d’employés — La gestion de pointage — La gestion de recrutement — La gestion de la paie — La gestion de la formation 8
  • 22. Chapitre 2. État de l’art 2.3 Historique des applications des ressources humaines L’informatique et les ressources humaines peuvent apparaître comme des domaines étrangers l’un à l’autre. d’un côté, l’univers froid du traitement automatique des données servi par la rationalité des mathématiques appliquées ; de l’autre, l’univers des personnes, êtres de désirs aux aspirations plus ou moins conscientes, changeantes et parfois contradictoires. Le rapprochement de ces deux univers fascine quelques-uns et suscite chez d’autres une véritable répulsion. Entre ces deux extrêmes, il y a, heureusement, place pour une attitude raisonnable bâtie sur la connaissance des apports de l’informatique et sur celle de ses limites. En tant qu’elle est gestion, la GRH ne peut ignorer les apports d’un traitement automatisé des informations1. Si tous s’accordent à dire que l’informatique n’est qu’un moyen, il est clair que ce moyen a pris une place de premier plan dans les organisations. La masse croissante des traitements à effectuer donne à la technique un poids considérable dans les activités gestionnaires. Afin d’éviter le désordre, l’allongement des délais, l’enlisement dans les tâches paperassières et, finalement, l’insatisfaction de ses interlocuteurs, il est de première importance pour les services Ressources Humaines d’organiser le recueil, l’exploitation et la diffusion de l’information recueillie. Dans l’un des rares ouvrages de la littérature francophone, spécialement consacrés à l’informatisation de la GRH, Jean-Marie Peretti (1993) évoque la manière dont l’informatique a changé le travail quotidien au sein des directions du personnel, contribuant à l’évolution d’une fonction «Personnel» vers une fonction «Ressources Humaines». [2] 2.4 Solutions existantes Il y a plusieurs solutions dans le marché. nous avons choisi qautre solutions pour faire l’étude de l’éxistant. Eurécia : c’est une solution RH privilégié des entreprises, elle est le trait d’union entre salariés, managers et direction pour les aider à améliorer la performance économique de l’entreprise.[3] 9
  • 23. Chapitre 2. État de l’art Figure 2.1: Logo Eurécia Apptivo : Ce produit freemium est gratuit jusqu’à trois utilisateurs, mais limite le stockage des données à 500 Mo pour les comptes gratuits (entre 3 à 10 Go pour les comptes payants). La version gratuite exclut l’assistance téléphonique et l’accès illimité aux applications mobiles. [4] Figure 2.2: Logo Apptivo Zenefits : Zenefits est l’un des systèmes RH gratuits les plus populaires sur le marché. Le système de base est entièrement gratuit et offre des fonctions d’administration des prestations sociales, d’intégration des salariés et de gestion des départs. Il est agrémenté entre autres d’un portail self-service pour les employés. Zenefits offre également des modules payants en option. Figure 2.3: Logo Zenefits OrangeCRM : Ce logiciel de RH open source propose une version SaaS payante qui inclut l’hébergement et l’assistance technique, mais aussi une version code source que vous pouvez héberger sur vos propres serveurs. 10
  • 24. Chapitre 2. État de l’art Figure 2.4: Logo OrangeCRM 2.5 Étude comparative des solutions Le tableau 2.1 ci-dessous illustre une étude comparative entre les solutions : Tableau 2.1: l’avantages et les inconvénients des solutions Solution Avantages inconvénients Eurécia • Interfaces très modernes. • Outil hautement intuitif. • Ciblant clairement le marché des PME et des start-up. • Trop basique pour les plus grandes entreprises. Apptivo • Flexibilité • Permet de choisir les fonctionnalités dont vous avez besoin. • Créez en quelque sorte votre propre outil. • Elle ne sera pas toujours suffisamment spécialisée pour les responsables RH et pourra parfois manquer de fonctionnalités et les outils Zenefits • Produit gratuit et complet. • Fonctionnel et bien pensé. • Complexité de certaines tâches. 11
  • 25. Chapitre 2. État de l’art OrangeCRM • Outil très complet qui offre un grand nombre de modules. • IHM intuitive. • La facilité d’utilisation. • L’utilisateurs ayant opté pour l’option d’assistance technique payante. • Mauvaise qualité du service offert. Conclusion Dans ce chapitre, nous avons présenté l’entreprise d’accueil SSCF.Nous avons posé la problématique de ce projet et nous avons pris une vision plus claire sur le sujet. Par ailleurs, nous avons pu déterminer les objectifs à atteindre en faisant une étude de l’existant. Lors du chapitre suivant , nous allons exposer l’état de l’art. 12
  • 26. Chapitre 3 Solution proposée Plan 1 Solution proposée et objectifs globaux du projet . . . . . . . . . . . . . 14 2 Identification des acteurs du système . . . . . . . . . . . . . . . . . . . . 14 3 Identification des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4 Choix méthodologique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 5 Langage de modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6 Diagramme de GANTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 7 Diagramme des cas d’utilisation général . . . . . . . . . . . . . . . . . . . 18 8 Raffinement des cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . 19
  • 27. Chapitre 3. Solution proposée Introduction Après la présentation de la société accueillante, ainsi l’étude de l’existant du projet, nous définissons notre solution proposée pour laquelle nous identifions les acteurs, les besoins (fonctionnels et non fonctionnels), le choix de la méthode de développement, langage de modélisation, un diagramme de GANTT, illustre le diagramme de cas d’utilisation général, identification des scénarions et finir avec les raffinements des cas d’utilisation. 3.1 Solution proposée et objectifs globaux du projet C’est pourquoi ce projet d’une application web nous a été proposé, afin de gérer les besions de direction des ressources humaines aussi de mettre un accès à l’information aux employés de l’entreprise, Cette application doit respecter les conditions suivantes : • Centralisation l’information et les données. • Sécuriser l’informations • Diminuer le temps des traitements. • Partager plus facilement l’information aux employés. 3.2 Identification des acteurs du système Dans cette section nous allons définir les acteurs de l’application, dans notre application il y a trois acteurs principaux : 3.2.1 Administrateur L’administrateur ou bien l’approbateur c’est le premier acteur, son rôle principal de gérer les actions qui seront effectuées dans l’application, c’est-à-dire un autre utilisateur a supprimé une ligne dans un tableau donc il a enregistré dans le journal d’activités (base de données) ainsi la création d’utilisateur (directeur des ressources humaines). 3.2.2 Directeur des ressources humaines Est l’acteur la plus importante dans ce projet, il a plusieurs modules tels que la gestion d’employés, congés, formations, présence ...etc. Son rôle général de gérer les affaires d’employés de la société et la validation des tâches comme le 14
  • 28. Chapitre 3. Solution proposée payement. 3.2.3 Employé Est un acteur le plus intéressant, ce que fait tous les modules sont autour de cet acteur, mais son rôle c’est de gérer son propre compte avec la consultation des autres informations comme l’état de leur demandes de congé, les formations, voir et imprimer les fiches de paie ...etc. Figure 3.1: Les Acteurs La figure 3.1 montre les liens entre les acteurs du projet 3.3 Identification des besoins La spécification de besoins constitue la phase de départ de toute application à développer. Dans cette partie nous allons identifier les besoins de notre application. Nous allons mettre l’accent sur les besoins fonctionnels ainsi que les besoins non fonctionnels pour éviter le développement d’une application non satisfaisante. 3.3.1 Besoins fonctionnels Les besoins fonctionnels sont l’exigence du projet donc notre application doit être répondue aux besoins fonctionnels suivants : — La sécurité : dans l’autres applications la sécurité est un besoin non fonctionnel mais l’importance des données surement très confidentielles qu’elles nécessitent de ce besoin dans notre projet. L’administrateur du système peut gérer les journaux d’activités et les tentatives des connexions aux comptes. — Gérer les comptes d’employés : d’une part le DRH crée les comptes d’employés et d’une autre part l’employé peut accéder au compte et consulter ces informtions et affecter quelques modifications dans le besoin. 15
  • 29. Chapitre 3. Solution proposée — Gérer Les recrutements : seulement le DRH peut accéder a cette fonctionnalité. — Gérer le pointage : le DRH valide les présences et l’employés peuvent visualiser leurs états fiches de présence. — Gérer le paie : le traitement des fiches de paie. — Gérer les formations : le DRH peut créer et gérer les formations. — Gérer les congés : l’employé a demandé les congés et le DRH a validé par refus ou l’acceptation ainsi l’affichage du planning dans un calendrier. — La séparation des tâches : les tâches des acteurs doivent être séparées. 3.3.2 Besoins non fonctionnels Les besoins non fonctionnels décrivent les objectifs liés aux performances du système et aux contraintes de son environnement. Ses exigences techniques sont souvent exprimées sous forme d’objectifs spécifiques que doit atteindre le système. Les besoins non fonctionnels de cette application sont les suivants : — Assurer une cohérence et une crédibilité aux informations stockées dans la base de données. — L’ergonomie des interfaces de l’application mobile et web. — Qualité — Accessibilité et performance — Renouvellement — Fiabilité 3.4 Choix méthodologique Dans cette phase, nous allons présenter la méthodologie pour la conception et le développement à fin de la réalisation de notre projet. Pour la décision d’un modèle adapté à notre projet, nous avons choisi d’utiliser le modèle en "cascade", ce modèle se caractérise généralement par six phases : • l’analyses des besoins : font l’objet d’une expression des besoins • Spécifications : les besoins sont analysés pour établir un cahier des charges. • Conception : le projet est spécifié et conçu de sorte à pouvoir être réalisé. • Réalisation : le projet est réalisé sur la base des spécifications. 16
  • 30. Chapitre 3. Solution proposée • Test : le projet est testé et vérifié et sa conformité aux besoins. • Maintenance : le projet est livré, exploré et amélioré. Figure 3.2: Modèle en cascade 3.5 Langage de modélisation Nous avons choisi une méthodologie pour cette raison, nous avons choisi l’UML comme un langage de modélisation, c’est un langage de modélisation très connue et très utile pour la conception des systèmes d’informations.Cette dernière appréhende le système comme un ensemble d’objets qui interagissent entre eux , assure une évolution du logiciel et une réutilisation des objets.Il est idéal pour modéliser le fonctionnement métier,les données,et déployer une architecture logicielle développée dans un langage objet. Dans la phase de conception de notre projet, nous utilisons les diagrammes suivants : • le diagramme de cas d’utilisation • le diagramme de séquences • le diagramme des classes 17
  • 31. Chapitre 3. Solution proposée 3.6 Diagramme de GANTT Pour bien organiser notre projet il faut planifier les tâches principales dans notre cas les grandes tâches sont : — La partie conception — Le réalisation : partie développement — La rédaction du rapport — Les tests et la maintenance — La préparation de la présentation Figure 3.3: Diagramme de GANTT La figure 3.3 montre les tâches à réaliser du mois février jusqu’au mois de juin avec l’estimation des jours pour chaque tâche. 3.7 Diagramme des cas d’utilisation général Le diagramme de cas d’utilisation général nous donne un coup d’oeil sur les fonctionnalités de notre système. La figure 3.4 ci-dessous montre les trois acteurs principaux du système avec les cas de chacun d’une manière générale, par ailleurs nous avons vu une hiérarchie de niveau supérieur « Administrateur » à niveau inférieur « Employé » et l’authentification est le processus le plus important pour accès l’un des cas. 18
  • 32. Chapitre 3. Solution proposée Figure 3.4: Diagramme des cas d’utilisation général du projet 3.8 Raffinement des cas d’utilisation Dans cette partie nous allons raffiner les cas d’utilisation et décrire le scénario des quelques cas. Pour raffiner le diagramme de cas d’utilisation, il existe trois types de relations standards entre les cas d’utilisation : — Une relation d’inclusion nommée «include» : le cas d’utilisation de base en incorpore explicitement un autre, de façon obligatoire. — Une relation d’extension, nommée «extend» : le cas d’utilisation de base en incorpore implicitement un autre, de façon optionnelle. — Une relation de généralisation et spécialisation : les cas d’utilisation descendants héritent de la description de leur parent commun. Chacun d’entre eux peut néanmoins comprendre des 19
  • 33. Chapitre 3. Solution proposée interactions spécifiques supplémentaires. 3.8.1 Raffinement du cas d’utilisation « Authentification » Le processus de l’authentification est plus important qu’il utilise dans la plupart des projets pour assuré l’authenticité et la séparation des tâches. La figure 3.5 présente le raffinement du cas d’utilisation « Authentification » : Figure 3.5: Raffinement du cas d’utilisation « Authentification » Le tableau 3.1 présente la description textuelle du cas d’utilisation : Tableau 3.1: Description du cas d’utilisation « Authentification » Cas d’utilisation • Authentification Acteur • Administrateur • DRH • Employé Objectif • Vérifier l’identité d’utilisateur 20
  • 34. Chapitre 3. Solution proposée Préconditions • l’utilisateur ayant eu une autorisation d’accès Scénario 1. l’utilisateur saisi le nom d’utilisateur et le mot de passe 2. vérification de l’existante dans la base de données 3. Afficher page d’accueil Post-condition • Toutes les tentatives des connexions seront enregistrées dans les journaux d’accès Exception • Si la limite du nombre d’essai est dépassée le processus d’authentification sera bloqué pendant 15 minutes. • Si les données saisies sont incorrecte, le système affiche un message d’erreur et lui demande de répéter le processus d’authentification. 3.8.2 Raffinement du cas d’utilisation « Gérer les comptes des DRH » L’acteur principal a eu l’accès pour gérer les comptes des DRH, il peut créer les comptes, imprimer, modifier l’état de l’utilisateur " validé ou non" et la suppression des comptes. Pour la suppression d’un compte ou la modification de l’état il faut valider par le mot de passe de l’administrateur. Le diagramme 3.6 présente ce cas : 21
  • 35. Chapitre 3. Solution proposée Figure 3.6: Raffinement du cas d’utilisation « Gérer les comptes des DRH » Le tableau 3.2 présente la description textuelle du cas d’utilisation : Tableau 3.2: Description du cas d’utilisation « Gérer les comptes des DRH » Cas d’utilisation • Gérer les comptes des DRH Acteur • Administrateur Objectif • Permet de gérer les comptes des directeurs des ressources humaines dans laquelle il peut créer, modifier l’état, supprimer etlister les comptés Préconditions • l’administrateur doit être authentifié Scénario 1. Le système affiche la liste des DRH 2. L’administrateur peut créer un nouveu compte 3. L’administrateur peut imprimer la liste des comptes : 4. L’administrateur peut modifier l’état d’un compte avec la validation par mot de passe. • L’administrateur peut supprimer un compte avec la validation par mot de passe. 22
  • 36. Chapitre 3. Solution proposée Post-condition • Toutes manipulations de données (ajout, suppression ou modification) seront enregistrées dans la base de données Exception • Lors de suppression d’un compte il faudra saisir le mot de passe s’il est incorrect un message d’erreur s’affiche. • Lors de modification de l’état d’un compte il faudra saisir le mot de passe s’il est incorrect un message d’erreur s’affiche. • Lors de création d’un nouveau compte, un message d’erreur s’affiche s’il existe des champs incorrects. 3.8.3 Raffinement du cas d’utilisation « Gérer les comptes d’employés » Nous avons vu dans le diagramme de cas d’utilisation général que le directeur des ressources humaines peut gérer les comptes d’employés dont le but de créer, modifier ou supprimer les comptes. le diagramme 3.7 ci-dessous présente ce cas. Figure 3.7: Raffinement du cas d’utilisation « Gérer les comptes d’employés » Le tableau 3.3 présente la description textuelle du cas d’utilisation : 23
  • 37. Chapitre 3. Solution proposée Tableau 3.3: Description du cas d’utilisation « Gérer les comptes d’employés » Cas d’utilisation • Gérer les comptes d’employés Acteur • DRH Objectif • Permet de gérer les comptes d’employés dans laquelle il peut créer, modifier, supprimer, lister, imprimer et visualiser les comptés Préconditions • le DRH doit être authentifié Scénario 1. Le système affiche la liste d’employés 2. L’utilisateur peut créer un nouveu employé 3. L’utilisateur peut choisir un employé : • Visualiser les détails • Modifier un employé • Supprimer un employé Post-condition • Toutes manipulations de données (ajout, suppression ou modification) seront enregistrées dans la base de données et les journaux d’activitès. Exception • Lors de suppression d’un compte il faudra saisir le mot de passe s’il est incorrect un message d’erreur s’affiche. • Lors de la modification ou bien de l’ajout, un message d’erreur s’affiche s’il existe des champs incorrects. 24
  • 38. Chapitre 3. Solution proposée 3.8.4 Raffinement du cas d’utilisation « Gérer de la paie La gestion de partie fait partie de notre système, le DRH peut consulter la liste d’employés et après il choisit un employé dont il opte le mois et l’année de la fiche de paie et il traite cette fiche avec les rubriques. La figure 3.8 montre ce cas d’utilisation Figure 3.8: Raffinement du cas d’utilisation « Gérer de la paie » Le tableau 3.4 présente la description textuelle du cas d’utilisation : Tableau 3.4: Description du cas d’utilisation « Gérer de la paie » Cas d’utilisation • Gérer de la paie d’employés Acteur • DRH Objectif • Permet de gérer la gestion de a paie pour laquelle le directeur des ressources humaines peut traité les fiches des paies pour l’employés Préconditions • le DRH doit être authentifié 25
  • 39. Chapitre 3. Solution proposée Scénario 1. Le système affiche la liste d’employés 2. Le DRH choisit l’employé d’après la liste 3. Le DRH choisit le mois et l’année 4. Le DRH traité la fiche et ces rubriques 5. Le DRH valider la fiche 6. Le DRH peut imprimer la fiche de paie Post-condition • Toutes manipulations de données (ajout, suppression ou modification) seront enregistrées dans la base de données. Exception • Lors de la validation d’une fiche de paie il faudra saisir le mot de passe s’il est incorrect un message d’erreur s’affiche. • Lors de la validation d’une fiche de paie si le mois et l’année déjà existe un message d’erreur s’affiche. 3.8.5 Raffinement du cas d’utilisation « Gérer compte» Pour chaque employé il y a son propre compte dont il peut accéder et il voix ces informations. Il s’agit la gestion de compte qui pourra gérer les contacts, l’expérience profesionnelle, l’études univérsitaires, ainsi le changement de le mot de passe et la photo de profile. le diagramme 3.9 ci-dessous présente ce cas. 26
  • 40. Chapitre 3. Solution proposée Figure 3.9: Raffinement du cas d’utilisation « Gérer compte » Le tableau 3.5 présente la description textuelle du cas d’utilisation : Tableau 3.5: Description du cas d’utilisation « Gérer compte » Cas d’utilisation • Gérer compte Acteur • Employé Objectif • Permet de gérer l’informations (partiellement) de l’employé lui-même et gérer les contact, études et expérience Préconditions • l’employé doit être authentifié Scénario 1. Le système affiche le compte de l’employé concerne 2. L’employé voit ces informations 3. L’employé peut traiter ces informations 27
  • 41. Chapitre 3. Solution proposée Post-condition • Toutes manipulations de données (ajout, suppression ou modification) seront enregistrées dans la base de données. Exception • Lors de la modification ou bien del’ajout, un message d’erreur s’affiches’il existe des champs incorrects. Conclusion Dans ce chapitre, nous avons exposé la solution proposée du système que nous allons réaliser. L’étude comporte la description de la solution proposée et les objectifs globaux du projet, l’identification les acteurs qui interagissent avec le système, l’identification des besoins fonctionnels et non fonctionnels, précis le choix de la méthodologie, le langage de modélisation, le diagramme de GANTT et en finir par l’exposition du diagramme de cas d’utilisation général et les raffinements de quelques cas d’utilisation. Actuellemnt on peut terminer la tâche de la conception que nous allons définir dans le chapitre suivant. 28
  • 42. Chapitre 4 Conception Plan 1 l’architecture MVT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2 Langage de conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3 Conception détaillée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
  • 43. Chapitre 4. Conception Introduction Le Modèle conceptuel de données est une représentation statique du système d’information. Il a comme objectif de constituer une représentation claire et cohérente des données manipulées dans le système d’information. Cette section sera présentée comme suit : nous commençons par le choix de la méthodologie de conception et justification, Ensuite nous identifions les diagrammes des cas d’utilisation, puis nous présentons les diagrammes de séquence, enfin le diagramme de classe. 4.1 l’architecture MVT Le MVT représente une architecture orientée autour de trois pôles : le modèle, la vue et le template. Elle s’inspire de l’architecture MVC, très répandue dans les frameworks web. Son objectif est de séparer les responsabilités de chaque pôle afin que chacun se concentre sur ses tâches.[5] l’abréviation MVT a défini comme suit : — Modèle : comme d’habitude le modèle interagit avec la base de données — Vue : sa responsabilité est de recevoir une requête HTTP et d’y répondre de manière intelligible par le navigateur — Template : est un fichier HTML lié avec les vues 4.2 Langage de conception Pour élaborer cette application on doit établir une conception modeste pour attentera le but de notre projet pour cela on doit choisira un langage de conception adaptable avec nos besoins. 4.2.1 Langage UML Le Langage de Modélisation Unifié, de l’anglais Unified Modeling Language (UML), est un langage de modélisation graphique à base de pictogrammes conçu pour fournir une méthode normalisée pour visualiser la conception d’un système. Il est couramment utilisé en développement logiciel et en conception orientée objet.[6] Les 14 diagrammes UML sont dépendants hiérarchiquement et se complètent, de façon à permettre la modélisation d’un projet tout au long de son cycle de vie. Ces diagrammes sont : — Diagrammes structurels ou statiques : — Diagramme de classes 30
  • 44. Chapitre 4. Conception — Diagramme d’objets — Diagramme de composants — Diagramme de déploiement — Diagramme des paquetages — Diagramme de structure composite — Diagramme de profils — Diagrammes comportementaux : — Diagramme des cas d’utilisation — Diagramme états-transitions — Diagramme d’activité — Diagrammes d’interaction ou dynamiques : — Diagramme de séquence — Diagramme de communication — Diagramme global d’interaction — Diagramme de temps 4.2.2 Justification du choix L’UML est un langage formel et normalisé en termes de modélisation objet. Son indépendance par rapport aux langages de programmation, son caractère polyvalent et sa souplesse ont fait de lui un langage universel. En plus UML est essentiellement un support de communication, qui facilite la représentation et la compréhension de solution objet. Sa notation graphique permet d’exprimer visuellement une solution objet, ce qui facilite la comparaison et l’évaluation des solutions. L’aspect de sa notation, limite l’ambigüité et les incompréhensions. 4.3 Conception détaillée 4.3.1 Acteurs Un acteur représente l’abstraction d’un rôle joué par des entités externes (utilisateur, dispositif matériel ou autre système) qui interagissent directement avec le système (réception d’information, etc.). Pour notre application, il y trois acteurs principaux. 31
  • 45. Chapitre 4. Conception 4.3.2 Diagramme des cas d’utilisations Chaque usage que les acteurs font du système est représenté par un cas d’utilisation. Chaque cas d’utilisation représente une fonctionnalité qui leur est offerte afin de produire le résultat attendu. Ainsi, le diagramme de cas d’utilisation décrit l’interaction entre le système et l’acteur en déterminant les besoins de l’utilisateur et tout ce que doit faire le système pour l’acteur. Dans ce sens nous avons fait une application web pour la gestion des ressources humaines. 4.3.3 Vue statique Représenter par des diagrammes qui définissent l’avis statique de conception comme le diagramme de classes, cas d’utilisations ... etc. 4.3.3.1 Diagramme de classe Le diagramme de classes exprime la structure statique du système en termes de classes et de relations entre ces classes. La figure 4.1 montre le diagramme de classes qui collaborent au fonctionnement de notre application. 32
  • 46. Chapitre 4. Conception Figure 4.1: Diagramme de classes du système 33
  • 47. Chapitre 4. Conception 4.3.3.2 Description des classes Dans cette phase nous avons décrit chaque classe de notre système avec les relations entre les différentes classes. Tableau 4.1: Description des classes Nom de la classe Description Administrateur • Cette classe contient l’identifients de l’administrateur qui pourra accéder à son compte. DRH • Cette classe contient l’identifients du directeur des ressources humaines. • DRH hérite de la classe administrateur Employé • Cette classe présente les employés • Employé hérite de la classe DRH • Cette classe avoir les rélation plusieurs autres classes Jour repos • La classe de configuration les jours repos dans la semaine. Recrutement • La classe pour faire les rercutement des employés. Contrat • La classe qui regroupe les contacts de l’employé. Contrat • La classe qui regroupe les contrats du travail employé. Pointage • La classe pour la gestion de présence de l’employé. Formation • La classe ayant les listes des formations. Form emp • La classe de laision entre la classe employé et la classe formation. Paie • La classe pour regrouper les fiches de paies. 34
  • 48. Chapitre 4. Conception Rubrique • La classe pour lister les rubriques pour chaque paie. Autorisation • La classe contient l’autorisations d’employés. Etude • La classe contient l’études de l’employé. Expérience • La classe contient l’expérience de l’employé. Congé • La classe contient l’congés de l’employé. Activitylogs • La classe contient l’informations sur les requêtes exécutes (suppression et modification) sur la base de données. AccesLog • La classe contient l’informations sur les accès non autorisés au système. 4.3.4 Vue dynamique Dans cette phase nous allons choisir le diagramme des séquences pour présenter quelques scénarios, pour bien évaluer notre système. 4.3.5 Diagramme des séquences Dans cette section nous allons définir les diagrammes des séquences de notre système. 4.3.5.1 Diagramme des séquences « Authentification » Le diagramme 4.2 ci-dessous montre les scénarios pour s’authentifier en tantque administrateur, DRH ou bien employé. Notre diagramme contient un seul acteur et trois objets 35
  • 49. Chapitre 4. Conception Figure 4.2: Diagramme des sequences "Authentification" Le diagramme montre les scénarios d’authentifcation quelque soit l’utilisateur "administrateur, DRH ou bien employé). Pour l’authentification de l’utilisateur doit être saisir le nom d’utilisateur et son mot de passe, comme d’habitude la vérification dans la base de données. Dans le cas le nombre d’essais est dépasse la limite un blocage sera effectué au formulaire d’authentification. 4.3.5.2 Diagramme des séquences « Gérer de la paie » Le diagramme 4.3 ci-dessous montre les scénarios pour gérer les salaires d’employés de la société. 36
  • 50. Chapitre 4. Conception Figure 4.3: Diagramme des sequences "Gérer de la paie" 37
  • 51. Chapitre 4. Conception Le scénario définit comme suit : — Le systme affiche la liste des employés — Le DRH choisit l’employé et le mois et l’année — Si la date déjà existe un message d’erreur s’affiche — Sinon la fiche de paie s’affiche — Le DRH peut traiter les rubriques et valider par son mot de passe — Si le mot de passe est incorrect on aura un message d’erreur — Sinon le traitement sera effectué avec succès. 4.3.5.3 Diagramme des séquences « Demande de congé » Le diagramme 4.4 ci-dessous montre les scénarios pour s’authentifier en tantque administrateur, DRH ou bien employé. Figure 4.4: Diagramme des sequences "Demande de congé" 38
  • 52. Chapitre 4. Conception Le diagramme montre les scénarios pour l’employé peut passer un demande de congé comme suit : — L’employé choisit la page de demande congé — L’interface sera affichée contient un calendrier la liste des congé demandés — L’employé choisi la date de début du congé et la durée et valider — Le DRH valider le congé par oui ou non. Conclusion Dans ce chapitre nous avons présenté le langage de modélisation et la justification du choix, par ailleurs nous avons dégagé les tâches majeures avec les diagrammes des classes et le diagramme des séquences. Dans la partie qui suit nous essayerons de décrire l’implémentation de notre application. 39
  • 53. Chapitre 5 Réalisation Plan 1 Environnement du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2 Travail réalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
  • 54. Chapitre 5. Réalisation Introduction En détaillent ce chapitre, nous sommes déjà passé par les étapes nécessaires à fin d’entrainer la phase de la réalisation. Le problème a été profondément analysé, nous avons défini une conception complète à notre jugement. Une conception qui comporte et décrit tous les besoins de l’application. Dans ce chapitre nous commencerons par la description de l’environnement de développement (matériel et logiciel) ainsi que les différents outils utilisées. Ensuite, nous présenterons les différents aspects de fonctionnement de notre application. 5.1 Environnement du travail Dans ce paragraphe, nous allons présenter l’environnement matériel et logiciel de développement de l’application que nous avons utilisée. 5.1.1 Environnement matériel Pour élaborer le travail nous sommes besoins d’un ordinateur, Le tableau 5.1 ci-dessous illustre les différentes caractéristiques de notre ordinateur : Tableau 5.1: Caractéristiques matériels Marque • ACER Modèle • Aspire E 15 Processeur • Intel Core i7 2.4 GHz RAM • 8 GB Disque Dur • 1 TB Système d’exploitation • Windows 10 Professionnel 64 bits 5.1.2 Environnement logiciel L’offre d’une application satisfaisante aux besoins dépend un environnement de développement solid et efficace ayant eu des documentations, pour cela l’EDI est nécessaire pour le développement de notre application : • PyCharm : est un environnement de développement intégré spécialement dédié au développement en Python, il s’agit d’un produit commercial mais une solution académique existe. Il permet l’analyse de code et contient un débogueur graphique. Il permet également la gestion des 41
  • 55. Chapitre 5. Réalisation tests unitaires, l’intégration de logiciel de gestion de versions, et supporte le développement web avec Django. Développé par l’entreprise tchèque JetBrains, c’est un logiciel multi-plateforme qui fonctionne sous Windows, Mac OS X et Linux. Il est décliné en édition professionnelle, diffusé sous licence propriétaire, et en édition communautaire diffusé sous licence Apache. [7] Figure 5.1: Logo PyCharm c’est un logiciel propriétaire, profesionnel et portable qui facilité la phase de développement du projet. • Star UML : est un logiciel de modélisation UML de notre projet. Figure 5.2: Logo Star UML • Sqlite Browser : est un outil visuel et open source de haute qualité pour créer, concevoir et éditer des fichiers de base de données compatibles avec SQLite. Il est destiné aux utilisateurs et aux développeurs souhaitant créer des bases de données, rechercher et modifier des données. Il utilise une interface similaire à une feuille de calcul et vous n’avez pas besoin d’apprendre des commandes SQL compliquées.[8] 42
  • 56. Chapitre 5. Réalisation Figure 5.3: IHM SQLite Database Browser c’est un SGBD très simple pour gerer les bases de données du projet. 5.1.3 Langage de programmation et les technologies utilisées L’application doit être bâtie sur des nouvelles technologies dont laquelle on pourra respecter nos exigences du projet. Le tableau 5.2 ci-dessous illustre les différents avantages et inconvénients des platefomes. Tableau 5.2: Comparaison entre les plateformes Plateforme Avantages Inconvénients Django • l’architecture MTV • Les vues génériques • Les formulaires automatiques • Sécurite • Protabilité • Complication de la migration J2EE • Architecture claire • Adopté aux grands projets • Portabilité • API nombreuses • Code difficilement réutilisable • Application monolithique 43
  • 57. Chapitre 5. Réalisation PHP • Syntaxe classique et pratique • Maintenance facile • Interprété par le serveur • Absence de débuggeur • Il n’est pas une architecture fiable .NET • Microsoft l’a utilisé • Développement rapide avec beaucoup d’options pré-codées • Une excellente interface utilisateur pour les développeurs • le déploiement se fait uniquement sous Windows Ruby on Rails • Migration aisée • Utilisation simple • Communauté riche • Support AJAX et Javascript • Débogage très diffcile • Ressources inutiles Après la comparaison les différents plateformes web, nous avons choisi la plateforme Djando qui répond à nos exigences et offre un environnement sécurisé et efficace. pour cela nous avons eu les langages de programmation suivants : • Python : est un langage de programmation simple et très performante aussi très utilisables dans les domaines embarque, web et des applications du bureau. nous avons choisi la version 3.6.4. • HTML 5 : est un langage de balisage pour représenter les pages web "partie client". • Javascript : est un langage de programmation côté client et aussi dans les autres cas côté serveur pour les pages web interactives. • Bootstrap 4 : est une collection d’outils utiles à la création du design (graphisme, animation et interactions avec la page dans le navigateur, etc.) Pour rappel, un framework est un ensemble d’outils et de composants logiciels organisés conformément à un plan d’architecture et des patterns, l’ensemble formant ou promouvant un « squelette » de programme. Il est souvent fourni sous la forme d’une bibliothèque logicielle, et accompagné du plan de l’architecture cible du framework. L’un des frameworks les plus connus, agréables, complets est Boostrap. Actuellement en version 4. Le CSS étant de base assez archaïque, Bootstrap se charge pour vous de réaliser toute la structure en CSS pour que votre site soit visuellement agréable et en plus de ça, responsive et dans 44
  • 58. Chapitre 5. Réalisation des teintes de couleurs attrayantes Il permet ainsi un large gain de temps pour un meilleur rendu [9] Nous préférons utiliser cette plateforme qui offre les besoins des interfaces et ergonomie. • SQL signifie Structured Query Language c’est-à-dire Langage d’interrogation structuré. En fait SQL est un langage complet de gestion de bases de données relationnelles. Il a été conçu par IBM dans les années 70. Il est devenu le langage standard des systèmes de gestion de bases de données (SGBD) relationnelles (SGBDR). [10] 5.2 Travail réalisé Cette section comporte des captures d’écran de quelques interfaces de l’application réalisée accompagnée par une brève description. 5.2.1 Interfaces d’authentification Dans un premier lieu, l’utilisateur (Administrateur, Directeur des ressources humaines ou l’employé) doit s’authentifier pour accéder aux différentes fonctionnalités de l’application. Figure 5.4: Interfaces d’authentification 45
  • 59. Chapitre 5. Réalisation la figure 5.4 montre les scénarios d’authentification des trois acteurs principaux : — 1 : Après le lancement de l’application la première interface sera affiché qui contient les liens pour accès aux comptes pour chaque acteur (ADMINISTRATEUR, DIRECTEUR DES RESSOURCES HUMAINES et EMPLOYÉ). — 2 : L’utilisateur a choisi le type de compte, il existe un formulaire d’authentification pour accès au compte, le bouton de retour vers la première interface, le deuxième qui s’appelle "ANNULER" pour vider le formulaire et le dernier pour valider la connexion. — 3 : Dans le cas de la connexion si le nombre de tentative d’échec dépasse la limite (cinq tentative) on aura un blocage de quinze minutes dans le formulaire le bouton "CONNEXION" sera désactivée pendant quinze minutes sinon l’utilisateur pourra accès à son compte avec succès. 5.2.2 Interfaces d’administrateur L’administrateur est le premier acteur dans une hiérarchie générale des acteurs, il gère les tâches d’administration 5.2.2.1 Interfaces gérer DRH Le rôle principal de l’administrateur de créer l’acteur "DRH" et garder le trafic des données c’est-à-dire les journaux d’activités et l’accès aux comptes pour les autres utilisateur (DRH et employés). 46
  • 60. Chapitre 5. Réalisation Figure 5.5: Interface liste des DRH La figure 5.5 présente l’interface de gérer les comptes des DRH — Il y a un tableau qui affiche les comptes de manière dynamique, la possibilité de filtrage, pagination et le triage de données. — L’administrateur peut supprimer les comptes après la validation par son mot de passe. — Pour créer un nouveau compte, il faut cliquer sur le bouton "NOUVEAU" pour afficher l’interface d’ajout les nouveaux comptes qui sont créent manuellement sauf le mot de passe qui sera généré automatiquement et l’y envoyer par e-mail. — Pour imprimer la liste des comptes il faut cliquer sur le bouton "IMPRIMER". 5.2.2.2 Interface journal d’accès 47
  • 61. Chapitre 5. Réalisation Figure 5.6: Interface journal d’accès La figure 5.6 a montrée la liste des tentatives pour accès aux comptes utilisateurs avec échec, qui compte les nombres des tentatives et collecte les données comme l’adresse IP, la date et le type de compte utilisateur. L’administrateur peut afficher les détails et l’imprimer de la liste. 5.2.2.3 Interface journal d’activités Figure 5.7: Interface journal d’activités Comme l’interface précédente la figure 5.7 regroupée la liste d’activités d’utilisateurs de niveau hiérarchique inférieure, cette interface montre les actions qui seront affectées aux données (exemple : 48
  • 62. Chapitre 5. Réalisation la suppression, modification de données). D’après cette liste l’administrateur pourra consulter les tables. 5.2.3 Interfaces DRH Le directeur des ressources humaines est le deuxième acteur dans hiérarchie de l’application et la plupart des actions seront affectées au niveau de son part. Le DRH peut gérer les tâches suivantes : — La gestion d’employés — La gestion des recrutements — La gestion des pointages — La gestion des payements — La gestion des formations — La gestion des congés 5.2.3.1 Interfaces gestions d’employés Le DRH peut créer, modifier et supprimer l’employé, ainsi ces informations supplimentaires (l’études, l’experiences, les contrats ...) Figure 5.8: Interface liste d’employés Dans le cas de choisir la gestion d’employés, une liste sera affichée, la figure 5.8 ci-dessus illustre cette liste qui offre la recherche, le tri et le filtrage ainsi la pagination de données. pour supprimer un employé il faut cliquer sur le bouton dans la colonne d’actions et valider par le mot de 49
  • 63. Chapitre 5. Réalisation passe du DRH (voir la figure 5.10), la modification aussi existe et permet de faire une mise à jour de données de l’employé. L’affichage des détails pour chaque employé, l’impression et la création de nouveaux employés. Figure 5.9: Interface détails de l’employé La page détail contient toutes les données pour chaque employé. on note que l’existant des informations personnelles (carte d’identité nationale, la date de naissance ...), les contacts (numéros téléphonique et les adresses électroniques), la photo de profile si elle existe, les contrats, l’expériences, l’études et les fiches de paie (il peut le visualiser, imprimer et l’exporter en format PDF en cas de besoin). 50
  • 64. Chapitre 5. Réalisation Figure 5.10: Interface supprimer employé L’assurance d’une application sécurisée nécessite un facteur de vérification avant la suppression d’informations. pour cela la validation par mot de passe existe, si le mot de passe a été vérifié, les données auront supprimé et auront ajouté aux journaux d’activités, sinon un message d’erreur sera affiché. 5.2.3.2 Interface de recrutement Figure 5.11: Interface de recrutement Pour gérer la gestion de recrutement, le DRH peut ajouter et visualiser l’état de chaque offre 51
  • 65. Chapitre 5. Réalisation d’emploi. 5.2.3.3 Interfaces de la gestion des pointages La gestion de pointage est une tâche très importante dans les ressources humaines, dans ce projet notre application sera liée avec une pointeuse qui compte les absences et les retards d’employés. Figure 5.12: Interface de pointage Selon la figure 5.12 l’interface principale contient la liste de présence et la liste d’autorisation avec la possibilité de la recherche par date, dans les actions le DRH peut modifier les paramètres, ajouter les autorisations et l’importation des fiches de présences. 52
  • 66. Chapitre 5. Réalisation Figure 5.13: Interface des paramètres La figure 5.13 illustré les jours de repos et la liste des jours fériés. 5.2.3.4 Interfaces de la gestion de la paie La gestion de la paie aussi une tâche de RH très importante, les méthodes classiques de calcul les salaires sont de gaspillages les ressources et le temps. Figure 5.14: Interface principale de la gestion de la paie La figure 5.14 ci-dessus montre une liste d’employés pour chacun on peut traiter son salaire après la sélection du mois et de l’année et validation le choix. 53
  • 67. Chapitre 5. Réalisation Figure 5.15: Interface de traitement d’une fiche de paie Notre application offre une interface lisible et simple à utiliser dans la figure 5.15 on observe il y a des informations de l’employé, le contrat et le salaire brut. Le DRH peut ajouter, supprimer et modifier des rubriques. Lors de validé la fiche de paie l’utilisateur doit valider par son mot de passe sinon un message d’erreur sera affiché. 5.2.3.5 Interface de la gestion de formation Pour chaque entreprise certaine de ces employés nécessitent des cours ou des formations dans les nouvelles technologies ou dans les autres domaines. 54
  • 68. Chapitre 5. Réalisation Figure 5.16: Interface principale de la gestion de formation Le DRH peut affecter les actions suivantes : — Créer les nouvelles formations — Modifier et supprimer les formations — Afficher les détailles Figure 5.17: Interface détails des formations Ici l’utilisateur peut ajouter l’employés aux cours. 55
  • 69. Chapitre 5. Réalisation 5.2.3.6 Interface la gestion des congés La planification des congés est un grand défi pour chaque société notamment le congé annuel. Figure 5.18: Interface des congés Le DRH a reçu des demandes des congés (figure 5.18). Après l’examiner des demandes il faut prendre une décision par l’acceptation ou le refus qui seront affichés dans la calendrier. 5.2.4 Interface d’employé L’employé est l’acteur de niveau hiérarchique inférieure dans notre projet, donc son rôle c’est de consulter leur information (exemple : voir les fiches de paies).il peut voir les rubriques suivantes : — Compte : affichage l’identification de l’employé (informations personnelles, contacts, études, expérience ...) — Pointage : visualiser l’état de pointage et l’autorisation 56
  • 70. Chapitre 5. Réalisation — Paie : Afficher et imprimer les bulletins de paie — Formation : lister les formations y participer — Congé : voir et demander les congés l’employé validé l’authentification, il ira à la page d’accueil qui contient le compte de l’employé. Figure 5.19: Interface de page d’accueil Cette page (La figure 5.19) contient toutes l’informations de l’employé qu’il peut modifier et ajouter les contacts, la photo de profile, l’expérience et l’étude, d’autre part il voit les données concernant les contrats et le travail. 57
  • 71. Chapitre 5. Réalisation Figure 5.20: Interface bulletin de paie La figure 5.20 ci-dessus montre la liste des bulletins de paie de l’employé, qui pourra voir, imprimer et exporter. Figure 5.21: Interface planning des congés L’employé peut demander les congés grâce l’application et le suivi l’état de chaque demande : • Rouge : demande réfusée • Vert : demande acceptée 58
  • 72. Chapitre 5. Réalisation Conclusion Dans ce chapitre on a mis l’accent sur la description des caractéristiques de l’environnement du travail et décrit les plateformes matérielles et logicielles sur lesquelles nous avons construit notre application d’une part, d’autre part par la représentation des différentes interfaces développées tout au long de l’application. 59
  • 73. Conclusion générale Dans le cadre de projet de fin d’études, nous avons conçu et nous avons réalisé une application web pour la gestion des ressources humaines des sociétés, dans l’entreprise accueillante SSCF Ariana durant quatre mois de stage. Notre mission consiste à déploie cette application pour gérer les tâches dans les sociétés avec un environnement sécurisé, d’interfaces hommes machines simples, cohérentes et la facilité d’utilisation ainsi l’assurance de l’ergonomie. Pour réussir de cette mission nous avons choisi un environnement de développement qui réponde à nos exigences c’est le plate-forme Django et le travail initialement avec la base de données Sqlite. Pour l’organisation de notre travail nous avons choisi le modèle en cascade comme la méthodologie du travail vu sa architucture simple. Finalement nous avons terminé notre projet dans la phase de conception et la phase de développement de l’application dont l’application en mode de production, il ne reste que les améliorations en lui ajoutant quelques fonctionnalités et le développement d’une application mobile pour facilité l’accès à distant et éviter la centralisation de données. Ce stage a été la bonne occasion pour renforcer nos compétences techniques dans le domaine de développement ainsi pour sortir du cadre académique et appliquer les connaissances acquises lors des études dans les environnements réels de travail qui nous a permis de passer au domaine professionnel et d’apprendre plusieurs attitudes et habitudes sociales telles que le travail en groupe et la collection d’informations pour extraire les besoins des acteurs du système à mettre en œuvre. 60
  • 74. Bibliographie [1] P. ROUSSEL. (1998). Méthodes de recherche en Gestion des Ressources Humaines. [MAI 2019], Toulouse School of Management Research, adresse : https://tsm- research.fr/ annuaire/128-patrice-roussel. [2] P. Gilbert. (2001). Informatisation de la GRH. [MAI 2019], IAE de Paris – Université Paris I, adresse : http://www.gregoriae.com/dmdocuments/2001-06.pdf. [3] P. Grémiaux. (JUIN 2019). A propos. [MAI 2019], eurecia, adresse : https://www.eurecia. com/societe. [4] S. Mokrani. (JUIN 2019). Top 10 des logiciels RH open source. [MAI 2019], capterra, adresse : https://www.capterra.fr/blog/269/top-10-logiciels-rh-open-source-gratuits. [5] C. M. Sanchez. (2018). Decouvrez le framework Django. [MAI 2019], OpenClassrooms, adresse : https://openclassrooms.com/fr/courses/4425076-decouvrez-le-framework-django. [6] L. AUDIBERT. (2013). UML 2 De l’apprentissage à la pratique. [MAI 2019], OpenClassrooms, adresse : https://laurent-audibert.developpez.com/Cours-UML/?page=introduction- modelisation-objet. [7] J.-P. HERMAND. (MAI 2015). Programmation en Python. [MAI 2019], LISA (Laboratories of Image Synthesis et Analysis), adresse : http://lisa.ulb.ac.be/index.php/Programmation_ en_Python. [8] C. CFAURY. (4 FÉVRIER 2018). DB Browser for SQLite. [MAI 2019], blaisepascal, adresse : http://info.blaisepascal.fr/cpge-db-browser-for-sqlite. [9] C. QUENTEL. (Nouvembre 2016). Bootstrap. [MAI 2019], supinfo, adresse : https://www. supinfo.com/articles/single/3732-utiliser-bootstrap-designer-votre-site-web. [10] R. Grin. (2008). Langage SQL. [MAI 2019], Université de Nice Sophia-Antipolis, adresse : http://deptinfo.unice.fr/~grin/messupports/sql.pdf. 61
  • 76. . . : Résumé Ce travail est inscrit dans le cadre du projet de fin d’étude pour l’obtention du diplôme national en master professionnel en sciences et technologies spécialité sécurité des systèmes informatiques communicants et embarqués. Il a pour objectif de concevoir et réalisation d’une application de gestions des ressources humaines pour les sociétés. Pour la réalisation de ce projet, nous avons utilisé les méthodologies et le framework de développement Django de Python. Mots clés : Sécurité, ressources humaines, développement, Python Abstract This work is a part of the final project study for obtaining the national diploma in a professional master’s degree in science and technology specialty security communicating and embedded com- puter systems.Its objective is to design and implement a human resource management application for companies. For the realization of this project, we used the methodologies and development framework Django of Python. Keywords : Security, Human Resources, Development, Python isi@isi.rnu.tn : 71 706 698 : 71 706 164 : 2080 2 2, Abou Raihane Bayrouni 2080 l’Ariana Tél : 71 706 164 Fax : 71 706 698 Email : isi@isim.rnu.tn