Académique Documents
Professionnel Documents
Culture Documents
Sous la direction de :
M. GUERMAH Hatim (ENSIAS)
M. BEL RHITRI Mohammed (BANK AL YOUSR)
Réalisé par :
Salah-Eddine QATAB
Soutenu le 29 Septembre 2022 devant le jury :
Khalil MAADANI
Mme. EL ASRI Bouchra (Président)
M. TABII Youness (Examinateur)
M. GUERMAH Hatim (Encadrant interne)
Année universitaire : 2021-2022
ﻚ ﺃَﻧ ْ َ
ﺖ ﺍﻟْ َﻌ ِﻠﻴ ُﻢ ﺍﻟْ َﺤ ِﻜﻴ ُﻢ ﻻ َ َﻣﺎ َﻋﻠّ َ ْﻤ َﺘ َﻨﺎ ۖ ِﺇﻧ ّ َ َ ﻚ َ
ﻻ ِﻋ ْﻠ َﻢ ﻟَ َﻨﺎ ِﺇ ّ ُﺳﺒ َﺤﺎﻧَ َ
ْ
Dédicace
text Salah-Eddine
3
Remerciements
Au terme de ce travail, nous tenons à exprimer notre profonde gratitude et nos sincères
remerciements pour tous ceux qui nous ont aidés de près ou de loin pendant la durée de
notre stage.
Nous tenons également à remercier Monsieur GUERMAH Hatim, professeur à l’EN-
SIAS pour son encadrement, son enthousiasme vis-à-vis notre projet et ses encourage-
ments. Nos sincères remerciements sont à adresser à Mr. BEL RHITRI Mohammed et
Mr. RASSIF Hisham qui nous ont fait l’honneur de nous encadrer tout au long de ce tra-
vail. Nous leurs en sommes très reconnaissants pour ses fructueux conseils et précieuses
directives, et pour le grand souci qu’ils portent à l’égard de notre sujet.
Remerciements spéciaux à tout le corps professoral de l’ENSIAS, pour la formation
de qualité qu’ils nous ont prodiguée durant ces trois années. Que tous ceux et celles qui
ont contribué de près ou de loin à l’accomplissement de ce travail trouvent l’expression
de nos remerciements les plus chaleureux.
4
Résumé
l’ère du digital, les banques au même titre que les autres agents économiques se
Dans cette perspective, Bank AL YOUSR a misé, entre autre, sur la digitalisation du
processus de « création de compte », étant le point de départ pour l’entrée en relation
avec un client, qui donnera lieu ensuite à la consommation des différents produits offerts
par la banque (crédit, assurance, etc). Ainsi, il a été mis à la disposition des clients de
Bank AL YOUSR une solution en ligne pour la création de compte individuel. Toutefois,
cette solution présente certaines limites, notamment, l’absence de moyens de vérification
des données fournies par le client, et l’alourdissement du système bancaire de base (Core
Banking) T24 avec des comptes non vérifiés.
Notre projet consiste en une refonte de tout le processus et la mise en place une nou-
velle solution mettant en avance la vérification digitale et traitement des données d’une
pièce d’identité, l’intégration d’une solution visioconférence et le verrouillage de l’interac-
tion avec le core banking. Ceci tout en prenant en considération les règles juridiques et
sécuritaires et les visions stratégiques de la banque.
5
Nous avons fait appel durant les phases du projet à une panoplie de technologies, des
outils de développement, de tests, d’automatisation et d’intégration continue comme :
ProcessMaker, SPRING, REACT-JS, KERAS.
Mots clés : Entrée en relation, Processus, Ouverture de Compte en Ligne,Flux mé-
tier,Traitement des pièces d’identité.
Page 6
Abstract
n the digital age, banks, like other economic agents, are forced to adapt to the new
For example, Bank AL YOUSER’s customers have been provided with an online solution
for individual account creation. However, this solution has some limitations, including the
lack of means to verify the data provided by the customer, and the additional burden on
the T24 Core Banking system with unaudited accounts.
Our project consists of a redesign of the entire process and the implementation of a
new solution that puts forward the digital verification and data processing of an identity
document, the integration of a videoconference solution and the blocking of the interac-
tion with core banking. This while taking into account the bank’s legal and security rules
and strategic visions.
During the project phases, we used a variety of technologies, development, testing, auto-
mation and continuous integration tools such as : ProcessMaker, SPRING, REACT JS,
KERAS.
Initially in this project, we had to identify the issue then define the functional and
technical specifications. After, we’ve focused on the analysis and design parts. We’ve
developed several intermediate architectures that finally lead us to the appropriate archi-
tecture.
7
Keywords : Online Account Opening, Process, Workflow, Identity documents processing,
Customer onboarding.
Page 8
Table des figures
9
TABLE DES FIGURES
Page 10
Liste des tableaux
11
Liste des abréviations
API Application Programing Interface. 9–11, 14, 53–55, 69, 71, 72, 77, 82, 85, 89,
91–93, 96
NN Neural Network. 72
12
Table des matières
Résumé 5
Abstract 7
Introduction 15
13
TABLE DES MATIÈRES
3 Conception 42
3.1 Processus métier d’entrée en relation digitale . . . . . . . . . . . . . . . . . . 43
3.1.1 Description textuel du processus d’entrée en relation digitale : . . . 43
3.1.2 Modélisation BPMN et exécution du processus d’entrée en relation . 44
3.1.2.1 Modélisation BPMN du processus d’entrée en relation . . . 44
3.1.2.2 Exécution du processus en utilisant ProcessMaker : . . . . 47
3.2 Architecture fonctionnelle du logiciel . . . . . . . . . . . . . . . . . . . . . . . 51
3.2.1 Architecture fonctionnelle globale . . . . . . . . . . . . . . . . . . . . . 51
3.2.2 Architecture fonctionnelle de l’API EER . . . . . . . . . . . . . . . . 53
3.3 Diagramme de classe : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.4 Diagrammes de séquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.4.1 Diagramme de séquence « Authentification » : . . . . . . . . . . . . . 57
3.4.2 Diagramme de séquence «Traitement d’une pièce d’identité» : . . . . 59
3.4.3 Diagramme de séquence « créer un dossier d’ouverture » : . . . . . . 61
3.4.4 Diagramme de séquence « Traiter un dossier» : . . . . . . . . . . . . 63
3.5 Intégration continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.6 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4 Réalisation 67
4.1 Technologies et Outils : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.2 Réalisation du backend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.2.1 Architecture technique du système : . . . . . . . . . . . . . . . . . . . 70
4.2.2 Module de traitement des pièces d’identités . . . . . . . . . . . . . . . 72
4.2.2.1 Reconnaissane des pièces d’identités . . . . . . . . . . . . . 72
4.2.2.2 Extraction des données des pièces d’identités . . . . . . . . 82
4.2.3 Module de traitement d’un dossier d’ouverture . . . . . . . . . . . . . 88
4.3 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Conclusion 98
Webographie 99
Page 14
Introduction
Aujourd’hui, la digitalisation est devenue maitre mot des pratiques commerciales des
entreprises. Assurer un service en ligne, développer une interactivité avec la clientèle
et bénéficier des gains de temps remarquables permettent de renforcer son poids sur le
marché, de dégager plus de rentabilité et de bénéficier des économies d’échelle. Le secteur
bancaire n’a pas échappé à ces évolutions.
A cet égard, la digitalisation des services bancaires, tout en venant faciliter la vie aux
banques et à la clientèle est devenue un déterminant de lutte concurrentielle, de diffé-
rentiation des services bancaires et de positionnement stratégique. Les premières banques
capables à intégrer les meilleures pratiques technologiques sur un marché bancaire, sont
à même capables d’attirer plus de clients.
Bank ALYOUSR, en tant que nouveau intervenant sur le marché bancaire marocain
se fixe des challenges non seulement au niveau de l’originalité du service rendu et des
produits proposés mais aussi au niveau de la manière avec laquelle ce service est commer-
cialisé.
Actuellement, Bank ALYOUSR dispose d’une solution en ligne qui permet de créer un
compte non vérifié au niveau du core banking et effectuer les premiers versements. Cette
solution ne permet ni le remplissage automatique des données à partir des pièces d’identité,
ni vérification automatique de ces dernières. De plus, l’interaction avant vérification avec
le système bancaire nuit à la qualité de ce dernier en l’alourdissant avec des comptes
abandonnés lors de la vérification. L’agent bancaire reste chargé dans un tel système de
vérifier manuellement les pièces d’identité et le client est toujours tenu de se présenter en
agence pour fournir ses pièces d’identité,
15
TABLE DES MATIÈRES
A la lumière d’une étude approfondie de l’existant et des réunions réguliers avec les
équipes SI, marketing et communication et planification stratégique de la banque, il a été
assigné à ce projet les objectifs suivants :
* Modélisation d’un nouveau processus fluide, efficace et sécurisé conformément aux
règles juridiques, de sécurité gérant le secteur bancaire ;
* Le développement de la fonctionnalité de vérification digitale et traitement des
données d’une pièce d’identité,
* Le développement d’une fonctionnalité de visioconférence permettant de boucler
le processus KYC ;
* Le Verrouillage de l’interaction avec le core banking pour ne prendre en compte
que des comptes validés.
Le présent rapport est composé de quatre chapitres : Le premier chapitre présente
le contexte général du projet, à savoir l’organisme d’accueil, le cadre général du projet,
ainsi que la méthodologie de travail suivie. Le deuxième chapitre se focalise sur la partie
analyse des besoins qui englobe une étude de l’existant ayant permis de dresser les besoins
fonctionnels et non fonctionnels du système. La modélisation du processus et des exigences,
l’organisation des étapes du projet et l’architecture du système font l’objet du troisième
chapitre. Un quatrième chapitre est dédié à la phase réalisation avec les outils choisis et
les principaux résultats obtenus.
Le mémoire se termine par une conclusion générale qui présente le bilan du travail réalisé
et ses principales perceptives.
Page 16
CHAPITRE 1
il est particulièrement intéressant de présenter le cadre général dans lequel s’est déroulé
notre projet. A cette fin, le chapitre présent est consacré à présenter ce qui suit :
** Un aperçu sur l’organisme d’accueil : Bank Al Yousr
** Présentation du projet en expliquant les motivations et objectifs et exposant la
problématique à résoudre.
** Les méthodes, outils et moyens utilisés dans la conduite de ce projet.
17
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Page 18
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Page 19
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
savoir la collecte des dépôts et la distribution de crédits. Elle proposera également des
instruments de placement et d’investissement. «Nous ne voulons surtout pas reproduire à
l’identique les produits de la banque conventionnelle. Il s’agira aussi de proposer une offre
compétitive par rapport aux produits de la finance classique» précise le DG de la BCP.
Page 20
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Page 21
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Nous avons été affectés à la division système d’information et flux, plus précisément
au sein de la direction Étude et développement qui a pour rôle de définir et mettre en
œuvre la stratégie de développement informatique pour un fonctionnement optimal du
système d’information et de communication au sein de la banque.
Avec une démarche résolument orientée client, un réseau dédié, une équipe de pro-
fessionnels et une offre compétitive, conforme et innovante, Bank Al Yousr réunit les
conditions nécessaires pour occuper un rang stratégique dans cette nouvelle finance. Par
ailleurs, une veille continue du marché permet à Bank Al Yousr de s’adapter en perma-
nence aux besoins et exigences des clients dont la satisfaction est une priorité absolue
pour la banque.
Page 22
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Page 23
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
1.2.2 Problématiques :
À l’ère du digital et face à une concurrence acharnée, et des clients de plus en plus
exigeants, l’automatisation du processus d’entrée en relation est devenue un minimum
indispensable afin de garantir une approche client efficace.
L’automatisation d’un tel processus révèle un certain nombre d’enjeux et d’exigences
à savoir :
• Répondre aux besoins généraux d’une application d’ouverture de compte en ligne-
qui sont le gain de temps, une accessibilité à tout moment, et l’élimination des
tâches administratives au profit de la commercialisation des produits,
• Assurer une attractivité commerciale par une application qui assure meilleure ex-
périence utilisateur,
• Respecter les enjeux sécuritaires et réglementaires,
• Pallier aux limites de l’ancienne application, particulièrement le manque de vérifi-
cation digitale des données.
De ce qui a précédé, notre problématique se formule comme suit : «La réalisation au
profit de Bank Al Yousr d’un processus de souscription 100 en ligne avec transmission
numérique des justificatifs et vérification instantanée pouvant accorder à la banque un
avantage concurrentiel par la qualité du code et de l’expérience utilisateur en respectant
la réglementation bancaire, le devoir de diligence des banques au sujet des clients et les
normes de sécurité en matière de manipulation de données personnelles».
Page 24
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Page 25
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Membre Nom
Chef de projet Mohammed belghitri
Product Owner Ben malk Otman
Assistant à maîtrise d’ouvrage(AMOA) El mamouni Amine
Page 26
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Page 27
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
Page 28
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
1.4 Conclusion :
Ce chapitre a été consacré à la présentation de l’entreprise d’accueil, Bank Al yousr,
comme il explique le cadre général du projet en mettant le point sur la problématique et
les objectifs à atteindre. Ensuite il décrit la méthodologie adoptée pour la conduite du
projet, à savoir SCRUM, et le planning du travail. Dans Le chapitre suivant, nous allons
Page 29
CHAPITRE 1. CONTEXTE GÉNÉRAL DU PROJET
aborder l’étude préliminaire et fonctionnelle qui va traiter la solution sur laquelle porte
ce projet.
Page 30
CHAPITRE 2
L contact pour la compréhension des besoins et des objectifs poursuivis ainsi que
le terrain sur lequel ils s’appliquent.
A travers cette compréhension, nous arrivons à la fin de ce chapitre à présenter une
analyse des besoins fonctionnels et non fonctionnels de notre système.
31
CHAPITRE 2. ANALYSE DES BESOINS
Le système actuel permet la réduction des tâches administratives réalisées par les
agents, leur permettant ainsi de se focaliser sur les tâches commerciales et le service
avant-vente qui représentent la mission principale de leur poste.
Toutefois, l’intervention humaine occupe encore une grande place dans le système ac-
tuel. L’agent doit gérer des rendez-vous avec les clients afin de s’assurer de l’identité du
porteur du compte, vérifier les pièces justificatifs et clôturer l’ouverture de compte par la
signature des contrats.
Page 32
CHAPITRE 2. ANALYSE DES BESOINS
F IGURE 2.2 – Etude Benchmarking des solutions digitales d’ouverture de compte sur le mar-
ché bancaire marocain.
En comparaison avec la solution actuelle de Bank AL YOUSR, on peut dire que cette
dernière se positionne dans un niveau moyen par rapport aux solutions des confrères.
Elle propose les fonctionnalités basiques comme le remplissage manuel du formulaire des
données, l’importation des pièces d’identité sans être capable de les vérifier. Toutefois,
l’intervention de l’agent est toujours nécessaire afin d’assurer la vérification des identités
des clients et la validité des pièces justificatives. Le prospect a toujours l’obligation de se
Page 33
CHAPITRE 2. ANALYSE DES BESOINS
D’après cette analyse, nous concluons que nous avons des exemples forts sur le marché
qu’il convient de considérer comme exemples. Afin d’atteindre le niveau de la concurrence,
notre solution doit couvrir, idéalement, l’ensemble des étapes suivantes :
* Création de compte d’adhésion,
* Choix de la catégorie du client,
* Choix de l’offre/Pack,
* Vérification de l’identité,
* Prise de photo(selfie),
* Remplissage automatique de formulaire,
* Remplissage du questionnaire KYC en ligne,
* Choix de l’agence,
* Appel visioconférence,
* Signature électronique.
Parmi les étapes qui manquent dans la solution actuelle, il a été décidé de travailler
principalement sur les suivantes :
* vérification de l’identité,
* remplissage automatique du formulaire,
* Interview en visioconférence,
Nous considérons que l’ajout de ces fonctionnalités permettra d’assurer une solution
digne de concurrencer ses similaires sur le marché et qui répond à l’essentiel de nos ob-
jectifs de réduction de l’intervention humaine et des déplacements.
Page 34
CHAPITRE 2. ANALYSE DES BESOINS
La signature électronique sera traitée comme un projet à part qui sera soumis à un
sous-traitant vu les complexités techniques et le besoin d’un niveau d’expertise avancé.
Aussi, la délégation d’une telle fonctionnalité n’interféra pas avec le besoin d’appliquer la
propre vision de la banque comme dans les autres fonctionnalités.
les acteurs qui initient l’exécution des cas d’utilisation, ces acteurs sont :
• Internaute : c’est le futur prospect qui doit s’enregistrer pour effectuer la demande
d’entrée en relation.
• Prospect : : c’est le futur client, une fois enregistré il dispose d’un espace personnel
au niveau de notre application.
• Agent : :,c’est l’acteur qui représente la banque durant les opérations de l’ouverture
de compte.
les acteurs fournissant des fonctionnalités pour l’exécution des cas d’utilisation,ces ac-
teurs sont :
Page 35
CHAPITRE 2. ANALYSE DES BESOINS
• Choix du produit : ce sont les différents packs et types de comptes offerts par la
banque, ils sont proposés par le système en fonction du type client.
• Choix de l’agence : il s’agit de choisir l’agence qui sera chargée de gérer ces de-
mandes d’ouverture de compte.
• La gestion rendez-vous :c’est la possibilité offerte au client pour choisir une date
de rendez-vous, et mettre à jour cette date tant que la rencontre à distance avec
l’agent n’a pas été effectuée.
Page 36
CHAPITRE 2. ANALYSE DES BESOINS
• Consultation des demandes : l’agent peut consulter les differents dossiers et les
documents associés.
Page 37
CHAPITRE 2. ANALYSE DES BESOINS
2. Remplir le formulaire.
Page 38
CHAPITRE 2. ANALYSE DES BESOINS
Page 39
CHAPITRE 2. ANALYSE DES BESOINS
Postcondition les données du prospect et les documents associés sont bien vérifiées.
Page 40
CHAPITRE 2. ANALYSE DES BESOINS
clients et des agents dans chaque étape du processus, respecter les normes de l’er-
gonomie, et permettre une ouverture de compte bancaire dans les meilleurs délais.
Pour cela, le système doit offrir à ces utilisateurs une vue complète sur l’ensemble
des étapes du processus d’ouverture de compte, avec un nombre minimum de clicks
et passages entre les fenêtres, et aussi il doit réduire le nombre des champs à rem-
plir par le client dans chaque étape.
• Fiabilité : l’aptitude du notre système à assurer sa mission dans des conditions d’en-
vironnement données et pendant une durée donnée. La fiabilité caractérise ainsi la
confiance que l’utilisateur peut placer dans le service rendu par le système.
2.4 Conclusion :
Dans ce chapitre, nous avons étudié la solution actuelle, puis nous avons établi un
benchmarking qui nous a aidé à identifier les caractéristiques et les fonctionnalités que
le futur système doit implémenter, enfin nous avons élaboré sur ces fonctionnalités en les
divisant en besoins fonctionnels besoins non fonctionnels avec description associée pour
chacun de ses éléments
Page 41
CHAPITRE 3
Conception
42
CHAPITRE 3. CONCEPTION
• Une fois, le compte est activé, le prospect peut accéder à son espace sur lequel il
peut établir sa demande d’ouverture de compte :
* Choisir le type de client (personne morale, personnel, professionnel),
* Importer sa pièce d’identité pour que le système la vérifie (CIN pour un maro-
cain résident, une carte de séjour pour un étranger résident, un passeport pour
un étranger non résident),
• Ensuite, le prospect effectue son choix de l’agence qui sera chargé de traiter sa
demande,
• Ainsi, un dossier d’ouverture de compte est créé contenant toutes les informations
du prospect et les documents associées,
• L’agent consulte le dossier et accepte le RDV pour effectuer un appel vidéo avec le
prospect. La visioconférence permet d’affirmer l’identité du prospect, l’entretenir
sur des préférences et besoins supplémentaires et poser des questions spécifiques
permettant de boucler le processus KYC et attribuer un score sur sa situation fi-
nancière.
• ensuite l’agent valide le dossier qui constitue maintenant une demande de création
Page 43
CHAPITRE 3. CONCEPTION
de compte bancaire.
• Une fois la signature électronique est effectuée par le client, l’agent est notifié afin
d’exécuter une deuxième validation requise pour qu’une deuxième communication
automatique avec T24 s’établisse,
Le nouveau processus que nous visons de mettre en place envisage de nouvelles fonc-
tionnalités et un nouveau schéma d’interactions entre les participants et les activités, ce
qui impose qu’un tout nouveau modèle doit être établi.
Page 44
CHAPITRE 3. CONCEPTION
Page 45
CHAPITRE 3. CONCEPTION
Page 47
CHAPITRE 3. CONCEPTION
Une fois les données sont reçues, l’événement chargé de recevoir le message permettra
à l’administrateur de commencer sa première tâche qui est la vérification des données
Page 48
CHAPITRE 3. CONCEPTION
Page 49
CHAPITRE 3. CONCEPTION
Si les images correspondent à une pièce d’identité, il approuve puis il sera redirigé vers
la tâche suivante, l’impliquant d’extraire les données prospect à partir d’images
Si la validation se produit, l’administrateur sera informé et envoie par la suite les dates
de rendez-vous disponibles, qui seront reçues dans la voie du prospect, le prospect choisit
une date et le processus se termine en informant l’agent bancaire qu’un nouveau dossier
a été enregistré.
voici la carte de processus illustrant l’exécution du processus à un moment donnée :
Page 50
CHAPITRE 3. CONCEPTION
Page 51
CHAPITRE 3. CONCEPTION
• Une Application Monopage côté client (Prospect App) : Cette application est
dédiée au Prospect de la banque, et lui permet d’effectuer une demande d’ouverture
de compte enligne.
• Une Application web côté serveur (Prospect Web App) : Cette Application joue
le rôle d’un serveur web, elle fournit l’application Monopage et son contenu statique
au navigateur du prospect.
• Une Application Monopage côté client (Agent App) : Cette application est dédiée
au Agent banquaire, et lui permet de gérer les dossiers des prospects ayant effectuer
une demande d’ouverture de compte.
• Une Application web côté serveur (Agent Web App) : Cette Application joue
le rôle d’un deuxième serveur web hébérgée sur le réseau local de la banque, elle
fournit l’application Monopage et son contenu statique au navigateur de l’agent.
• l’API Entrée en Relation (EER) : c’est le backend du système , mettant en dispo-
sition des services qui permettent d’une part à l’application de l’agent banquaire
d’effectuer les traitemants/operations sur les dossiers et d’autre part à l’applica-
tion du prospect d’ajouter des dossiers à la base de données afin d’être traiter par
l’agent. Cette API est ègalement une interface entre les applications du front et la
base de donnée, le système du core banking (T24) utilisé au sein de la banque, et
le serveur de stockage de fichiers.
• l’API du traitement des pièces d’identitées : mettre en disposition à l’application
Monopage du prospect deux modèles d’apprentissage automatique ; un modèle de
classification d’image, la permet de savoir si une image correspondant vraiment à
une pièce d’identité, et un modèle d’extraction du text (OCR model), pour extraire
les informations contenu dans cette dernière.
Page 53
CHAPITRE 3. CONCEPTION
Page 54
Le digramme ci-dessus décrit l’API EER,voici les principaux couches qui la construire :
• Services : le module implementant toute la logique et les règles métier ainsi que
des calculs concernant le processus d’entrée en relation, répartis en composantes
chacun s’occupe d’un traitement specifique.
ex :
Dossierservice : contenant les opérations effectuer sur les dossiers des prospects,
notamment la création d’un dossier d’ouverture et sa gestion.
Page 55
CHAPITRE 3. CONCEPTION
Page 56
CHAPITRE 3. CONCEPTION
Classe Description
représente l’utilisateur de l’application et contient les in-
User formations initiales nécessaires à la création d’un espace
au niveau de l’application
L’Agent Front Office : le responsable pour la partie ouver-
Agent_CRC
ture des comptes pour les prospects.
Prospect Le client ciblé qui n’a aucun compte bancaire.
représente l’administrateur qui pour rôle de gérer les uti-
Admin
lisateurs de l’application.
Le dossier d’ouverture de compte pour un prospect, qui
Dossier englobe toutes les informations sur ce dernier, les pro-
duits choisis, les pièces justificatives.
Agence contient la liste des agences de bank Alyousr
la liste des documents demandés au moment de l’ouver-
PieceJustificatif
ture du compte
Le pack contient un produit ou plusieurs de la banque,
Pack
produits supplémentaires.
Page 57
CHAPITRE 3. CONCEPTION
Page 58
CHAPITRE 3. CONCEPTION
F IGURE 3.15 – Diagramme de séquence "Traitement d’une PID pour remplissage automa-
tique du formulaire"
Page 59
CHAPITRE 3. CONCEPTION
Acteur Description
représente le prospect actuel qui est entrain de créer un
Prospect dossier d’ouverture
TABLE 3.2 – Description du diagramme de séquence "Traitement d’une PID pour remplis-
sage automatique du formulaire"
Page 60
CHAPITRE 3. CONCEPTION
Page 61
CHAPITRE 3. CONCEPTION
Acteur Description
représente le prospect actuel qui est entrain de créer un
Prospect dossier d’ouverture
Page 62
CHAPITRE 3. CONCEPTION
L’agent initialise la connexion et crée une salle de réunion à l’aide du service OpenI-
vidu, ce dernier génère et envoie un identifiant unique à l’agent, et au prospect concerné
afin de lui permettre d’accéder à la salle de réunion.
Page 63
CHAPITRE 3. CONCEPTION
Lors de la visioconférence, l’agent récupère le dossier du prospect puis vérifie son identité
et les informations y contenues. Dans le cas de manque des documents justificatifs, le
prospect est invité à charger ces derniers. Par la suite, l’agent saisit les données du KYC
et modifie, si nécessaire, les informations du dossier. Le service T24 intervient dans cette
étape pour la création du compte dans le système banquaire (compte restreint), et l’envoie
des contrats au prospect pour les signées et les renvoyés à l’agent pour, finalement, valider
la demande et enlever les restrictions du compte.
Page 64
CHAPITRE 3. CONCEPTION
Dans la Bank alyousr, le gestionnaire de version utilisé est Git, avec GitLab CI/CD
comme serveur d’intégration continue.
Page 65
CHAPITRE 3. CONCEPTION
Suite à un changement dans le code. Le développeur peut effectuer une commit via son
gestionnaire de code source git locale, pour mettre à jour le répertoire partageable entre
les différents membres de l’équipe sur GitLab.
Si le fragment ne s’intègre pas correctement, c’est-à-dire le résultat de l’exécution d’une
tâche (une tâche est appelé job dans GitLab CI/CD) est négatif, dans ce cas le dévelop-
peur doit effectuer une annulation des modifications apportées, et revenir à la dernière
version stable de l’application, ceci est possible en utilisant un outil de gestion de code
source distribué tel que Git.
3.6 Conclusion :
Dans ce chapitre, nous avons commencé à l’aide de BPMNpar modéliser le nouveau
processus que nous comptions mettre en place, et nous avons simulé l’exécution des diffé-
rents flux contenus dans le processus, puis nous avons précisé l’architecture fonctionnelle
de la solution, et en utilisant le langage UML notamment, les diagrammes de classe et de
séquence, nous avons spécifié la structure interne du système et modélisé les interactions
entre ses différentes parties.
Page 66
CHAPITRE 4
Réalisation
fin de réaliser notre projet de fin d’études, nous avons utilisé une panoplie de
67
CHAPITRE 4. RÉALISATION
IDE Description
Page 68
CHAPITRE 4. RÉALISATION
Page 69
CHAPITRE 4. RÉALISATION
Page 70
EER API
Couche Description
gère les demandes de toutes les fonctionnalités d’authentifi-
AuthController : (Spring
cation telles que la connexion et l’inscription, la vérification
REST Controller)
d’un e-mail déjà utilisé
responsable du traitement des requêtes spécifiques à des opé-
Couche Web UserController (Spring rations sur le compte de l’utilisateur, telles que l’obtention des
REST Controller informations de l’utilisateur actuel, la mise à jour du mot de
passe et la déconnexion.
GestionDossierController s’occupe des requêtes correspond aux opérations sur les dos-
(Spring REST Controller) siers
définit un programme pour toute tâche d’authentification, il
est composé d’un ensemble d’opérations, chacune est un trai-
AuthService (Spring Ser-
tement basé sur des règles spécifiques. ex : authentifier un
vice)
utilisateur au système, s’enregistrer et envoyer un lien de vé-
rification
c’est le composant principal du système actuel, qui implé-
Couche Métier
mente toute la logique métier que l’organisation suit pour
l’entrée en relation digitale avec le client, définissant ainsi les
DossierService (Spring
traitements qui peuvent se lancer sur les ressources de l’ap-
Service)
plication, particulierement les dosssiers. ex :la creation d’un
nouveu dossier (affecter une agence, gérer les informations de
la piece d’identité)
interfaces dans lesquelles nous déclarons toutes les re-
quêtes requises sur les tables de la base de données, elles
seront utilisées dans tous les services qui doivent trai-
Repositories (Spring Data ter des informations depuis ou vers la base de données.
JPA) : ex : UserRepository :cherche un utilisateur par son email dans
la base de données .ces interfaces communiquent directe-
ment avec hibernate qui gère le mapping objet relationnel.
Page 71
CHAPITRE 4. RÉALISATION
PidProcessing API
Couche Description
DocProcessing
controller contient deux routes qui gèrent la requête, chacune a une méthode qui charge le mo-
Controller(Flask
dèle et lui transmet la pièce d’identité.
Application)
Modèle basé sur l’architecture CNN qui applique d’abord cer-
DocVerify (Keras CNN Mo- tains filtres à l’image d’entrée puis extrait certaines caractéris-
logique d’applica-
del) tiques qui seront utilisées pour classer si l’image correspond à
tion
cin ou passeport.
Modèle basé sur l’architecture CRNN composé de deux élé-
ments principaux, le détecteur de texte qui détecte et loca-
DocExtractInfo(Keras
lise les régions de texte d’une image, et l’extracteur de texte
CRNN Model)
reçoit la sortie du détecteur dans un format spécifique, les ex-
trait dans un fichier pouvant être manipulé par une machine
Méthode de résolution :
Le problème de classification d’images est posé formellement de la manière suivante :
• Il y a K classes d’images possibles. L’ensemble {0, 1, ..., K − 1} définit les labels des
différents classes (dans notre cas : 0 = “aucun document d’identification”, 1 =
“CIN marocaine”, 2 = “passeport”, etc)
Page 72
CHAPITRE 4. RÉALISATION
On a choisit de travailler avec les réseaux de neurones convolutifs, ils s’occupent eux
même des deux premières étapes. On passe alors directement à la troisième étape.
On voulait construire un classifieur qui peut reconnaîte les différents documents d’identi-
fication éligible pour ouvrir un compte bancuaire, à savoir les cartes d’identité marocaines
ou étrangères, les passeport, les titres de séjour marocains ou étrangers. Mais vu le manque
des données, on a choisit au début de construire un modèle capable de reconnaître les CINs
marocains (parcours des prospects Marocains résidents), et les passeports (parcours des
étrangers non résidents au Maroc ).
Page 73
CHAPITRE 4. RÉALISATION
images on crée un jeu de données qui contient 200 images colorées dans 2 catégories.
Les images montrent des documents d’identification (carte d’identité nationale et
passeport ) à basse résolution (224 par 224 pixels).
160 images sont utilisées pour former le réseau et 40 images pour évaluer la
précision avec laquelle le réseau a appris à classer les images.
Voici le code pour charger les données depuis un repertoire et créer une Dataset :
Page 74
CHAPITRE 4. RÉALISATION
Page 75
CHAPITRE 4. RÉALISATION
2- Construction du modèle.
• Construire le modèle :
Construire le réseau de neurones nécessite de configurer les couches du modèle, puis
de compiler le modèle. Les couches extraient des représentations des données qui
y sont introduites. Dans notre cas, on travaille avec l’architecture ResNet[4], cette
architecture CNN est connue d’avoir un erreur minimal de 3.6%, Les ResNets sont
construits à partir de quelque chose appelé un bloc résiduel (Residual Block)
Les couches de cette architecture, ainsi que ses configurations sont connus, diffé-
rentes versions utilisent un nombre variable de "Blocs Résiduels" à différents ni-
Page 76
CHAPITRE 4. RÉALISATION
Page 77
CHAPITRE 4. RÉALISATION
3- Former/Entraînez le modèle
voici un schéma qui montre le processus d’entraînement du réseau.
Page 78
CHAPITRE 4. RÉALISATION
Page 79
CHAPITRE 4. RÉALISATION
Page 80
CHAPITRE 4. RÉALISATION
Pour examiner l’ensemble complet des prédictions de classe, on les représente graphi-
quement en utilisant la fonction montrée dans la figure suivante :
On trace plusieurs images de test avec leurs prédictions. Notez que le modèle peut se
tromper même lorsqu’il est très confiant.
Page 81
CHAPITRE 4. RÉALISATION
en utilisant l’API Keras-ocr[6], nous allons concevoir une pipeline composée de deux
éléments un détecteur qui détecte les portions du texte contenus dans les différentes ré-
gions d’image.
Page 82
CHAPITRE 4. RÉALISATION
Afin de s’entraîner sur des données synthétiques,nous avons besoin d’un ensemble des
polices et arrières plan,keras-ocr comprend différentes méthodes afin de les télécharger à
partir de google fonts et wikimedia.
afin de créer des images,on a besoin des chaînes de caractères générées aléatoirement,
keras-ocr fournit une méthode simple pour cela en fonction d’alphabet qu’on a définit,
puis on divise les données arrière plans et polices en des données de formation, test
et validation, ensuite on les fournit au générateur des images qui va générer des images
avec une résolution définie et contenant du texte stylé par les polices et affiché dans les
arrières plans prédéfinies.
le générateur des images et aussi divisé en formation, validation et test en fonction de
la séparation fait sur les arrières plans et les polices.
Page 83
CHAPITRE 4. RÉALISATION
Le rouge symbolise que les caractères ont une forte affinité et doivent être fusionnés
en un mot :
Enfin, les scores d’affinité et de région sont combinés pour donner la boîte englobante
de chaque mot. Les coordonnées sont dans l’ordre : (en haut à gauche), (en haut à droite)
(en bas à droite), (en bas à gauche), où chaque coordonnée est une paire (x, y).
Page 84
CHAPITRE 4. RÉALISATION
Une telle opération sera exécutée sur l’ensemble des données de formation en optimisant
les poids de l’architecture CRAFT a chaque itération jusqu’au on obtient une valeur
minimale loss qui est une valeur mesurant à quel point notre modèle se porte bien.
en s’appuyant sur l’Architecture CRAFT qu’on a décrit, l’entraînement de détecteur est
implémenté en utilisant keras ocr API comme suit,
Page 85
CHAPITRE 4. RÉALISATION
Page 86
CHAPITRE 4. RÉALISATION
On finira par tester le modèle d’Extraction des données composée du détecteur et recon-
naissance du texte qu ’on a construit
Page 87
CHAPITRE 4. RÉALISATION
La requete d’inscription venant du côté client sera traitée par un filter de Spring Secu-
rity qui est l’interface LoadbyUsername, qui prend le champ email comme argument et
exécute une requête sur la base de données, cherchant si ce champ a été utilisé par un
autre utilisateur,sinon la requete est redirigée vers endpoint, qui appelle une méthode du
AuthService, qui s’occupe de créer un nouveau canal au niveau du système , particulier
au prospect.
Page 88
CHAPITRE 4. RÉALISATION
Page 89
CHAPITRE 4. RÉALISATION
un email sera envoyée à travers un serveur SMTP à l’adresse email du visiteur qui doit
la confirmer pour que son compte soit activité.
Page 90
CHAPITRE 4. RÉALISATION
la création du dossier est déclenchée par un requête venant vers l’endpoint, le corps
du requete contient les informations de la pièce d’identité du prospect qui sont extrait
par l’API du traitement de documents justificatifs , le contrôleur qui reçoit cette requête
invoque une méthode Dossier Service qui, premierement cherche si l’utilisateur authentifié
à déjà un dossier créé , le cas échéant,la méthode met à jour les informations associées au
dossier.
Page 91
CHAPITRE 4. RÉALISATION
Page 92
CHAPITRE 4. RÉALISATION
afin que le prospect sélectionnee une agence bancaire, le côté client envoie une requête
au système demandant la liste des agences bancaires, recevant en retour un objet json
contenant la réponse.
Page 93
CHAPITRE 4. RÉALISATION
la route ci-dessous est particulière à l’agent, qui envoi à travers le côté client une
requête afin de récupérer les dossiers avec les prospects associées.
Page 94
CHAPITRE 4. RÉALISATION
Page 95
CHAPITRE 4. RÉALISATION
Page 96
CHAPITRE 4. RÉALISATION
4.3 Conclusion :
Au fil de ce chapitre, l’accent est mis sur les technologies utilisées dans la réalisation
du projet ainsi que des captures d’écran de la partie front office et back office.
Page 97
Conclusion
On a commencé dans un premier lieu par étudier le contexte général du projet en dé-
finissant les spécifications du besoin. En parallèle, on était en formation sur la technologie
qu’on doit utiliser pour la réalisation du projet.
Ensuite on a abordé la partie planification et répartition des tâches avec leurs priorités
en respectant la méthodologie de conduite de travail Scrum. Enfin, on a entamé la phase
d’implémentation de la solution. Ce stage m’ a donné l’ occasion de découvrir le monde
du service IT et de confronter de nouvelles techniques informatiques à savoir la plateforme
ERP T24 qui se compte mondialement parmi les leaders des logiciels bancaires .
Il nous a également offert l’opportunité d’interagir avec des consultants techniques du
département du système d’information de la banque et de participer à des réunions quo-
tidiennes, afin de mieux comprendre la culture de l’organisme, la méthode de travail, les
problèmes quotidiens et les moyens pour les résoudre. Ce stage a été bénéfique étant donné
qu’il nous a octroyé l’opportunité de mettre en application les différentes connaissances
acquises tout au long de notre cursus universitaire, ainsi que d’enrichir nos compétences
concernant différents outils et technologies. Les difficultés rencontrées durant le déroule-
ment du stage étaient principalement liées à la maîtrise de certaines technologies.
Néanmoins, grâce au suivi et à l’assistance de l’encadrant et l’équipe de système d’infor-
mation, on a pu rattraper nos besoins de formation, s’adapter facilement, affronter tous
les obstacles rencontrés et aussi expérimenter mes compétences.
98
Webographie
99