Derniere Version Pfe
Derniere Version Pfe
Par
Tahar SASSI
Par
Tahar SASSI
Signature et cachet
Signature
Dédicaces
Je dédie ce travail à :
À ma chère mère Naima, ma raison d’être, mon héroïne. Aucun hommage ne puisse
exprimer ma reconnaissance pour tous les énormes sacrifices qu’elle a fait pour moi,
À mon cher père Mohamed, mon idole, qui n’arrête jamais de se dévouer son temps et
ses efforts pour mon confort et l’achèvement de mes études et formation.
A mes soeurs sahar et nesrine avec qui je partage toutes mes sensations, sentiments
et souvenirs d’enfance.
À tous mes copains et copines du Club ArtBox qui m’ont été une famille solidaire tout
au long de ces années d’études universitaires et qui m’ont supporté et offert un soutien moral
dans des moments délicats. Avec eux, j’ai vécu des expériences merveilleuses et agréables.
À tous mes amis fidèles. Qu’ils apercevront dans ce projet le fruit de leurs supports et
encouragements durant toute la période précédente.
Tahar SASSI
ii
Remerciements
A l’occasion de cette présentation, je profite d’exprimer de tout mon coeur mes sincères
remerciements et mes grandes gratitudes aux personnes qui ont contribué, de prés ou de loin, à
mon succès dans mon cursus universitaire.
Tout d’abord, Monsieur Walid BOUDICHE, le chef département développement mobile, qui
a cru en moi et en mes compétences, qui m’a accueilli dans l’endroit de travail et qui m’a mis dans
le cadre de projet.
J’adresse aussi mes vifs remerciements à mon encadrante Madame Inaam Ben CHEHIDA
pour ses consultations importantes qui m’ont mis le pied à l’étrier, ainsi pour sa patience, sa
générosité et ses encouragements au cours des jours d’encadrement.
Pareillement, je tiens à exprimer mes grandes gratitudes à mon encadrante académique
Madame Zohra CHANNOUF pour son encadrement, ses conseils et ses directives, sa gentillesse
et son sens de responsabilité tout au long de la rédaction du rapport de stage.
iii
Table des matières
Introduction générale 1
1 Cadre du projet 3
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1 Création et forme juridique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.2 Missions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Étude de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1 Description de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 Critique de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Méthodologie de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1 la méthode Agile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4.2 la méthode Scrum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
iv
2.6 Architecture de la solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.6.1 Architecture physique de la solution . . . . . . . . . . . . . . . . . . . . . . . 22
2.6.2 Architecture logique de la solution . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.7.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.7.2 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3 SPRINT 1 29
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.1 Backlog du sprint 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2.1 Diagramme de cas d’utilisation du sprint 1 . . . . . . . . . . . . . . . . . . . . 31
3.2.2 Raffinement du cas d’utilisation
«Demander document administratif» . . . . . . . . . . . . . . . . . . . . . . 33
3.2.3 Raffinement du cas d’utilisation "Valider document administratif" . . . . . . 35
3.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3.1 Diagrammes de séquences systèmes . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3.2 Diagramme de classe du Sprint 1 . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4 Sprint 2 52
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.1 Backlog du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2.1 Diagramme de cas d’utilisation du Sprint 2 . . . . . . . . . . . . . . . . . . . 54
4.2.2 Raffinement du cas d’utilisation «Traiter demande» . . . . . . . . . . . . . . . 56
4.2.3 Raffinement du cas d’utilisation «Consulter données personnelles» . . . . . . 58
4.2.4 Raffinement du cas d’utilisation «Gérer utilisateur» . . . . . . . . . . . . . . . 60
4.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.3.1 Diagramme de séquences système . . . . . . . . . . . . . . . . . . . . . . . . . 64
v
4.3.2 Diagramme de classe du Sprint 2 . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Conclusion générale 78
Bibliographie 79
vi
Table des figures
vii
Table des figures
viii
4.13 panneau d’utilisateur (partie 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.14 panneau d’utilisateur (partie 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.15 formulaire de demande d’attestation de travail . . . . . . . . . . . . . . . . . . . . . . 72
4.16 appui sur l’icône d’ajout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.17 saisie de coordonnées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.18 ajout effectué avec succès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.19 appui sur l’icône de modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.20 modification de coordonnées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.21 modification effectué avec succès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.22 appui sur l’icône de suppression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.23 suppression effectué avec succès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.24 notification d’envoi de document par e-mail . . . . . . . . . . . . . . . . . . . . . . . 76
4.25 document d’attestation de travail bien reçu en boite mail de demandeur . . . . . . . 76
4.26 document d’attestation de travail traité (en emulateur mobile) . . . . . . . . . . . . . 77
4.27 document d’attestation de travail traité (en format PDF) . . . . . . . . . . . . . . . 77
ix
Liste des tableaux
1.1 Tableau comparatif entre les méthodes classiques et les méthodes Agiles . . . . . . . 11
x
Liste des abréviations
— AS = Attestation de Salaire
— AT = Attestation de Travail
— Cg = Congé de repos
— FP = Fiche de Paie
— UI = User Interface
xi
Introduction générale
L’informatique est devenue aujourd’hui un outil très important qui permet d’améliorer la
rentabilité et la productivité dans l’entreprise. En effet elle offre un gain de temps, une meilleure
visibilité sur le plan national et international.
La tendance courante des entreprises est de migrer l’informatisation de leur systèmes web ou desktop
vers les systèmes mobiles afin de rendre le flux de travail plus synchronisé, plus actif et plus
rapide. Cette migration vers le mobile est Justifiée en plusieurs raisons, nous mentionnons les plus
importantes.
D’une part, les applications mobiles améliorent la communication entre les employées à travers les
services de notification, aussi elles garantissent une meilleure performance (rapidité et fonctionnalité)
que les applications web.
D’autre part, les applications mobiles offrent une disponibilité totale à gérer les exigences de travail
critiques, à tout moment. Aucun problème de lieu ou temps d’utilisation d’applications mobiles tant
que la zone d’utilisation de smart phone est couverte par un réseau internet.
Pour suivre cette évolution technologique le centre national de l’informatique (CNI) a décidé de
réaliser une application mobile permettant de gérer les demandes des documents administratifs et
financiers de ses employés. Cette application va diminuer la charge de demandes sur le système de
gestion classique (site web) et offre un gain en temps et en ressources à la fois.
Notre sujet de fin d’études s’inscrit autour de cette nouvelle vision du CNI qui nous permettra de
satisfaire ses besoins et d’appliquer toutes les notions que nous avons appris durant nos trois ans
d’études.
Notre sujet vise à créer une application mobile de gestion des ressources humaines et plus spécifiquement
les demandes des congés et des documents administratifs tel que les attestations de travail.
Ce rapport présentera les différentes étapes de la réalisation de ce projet en 4 chapitre.
Le premier chapitre, intitulé «Cadre de projet», dédié pour la présentation de l’organisme d’accueil,
le sujet et la méthodologie de travail adoptée.
Le deuxième chapitre, intitulé «Analyse et spécification des besoins», est consacré à l’extraction
des différents besoins fonctionnels et non fonctionnels, la présentation de Backlog du produit et des
sprints, l’architecture de la solution et la mise en place de l’environnement matériel et logiciel.
les deux derniers chapitres 3 et 4,«Sprint 1 et 2» constituent le corps de notre rapport. Ces deux
1
Introduction générale
chapitres seront consacrés aux sprints planifiés en exposant pour chacun l’analyse,la conception,et
la réalisation à travers les interfaces graphiques.
2
Chapitre 1
Cadre du projet
Plan
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Étude de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4 Méthodologie de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Chapitre 1. Cadre du projet
Introduction
Dans ce chapitre, nous allons mettre le travail dans son cadre général . D’abord nous allons
présenter l’organisme d’accueil où se déroulé le stage. Ensuite, nous allons introduire les limites de
l’application actuel et la solution proposé . Enfin , nous allons montrer la méthodologie adoptée lors
de la réalisation du notre projet.
4
Chapitre 1. Cadre du projet
1.1.2 Missions
— Élaboration des Cahiers des charges réseaux et sécurité Assistance à la réception et à l’installation
de réseaux.
— Hébergement des serveurs , des applications et des données avec ou sans exploitation.
— Réalisation des Formation sur les applications nationales et des Séminaires d’expertise.
l’étude de l’existant est une étude nécessaire qui nous aide à mieux comprendre le fonctionnement
et à découvrir les imperfections dans le système actuel afin de créer des solutions efficaces et plus
optimisées.
l’application existante présente un site web, ce site offre plusieurs services des demandes de
documents et ces services sont accessible aux tous fonctionnaires de CNI.
Aussi, nous trouvons l’unité de gestion et de traitement de demandes,accessible seulement aux agents
DAF (gestionnaire de documents).
5
Chapitre 1. Cadre du projet
Ce site est représenté par une interface utilisateur qui indique les modules suivants :
— Authentification.
— Services administratifs.
— Services financiers.
— Panneau utilisateur.
— Espace utilisateur.
6
Chapitre 1. Cadre du projet
7
Chapitre 1. Cadre du projet
lors de l’analyse de l’application web existante, nous avons observé plusieurs défaillances tels
que :
— La lenteur : si on résume la performance d’un site web, c’est la vitesse d’exécution de ses
fonctions. En effet, le site existant prend beaucoup de temps à démarrer et à fonctionner ce
qui est un grand inconvénient et désagréable pour l’utilisateur de cette application. Ce défaut
est présent car il existe un seul serveur web pour stocker toutes ces données. Au contraire,
notre application mobile sera plus performante car elle va stocker ses données sur deux espaces
mémoire (localement sur les mémoires des smart phones et externe sur le serveur web).
— Le manque d’indicateur d’alertes : Lorsque nous faisons une saisie incorrecte des champs(nom,
prénom, adresse, mot de passe, e-mails, etc) aucun contrôle de saisie n’est fait. Cette absence
de contrôle n’aide pas l’utilisateur à corriger l’erreur..
— L’absence de notifications : les validateurs des demandes oublient souvent de voir la liste des
nouvelles demandes par la suite la demande sera bloquée, cet blocage peut impliquer des soucis
pour le demandeur.
8
Chapitre 1. Cadre du projet
— Il y a des modules et des sous modules qui présentent des défaillances a cause de défauts
techniques. les modules tels que :
— l’espace utilisateur et le panneau utilisateur.
les sous modules tels que :
— services financières (sous la module de services).
— demandes encore de traitement (sous modules de validation)
C’est pour cela qu’on trouve des erreurs fréquentes lors d’évaluation des salariés .
Par conséquent nous chercherons à développer une solution qui sera bien organisée et fonctionnelle
en utilisant des technologies et des services récents .
1.3 Solution
Afin de remédier ces défaillances, le CNI a choisit comme solution de développer une application
mobile qui compense et complète le site web. Bien entendu, cette application corrigera les lacunes du
ce site et réparera ses défauts, grâce au progrès continu et à l’évolution énorme de la programmation
mobile qui garantissent une bonne rapidité et une haute efficacité qui peut surpasser les propriétés
des sites web . D’une façon plus précise l’application mobile sera développée pour avoir : Une capacité
à envoyer (par fonctionnaire) et valider(par agent DAF) les demandes par leurs smart phones, dans
ou en dehors d’établissement, et à tout moment.
— Une facilité d’envoi les notifications et les alertes .
— Une fonctionnement plus rapide que le site web existant.
— Une personnalisation à meilleure entre les fonctionnaires et les agent DAF à l’échelle de tableau
de bord et selon leurs privilèges
Pour assurer un bon déroulement de travail, il faut choisir une méthodologie de travail bien
adapté.
Au niveau de cette partie nous allons présenté la méthodologie Agile, puis nous allons mentionner
l’une de ses méthodes appelé Scrum qui sera appliqué tout au long du projet.
9
Chapitre 1. Cadre du projet
La méthode Agile se base sur un cycle de développement qui porte le client au centre. Le
client est impliqué dans la réalisation du début à la fin du projet. Grâce à la méthode agile le
demandeur obtient une meilleure visibilité de la gestion des travaux qu’avec une méthode classique.
L’implication du client dans le processus permet à l’équipe d’obtenir un feedback régulier afin
d’appliquer directement les changements nécessaires. Cette méthode vise à accélérer le développement
d’un logiciel. De plus, elle assure la réalisation d’un logiciel fonctionnel tout au long de la durée de
sa création.[2]
10
Chapitre 1. Cadre du projet
Tableau 1.1: Tableau comparatif entre les méthodes classiques et les méthodes Agiles
Gestion des Processus district et rigoureux de Gestion des risques intégrée dans le
risques gestion des risques. processus global.
Équipe responsabilisée, ou
Équipe avec ressources spécialisés l’initiative et la communication
Équipe
dirigées par un chef de projet. sont privilégiées , soutenue par le
chef de projet.
11
Chapitre 1. Cadre du projet
Bien entendu, la méthode Scrum est conforme aux principes des méthodes agiles. Comme
toutes les méthodes agiles, Scrum privilégie la livraison rapide d’un prototype, opérationnel par
définition, afin que les clients, donneurs d’ordre et membres de l’équipe puissent l’évaluer. Cette
démarche participative active est un atout fondamental. Elle garantit pour le client le juste équilibre
entre l’investissement prévu et le produit finalement livré. L’étude du prototype permet l’évaluation
des fonctionnalités réalisées, et facilite la réflexion commune sur l’opportunité de futurs développements.
D’autre part, l’étroite intimité entre les clients utilisateurs et les prestataires développeurs facilite
l’appropriation future de l’outil.[3]
Conclusion
12
Chapitre 2
Plan
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 Backlog du produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
6 Architecture de la solution . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
7 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Chapitre 2. Analyse et spécification des besoins
Introduction
Ce chapitre représente une partie analytique ciblant à décortiquer les différentes phases de
notre projet et à interpréter et simplifier nos tâches. ainsi Elle vise à identifier, définir et exposer les
acteurs, le Backlog du produit et les différents besoins fonctionnels et non fonctionnels. Aussi elle
présente la planification des différents sprints. Aussi bien que ça, ce chapitre nous donne un bref
aperçu sur les technologies et les langages de programmation adoptés pour la mise en place de notre
projet.
Dans cette étape , nous allons mentionner les parties principales de la méthodologie Scrum
en en définissant les taches et le Backlog du produit et la planification des sprints.
• Product owner (Le propriétaire du produit) : c’est le personne qui représente le client officiellement.
Il peut aussi joue le rôle de client et et d’utilisateur à la fois . comme rôle , il détermine, met en
ordre et transfère les fonctionnalités du produit les dans une liste du priorité et d’estimation
afin de charger le Backlog du produit.
• Scrum master(Le directeur de produit) : IL joue le rôle de coach ou formateur de l’équipe. c’est
le personne qui aide toute la groupe à apprendre les taches requis et avancer dans le travail ,
dans des meilleures conditions , en respectant chaque sprint.
14
Chapitre 2. Analyse et spécification des besoins
réaliser la conception, le
Scrum team développement, les tests de Tahar SASSI
validation et le déploiement
Cette partie nous permet d’identifier différents besoins afin d’avancer correctement dans dans
l’achèvement de projet .
les besoins fonctionnels représente les fonctionnalités qui sont évidentes dans l’application et
qu’on ne peuvent pas les ignorées en raison de leur valeur importante dans l’application.
Dans notre cas :
L’application doit permettre au fonctionnaire de :
- S’authentifier.
- Consulter les modules et les services.
- Envoyer une demande d’attestation de travail ou de congé de repos.
- Recevoir une première notification indiquant l’acceptation ou le rejet de la demande envoyée.
- Dans le cas d’acceptation de demande envoyée, recevoir le document demandé par e-mail et en
format PDF.
L’application doit permettre l’agent DAF de :
- S’authentifier
- Valider les demandes envoyées.
- Traiter les demandes validées.
- Avoir une alerte (rappel) s’il existe de(s) demande(s) non validée(s) ou non traitée(s).
15
Chapitre 2. Analyse et spécification des besoins
Les besoins non fonctionnels présentent toutes les contraintes auxquelles sont soumis le
système pour garantir son bon fonctionnement. Parmi ces besoins, nous citons :
• Disponibilité
• Sécurité
Puisque notre application emmagasine des données confidentielles tels que : adresse, e-mail, mot de
passe, numéro de CIN, Identifiant unique. Toutes ces informations seront protégées.
• Performance
• Portabilité et compatibilité
Notre application doit être portable, fonctionnelle et compatible sur les différents appareils
(Samsung, iPhone, OPPO, etc) et avec les plus important systèmes d’exploitation mobiles de monde
(Android et iOS).
• Ergonomie
L’ergonomie couvre plusieurs éléments tels que la densité d’éléments sur les écrans, la disposition
et le flux, l’Interface Utilisateur et les couleurs. Bien évidement tous ces éléments seront, claires,
simples et agréables.
16
Chapitre 2. Analyse et spécification des besoins
Le diagramme de cas d’utilisation est une représente graphiquement accès simple qui aide
toutes les participants dans le travail à comprendre leurs projet . En effet , c’est une modélisation
des interactions entre les utilisateurs et le système, il nous donne une vision globale du fonctionnel
du système en décrivant les besoin , pointant sur les grandes fonctions et identifiant les acteurs.
les acteurs désignent les entités externes qui interagissent avec le système. Comme réponse
à l’action d’acteur, le système fournit un service qui couvert ses besoins. Notre application contient
deux acteurs :
• Fonctionnaire : C’est l’acteur qui envoi des demandes , en cas de besoin , aussi bien qu’il peut
consulter le panneau et l’espace d’utilisateur .
• Agent DAF : C’est l’acteur qui valide et traite les demandes des fonctionnaires, nous devons
également mentionner que l’agent DAAF ainsi que ses privilèges, il possède tous les privilèges
de fonctionnaire.
• Administrateur : C’est le responsable de la gestion personnel. son rôle est présenté en ajout,
suppression ou modification d’utilisateur (agent DAAF ou fonctionnaire).
17
Chapitre 2. Analyse et spécification des besoins
C’est le pilier le plus important de la méthodologie Scrum, il présente l’ensemble des caractéristiques
fonctionnelles appelées des histoires utilisateurs (user storys) qui comporte le produit souhaité. Dans
le tableau ci-dessous , on exprime les champs du Backlog :
• Histoire Utilisateur (User story) : présente la phrase qui décrit le travail désiré,
18
Chapitre 2. Analyse et spécification des besoins
Notre projet est découpé en trois sprint . Le tableau 2.3 définit pour chaque histoire utilisateur
(user story) l’itération durant laquelle était effectué.
20
Chapitre 2. Analyse et spécification des besoins
Traitement de document
Mise en contexte du projet. Authentification.
administratif.
Traitement de document
financier.
Consultation de données
Formation en méthodologie de Demande de document
personnelles (partie 1) :
travail adopté. financier.
- Panneau utilisateur.
Gestion du personnel
Validation de document
Planification de sprint 1. (partie 2) :
financier.
- Supprimer utilisateur.
Gestion du personnel
Planification de sprint 2. Activation de notification (2). (partie 3) :
- Modifier utilisateur.
Après avoir montré les grandes lignes de phase de spécification de besoins, nous mettons
l’accent ,dans cette partie , sur l’architecture physique et logique de la solution.
21
Chapitre 2. Analyse et spécification des besoins
Les applications mobiles nécessitent d’être évolutif à causes du changement du besoin. Pour
cela mettre en place une architecture est un besoin vital. Le système est conçu selon l’architecture 3
tiers qui est composée de 3 couches indépendantes les unes des autres : couche présentation, couche
traitement, couche base de données. Ce modèle assure la flexibilité, la sécurité et une meilleure
performance puisque les taches sont partagées. Comme le montre la figure ci-dessous, Dans cette
architecture on distingue :
22
Chapitre 2. Analyse et spécification des besoins
• Couche présentation : c’est la partie visible et interactive de point de vue utilisateur qui
représente l’application Mobile SDDAF. Elle envoie les requêtes à la couche traitement selon
les actions exécuter par l’utilisateur. Puis elle prend en charge l’affichage des informations
reçus. Dont sa création est basée sur le langage DART.
La couche présentation permet d’avoir une interaction entre le serveur et l’utilisateur en
assurant une communication avec les autres couches à travers l’API.
• Couche de données : Elle représente le serveur de base de données qui fournit au serveur
d’application les données dont il a besoin.[4]
23
Chapitre 2. Analyse et spécification des besoins
La figure 2.3 ci-dessous présente les composants de l’architecture MVC et résume les interactions
entre elles.
• Modèle : c’est la partie de l’application qui met en œuvre la logique de l’application de données
de domaine. Elle représente les données dans notre application.
• Vues : c’est l’élément qui affiche l’interface utilisateur (UI). C’est en fait un utilisateur qui
consomme les web APIs.
• contrôleur : c’est un composant qui gère l’interaction avec l’utilisateur, travaille avec le modèle
et, finalement, sélectionne la vue qui va permettre de faire un rendu de l’interface utilisateur.[5]
24
Chapitre 2. Analyse et spécification des besoins
Fabriquant Hp
Ram 8,00 Go
Cette partie est dédié à la présentation des logiciels et outils utilisés lors de la réalisation de
notre projet.
Visual Studio Code : Éditeur de code extensible supporte plusieurs de langages de
programmation comme C/C++ Html/Css/Java script et Dart la langage avec laquelle notre application
était développée.
Dart : langage de programmation optimisé pour les applications sur plusieurs plateformes. Il est
développé par Google et est utilisé pour créer des applications mobiles, de bureau, de serveur et
web.[6]
25
Chapitre 2. Analyse et spécification des besoins
Flutter : Kit de développement de logiciel (SDK) d’interface utilisateur open-source créé par
Google. Il est utilisé pour développer des applications pour Android, iOS, Linux, Mac, Windows,
Google Fuchsia et le web à partir d’une seule base de code.[7]
26
Chapitre 2. Analyse et spécification des besoins
XAMPP : c’est un ensemble de logiciels permettant de mettre en place un serveur web local,
un serveur FTP et un serveur de messagerie é[Link] s’agit d’une distribution de logiciels libres
(X (cross) Apache MariaDB Perl PHP) offrant une bonne souplesse d’utilisation, réputée pour son
installation simple et rapide.[11]
Photoshop : Photoshop est un logiciel de retouche, de traitement et de dessin assisté par ordinateur,
lancé en 1990 sur MacOS puis en 1992 sur Windows. Édité par Adobe, il est principalement
utilisé pour le traitement des photographies numériques, mais sert également à la création ex nihilo
d’images.[12]
27
Chapitre 2. Analyse et spécification des besoins
Conclusion
Dans ce chapitre nous avons détaillé la méthodologie que nous avons opté pour notre application
à savoir les membres de l’équipe de travail, définie les besoins fonctionnel et non fonctionnels, le
diagramme de cas d’utilisation global, le Backlog de produit et la planification des sprints pour finir
avec l’environnement du travail et l’architecture de l’application. Le chapitre suivant est dédié pour
les travaux effectués durant le premier sprint.
28
Chapitre 3
SPRINT 1
Plan
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1 Backlog du sprint 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Chapitre 3. SPRINT 1
Introduction
Ce chapitre présente les travaux effectués durant le premier sprint. Pour cela, nous spécifions,
dans un premier lieu, le Backlog de sprint. Nous passons par suite à une phase de spécification
fonctionnelle et une phase de conception. Enfin, nous présentons quelques interfaces réalisés au
cours du ce sprint.
Après avoir planifié les sprints dans le premier chapitre, nous présentons dans cette partie
le Backlog de sprint 1. C’est une liste qui réunit toutes les histoires utilisateur à développer et les
tâches à réaliser.
30
Chapitre 3. SPRINT 1
Dans cette phase , nous exposons le diagramme de cas d’utilisation générale ainsi que le
raffinement de ses cas. Nous traduisons par suite nos diagrammes de cas d’utilisation par des
descriptions textuelles.
Le diagramme de cas d’utilisation suivant résume les besoins fonctionnels à réaliser pendant ce sprint.
31
Chapitre 3. SPRINT 1
32
Chapitre 3. SPRINT 1
Titre : S’authentifier
Scénario nominal :
Scénario alternative :
33
Chapitre 3. SPRINT 1
34
Chapitre 3. SPRINT 1
35
Chapitre 3. SPRINT 1
Scénario nominal :
1.L’agent DAF lire la demande et la valide par clique sur «Accepter» ou «Refuser» .
[Link] système envoie une notifications au demandeur (fonctionnaire ou agent DAF) , indiquant la
décision concernant leur demande (acceptation ou refuse).
3.3 Conception
La conception est une phase primordiale dans la réalisation d’une application qui nous donne
une meilleur vision sur son fonctionnement . Pour cela ,nous présentons dans cette section les
diagrammes de séquences systèmes des cas d’utilisations déjà décrites textuellement .Ensuite nous
présentons le diagramme de classe de sprint 1 .
36
Chapitre 3. SPRINT 1
37
Chapitre 3. SPRINT 1
38
Chapitre 3. SPRINT 1
39
Chapitre 3. SPRINT 1
Dans cette partie nous présentons le diagramme de classe de sprint 1, la figure suivante
représente le diagramme relatif au développement du premier sprint :
40
Chapitre 3. SPRINT 1
3.4 Réalisation
Dans cette section du chapitre nous allons présenter les interfaces réalisées durant le premier
sprint.
• Splashs screens : Ces figures représentent les écrans de démarrage qui contient des informations
à propos de notre application, ses fonctions et services.
Figure 3.8: Splash screen 1 Figure 3.9: Splash screen 2 Figure 3.10: Splash screen 3
41
Chapitre 3. SPRINT 1
• Login screen : cette figure représente l’interface d’authentification de notre application "SDDAF".
42
Chapitre 3. SPRINT 1
• Contrôle de saisie : ces figure représentent le cas ou les paramètres d’identification sont
incorrects.
43
Chapitre 3. SPRINT 1
• Interfaces : Ces figure représentent les interfaces et les listes des fonctions d’utilisateurs selon
leurs rôles (fonctionnaire, agent DAF, administrateur).
Figure 3.14: liste de Figure 3.15: liste d’agent Figure 3.16: liste
fonctionnaire DAF d’administrateur
44
Chapitre 3. SPRINT 1
• écrans d’accueil d’utilisateurs : ces figure représentent les écrans d’accueil d’utilisateurs
selon leurs rôles (fonctionnaire, agent DAF, administrateur)
Figure 3.17: accueil de Figure 3.18: accueil d’agent Figure 3.19: accueil
fonctionnaire DAF d’administrateur
45
Chapitre 3. SPRINT 1
Figure 3.20: formulaire de Figure 3.21: formulaire de Figure 3.22: sélecteur de date
demande de congé partie 1 demande de congé partie 2 de congé de repos
46
Chapitre 3. SPRINT 1
47
Chapitre 3. SPRINT 1
Figure 3.24: liste de demande de congé de Figure 3.25: informations sur demandeur de
repos congé de repos
48
Chapitre 3. SPRINT 1
Figure 3.26: liste de demandes d’attestation Figure 3.27: informations sur demandeur
de travail (à valider) d’attestation de travail
49
Chapitre 3. SPRINT 1
• Service de notification : ces figures représentent la notification (1) envoyée au agent DAF
dans le cas d’envoi d’une nouvelle demande et la notification (2) envoyée au fonctionnaire dans
le cas d’acceptation de cette demande de document.
Figure 3.28: notification (1) d’envoi Figure 3.29: notification (2) de validation
50
Chapitre 3. SPRINT 1
Conclusion
Dans ce chapitre, nous avons présenté le développement de notre premier sprint en commençant
par l’analyse et la conception de nos besoins fonctionnelles pour arriver à l’étape de la réalisation.
51
Chapitre 4
Sprint 2
Plan
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
1 Backlog du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Chapitre 4. Sprint 2
Introduction
Dans ce chapitre nous allons présenter les travaux effectués pendant le deuxième sprint,
c’est pour ça que nous allons suivre les mêmes étapes du premier sprint pour implémenter les
cas d’utilisation "traiter document administratif", "Consulter données personnelles", et "Gérer
utilisateurs", nous commençons par une présentation du Backlog du sprint.
Nous présentons dans cette partie du deuxième sprint le Backlog du sprint qui définie
l’ensemble des taches à déterminer.
53
Chapitre 4. Sprint 2
Nous présentons dans cette partie les différentes fonctionnalités à réaliser dans ce sprint sous
forme de diagrammes de cas d’utilisation .
Dans cette partie on va présenter le diagramme de cas d’utilisation à avoir dans ce deuxième
sprint .
Le diagramme de cas d’utilisation suivant montre les cas à avoirs durant ce deuxième sprint.
54
Chapitre 4. Sprint 2
55
Chapitre 4. Sprint 2
56
Chapitre 4. Sprint 2
Scénario nominal :
Scénario alternatif :
7.A.L’agent DAF saisit des données incorrects par rapport au contrôle de saisie du formulaire de
traitement.
[Link] système affiche un message d’erreur indique que les données saisies sont incorrects. Reprise
à l’étape 4 du scénario nominal.
57
Chapitre 4. Sprint 2
58
Chapitre 4. Sprint 2
Scénario nominal :
59
Chapitre 4. Sprint 2
60
Chapitre 4. Sprint 2
Acteur : Administrateur
Scénario nominal :
Scénario alternatif :
5.A.L’administrateur saisit des données incorrects par rapport au contrôle de saisie du formulaire
d’ajout.
[Link] système affiche un message d’erreur indique que les données saisies sont incorrects. Reprise à
l’étape 4 du scénario nominal.
61
Chapitre 4. Sprint 2
Acteur : Administrateur
Scénario nominal :
62
Chapitre 4. Sprint 2
Acteur : Administrateur
Scénario nominal :
Scénario alternatif :
5.A.L’administrateur saisit des données incorrects par rapport au contrôle de saisie du formulaire
d’ajout.
[Link] système affiche un message d’erreur indique que les données saisies sont incorrects. Reprise à
l’étape 4 du scénario nominal.
63
Chapitre 4. Sprint 2
4.3 Conception
Dans cette partie de conception, nous présentons les diagrammes de séquence détaillés des
fonctionnalité de ce deuxième sprint.
Figure 4.5: Diagramme de séquence système du cas d’utilisation «Traiter document administratif»
64
Chapitre 4. Sprint 2
Figure 4.6: Diagramme de séquence système du cas d’utilisation «Consulter données personnelles»
65
Chapitre 4. Sprint 2
66
Chapitre 4. Sprint 2
67
Chapitre 4. Sprint 2
68
Chapitre 4. Sprint 2
Nous allons présenter dans la figure suivante le diagramme de classe relatif au développement
de deuxième sprint :
69
Chapitre 4. Sprint 2
4.4 Réalisation
Dans cette section du chapitre , nous montrons quelques interfaces réalisées durant le deuxième
sprint .
Figure 4.11: liste de demandes d’attestation Figure 4.12: page de traitement d’attestation
de travail de travail
70
Chapitre 4. Sprint 2
Figure 4.13: panneau d’utilisateur (partie 1) Figure 4.14: panneau d’utilisateur (partie 2)
71
Chapitre 4. Sprint 2
72
Chapitre 4. Sprint 2
• Ajouter utilisateur : ces figures représentent les figures d’ajout d’un utilisateur
( fonctionnaire ou agent DAF).
Figure 4.16: appui sur l’icône Figure 4.17: saisie de Figure 4.18: ajout effectué
d’ajout coordonnées avec succès
73
Chapitre 4. Sprint 2
• Modifier utilisateur : ces figures représentent les figures de modification d’un utilisateur
( fonctionnaire ou agent DAF).
Figure 4.19: appui sur l’icône Figure 4.20: modification de Figure 4.21: modification
de modification coordonnées effectué avec succès
74
Chapitre 4. Sprint 2
• Supprimer utilisateur : ces figures représentent les figures de suppression d’un utilisateur
(fonctionnaire ou agent DAF).
Figure 4.22: appui sur l’icône de suppression Figure 4.23: suppression effectué avec succès
75
Chapitre 4. Sprint 2
76
Chapitre 4. Sprint 2
Conclusion
Dans ce présent chapitre, nous avons développé le deuxième sprint, nous avons donc réussi à
avoir le dernier sprint à livrer.
77
Conclusion générale
Dans le cadre de sujet de fin d’étude, nous avons conçu et réalisé une application mobile de
gestion des ressources humaines au sein de l’établissement de centre national de l’informatique pour
les fonctionnaires de CNI en se basant sur la méthodologie itérative Scrum.
L’application , appelée SDDAF, propose des fonctionnalités riches et un meilleur service au fonctionnaires.
Elle englobe plusieurs modules. En fait, nous avons développer une application mobile, qui nous à
permis de demander les documents administratifs, financiers, et de consulter le panneau et l’espace
d’utilisateur. Comme étant notre première réelle expérience dans le domaine de développement
mobile.
Lors de ce stage nous avons pu mettre en pratique nos connaissances théoriques acquises durant notre
formation à l’Institut Supérieur d’Informatique, tout en étant vécu la cohérence entre les membres
d’équipes et confronté les difficultés réelles du monde du travail.
Par ailleurs, nous avons découvrir, tout au long du stage, la vie professionnelle au sein de centre
national de l’informatique qui nous a mis dans un cadre professionnel afin d’améliorer notre esprit
d’analyse, de décision et de réflexion. En outre, au niveau des perspectives futures, nous pouvons
développer la présente application réalisé pour les fonctionnaires de CNI, pour être utilisable pour
tout les fonctionnaires publiques dans le domaine des gestion de ressources humaines.
78
Bibliographie
[1] (). « Création et forme juridique de CNI. » [Accès le 12-Février-2021], adresse : [Link]
[Link]/[Link]/fr/layout-3/presentation-du-cni-2.
[2] (). « Principe de base de la méthode Agile. » [Accès le 13-Février-2021], adresse : https :
//[Link]/actualites/2015/01/methodes-agiles-definition/.
[6] (). « Dart (langage). » [Accès le 22-Février-2021], adresse : https : / / fr . wikipedia . org /
wiki/Dart_(langage).
[11] (). « XAMPP. » [Accès le 22-Février-2021], adresse : https : / / fr . wikipedia . org / wiki /
XAMPP.
79
PÌl
wkt§ .Aywwnkt ¤ wl` ¨ TyqybWt EA¯ Yl wOl ®² ¨nVw zrm m` @¡ EA
T§rKb C wmA Tql`tm Tfltm r}An` C TyAm ¤ T§C ³ dntsm lV A\ Ymsm ¤rKm
T dtF d¤ .ydtsm C ¤ dtsm ºAS ¤ Tw fO¤ , TyAm ¤ T§C ³ dntsm lV
.¤rKm r§wW ¤ Tr ÅdF r® Åw" C Å Trb
dF r® , C : yAf Aml
Résumé
Ce travail a été réalisé au sein de centre national de l’informatique et ce pour l’obtention du
Diplôme National de Licence Appliquée en Sciences et Technologies. Le projet nommé Système
de demande de documents administratifs et financiers, consiste à gérer les différents éléments
liés aux ressources humaines tel que la demande de documents administratifs et financiers,la
consultation de panneau et d’espace d’utilisateur, et l’administration d’utilisateurs.
Cette solution utilise le langage de programmation DART et en exploitant le SDK Flutter.
Abstract
This work was carried out within the national computer center to obtain the National Diploma
of Applied License in Sciences and Technologies. The project called System of request for ad-
ministrative and financial documents, consists of manage the various elements related to human
resources such as the request for administrative and financial documents, the consultation of
panel and user space, and user administration. This solution uses the language of DART pro-
gramming and leveraging the Flutter SDK.
contact@[Link] : ¨¤rtk¯ d§rb 71 222 222 : HAf 71 111 111 : Ah Hw - ryb AfR - C® ry h
Rue du Lac Malaren, Les Berges du Lac 1053 Tunis Tél : 71 111 111 Fax : 71 222 222 Email : contact@[Link]
isi@[Link] : ¨¤rtk¯ d§rb 71 706 698 : HAf 71 706 164 : Ah TA§C 2080 ¨¤CAb A§r w h 2
2, Abou Raihane Bayrouni 2080 l’Ariana Tél : 71 706 164 Fax : 71 706 698 Email : isi@[Link]