Académique Documents
Professionnel Documents
Culture Documents
Mon père Belgacem GHARSALLAH, pour les sacrifices qu’il a consentis pour mon
éducation et pour l’avenir qu’il n’a cessé d’offrir.
Ma tendre chère mère Henia FELLAH, pour son amour inconditionnelle, sa grande
affection, sa patience illimitée, son encouragement continu, son aide, en témoignage de son
profond amour et respect pour ses grands sacrifices.
Mes chers frères Fethi, Abdelmajid et Mouadh et Mes chers soeurs Mounira, Houda,
Afef et Fadwa pour leur grand amour et leur soutien qu’ils trouvent ici l’expression de ma
haute gratitude. Que Dieu vous garde en sécurité et vous mène à un chemin plein de succès.
A mes chers amis qui m’ont aidé, encouragé, apprécié mon effort et crée le milieu favorable,
Youssef
i
Remerciements
Je souhaite, à travers cette page, rendre hommage à tous ceux, qui ont
contribué à la réalisation de ce travail. Je tiens avant tout, à adresser mes
plus vifs remerciements à Mr Tarek Ayari, mon encadreur, pour son suivi et
ses conseils judicieux ainsi que ma gratitude pour son soutien pour la
réalisation de ce projet.
Kastalli qui m’a proposé ce sujet et m’a aidé à y voir clair dans la
compréhension du sujet, de m’avoir guidé durant ce projet avec ses conseils de
valeur et son partage de son expertise, ainsi qu’à tous les membres de l’équipe
New Access pour l’extrême gentillesse et sympathie qu’ils ont bien voulu
Je tiens d’autre part à remercier les respectables membres du jury d’avoir bien
voulu m’accorder de leur temps précieux pour commenter, discuter et juger
mon travail.
années d’études. Que les uns et les autres trouvent ici l’expression de ma
grande estime pour leur personne et de ma profonde considération pour leur
compétence professionnelle.
ii
Table des matières
Introduction générale 1
1 Contexte général 3
1.4.2 Méthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3 Sprint 0 25
iii
3.1.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4 Sprint 1 33
4.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5 Sprint 2 46
5.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6 Sprint 3 61
iv
6.1 Backlog du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
6.4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
7 Sprint 4 72
7.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
7.5 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Annexes 83
v
Annexe 5. Gérer le questionnaire de besoin . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
vi
Table des figures
3.1 Angular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.2 Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
vii
Table des figures
viii
8.13 Diagramme de séquence « Inscription formation » . . . . . . . . . . . . . . . . . . . . 92
ix
Liste des tableaux
4.2 Authentifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
x
Liste des abréviations
xi
Introduction générale
Actuellement, le processus de formation est semi-automatisé car les interactions entre les
différents intervenants dans chaque département ne sont pas centralisées. Ceci engendre une perte
de temps et une mauvaise circulation des données entre les divers acteurs qui participent à une
formation. La formation se fait dans la majorité des cas en présentielle ce qui engendre une contrainte
du nombre de places limitées et du nombre de salles réduites.
Pour cette raison nous avons eu l’occasion d’accomplir notre projet de fin d’études au sein de
New Access. Notre mission consiste à concevoir et réaliser une application qui s’intitule « Plateforme
d’intégration des nouvelles recrues ». Ce travail a lieu au sein du département QA. Notre projet opte
à établir un processus de formation afin de mettre en place un système qui permettra aux utilisateurs
d’effectuer les diverses opérations du cycle de formation.
Notre rapport commence par un premier chapitre intitulé "Contexte générale" dans lequel
nous avons présenté l’organisme d’accueil ainsi que le contexte du projet et la méthodologie adoptée
tout au long du travail. Ensuite, nous avons mis un deuxième chapitre intitulé "Analyse et spécification
des besoins" dans lequel nous avons identifié nos besoins fonctionnels et non fonctionnels et nous
avons présenté l’analyse globale de notre projet. Dans un troisième chapitre intitulé "Sprint 0", nous
avons présenté les choix technologiques ainsi que l’architecture logique et physique afin de procéder
au développement de notre solution.
Après, dans les quatre autres chapitres, nous avons présenté quatre livrables qui sont des
parties majeurs de notre application. Ils représentent le module de gestion d’administration, la
1
Introduction générale
Enfin, le rapport se termine par une conclusion générale présentant une synthèse de notre
travail, ainsi que les perspectives futures.
2
Chapitre 1
Contexte général
Plan
1 Cadre général du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Présentation du sujet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4 Choix méthodologique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Chapitre 1. Contexte général
Introduction
Ce chapitre comprend tout d’abord une présentation sur la société accueillante au sein de
laquelle nous avons réalisé ce stage. Ensuite, nous discutons les systèmes de gestion de l’accueil
existants déjà que nous nous intéressons à critiquer pour identifier notre problématique et proposer
une solution. Enfin, nous introduisons le choix méthodologique adopté dans la réalisation du projet.
Le travail présenté dans ce rapport a été effectué au sein de la société NEW ACCESS
dans le cadre d’un projet de fin d’études en vue de l’obtention du diplôme national d’ingénieur
en Informatique à l’Ecole supérieur privé d’ingénierie et de technologie(ESPRIT).
L’organisme d’accueil de ce stage est la société NEW ACCESS. Nous allons, dans cette partie,
le présenter et énumérer ses solutions
NEW ACCESS a été fondé en 2000 à Genève. Elle fournit des solutions logicielles Front-to-Back
agiles et évolutives dédiées aux secteurs de la banque privée. L’expertise de New Access consiste
à fournir aux banques, aux gestionnaires d’actifs et aux courtiers la solution logicielle la plus
adaptée et la plus fiable conçue pour répondre à leurs besoins. La société est présente à l’échelle
mondiale avec des bureaux en Tunisie, Suisse, Singapour, États-Unis, Brésil, Panamá, Luxembourg
et Royaume-Uni.
4
Chapitre 1. Contexte général
Dans cette partie nous allons citer les différentes solutions de New Access.
• Banker’s Front : BANKER’S FRONT est dédié aux chargés de clientèle et fournit via une
seule interface : la gestion du portefeuille et des commandes, la gestion de la relation client,
les processus d’intégration et les gestionnaires de documents électroniques.
• Core Banking : APSYS est un système Core Banking complet et flexible qui automatise les
flux de travail pour un traitement cohérent, intégrant des systèmes de support pour fournir
le STP. Il facilite la tenue des livres et registres pertinents. APSYS garantit le respect des
exigences réglementaires tout en surveillant les activités et les opérations en temps réel.
• Digital banking : Cette solution offre aux clients de la banque et aux gérants externes
un portail e-Banking puissant, attractif et totalement sécurisé. Disponible via une interface
5
Chapitre 1. Contexte général
utilisateur Web intégrée au design réactif (y compris les smartphones et les tablettes avec
messagerie sécurisée client-banquier).
Dans cette section du chapitre nous allons présenter le domaine d’étude de notre projet afin
de clarifier le déroulement du processus de formation au sein de New Access. Ainsi, nous entreprenons
à une étude de l’existant et puis une mise à position de la problématique afin d’introduire la solution
proposée.
Dans cette section, nous allons procéder à une description sommaire de la mission, de l’organisation
et du système d’informatique de New Access. Ensuite nous allons présenter le domaine d’étude de
notre projet afin de clarifier le déroulement du processus de formation au sein de New Access.
La formation professionnelle continue est organisée par le code de travail et qui la considère
comme service comprenant l’acquisition d’éléments essentiels de culture générale et celle d’une
technique professionnelle, théorique et pratique, le perfectionnement professionnel, le reclassement
professionnel et la formation professionnel accélérée. C’est pour cette raison que New Access a
concentré plein d’effort autour de son maitre d’œuvre qui n’est personne autre que l’employé.
En effet, développer son sens créatif, sa capacité à apprendre et à évoluer, et maintenir ses compétences
sont devenus vitaux pour accroitre l’agilité et la flexibilité de l’entreprise.
New Access a mis en place un système de formation pour chaque département afin que ses employés
améliorent leurs compétences professionnelles et acquièrent les connaissances et les aptitudes nécessaires
pour assurer leurs taches. On distingue pour chaque département différents thèmes de formations.
Chaque employé choisit un thème de formation avant de suivre sa formation. Ce programme de
formation a permis à New Access d’enrichir la qualité de travail en utilisant de nouvelles techniques
plus performantes et innovantes que précédemment.
6
Chapitre 1. Contexte général
➢ Les emails
➢ Active Directory
➢ Microsoft Teams
➢ Les emails
Les activités du processus de formation sont semi-informatisées et toutes les taches se font
par mail ce qui affecte la qualité du travail et le rend peu pratique. Ceci engendre un manque de
confidentialité d’informations, une lenteur et une lourdeur dans la réalisation du cycle de formation et
un risque croissant d’erreur et de perte de temps. L’insuffisance d’automatisation pour ce domaine
engendre une mauvaise circulation des données et ne facilite pas la communication et l’échange
d’informations entre les intervenants de la formation. En outre le suivi de la formation se fait dans
la majorité des cas de façon traditionnelle en présentielle ce qui engendre une contrainte du nombre
de places limitées et du nombre de salles réduites.
Après avoir observé l’existant et recensé les besoins des utilisateurs et dans le but d’optimiser
le travail, bénéficier des progrès technologiques, suivre l’évolution de l’organisation des services
de New Access et offrir un travail satisfaisant, pour remédier à celles-ci nous allons concevoir et
implémenter un portail web qui regroupe la plupart des fonctionnalités pour la gestion des processus
de formation. Dans notre solution Nous envisageons le scénario suivant :
7
Chapitre 1. Contexte général
domaine d’activité où l’employé doit améliorer et enrichir ses performances. En effet le manager
élabore un questionnaire de besoins et l’envoie sur le système afin que chaque participant de
New Access puisse le consulter.
➢ Processus de Publication
L’administrateur publie le plan de formation sur le réseau local de NEW ACCESS qui s’affichera
à tous les profils et sous profils de NEW ACCESS.
8
Chapitre 1. Contexte général
Afin de garantir le bon déroulement du projet, il est essentiel de choisir à l’avance une
méthodologie de gestion de projet. Cela permet d’organiser le temps de développement et contribue
à minimiser les risques.
Pour la spécification des besoins, nous avons opté pour le langage de modélisation UML qui
permet la description et la visualisation des besoins, ainsi que la définition de l’architecture logicielle.
Nous présentons les diagrammes utiles pour la conception du projet :
— Diagramme de séquence pour décrire les différentes interactions entre les éléments du système
9
Chapitre 1. Contexte général
et les acteurs
1.4.2 Méthodologie
La méthodologie est une analyse systématique et technique suivant une démarche organisationnelle
pour aboutir à un résultat.
Pour bien conduire notre projet et assurer le bon déroulement des différentes phases, nous
avons opté pour la méthodologie Agile SCRUM comme méthodologie de gestion de projet. La
méthode Scrum soutient la livraison rapide et régulière de fonctionnalités à haute valeur ajoutée.
Scrum présente plusieurs avantages :
— Les exigences sont priorisées selon les besoins et les changements confrontés.
➢ Le Product Owner : c’est le représentant officiel du client au sein d’un projet SCRUM Son rôle
est de :
➙ Définir la liste des fonctionnalités du produit dont les fonctionnalités en fonction de leur
importance et leur valeur ajoutée pour l’entreprise qu’il présente.
10
Chapitre 1. Contexte général
Conclusion
Dans ce chapitre, nous avons fixé les repères de notre projet en décrivant l’organisme d’accueil,
New Access, et le contexte du projet, nous avons effectué aussi une étude critique de l’existant en
présentant notre solution qui va remédier aux insuffisances. Nous avons terminé le chapitre par
introduire la méthodologie. ainsi que le formalisme de modélisation que nous avons adopté pour la
conception du projet que nous allons spécifier dans le chapitre suivant.
11
Chapitre 2
Plan
1 Pilotage du projet avec Scrum . . . . . . . . . . . . . . . . . . . . . . . . 13
2 Backlog du produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Introduction
Ce chapitre présente une initiative dans la réalisation de ce projet. Nous commençons par
définir les différents rôles des membres de l’équipe Scrum, pour passer à la création du backlog
produit et l’identification des besoins fonctionnels du système. Nous clôturons ce chapitre par la
planification des sprints.
Ayant choisi Scrum comme étant une méthodologie, nous présentons les différents acteurs
participant au déroulement du projet et à l’élaboration du rapport :
✔ Le Product Owner : M.Mohamed CHAARI, chef du département QA/Support chez New Access
Tunisie.
✔ Le Scrum Master :Mme.Hela KASTALLI, Rédactrice technique principale chez New Access
Tunisie.
Le backlog du produit est un artefact fondamental de Scrum dont le Product Owner est
responsable. Il présente une liste qui comprend les exigences initiales des clients et qui est susceptible
d’évoluer au fil du projet. Le tableau 2.1 présente le backlog du produit initial de notre projet. Les
besoins sont décrits par un ensemble de User stories.
13
Chapitre 2. Analyse et spécification des besoins
14
Chapitre 2. Analyse et spécification des besoins
15
Chapitre 2. Analyse et spécification des besoins
Pour mener à bien le projet, il est essentiel d’élaborer les exigences fonctionnelles et non
fonctionnelles. Cela permettra d’assurer la cohérence entre les besoins du client, et l’architecture à
mettre en place.
16
Chapitre 2. Analyse et spécification des besoins
✦ Authentification : Notre système doit être sécurisé pour pouvoir connaitre les administrateurs,
les managers, les formateurs et les participants. De ce fait chacun possède un mot de passe et
un login pour accéder à l’application.
Les intervenants s’authentifient afin de pouvoir accéder à leurs sessions. On peut bloquer à
tout moment le compte d’un utilisateur pour des raisons de sécurité. On peut aussi débloquer
à tout moment un compte bloqué dans la mesure du possible.
✦ Gestion des droits d’accès : L’interface permet de gérer les contrôles d’accès et de privilèges
des utilisateurs. En effet un administrateur peut créer, modifier, supprimer et consulter un
utilisateur. Il peut aussi activer son profil. Tout utilisateur que ce soit manager, formateur ou
participant peut créer un compte sans qu’il soit activé. Ceci a été mis en place afin de sécuriser
le contrôle d’accès (en cas où un collaborateur quitte l’entreprise son profil sera désactivé). Il
n’y a que l’administrateur qui a la main de faire l’activation.
17
Chapitre 2. Analyse et spécification des besoins
manager consulte les statistiques des questionnaires de besoins (comme le choix de la formation
affiche le nombre de participant par formation). On peut visualiser l’ensemble des participants
par question et télécharger un fichier Excel qui renferme les détails concernant le choix des
collaborateurs par question. Le temps moyen de saisie des réponses s’affiche sur les statistiques
du questionnaire ainsi que le statut du manager. Le manager peut partager le questionnaire
à tous les utilisateurs de New Access. Le même principe a été adopté pour le questionnaire
d’évaluation pour évaluer les compétences du formateur.
✦ Gestion des formations : Le manager suggère une formation en la créant. Elle comporte
la date début, date fin, la description, un fichier joint. . . Le formateur reçoit la formation
suggérée par le manager. Un formateur peut proposer une formation en la créant au manager.
Celle-ci doit être validé ou rejeté par le manager. Dès sa validation elle sera affichée sur l’écran
de consultation des formations. Un manager ou formateur peut modifier ou supprimer une
formation.
✦ Gestion plan de formation : Ce cas d’utilisation permet au formateur d’effectuer une mise
à jour des plans de formations (ajout, modification, suppression). Le formateur peut également
consulter les plans de formation. Pour l’opération d’ajout le formateur doit planifier le plan
de formation pour chaque thème de formation. Le plan de formation renferme le module, le
chapitre, la description, le bureau, la salle de formation, le type de formation qui peut être en
présentielle ou en ligne. Les plans de formations créés s’affichent sur l’écran de consultation de
formation.
✦ Gestion des inscriptions : Le participant lance une demande d’inscription sur la plateforme
de formation en remplissant un formulaire d’inscription. Il valide ensuite sa demande et
attend la réponse du manager. Le manager contrôle la validation des inscriptions en vérifiant
l’historique des formations par participants. Le manager reçoit la liste des inscriptions par
participant. Il peut accepter un participant ou le rejeter.
18
Chapitre 2. Analyse et spécification des besoins
✦ Gestion des outils multimédia (streaming live) : L’outil de streaming live permet
au formateur de poursuivre une formation en ligne en joignant plusieurs participants à cette
formation. Il comporte un outil de discussion en ligne, une activation audio, vidéo, un partage
d’écran, un enregistrement. . . Tout intervenant peut participer au streaming live.
✦ Sécurité des données : Au niveau d’accès aux données : le système doit offrir une feuille
d’identification (login et mot de passe) pour s’assurer que seulement les acteurs identifiés
peuvent accéder aux données demandées. Au niveau de contrôle des champs de saisie : le
système doit vérifier la validité des données saisies et en cas d’erreur, il doit afficher un message
d’erreur pour que l’utilisateur rectifie les donné
✦ Maintenabilité : Les différents modules de la solution doivent êtres bien lisibles et compréhensibles
19
Chapitre 2. Analyse et spécification des besoins
✦ La performance : Un logiciel doit être avant tout performant c’est à-dire à travers ses
fonctionnalités, répond à toutes les exigences des usagers d’une manière optimale. En effet il
doit garantir un temps de réponse minimal : le site devra se charger rapidement et le chargement
d’une page web dans le navigateur ne devrait pas dépasser quelques secondes en condition
normale.
✦ Ergonomie : L’interface de l’application doit être simple et pratique afin que l’utilisateur
puisse l’exploiter sans se référer à des connaissances particulières. En d’autres termes, les
informations doivent être lisibles et facile à accéder par n’importe quel utilisateur.
Un acteur représente un rôle joué par une entité externe, pouvant être une personne, un
système ou tout élément extérieur qui interagit avec l’application. Les acteurs sont des classificateurs
qui représentent des rôles à travers un certain cas d’utilisation et non pas des personnes physique.
Les acteurs de notre projet sont :
➙ Manager : Il est le déclencheur du processus de formation. Il est l’auteur de toutes les taches
de mises à jour, validation de gestion formation, d’inscription. Il contrôle les indicateurs de
performances et de lacunes en créant des questionnaires de besoins aux participants et des
questionnaires d’évaluations qui évaluent les compétences des formateurs. Il a la possibilité de
20
Chapitre 2. Analyse et spécification des besoins
➙ Formateur : Il permet de gérer les formations, les plans de formation et leurs publications,
les envois des invitations aux participants afin d’assister à une formation. Il a la possibilité
d’animer en présentiel ou à distance une session de formation.
21
Chapitre 2. Analyse et spécification des besoins
Le diagramme de classes permet de clarifier les différentes relations entre les classesde l’application
en assurant ainsi de déterminer tout les cas d’utilisation. Après l’analyse de notre projet nous avons
obtenu le diagramme de classe suivant
22
Chapitre 2. Analyse et spécification des besoins
23
Chapitre 2. Analyse et spécification des besoins
La planification des sprints sert à planifier le travail à réaliser à moyen terme, à mesurer
la capacité et la vélocité de l’équipe à réaliser les tâches dans le temps et à donner une visibilité
sur les livrables au propriétaire et aux utilisateurs. Cette planification est construite une fois que le
Backlog du produit est rédigé et sera mise à jour à chaque Sprint. Le tableau ci-dessous présente
notre planification des sprints selon les User Stories référencés par leurs ID. Chaque sprint a sa
propre vélocité qui est estimée en calculant la somme des complexités de ses User Stories.
Conclusion
Durant ce chapitre, nous avons spécifié la première étape de la méthodologie Scrum, soient
l’identification des acteurs participant à la réalisation de ce projet, la rédaction du Backlog du
produit et la planification des sprints. Nous entamons le sprint 0 dans le chapitre suivant.
24
Chapitre 3
Sprint 0
Plan
1 Environnement du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2 Architecture physique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3 Architecture logique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Introduction
Dans ce chapitre, nous présentons le sprint zéro, au cours duquel nous introduisons la
conception architecturale de la solution ainsi que les technologies et les langages de programmation
adoptés pour la mise en place de notre solution.
Cette section présentera l’environnement matériel ainsi que l’environnement logiciel et les
technologies utilisées lors du développement de l’application de notre projet.
Le projet est réalisé localement chez NEW ACCESS et développé sur une machine possédant
les caractéristiques décrites ci-dessous :
✧ Modelé : Dell
les différents outils logiciels que nous avons exploité pour réaliser notre application.
26
Chapitre 3. Sprint 0
27
Chapitre 3. Sprint 0
Dans cette partie nous allons citer les frameworks que nous avons utilisés durant la réalisation
de notre projet.
✧ Choix du framework Back-end : En vu des avantages qu’il présente, nous avons décidé
que Sping Boot ferait un excellent choix pour la partie back-end de notre application. Parmi
ses plus grands avantages on site :
28
Chapitre 3. Sprint 0
L’architecture physique d’une application permet de décrire l’interaction entre les différents
composants du système. Dans ce projet, nous avons opté pour une architecture monolithique Cette
dernière présente une approche de développement des systèmes informatiques sous forme de trois
couches logicielles ( niveaux ou étages) dont le rôle est clairement défini :
✼ l’accès aux données persistantes : correspondant aux données qui sont destinées à être
conservées sur la durée, voire de manière définitive.
29
Chapitre 3. Sprint 0
Afin d’assurer une bonne synchronisation avec l’architecture physique choisie, nous avons
opté pour le patron de conception MVVM au niveau Front-end et l’architecture n-tires pour la
partie Back-end.
✔ View : il s’agit de la partie avec laquelle l’utilisateur interagit. C’est la présentation des
données.
30
Chapitre 3. Sprint 0
Sur le coté Back-End de l’application, nous avons opté pur l’utilisation de 4 couches différentes.
Il y a, tout d’abord, la couche "Model" responsble de la création des tables. Ensuite, il y a la couche
"Repository" qui est responsable de la communication avec la base de données. Il y a après une
couche "Service" dans laquelle se fait l’implémenation du métier de notre application. Enfin, il y a
une couche "Controller" qui est responsable de l’exposition des Rest services qui seront à leur tour
consommés dans la partie Front-End de notre application. La figure Ci-dessous présente l’architecture
MVC au niveau back-end.
La communication entre les deux parties est assurée par le service REST. Ce dernier est
un style d’architecture reposant sur le protocole HTTP qui permet d’accèder à une ressource par
31
Chapitre 3. Sprint 0
son URI unique pour procéder aux opérations HTTP natives (GET/POST/PUT/DELETE). Après
traitement de la requête HTTP, une réponse JSON sera renvoyée à partir du service REST. La figure
Ci-dessous présente l’architecture logique de notre solution.
Conclusion
32
Chapitre 4
Sprint 1
Plan
1 Backlog du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5 Rétrospective du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Chapitre 4. Sprint 1
Introduction
Dans ce chapitre nous présentons le travail effectué dans le sprint 1. Nous commençons par
rédiger le Backlog du sprint, pour passer à la spécification fonctionnelle et la conception. Ensuite,
nous présentons la réalisation par quelques interfaces et nous finissons par une revue du sprint.
Après la planification des sprints, nous avons décomposé les User Stories du sprint 1 en des
tâches techniques appelées Technical Stories. Chaque Technical Story est présenté par la tâche à
réaliser et son estimation en heure. Le tableau 4.1 présente le Backlog du sprint 1.
Estimation
ID User Story Tasks
(h)
En tant qu’Administrateur,
je veux ajouter un manager, - Développer l’interface utilisateur AddUser 3
2 formateur ou participant - Développer le service AddUserService 3
à l’application afin de leur -Tests & validation 1
attribuer un accès
34
Chapitre 4. Sprint 1
de formation. CategorieFormationService
-Tests & Validation 1
Dans cette section nous présentons les diagrammes de cas d’utilisation relatifs à ce sprint,
ainsi que le raffinement des cas d’utilisation afin de mieux comprendre chaque scénario possible du
livrable.
35
Chapitre 4. Sprint 1
Cette partie comprend les diagrammes de cas d’utilisation avec une description textuelle des
principaux cas d’utilisation La figure 4.1 présente le diagramme de cas d’utilisation du sprint 1.
La figure 4.2 présente le cas d’utilisation «Gérer les comptes utilisateurs» détaillé.
36
Chapitre 4. Sprint 1
- Saisie incorrecte.
Exceptions - Champ obligatoire non rempli.
- Utilisateur existant.
37
Chapitre 4. Sprint 1
Acteur Administrateur
- Saisie incorrecte.
Exceptions - Champ obligatoire non rempli.
- Utilisateur existant.
38
Chapitre 4. Sprint 1
- Saisie incorrecte.
- Utilisateur inexistant.
Exceptions
- L’administrateur pourra procéder à une nouvelle activation directement
suite à la validation des données relatives à la dernière activation.
39
Chapitre 4. Sprint 1
Acteur Administrateur
- Saisie incorrecte.
- Champ obligatoire non rempli.
Exceptions - Département existant.
- L’administrateur pourra procéder à l’ajout d’un autre département suite à la
validation des données relatives au dernier ajout.
Le cas d’utilisation «Gérer un sous-département» détaillé est illustré dans l’annexe. Voir
annexe 1.
Le cas d’utilisation «Gérer les salles de formation» détaillé est illustré dans l’annexe. Voir
Annexe 2.
4.3 Conception
Pour bien organiser le développement de notre solution, nous avons utilisé des diagrammes
de séquences détaillés et des diagrammes de classes.
40
Chapitre 4. Sprint 1
Le diagramme de cas d’utilisation permet d’organiser les interactions entre le système et les
différents acteurs. Pour bien comprendre la communication entre les acteurs et les objets niveau du
système, nous avons pensé à concevoir des diagrammes de séquence.
41
Chapitre 4. Sprint 1
42
Chapitre 4. Sprint 1
Le diagramme de classe permet de décrire la structure du système en spécifiant les liens entre
les objets dont le système est composé ainsi que leurs attributs et leurs méthodes. Dans ce sprint, on
s’intéresse à la classe utilisateur qui est caractérisée par son identifiant, son nom, son prénom, son
nom d’utilisateur, son adresse mail, son mot de passe, dont on lui affecte un seul rôle. On utilisera
aussi les classes département, sous-département, salle de formation, bureau, catégorie de formation
et projet qui sont caractérisée par un identifiant et un nom. La figure 4.5 présente le diagramme de
classe relatif au sprint 1.
4.4 Réalisation
Dans cette section, nous présentons le travail réalisé durant ce sprint à travers des captures
d’écran de quelques interfaces de notre application.
La figure 4.6 illustre l’interface de l’authentification à travers laquelle chaque utilisateur peut accéder
à son espace en saisissant son nom d’utilisateur et son mot de passe.
43
Chapitre 4. Sprint 1
La figure 4.7 illustre l’interface de gestion des contrôles d’accès et de privilèges des utilisateurs.
44
Chapitre 4. Sprint 1
L’interface de gestion des entités de la gestion électroniques de documents dont la gestion des
départements. Voir annexe 5
Cette section est consacrée pour la rétrospective du sprint 1. La rétrospective est une réunion
animée par le Scrum Master et à laquelle participe toute l’équipe Scrum. Dans cette réunion, on
évoque tous les problèmes rencontrés durant la réalisation du travail à partir desquels on planifie des
améliorations pour se préparer pour le sprint suivant.Nous avons terminé le premier sprint à partir
duquel nous entamons le deuxième sprint.
Conclusion
Ce chapitre a été consacré pour le travail réalisé durant le sprint 1. A cet effet, nous avons
commencé par la spécification fonctionnelle, pour passer par la conception et terminer par la réalisation.
Ayant établi la nouvelle planification des sprints, nous entamons le chapitre suivant.
45
Chapitre 5
Sprint 2
Plan
1 Backlog du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5 Rétrospective du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Chapitre 5. Sprint 2
Introduction
Ce chapitre présente le sprint 2. Suivant le principe du sprint 1, nous commençons par rédiger
le Backlog du sprint. Nous passons ensuite à la conception et à la réalisation pour terminer par la
revue du sprint.
Le tableau 5.1 présente le Backlog du sprint 2 auquel nous allons ajouter les User Stories
restants du sprint précédent.
Estimation
ID User Story Tasks
h
47
Chapitre 5. Sprint 2
Dans cette section, nous présentons le diagramme de cas d’utilisation relatif au sprint 2, avec
une description textuelle pour certains d’entre eux.
48
Chapitre 5. Sprint 2
Le raffinement du cas d’utilisation «Gérer le questionnaire de besoin» est illustré dans l’annexe
Voir annexe 6.
49
Chapitre 5. Sprint 2
Acteur Manager
- Saisie incorrecte.
Exceptions - Question ne contient aucune réponse.
- Question existante.
50
Chapitre 5. Sprint 2
Acteur Manager
- Réponse incorrecte.
- Utilisateur répond deux fois à une question.
Exceptions - Question ne contient aucune réponse
- Le manager pourra procéder à la consultation d’une nouvelle réponse suite
à la fermeture de la réponse précédente
51
Chapitre 5. Sprint 2
52
Chapitre 5. Sprint 2
– Saisie incorrecte.
- Formation existante.
Exceptions
– Le manager ou formateur pourra procéder à l’ajout d’une nouvelle formation
directement suite à la validation du dernier ajout.
53
Chapitre 5. Sprint 2
Acteur Manager
Le streaming live est une application nommée Jitsi qui est installé sur une machine virtuelle
Linux, car une grande partie du processus est scriptée et automatisée. L’hébergement d’un service
comme celui-ci a été réalisé avec un serveur Linux Ubuntu avec accès Internet, ainsi que Microsoft
Azure cloud qui le rend facilement accessible à configurer.
Le raffinement du cas d’utilisation « Streaming live » est illustré dans l’annexe. Voir annexe 7.
54
Chapitre 5. Sprint 2
5.3 Conception
Dans cette section, nous présentons les diagrammes de séquence et le diagramme de classe
du sprint 2.
Ayant rédiger la description de certains cas d’utilisation, nous passons à la présentation des
présenter les diagrammes de séquence.
55
Chapitre 5. Sprint 2
n’existe pas, alors elle sera enregistrée et le système affichera la liste de toutes les formations
existantes. La figure 5.3 représente le diagramme de séquence « Ajouter une formation ».
56
Chapitre 5. Sprint 2
57
Chapitre 5. Sprint 2
5.4 Réalisation
Cette section est consacrée pour l’exposition des différentes interfaces réalisées durant le
sprint 2.
La figure 5.6 illustre l’interface de gestion de formation suggérée.
58
Chapitre 5. Sprint 2
59
Chapitre 5. Sprint 2
Durant ce sprint, nous n’avons pas réussi à réaliser tout le travail estimé. Nous avons,
essentiellement trouvé des difficultés techniques au niveau du serveur du streaming live. Cette partie
sera achevée durant le sprint suivant.
Conclusion
Au cours de ce chapitre, nous avons présenté le travail réalisé durant le deuxième sprint,
notamment la spécification fonctionnelle, la conception et la réalisation. Nous avons terminé par une
revue du sprint à partir de laquelle nous entamons le troisième sprint.
60
Chapitre 6
Sprint 3
Plan
1 Backlog du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5 Rétrospective du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Chapitre 6. Sprint 3
Introduction
Ce chapitre présente la troisième sprint. Suivant la même approche que celle des deux sprints
précédents, nous commençons par rédiger le Backlog du sprint. Nous passons ensuite à la conception
et à la réalisation pour terminer par la revue du sprint.
Le tableau 6.1 présente le Backlog du sprint 2 auquel nous allons ajouter les User Stories
restants du sprint précédent.
Estimation
ID User Story Tasks
h
62
Chapitre 6. Sprint 3
Dans cette section, nous présentons le diagramme de cas d’utilisation relatif au sprint , avec
une description textuelle pour certains d’entre eux.
63
Chapitre 6. Sprint 3
64
Chapitre 6. Sprint 3
Acteur Formateur
– Saisie incorrecte.
– Champs obligatoires non rempli.
Exceptions – Plan de formation existant.
– Le formateur pourra procéder à l’ajout d’un nouveau plan de formation.
directement suite à la validation des données relatives au dernier ajout.
65
Chapitre 6. Sprint 3
Acteur Formateur
– Saisie incorrecte.
– Plan de formation inexistant.
Exceptions
– Le formateur pourra procéder à une nouvelle publication directement
suite à la validation des données relatives à la dernière publication.
Le raffinement du cas d’utilisation « Gérer les inscriptions » est illustré dans l’annexe. Voir
annexe 11.
66
Chapitre 6. Sprint 3
Acteur Participant
- Saisie incorrecte
- Utilisateur déja inscrit.
Exceptions
– Le participant pourra procéder à l’inscription à une nouvelle formation
directement suite à la validation de l’inscription précédente.
Acteur Manager
67
Chapitre 6. Sprint 3
Le raffinement du cas d’utilisation « Plan d’intégration » est illustré dans l’ annexe 12.
Acteur Manager
– Saisie incorrecte.
– Champs obligatoires non rempli.
Exceptions – Plan d’intégration existant.
– Le manager pourra procéder à l’ajout d’un nouveau plan d’intégration.
directement suite à la validation des données relatives au dernier ajout.
6.3 Conception
Dans cette section, nous présentons les diagrammes de séquence et le diagramme de classe
du sprint 3.
68
Chapitre 6. Sprint 3
Ayant rédiger la description de certains cas d’utilisation, nous passons à la présentation des
diagrammes de séquence.
69
Chapitre 6. Sprint 3
6.4 Réalisation
Cette section est consacrée pour l’exposition des différentes interfaces réalisées durant le
sprint 3.
70
Chapitre 6. Sprint 3
Durant ce sprint, nous avons réalisé tous le travail du sprint 3 ainsi que le travail restant du
sprint 2.
Conclusion
Au cours de ce chapitre, nous avons présenté le travail réalisé durant le troisième sprint,
notamment la spécification fonctionnelle, la conception et la réalisation. Nous avons terminé par une
revue du sprint à partir de laquelle nous entamons le quatrième sprint.
71
Chapitre 7
Sprint 4
Plan
1 Backlog du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2 Spécification fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5 Réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6 Rétrospective du sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Chapitre 7. Sprint 4
Introduction
Suivant la même approche que celle des trois sprints précédents, nous passons au quatrième
sprint, à l’issue duquel nous visons à avoir une version de l’application qui soit livrable. Nous
commençons donc par rédiger le Backlog du sprint pour passer à la spécification et la conception et
terminer par la réalisation.
Estimation
ID User Story Tasks
h
73
Chapitre 7. Sprint 4
Dans cette section, nous présentons le diagramme de cas d’utilisation relatif au sprint 4, avec
une description textuelle pour certains d’entre eux.
74
Chapitre 7. Sprint 4
75
Chapitre 7. Sprint 4
Acteur Utilisateur
– Saisie incorrecte.
– Document inexistant.
Exceptions
– L’utilisateur pourra procéder à la consultation d’un nouveau document
directement suite à la fermeture de la fenêtre du document précédent.
76
Chapitre 7. Sprint 4
Acteur Participant
– Saisie incorrecte.
– Champs obligatoires non rempli.
Exceptions
- L’utilisateur pourra procéder à la création d’une nouvelle réclamation
directement suite à l’ajout de la réclamation précédente.
7.3 Conception
Dans cette section, nous présentons les diagrammes de séquence et le diagramme de classe
du sprint 4.
Ayant rédiger la description de certains cas d’utilisation, nous passons à la présentation des
diagrammes de séquence.
77
Chapitre 7. Sprint 4
Dans cette section, nous allons parler sur la recherche par mot clé dans l’espace document en
utilisant un algorithme d’intelligence artificielle et un modèle sur la machine learninge.
Le NLP pour Natural Language Processing ou Traitement Numérique du Langage est une
discipline qui porte essentiellement sur la compréhension, la manipulation et la génération du langage
naturel par les machines. Ainsi, le NLP est réellement une l’interface entre la science informatique
et la linguistique. Il porte donc sur la capacité de la machine à interagir directement avec l’humain.
Le nettoyage des données textuelles est nécessaire pour mettre en évidence les attributs que
notre système d’apprentissage automatique détecte. Le nettoyage (ou prétraitement) des données
comprend généralement un certain nombre d’étapes :
➮ Supprimer la ponctuation
La ponctuation peut fournir un contexte grammatical à une phrase, ce qui favorise notre
78
Chapitre 7. Sprint 4
➮ Tokenization
La tokenisation sépare le texte en unités telles que des phrases ou des mots. Elle donne une
structure à un texte auparavant non structuré.
ex : Plata o Plomo-> ’Plata’, ’o’, ’Plomo’.
79
Chapitre 7. Sprint 4
Elle calcule la "fréquence relative" d’un mot dans un document par rapport à sa fréquence
dans tous les documents. Elle est plus utile que la "fréquence des termes" pour identifier les
mots "importants" dans chaque document (fréquence élevée dans ce document, fréquence faible
dans les autres documents).
7.5 Réalisation
Cette section est consacrée pour l’exposition des différentes interfaces réalisées durant le
sprint 4.
La figure 7.7 illustre l’interface de gestion des documents.
L’interface de gestion des réclamations est illustrée dans l’annexe. Le participant peut envoyer
une réclamation et effectuer des mises à jour dont l’ajout, la modification et la suppression. Le
manager reçoit la liste des réclamations. L’interface de consultation des réclamations comporte un
filtre sur la colonne description qui est un tri par ordre alphabétique. Elle comporte aussi une
pagination.Voir annexe 18
80
Chapitre 7. Sprint 4
Conclusion
Au cours de ce chapitre, nous avons présenté le travail réalisé durant le quatrième sprint,
notamment la spécification fonctionnelle, la conception et la réalisation. Nous avons terminé par une
revue du sprint à partir de laquelle nous entamons le quatrième sprint.
81
Conclusion générale et perspectives
Tout au long de ce rapport, nous avons présenté les parties d’analyse, de conception et de
développement qui ont été mis en oeuvre dans l’objectif de réaliser ce projet. Notre solution, qui
utilise différentes nouvelles technologies, répond bien aux besoins de New Access grâce à l’innovation
qui lui a été apportée.
Par ailleurs, plusieurs technologies ont été exploitées durant la période du stage, afin d’arriver
au résultat souhaité. Nous citons par exemple Spring Boot, Angular, MangoDB.
Finalement, notre travail s’achève sur un bon résultat et plusieurs opportunités se présentent
à ce projet qui pourra bientôt être intégré dans les solutions de New Access. Comme perspectives, la
solution pourra continuer à s’étendre afin d’enrichir son système d’information comme le développement
d’une application mobile afin de faciliter l’utilisation et l’intéraction entre les collaborateurs.
82
Annexes
83
Annexes
84
Annexes
85
Annexes
86
Annexes
87
Annexes
besoin
88
Annexes
par question
La figure 8.9 présente les statistiques des réponses du Questionnaire de besoin par question.
89
Annexes
90
Annexes
91
Annexes
92
Annexes
93
Annexes
94
Annexes
95