Osmani Amina (La Conception Et La Réalisation.... )
Osmani Amina (La Conception Et La Réalisation.... )
Osmani Amina (La Conception Et La Réalisation.... )
Thème
OSMANI AMINA
TADJADIT NESRINE
28/09/2018
Dédicace
A mes très chers parents qui ont toujours été là pour moi, et qui
m’ont donné un magnifique modèle de labeur et de persévérance.
J’espère qu’ils trouveront dans ce travail toute ma reconnaissance
et tout mon amour.
A mes adorables sœurs Nada, Zina, Nihel, mon cher frère Alaa
Eddine et mon beau-frère Naim tlidjane pour leurs
encouragements permanents, et leurs soutien morals.
A toute ma famille en particulier mon oncle Kamel laouichi et
sa femme Zakia Tadrist.
A mes meilleurs amies Célia Kharchiche, Yasmine Djeghbala et
Marya Mokrane.
A mon Chère binôme Nesrine Tadjadit et pour sa patience avec
moi.
A tout la famille Tadjadit.
A tous les amis qui m’ont toujours encouragé, et à qui je
souhaite plus de succès.
A tous ce que j’aime et ceux qui m’aiment.
A toute personne utilisant ce document pour un bon usage.
Je dédie ce mémoire.
Osmani Amina
Dédicace
Je dédie se travail à
A ma très chère mère
Quoi que je fasse ou que je dise, je ne saurai point te remercier
comme il se doit. Ton affection me couvre, ta bienveillance me
guide et ta présence à mes côtés a toujours été ma source de
force pour affronter les différents obstacles.
A mon très cher père
Tu as toujours été à mes côtés pour me soutenir et m’encourager.
Que ce travail traduit ma gratitude et mon affection.
A mes très chers frères « Racim » et « Sid Ahmed », A ma
chère sœur « Souhila », son mari « Berkane Bachir » et leurs
fils, mon cher « Abdou », Pour leurs soutiens morals et leurs
conseils précieux tout au long de mes études.
A ma chère grande mère « Ferjamaa Fatima », a Qui je
souhaite une bonne santé.
A ma chère binôme « Osmani Amina », Pour son entente et sa
sympathie.
A ma chère « Mokrane Marya », Qui n’a pas cessé de nous
encourager, et à qui je souhaite plus de succès.
A toute ma famille et mes proches, A ma tente « Ghania ».
A toute la famille « Osmani ».
A ceux qui me donnent de l’amour et de la vivacité et à ceux qui
m’ont aidé et supporté dans les moments difficiles.
A tous ceux que j’aime.
Tadjadit Nesrine
Remerciements
Nous tenons tout d’abord à remercier le bon Dieu le tout
puissant, qui nous a donné la force et la patience d’accomplir ce
modeste travail.
En seconde lieu, nous tenons à remercier notre promotrice Mme
« Mezzi Melyara », pour l’orientation, la confiance, la
patience qui ont constitué un apport considérable sans laquelle ce
travail n’aurait pas pu être mené au bon port. Qu’elle trouve
dans ce travail un hommage vivant à sa haute personnalité.
A l’issue de notre stage, nous tenons à remercier toutes les
personnes qui ont contribué de près ou de loin au bon
acheminement de cette formation au niveau de BNP Paribas El
Djazair.
Nous remercions Mme « Koudri Fatima » chargée d’insertion
et de formation, pour son orientation et son accueil sympathique
lors des jours de stage.
Nous sommes reconnaissantes à Mr. « Zekri Mohamed »
pour le temps qu’il nous a consacré tout au long de l’expérience
enrichissante qu’il nous a permis, sachant répondre à nos
questions ; sans oublier son encadrement et son participation au
cheminement de ce rapport.
Nos vifs remerciements vont également aux membres du jury
pour l’intérêt qu’ils ont porté à notre recherche en acceptant
d’examiner notre travail et de l’enrichir par leurs propositions.
Nous tenons à exprimer nos sincères remerciements à tous les
professeurs qui nous ont enseigné et qui par leurs compétences
nous ont soutenu dans la poursuite de nos études.
Enfin, nous tenons également à remercier nos familles et toutes
les personnes qui ont participé de près ou de loin à la réalisation
de ce travail.
Glossaire
-A-
APK : Android Package.
API : Application Programming Interface.
ASP : Active server page.
-B-
BNP : Banque national de paris.
-C-
CMS : Content Management System.
CNI : Carte national d’identité.
CRC : Contrôle de redondance cyclique.
CCP : Certificat de compétence professionnelle.
-E-
EER : Entrer en relation.
-F-
FAQ : frequently asked question.
-H-
HTTP : Hypertext Transfer Protocol.
-I-
iOS : Internetworking Operating System.
-J-
JSON : JavaScript Object Notation.
JDK : Java Development Kit.
-K-
KNN : K plus proche voisin.
-N-
NPS : Net Promoter Score.
-O-
OS : Operating system.
OCR : Optical character recognition.
OMC : organisation mondiale du commerce.
-P-
PHP : Hypertexte PreProcesseur.
-R-
RIB : Relevé d’identité bancaire.
-S-
SVM : Support Victor Machine.
SDK : Sotfware Development Kit.
SGBD : Système de Gestion de Base de Données.
-T-
TAL : Traitement automatique des langues.
-U-
UBCI : Union bancaire pour le commerce et l’industrie.
UML : Unified Modeling Language.
-V-
VTC : voitures de transport avec chauffeur.
-W-
WWW : World wide web.
Wup : Wu and Palmer.
-X-
Xml : eXtensible Markup Language.
Table des matières
Resume 2
Introduction générale 4
1 Développement mobile 8
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Les appareils mobiles et les grands OS existants actuellement . . . . . . . . . . 9
1.3 Les applications mobiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.1 Les avantages et les inconvénients des applications mobiles . . . . . . . 11
1.3.2 Les catégories des applications mobiles . . . . . . . . . . . . . . . . . . 11
1.4 La conception d’une application mobile . . . . . . . . . . . . . . . . . . . . . . 13
1.5 Les applications mobiles et applications mobiles bancaires en Algérie . . . . . 14
1.6 Les applications androïde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.6.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.6.2 État d’une application . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.6.3 Cycle de vie d’une activité android . . . . . . . . . . . . . . . . . . . . 16
1.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3 Développement web 39
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.2 Développement Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.3 Type des applications web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.4 Architecture d’une application web . . . . . . . . . . . . . . . . . . . . . . . . 42
3.5 Le fonctionnement d’une application web . . . . . . . . . . . . . . . . . . . . . 45
3.5.1 L’application client/serveur . . . . . . . . . . . . . . . . . . . . . . . . 46
ii
3.5.2 Serveur web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.6 L’hébergement d’une application web . . . . . . . . . . . . . . . . . . . . . . . 47
3.7 Backoffice et le backoffice bancaire . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.8 Quelques exemples de back-office . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6 Conception 76
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.2 Description du cycle de vie d’un logiciel . . . . . . . . . . . . . . . . . . . . . . 77
6.3 La conception détaillée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7 Réalisation et développement 89
7.1 Environnement de développement . . . . . . . . . . . . . . . . . . . . . . . . . 90
7.1.1 Androïde studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
7.1.2 Sublime Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.2 Environnement logistique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.2.1 Git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.2.2 GitHub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.3 Langage de développement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.3.1 JAVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.3.2 JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.3.3 Xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7.3.4 Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7.4 Système de gestion de base de données . . . . . . . . . . . . . . . . . . . . . . 93
iii
7.4.1 FireStore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7.4.2 RealTime Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7.5 Serveur application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.5.1 FireBase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.6 Architecture de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.7 Travail Réalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
7.7.1 Jeux de test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
7.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Annexe A 114
Annexe B 117
Annexe C 123
Bibliographie 126
iv
Table des figures
1 L’objectif du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
v
4.10 Connexion kepler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.11 Procedure EER de BNP Paribas ED . . . . . . . . . . . . . . . . . . . . . . . 62
vi
7.27 Menu Backoffice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
7.28 Histoire du logo de BNP Paribas. . . . . . . . . . . . . . . . . . . . . . . . . . ii
7.29 Organigramme de BNP Paribas El Djazeir. . . . . . . . . . . . . . . . . . . . . iv
7.30 Interface principale «E-banking». . . . . . . . . . . . . . . . . . . . . . . . . . i
7.31 Interface «situation globale des comptes». . . . . . . . . . . . . . . . . . . . . ii
7.32 Interface «commander des chéquiers». . . . . . . . . . . . . . . . . . . . . . . . iii
7.33 Interface «Effectuer des virements». . . . . . . . . . . . . . . . . . . . . . . . . iii
7.34 Interface de vérification le virement. . . . . . . . . . . . . . . . . . . . . . . . . iv
7.35 Consultation des données. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
7.36 Intégration des fichiers libs d’Accura Scan. . . . . . . . . . . . . . . . . . . . . i
7.37 Intégration des fichiers assets d’Accura Scan. . . . . . . . . . . . . . . . . . . . i
7.38 Intégration des fichiers docrecog d’Accura Scan. . . . . . . . . . . . . . . . . . ii
7.39 Intégration des fichiers card d’Accura Scan. . . . . . . . . . . . . . . . . . . . . ii
vii
Liste des tableaux
viii
Resume
Résumé
Se déplacer en agence pour effectuer une opération ou déposer d’une information n’est plus
obligatoire, le but de notre projet est de simplifier l’accès aux services de la BNP, notamment
la procédure d’entrée en relation du service client.
Abstract
As part of the project of the digital transformation of companies in Algeria, and in order
to better adapt to the new behaviors of its customers, BNP Paribas El Djazair has proposed
the development of a mobile application of the EER procedure.
Le marché des technologies a connu une énorme évolution ces dernières années et avec
l’intégration de l’internet il y a eu des changements sur la façon et la rapidité d’accès aux
informations.
Plusieurs secteurs se sont adaptés à ce changement et encore plus ont vu le jour pour sa-
tisfaire ces nouveaux clients.
Les banques représentent l’un des domaines qui connaissent un nombre énorme de client et
qui souffrent pour les satisfaire. Ils doivent alors proposer leurs services d’une façon plus rapide
et sécurisé mais aussi à distance afin de pouvoir éviter la congestion dans les agences. Avec
l’apparition des appareils mobiles, comme les smartphones et les tablettes qui ont connu une
révolution technologique, il est devenu facile pour une banque de gérer ce conflit par proposer
une application mobile capable de procurer des services indispensables rapidement et à tout
moment.
Notre projet consiste à développer une application bancaire mobile sous Androïde qui pro-
pose de nombreuses fonctionnalités à l’utilisateur ainsi que sa partie administrative qui consiste
à gérer les services clientèle.
Problématique
Une banque offre de nombreux services à ses clients qui doivent se présenter chaque fois à
l’agence pour effectuer les moindres opérations.
Etant donné le nombre de clientèle bancaire, nous devons trouver une solution pour le
confort du client afin qu’il puisse faire ses besoins à distance et ainsi les agences ne souffrent
pas d’encombrement humain.
C’est pourquoi il est nécessaire aujourd’hui pour une banque d’offrir à ses clients une ap-
plication mobile permettant de réaliser des opérations en toute sécurité et à tout moment.
4
Présentation du thème
Nous avons essayer de réaliser une application mobile destinée pour BNP Paribas El Djazair
afin de constituer une interface entre le client et sa banque et offrir un ensemble de services
pour la clientèle.
Pour atteindre cet objectif, nous commençons par comprendre le fonctionnement du sys-
tème Mobile et son déploiement pour la mise en place de la banque à distance.
Dans un deuxième lieu, nous choisissons une architecture Client/serveur afin d’implémenter
les différents modules logiciel de l’application.
Ensuite, nous procédons à la conception. Et enfin, nous développons l’application.
Objectif
L’idée de ce projet et de réaliser une application mobile qui satisfait les besoins du client
et lui fait gagner du temps pour ne pas se présenter aux agences et un backoffice qui présente
leur coté administratif.
5
Organisation du mémoire
Notre mémoire est organisé en sept chapitres commençant par une introduction et termi-
nant par une conclusion et perspective.
Chapitre 1 :
Ce chapitre intitulé « développement mobile » représente la première partie théorique du
travail, Contenant les parties suivantes :
? Une introduction au chapitre.
? L’évolution des appareils mobiles et les systèmes d’exploitation mobile les plus utilisés
mondialement.
? Quelques notions sur les applications mobiles, et les applications mobiles en Algérie.
? Présentations de quelques applications mobiles bancaires à l’échelle internationales.
? Les applications Android.
? Conclusion du chapitre.
Chapitre 2 :
Ce chapitre présente la deuxième partie théorique de notre travail, Contenant les parties
suivantes :
? Une introduction.
? Une petite introduction au traitement automatique de la langue.
? L’analyse des sentiments et les approches d’apprentissage automatique et la relation
entre l’analyse des sentiments et la satisfaction de la clientèle.
? Présentation de quelques exemples d’application.
? Nous terminons ce chapitre avec une petite conclusions.
Chapitre 3 :
Ce chapitre représente la troisième et la dernière partie théorique de notre travail, nous
l’avons partitionné comme suit :
? Une introduction.
? Généralité sur le développement web, les différents types des applications web, l’archi-
tecture, le fonctionnement et l’hébergement d’une application web.
? Le Backoffice et le backoffice dans le domaine bancaire.
? Présentation de quelques backoffice bancaire.
? Conclusion.
6
Chapitre 4 :
Dans ce chapitre, nous décrirons le contexte du projet, commençant par une introduction,
présentation de la solution retenue (application mobile + backoffice), et terminant par une
conclusion.
Chapitre 5 :
Dans ce chapitre, nous présentons la spécification des besoins fonctionnels et non fonction-
nels de notre système.
Chapitre 6 :
Dans ce chapitre, nous développons notre conception.
Chapitre 7 :
Le septième et dernier chapitre, sera réservé à présenter l’application et à expliquer son
fonctionnement.
7
Chapitre 1
Développement mobile
1.1 Introduction
L’historique des téléphones mobiles commence le 3 Avril 1973 avec un ingénieur senior tra-
vaillant pour Motorola et qui s’appelle Martin Cooper, Martin a utilisé un téléphone portable
pour appeler un concurrent potentiel sur le marché de la téléphonie mobile ; tandis que les
applications mobiles sont apparues dans les années 1990, elles sont liées aux développements
d’Internet et des télécommunications, des réseaux sans fils et des technologies agents, et à
l’apparition et la démocratisation des terminaux mobiles : smartphones, tablettes tactiles...
9
Nous présentons dans la figure si dessus les grands OS mobile existants actuellement [19] :
Nous remarquons que le système d’exploitation Android domine largement le marché mon-
dial des OS smartphone depuis 2010 jusqu’au 2017.
10
1.3.1 Les avantages et les inconvénients des applications mobiles
Le tableau suivant présente les avantages et les inconvénients des applications mobiles :
11
Table 1.2 – Les catégories des applications mobiles
12
Comment faire le choix entre ces catégories ?
Il n’existe pas une réponse parfaite pour cette question, il sera donc difficile de faire un
choix. Mais cela s’explique par le nombre de facteurs à prendre en compte.
Tout dépondra de nos besoins et objectifs, de nos moyens, des besoins de nos utilisateurs et
surtout de la situation actuelle du projet.
Si notre projet est un jeu, alors il faudra absolument le développer en natif. Les joueurs sont
beaucoup plus exigeants au niveau des performances de l’application.
Si on souhaite créer une application simple accessible par tous sans barrières de système d’ex-
ploitation, l’application web sera plus adaptée à nos besoins.
Enfin, si on souhaite adapter notre application web au marché des applications mobiles, alors
le développement en hybride sera surement plus adapté puisqu’il est peu couteux et très rapide
à mettre en place.
1. Le business modèle
La conception et le développement de l’application dépendront également de la façon de
compter la monétiser.
Voici les principales solutions :
13
Le modèle d’application mobile payante est le peux utiliser, les mobinautes restent alors
très peu tolérants aux imperfections, et beaucoup d’entre eux n’hésitent pas à en parler dans
les commentaires, décourageant par la même occasion les acheteurs potentiels.
À ce propos, il est intéressant de noter que les utilisateurs d’iPhone sont plus enclins à payer
pour les applications et leurs contenus, alors que ceux d’Android font plus souvent usage des
contenus gratuits.
2. Le design
Par «le design» l’on n’entend pas seulement le logo, l’icône, les couleurs et les animations
de l’application. Ce sont également l’organisation de ses contenus et sa typographie. Le design
constitue l’étape la plus importante de tout projet d’application mobile.
Il ne faut pas qu’on la néglige : à la fin de cette étape, on aura le prototype du futur produit
qu’on pourra visualiser, « toucher » et changer.
1- Jeux
L’un des jeux algériens les plus aboutis et les plus appréciés se nomme Aquarings. Ce jeu
est un remake d’un ancien jouet avec lequel nous avons tous joué durant notre enfance.
Ce jeu consiste à faire rentrer des cercles dans des bâtons verticaux, et cela sous l’eau.
2- Education
Dans cette catégorie, deux applications algériennes atteignent des sommets et dépassent
chacune le quart de million de téléchargements sur Play Store.
Elles se nomment littéralement Ecrire et dessiner sur le sable et Apprendre à écrire les lettres
arabes.
Ces applications, comme leurs noms l’indiquent, permettent aux enfants d’apprendre à écrire
les lettres arabes d’une façon ludique et amusante.
14
3- Emploi
4- Transport
La première application mobile développé dans ce domaine en Algérie est lancée en sep-
tembre 2018 par deux ingénieurs algériens, amis depuis les bancs de l’école nationale polytech-
nique d’Alger ; Yassir, la première plateforme de VTC (voitures de transport avec chauffeur)
du pays.
Yassir met en relation des utilisateurs avec des conducteurs de taxi, qui sont géolocalisés grâce
à leurs smartphones.
Le prix de la course est automatiquement calculé en fonction de distance et la durée de trajet.
Le règlement d’une course sur Yassir s’effectue en liquide pour le moment [21].
5- Banque
La banque française Natixis a choisi l’Algérie pour lancer son nouveau service de banque
mobile Banxy, cette banque digitale propose des services bancaires à distance permettant
aux clients d’effectuer plusieurs opérations bancaires à partir du téléphone sans se déplacer
à l’agence, annonce l’équipe Natixis Algérie lors d’une conférence de présentation le lundi 23
avril 2018 [1].
6- Autres
Remarque
Dans ce projet on s’intéresse à développer une application mobile dédie à la banque BNP
Paribas El djazair et à cet effet nous avons fait un petit parcours des applications qui existent,
mais pour notre solution nous somme focalisé sur les besoins spécifiques de la banque.
15
1.6 Les applications androïde
1.6.1 Présentation
Une application Android est une application mobile spécifiquement développée pour les
smartphones et les tablettes utilisant le système Android. Elles sont de nature très variables
tel que les applications jeux, mobile commerce, utilitaire, service d’information .
Sous Android, une application est composée d’une ou plusieurs activités. Une activité est la
base d’un composant pour la création d’interfaces utilisateur. Afin de faciliter la cinématique
de l’application, il est préconisé de n’avoir qu’une interface visuelle par activité.
16
Le schéma ci-dessous résume ce cycle de vie [22] :
17
Lors du lancement d’une activité, la méthode onCreate est appelée. Dans cette méthode,
vous devez initialiser votre vue 1 et lier les données à une liste.
Cette méthode prend en paramètre un Bundle (pile) contenant l’état précédent de l’activité.
Cet appel est suivi par la méthode onStart afin de signifier le lancement effectif de l’appli-
cation (elle est maintenant visible). Cette méthode peut aussi être appelée par la méthode
onRestart.
Puis la méthode onResume est appelée afin d’exécuter tous les traitements nécessaires au
fonctionnement de l’activité (thread, processus, traitement), initialiser des variables et les lis-
teners.
Ces traitements devront être arrêtés lors de l’appel à la méthode onPause et relancés si besoin
lors d’un futur appel à la méthode onRésume. Après ces trois appels, l’activité est utilisable
et peut recevoir les interactions utilisateurs.
Si une autre activité passe au premier plan, l’activité en cours d’exécution passera en pause.
Juste avant l’appel à la méthode onPause, la méthode onSaveInstanceState est appelée
afin de vous permettre de sauvegarder les informations importantes portées par l’activité.
Ces informations pourront être appliquées aux futurs lancements de l’activité lors de l’appel à
la méthode onRestoreInstanceState ou de l’appel à onCreate.
La méthode onPause permet de stopper tous les traitements effectués (traitement non né-
cessaire si l’activité n’est pas visible) par l’activité (traitement, thread, processus). Si votre
activité est de nouveau visible, cela correspondra à un appel à la méthode onResume.
Le passage de l’activité à l’état “stopper” correspond à un appel à la méthode onStop.
Dans cette méthode, il faut arrêter tous les traitements restants. Une fois stoppée, votre
activité peut [22] :
- Soit être relancée : cela s’effectue par un appel à la méthode onRestart suivi du cycle
de vie normal de l’activité.
- Soit être tuée : cela s’effectue par un appel à la méthode onDestroy, dans laquelle
vous devez arrêter tous les traitements restants, fermer toutes les connexions à la base
de données, tous les threads, tous les fichiers ouverts, etc. Vous pouvez provoquer l’appel
à la méthode onDestroy en utilisant la méthode finish .
1. Vue : Contient tout ce qui est visible à l’écran et qui propose une interaction avec l’utilisateur. Par
exemple : Boutons, images,les zones de saisies,etc.
18
Quelques exemples d’applications mobiles bancaires
L’application « Mes comptes » est une application française qui est disponible sur les
mobiles et sur les montres connectées. Elle offre un espace personnalisé et adapté aux besoins
des clients de la banque.
19
• Attijari mobile :
Pour faciliter la gestion des comptes, Attijariwafa Bank a créé l’application « Attijari mo-
bile » qui permet de consulter et de gérer les comptes en toute confidentialité et en toute
sécurité, quel que soit le lieu où l’endroit du client.
20
• UBCI Mobile :
L’Application UBCI mobile, permet à tous les clients disposant d’un abonnement UBCI-
NET d’accéder à leur compte.
21
1.7 Conclusion
Dans ce chapitre, nous avons exposé quelques généralités sur le développement mobile, entre
autres la conception d’une application mobile, quelques exemples d’applications ont été donnés.
Dans le chapitre suivant nous allons nous intéresser à la détection d’opinion et l’analyse
automatique des sentiments.
22
Chapitre 2
Pour traiter automatiquement ces données, il faut d’abord expliciter les règles de la langue
puis les représenter dans des formalismes opératoires et calculables et enfin les implémenter à
l’aide de programmes informatiques.
? Le traitement de la parole.
? La traduction automatique.
? La compréhension automatique des textes.
? La génération automatique des textes.
? La gestion électronique de l’information et des documents existants (GEIDE).
Dans la figure qui suit, nous avons essayé de résumer quelques un des domaines plus im-
portants dans l’analyse de sentiment :
24
Figure 2.1 – Les domaines d’analyse de sentiment
25
2.6 Les difficultés de l’analyse des sentiments
L’extraction du sentiment ou d’opinion consiste à déterminer la polarité d’une telle opinion.
Dans ce qui suit nous citons quelques difficultés de cette procédure [4] :
? Ambiguïté de certains mots positifs ou négatifs selon les contextes et qui ne peut pas
toujours être levée.
? Difficulté due aux structures syntaxiques et sémantiques d’une phrase et l’expression de
l’opinion.
Par exemple : " l’histoire du film est intéressante mais les acteurs étaient mauvais ".
• Les questions peuvent être classées par ordre de priorité rapidement et efficace-
ment
En identifiant les mots les plus fréquemment utilisés ou en utilisant l’appariement de mots
sur quels domaines nous devons-nous concentrer, ou dans quels domaines nous excellons. Ceci
assure la résolution rapide et facile d’un problème.
26
• Les idées et les suggestions des clients se concrétisent, ce qui permet d’améliorer
l’expérience numérique
Des opinions et des pensées que nous n’aurions jamais entendues autrement sont remontées
à la surface, ce qui nous permet d’offrir une expérience client optimale et de garder nos clients
satisfaits.
1. Le premier cas est une identification des mots d’opinion et de leurs polarités dans le
corpus de domaine en utilisant un ensemble donné de mots d’opinion.
2. Le second cas concerne la construction d’un nouveau lexique dans un domaine particulier
à partir d’un autre lexique utilisant un corpus de domaine.
Les résultats suggèrent que même si les mots d’opinion dépendent du domaine, il peut arriver
que le même mot ait une orientation opposée selon le contexte.
27
Il existe principalement deux types de techniques d’apprentissage :
A- Apprentissage Non-supervisée
Les classes sont fondées sur la structure des objets, la sémantique associée aux classes est
plus difficile à déterminer.
1- L’algorithme K-means :
Son objectif est la structuration des données en classes homogènes, on cherche à regrouper les
points en clusters ou asses tels que les données d’un cluster soient les plus similaires possibles.
28
2- L’algorithme K-médoïdes :
29
B- Apprentissage supervisée
Les classes sont connues à priori, elles ont en général une sémantique associée.
Il existe plusieurs méthodes d’apprentissage supervisé, nous citons :
1- Classification probabiliste :
Le classificateur probabiliste le plus utilisé est Naïve Bayes Classifier, qui est le plus simple
à implémenter dans n’importe quel langage de programmation car il implique des mathéma-
tiques simples. Cela fonctionne sur le principe que chaque modèle consiste en un ensemble de
mots dispersés, la fréquence des mots existants reste la même mais pas la tâche.
Naïve Bayes utilise le théorème de Bayes, qui permet à l’étiquette de trouver l’ensemble des
caractéristiques.
C’est une approche très simple et directe. Elle ne nécessite pas d’apprentissage mais sim-
plement le stockage des données d’apprentissage.
Son principe est le suivant :
Une donnée de classe inconnue est comparée à toutes les données stockées. On choisit pour
la nouvelle donnée la classe majoritaire parmi ses K plus proches voisins (Elle peut donc être
lourde pour des grandes bases de données) au sens d’une distance choisie.
Les arbres de décision font partie des algorithmes supervisés dans le domaine de l’appren-
tissage automatique. Leur principe consiste à partitionner les données d’apprentissage en des
groupes dont le contenu est de plus en plus homogène jusqu’à l’obtention de données pures
(appartenant à la même classe) ou l’atteinte d’un nombre maximum de partitionnement.
Le modèle résultat est un arbre composé de plusieurs règles de décisions et qui est facilement
interprétable.
4- Classification Linéaire :
C- Approches hybride
Cette approche est appelée aussi classification semi-supervisée. Elles combinent les points
forts des deux approches précédentes. Elles prennent en compte tous les traitements linguis-
tiques des approches symboliques avant de lancer le processus d’apprentissage comme dans les
approches statiques.
30
2.9 Quelques domaines d’application
1. TweetFeel
Le service Tweetfeel est un outil en ligne d’analyse du sentiment sur Twitter.
Il s’appuie sur les capacités temps réels de Twitter qui donne des sentiments positifs et négatifs
des tweets sur des choses comme les films, musiciens, émissions de télévision et de marques
populaires [26].
? Accédez au lien 1 .
? Tapez dans la boîte de recherche le nom d’un produit, d’une célébrité ou d’une marque
exemple «iPhone 4s».
? Cliquez sur le bouton « Search » comme sur la figure suivante.
1. http ://www.tweetfeel.com/
31
2. Twitrratr
Twitrratr est un outil en ligne gratuit, qui a émergé à partir d’un projet Startup Weekend.
Twitrratr fonctionne à partir d’une liste de mots positifs et d’une liste de mots négatifs.
Cet outil classe une opinion sur le mot clé de la requête s’il est capable de le croiser avec un
mot d’une des deux listes [13].
2. http ://twitrratr.com/
32
? Les résultats des tweets sur « iPhone 4s » apparaissent sur la figure suivante :
3. http ://smm.streamcrab.com/
33
Figure 2.9 – L’interface Twitter Sentiment Analysis
34
Figure 2.11 – Les données cumulatives.
35
Figure 2.13 – Les données de volume cumulatif.
36
Dans le tableau qui suit nous avons synthétisé les différentes caractéristiques
des outils présentés ci-dessus :
37
2.10 Conclusion
Nous avons présenté dans ce chapitre un des domaines de TAL, qui est la détection au-
tomatique d’opinion et l’analyses des sentiments ainsi ses avantages et inconvénients dans
l’évaluation de la satisfaction de la clientèle.
Nous avons présenté finalement quelques exemples d’applications d’analyse des sentiments des
tweets.
Le prochain chapitre sera consacré pour la troisième et dernière partie théorique de notre
rapport.
38
Chapitre 3
Développement web
3.1 Introduction
Dès le début des années 60, plusieurs groupes de scientifiques s’intéressèrent à la question
de la communication entre ordinateurs.
A l’époque, ces machines étaient souvent très différentes les unes des autres et la possibilité de
communication entre-elles restait une question difficile. Jusqu’à l’arrivée d’un phénomène qui
a marqué le monde de l’informatique. C’est bien celui d’Internet.
Ce réseau mondial créé par l’armée américaine, puis utilisé par les chercheurs et autres scien-
tifiques, a connu une croissance phénoménale auprès du grand public avec l’introduction du
World Wide Web.
La première chose à savoir sur ce type d’application est qu’elle contient peu d’informations
et, en général, son contenu n’évolue pas ou très peu.
Le développement d’applications web se fait habituellement en HTML et CSS. Il peut, néan-
moins y avoir des objets animés tels que bannières, GIF, vidéos, etc. Ces applications peuvent
être développées avec jQuery et Ajax.
La modification du contenu des applications statiques n’est pas facile. Pour ce faire, vous devez
télécharger le code HTML, l’éditer, puis l’uploader de nouveau sur le serveur.
Deux exemples typiques de web app statique sont le portfolio professionnel et le curriculum
vitae numérique.
De même, la page d’accueil d’une entreprise pourra se réaliser en application web pour afficher
des informations basiques telles que vos coordonnées.
Si l’application web est un e-shop (commerce numérique), son développement sera plus
complexe, car elle doit permettre les paiements électroniques par carte de crédit, PayPal ou
autre mode de paiement.
Le développeur doit également créer un panel de gestion pour l’administrateur afin que ce
dernier puisse mettre en vente des produits, faire des mises à jour et gérer les commandes.
40
3. Application web dynamique
Les applications web dynamiques sont plus complexes sur le plan technique. Elles utilisent
des bases de données pour charger des informations, et le contenu est mis à jour à chaque fois
que l’utilisateur se connecte à l’application.
En général, elles ont un panneau d’administration (appelé CMS) depuis lequel l’administrateur
peut corriger ou modifier le contenu.
Il existe de nombreux langages de programmation pour le développement d’applications web
dynamiques. PHP et ASP sont les plus répandus, car ils facilitent l’organisation du contenu.
L’actualisation d’un web app dynamique est très simple, et il n’est même pas nécessaire d’en-
trer dans le serveur pour faire des modifications. En outre, il est possible de mettre en œuvre
de nombreuses fonctionnalités telles que des forums ou des bases de données.
Le design, et non seulement le contenu de l’application, peut être modifié en fonction du goût
de l’administrateur.
Il s’agit d’une application dont la page d’accueil permet d’accéder aux différentes sections
ou catégories.
Son contenu peut être très varié :
? Forums.
? Chats.
? E-mail.
? Moteurs de recherche.
? Formulaire d’enregistrement.
? Contenu le plus récent, etc.
Pour les applications web dont le contenu doit être souvent mis à jour, vous pouvez installer
un système de gestion de contenu (CMS) à travers lequel l’administrateur aura la possibilité
d’apporter des modifications.
Ces systèmes de gestion sont intuitifs et très faciles à gérer.
41
Les CMS les plus connus sont :
Ce type de web app est utilisé avant tout pour développer les blogs personnels et professionnels,
les reportages, etc. . .
42
Il existe différentes architectures pour une application web [9] :
1. L’architecture 1-tiers
2. L’architecture 2-tiers
? Client-serveur de données.
o Client (présentation et traitements).
o Serveur (gestion des données).
o Le plus répandu.
? Alléger le client.
? Rendre le système plus souple.
43
3. L’architecture 3-tiers
? Principes.
o Le client gère la présentation et les traitements locaux (moins lourd, moins évolué,
moins coûteux).
o Le serveur d’application gère les traitements.
o Le serveur de données accueille un SGBD.
? Montée en charge plus facile à prendre en compte.
4. L’architecture n-tiers
? Exemples :
o Plusieurs serveurs d’application.
? Serveur html + moteur de servlets.
? Répartition de la logique d’application dans des objets métiers.
o Base de données distribuées.
44
Dans le tableau qui suit nous avons fait une comparaison entre les architectures
présentées ci-dessus :
Le serveur d’application lit le code de la page, termine cette page en fonction des instruc-
tions figurantes dans le code, puis en retire le code.
Il en résulte une page statique que le serveur d’application renvoie au serveur web, lequel trans-
met alors cette page au navigateur requérant.
Le navigateur reçoit uniquement du code HTML pur lorsque la page lui est transmise.
Un serveur d’application nous permet de travailler avec des ressources coté serveur telles que les
bases de données. Une page dynamique peut, par exemple, ordonner au serveur d’application
d’extraire des données de la base de données et de les insérer dans le code HTML de la page.
L’instruction d’extraction des données de la base est nommée requête de base de données.
45
Toutes ces actions sont résumées dans le schéma présenté dans la figure ci-
dessous [14] :
Parmi les serveurs web les plus utilisés sur le marché nous citons :
? Apache http.
? Microsoft.
? Lighttpd.
? Node.js.
? Nginx.
46
3.6 L’hébergement d’une application web
L’hébergement est un service visant à rendre un site ou une application web accessible sur
Internet.
Afin que les pages soient visibles par tout le monde, il faut qu’elles soient stockées sur un
ordinateur connecté en permanence à l’internet (serveur).
Un hébergeur est comme une société spécialisée dans l’hébergement de sites web sur des ser-
veurs, sa principale activité sur internet consiste à installer des serveurs, à les sécuriser, à les
tenir à jour en installant les mises à jour de sécurité pour éviter les attaques malveillantes et
à les réparer en cas de panne [14].
1. Hébergement gratuit
Ce type d’hébergement offre un service basique, avec un espace de stockage assez limité,
avec une fiabilité qui n’est pas toujours optimale.
2. Hébergement payant
47
3.8 Quelques exemples de back-office
Comme nous avons cité précédemment, le back-office est un site dédié aux administrateurs
et donc il n’est pas visible par tout le monde, seuls les administrateurs peuvent y accéder.
Ce qui fait, nous allons présenter dans cette partie quelques template gratuits de back office
[20] :
• WebRessourceReport
Il s’agit d’un design en 3 colonnes avec un menu à onglets permettant de passer d’un mo-
dule à un autre très facilement. La colonne gauche est réservée pour les fonctionnalités que les
utilisateurs pourront avoir besoin.
La colonne centrale permettra d’afficher le contenu avec des tableaux relativement simples et
des icônes sous forme de bouton.
En fin la troisième et dernière colonne permet d’afficher des informations diverses 1 .
• Bloganje
Il s’agit d’un design vraiment épuré qui a l’avantage d’être disponible dans 5 thèmes de
coloris différents. Les icones sont très claires.
Ce template demande toutefois à être complété par les soins des utilisateurs afin de le rendre
plus sympathique 2 .
48
Figure 3.6 – Template Bloganje.
Très complet car tout est désigné : tableau, formulaire, message d’erreur, notification, pa-
gination 3 .
49
Il existe plusieurs d’autres templates gratuites ou payantes, nous avons cité trois permis
ceux qui sont les plus utilisées.
Dans le tableau qui suit nous avons fait une comparaison entre les templates
présentées ci-dessus :
3.9 Conclusion
Dans ce troisième et dernier chapitre de la partie théorique de notre rapport, nous avons
cité quelques notions de base sur le développement web.
Nous l’avons conclu avec la présentation de quelques exemples de backoffice dans le domaine
bancaire (le domaine de notre étude).
Dans le chapitre suivant, nous allons présenter notre solution et la démarche que nous allons
suivre dans sa réalisation.
50
Chapitre 4
• La banque en ligne
BNP Paribas EL Djazair met à la disposition de ses clients via la banque en ligne (un site
web), une multitude de produits et services de gestion à distance, sécurisés et simples d’utili-
sation, permettant d’avoir un contact permanant avec BNP Paribas.
• Webdoc
Webdoc est une solution de reporting complète, intégrée dans la banque en ligne, permet-
tant la recherche, la consultation, le téléchargement et l’édition d’un ensemble de documents
bancaires de manière sécurisée (avis d’opération, relevés de comptes . . . ).
• Connexis cash
Connexis est une solution globale, offrant une vue et un contrôle exhaustifs sur les comptes
d’une entreprise dans le monde entier, ainsi qu’une gamme complète de services de paiements
sécurisés accessibles 7j/7, 24h/24 sur le site 1 .
1. http ://connexis.bnpparibas.com/
52
• L’agence digitale et satisfaction de la borne
L’application de la borne des agences contient une fonctionnalité appelé satisfaction. Dans
cette partie, on pose quatre questions au client puis on lui donne la possibilité d’exprimer sa
satisfaction en choisissant un emoji parmi les trois emoji proposé, les réponses (1, 2 ou 3) sont
envoyées vers une boite générique de la banque.
53
• Les guichets automatiques de banque
BNP Paribas El Djazair met à la disposition de ses clients un large réseau de guichets
automatiques de banques aux multiples fonctionnalités :
retrait, consultation de solde, édition d’un mini relevé de compte, édition d’un RIB, commande
de chéquier, recharge téléphonique, changement de code PIN CIB, virement de compte à compte
même client, et dépôt de chèque (uniquement à l’agence digitale).
54
2. Quelques Formulaires
Tous les champs sont exigés par la banque, les informations saisies dans ces champs sont
obligatoires dans la procédure EER de BNP Paribas El Djazair.
Les champs doivent être rempli manuellement par l’utilisateur.
L’upload ou le chargement des documents officiels exigés par la banque, se fait en utilisant
la caméra de smartphone d’utilisateur.
55
Après avoir empli tous les champs et charger les documents officiel l’utilisateur doit choisir
la méthode avec laquelle il souhaite signer ses documents.
La méthode de signature électronique proposée par l’équipe de BNP Paribas El Djazair, et une
tache à réaliser à long terme.
Ce qui faite, on nous a demandé de l’ignorer pour l’instant.
56
4.3.2 Solution retunue
? En Algérie comme ailleurs dans le monde, le système d’exploitation mobile qui est do-
miné par le marché, reste incontestablement Android avec près de 80% des parts de
marché, c’est pour cela que notre première intention ira vers la conception d’une ap-
plication Android, moderne et optimisée pour n’importe quel type d’appareils mobiles,
nous avons choisi donc de développer HISS@BY avec Android studio.
? En prenant en considération tous les besoins et les objectifs de notre application ainsi
que nos mayens, nous avons opté pour une application native comme catégorie de notre
application.
? Le design de notre application sera inspiré de celui de la maquette réalisée par le groupe
BNP Paribas El Djazair, avec quelques changements dans le but de lui donner un esprit
moderne :
• En utilisant les derniers modèles des inputs et des boutons dans les formulaires.
57
? Nous avons ajouter des contrôles sur tous les champs des formulaires et des messages
d’interaction.
? Dans l’envoi des codes de confirmation à l’utilisateur par sms, nous avons choisi d’utiliser
le webservice et la Gateway payé par BNP Paribas El Djazair (Kepler), le groupe nous
a créé un compte avec 10000 sms renouvelable.
? Nous avons choisi Firebase comme hébergeur de notre base de données, c’est une pla-
teforme de Google qui offre un service d’hébergement gratuit, est qui est très facile à
utiliser avec Android studio.
? Nous avons décidé aussi de faire une intégration d’un OCR « Accura Scan » d’un
développeur indien 2 , pour la validation du passeport en faisant une reconnaissance
faciale et une extraction des informations du passeport du client et les comparer avec
celles qui ont été saisi.
2. Vous trouvez en annexe C plus de détails sur l’intégration d’OCR accura scan.
58
? Nous avons laissé au client la liberté de choisir la façon dont il souhaite signer ses do-
cuments.
il a le choix entre agence bancaire et coursier, à cet effet les agences de BNP Paribas
El djazair seront affichées dans une map où le client pourra faire son choix selon leur
proximité.
? Par ailleurs, nous avons jugé de rajouter une fonctionnalité supplémentaire par rapport
à ce qui a été demandé au départ.
il s’agit d’un portail qui permettra au client authentifié de consulter les différents offres
de BNP.
• Accès à E-Banking : nous avons intégrer le site E-Banking de BNP Paribas dans
HISS@BY, ce site permet aux clients de BNP d’effectuer toutes les opérations bancaires
(consultation de compte, commander chéquier . . . ) sans se déplacer aux agences.
• Satisfaction : consiste à poser des questions (proposé par l’équipe de BNP Pa-
ribas El Djazair) aux clients pour évaluer leurs satisfaction, en faisant une analyse de
sentiments sur la réponse donnée, pour pouvoir l’utiliser plus tard dans des statistiques
de satisfaction.
Pour réaliser cette fonctionnalité, nous avons choisi l’approche d’apprentissage automa-
tique supervisé pour effectuer ce traitement et l’algorithme KNN dans l’implémentation
car c’est une méthode facile à comprendre et son résultat est rapide, et pour la tester
nous avons téléchargé un corpus dédie à l’analyse des sentiments dont nous allons re-
parler dans le chapitre suivant.
59
4.4 Backoffice
Après la réalisation de HISS@BY nous avons pensé à la réalisation de la 2ème phase du
projet, un Backoffice qui présente le coté administratif de notre projet.
? L’architecture choisi est celle de 3-tiers, à cause de ses avantages d’un côté et de si-
tuation actuelle de notre projet (Application mobile client + la présence d’une base de
données) d’un autre côté.
? Ce backoffice sera consacré pour visualiser les outputs de notre application mobile, nous
allons donc afficher les demandes d’EER faites par les utilisateurs de HISS@BY.
Etape 1 :
o Si les 1ères vérifications non valident : on lui demande de mettre à jour ses
données.
o Sinon On lui informe en cas de pièces manquantes.
? Création dossier client sur W : Insérer les pièces jointes dans le dossier client (CNI/PC+
Résidence + Formulaire FATCA).
60
? Création du tiers sur EER Light :
Etape 3 : (OMC)
? Alimenter le compte.
61
La figure qui suit synthétise cette nouvelle procédure :
4.6 Conclusion
Ce chapitre a comme objectif de mieux comprendre le problème étudié et présenter le
principe de fonctionnement de notre système.
Par ailleurs, dans ce chapitre nous avons présenté la solution retenue qui sera détaillée plus
loin dans le rapport.
Dans ce qui suit nous allons entamer la première phase de la conception de notre projet
«spécification de besoin» pour identifier les différentes fonctionnalités de l’application.
62
Chapitre 5
? Ouvrir un compte(EER).
? Évaluer les différents service de la banque.
? Prendre des rendez-vous.
? Accéder à E-Banking.
? Contacter le centre de relation clientèle (CRC) banque par téléphone.
Dans le cadre de ce travail, l’application devra être extensible, c’est-à-dire qu’il pourra y
avoir une possibilité d’ajouter ou de modifier de nouvelles fonctionnalités.
64
Authentification : l’application devra être hautement sécurisée car les informations ne
devront pas être accessibles à tout le monde.
Le contrôle des champs : l’application doit avoir un contrôleur des champs de saisis,
pour éviter l’introduction des informations qui ne correspondent pas aux types des
champs.
65
5.4 Diagramme de cas d’utilisation
Le diagramme de cas d’utilisation a pour but de donner une vision globale sur les interfaces
de future application.
C’est le premier diagramme UML constitué d’un ensemble d’acteurs qui agit sur des cas d’uti-
lisation et qui décrit sous la forme d’actions et des réactions, le comportement d’un système
du point de vue utilisateur.
Acteur : un acteur est un utilisateur qui communique et interagit avec les cas d’utilisation
du système. C’est une entité ayant un comportement comme une personne, système ou
une entreprise.
Système : cet élément fixe les limites du système en relation avec les acteurs qui l’utilisent
(en dehors de système) et les fonctions qu’il doit fournir (à l’intérieur du système).
Cas d’utilisation : Un cas d’utilisation représente un ensemble de séquences d’actions à
réaliser par le système et produisant un résultat observable intéressant pour un acteur
particulier représenté par des ellipses et limité par un rectangle pour représenter le sys-
tème.
66
Partie I
Côté client (Application mobile Hissaby)
1- Diagramme global
67
Table 5.2 – Fiche de description de cas d’utilisation E-Banking.
68
Table 5.3 – Fiche de description de cas d’utilisation CRC par téléphone
69
Table 5.4 – Fiche de description de cas d’utilisation satisfaction
70
Table 5.5 – Fiche de description de cas d’utilisation prendre un rendez-vous.
71
6- Description du cas d’ouverture de compte
72
Table 5.6 – Fiche de description de cas d’utilisation Ouverture de compte.
73
Partie II
Côté administrateur (Backoffice)
1- Diagramme global
Ce diagramme représente le cas d’utilisation globale de notre système « back office » et les
déférentes taches qu’il peut effectuer tel que :
Table 5.7 – Fiche de description de cas d’utilisation Gérer les demandes d’ouverture de compte.
74
5.5 Conclusion
Après avoir décrit les besoins fonctionnels et techniques attendus de notre application qui
consistent à mettre en place une démarche de développement.
Nous avons essayé dans cette phase d’exprimer le fonctionnement de notre système en se
basant principalement sur les diagrammes de cas d’utilisations. Nous pouvons ainsi entamer la
prochaine étape qui consiste à présenter la phase de conception.
75
Chapitre 6
Conception
6.1 Introduction
Après avoir tracé les grandes lignes de phase de spécification de besoins, mettons l’accent
maintenant sur une phase fondamentale dans le cycle de vie d’un logiciel, la phase de concep-
tion. Cette phase a pour objectif de déduire la spécification de l’architecture du système.
En premier lieu, la méthodologie de conception sera présentée, l’organisation des sections de
ce chapitre suivra alors la logique de cette technologie.
Cette phase aboutira à la conception et la représentation des diagrammes de séquences et
d’activités en se basant sur le langage de modélisation UML.
Pré-étude : Cette étape permet de définir les objectifs du projet et de définir le domaine
d’activité.
Analyse : Cette étape consiste à recueillir et à formaliser les besoins du client, de définir
les contraintes et d’estimer la faisabilité de ces besoins.
Conception : Cette étape permet d’élaborer la structure générale du système et de définir
chaque sous-ensemble du logiciel à produire.
Codage : Cette étape consiste à coder ou à programmer les fonctionnalités définis dans la
phase de conception.
Tests : Cette étape permet de tester le logiciel conformément aux spécifications ( fonc-
tionnelle ou non fonctionnelle).
Il existe quatre types de tests à savoir : le test unitaire, le test d’intégration, le test
fonctionnel et le test de validation.
Réception : Cette étape permet au client de vérifier la conformité du logiciel avec les
spécifications initiales.
Maintenance : Cette étape permet de prendre en charge les actions collectives du sys-
tème (maintenance curative et évolutive).
77
A. Diagramme de séquence
Les diagrammes de séquence peuvent servir à illustrer les cas d’utilisations décrits dans le
chapitre précédent.
Ils permettent de représenter la succession chronologique des opérations réalisées par un acteur
et qui font passer d’un objet à un autre pour représenter un scénario.
Dans ce qui suit nous allons décrire les scénarios les plus importants ainsi que leurs représen-
tations par les diagrammes de séquence.
Partie I
Côté client (Application mobile Hissaby)
1. Diagramme de séquence «Ouverture de compte»
Notre inscription (Ouverture de compte) n’est pas un simple formulaire qui contient (Non,
Prénom, adresse de naissance, E-mail, Numéro de téléphone . . . etc.) mais une suite d’action
(Identification et Coordonnée personnelle, Activité professionnelle, Renseignement bancaire,
Reconnaissance faciale... etc.) pour assurer la sécurité des informations saisie.
78
Scénario :
? L’utilisateur ouvre l’application.
? Le système affiche l’interface « connexion où créer un compte ».
? L’utilisateur demande la création de compte.
? Le système affiche les formulaires d’inscription.
? L’utilisateur remplis les champs et passe au formulaire suivant.
? En cas d’erreur (Champs vide) le système réaffiche le formulaire, l’utilisateur doit res-
saisir les informations correctement.
? L’utilisateur valide ses informations et envoie une fiche profile (la fiche profile contient
les informations saisies par l’utilisateur).
? Le système envoie à l’utilisateur un reçu de demande d’ouverture de compte.
Scénario :
? L’utilisateur ouvre l’application.
? Le système affiche le formulaire de connexion.
? L’utilisateur remplis les champs (E-mail et mot de passe) et valide la connexion.
? Le système vérifie si les informations sont justes.
? En cas d’erreur l’utilisateur doit ressaisir les informations correctement.
? Si la saisie est correcte, le menu de l’application apparait.
79
L’étape d’authentification est l’étape qui précède tout ce qui va
suivre :
Scénario :
? L’utilisateur ouvre l’application.
? L’utilisateur demande l’accès à E-Banking.
? Le système affiche le web view « E-Banking ».
80
Scénario :
? L’utilisateur ouvre l’application.
? L’utilisateur demande de contacter le centre de relation clientèle (CRC) banque par
téléphone.
? Le système appelle le CRC banque.
Scénario :
? L’utilisateur ouvre l’application.
? L’utilisateur demande d’évaluer le service de la banque.
? Le système affiche les questions.
? L’utilisateur remplis le champ oralement ou par écrit.
? L’utilisateur valide leur réponses.
? Le système classifie et envoie les réponses d’utilisateur au serveur.
81
5. Diagramme de séquence « Prise des rendez-vous »
Scénario :
? L’utilisateur ouvre l’application.
? L’utilisateur demande la liste des agences de la banque.
? Le système affiche la localisation de toutes les agences de la banque.
? L’utilisateur clique sur le marker d’une des agences pour prendre un rendez-vous.
? Le système affiche le tableau de rendez-vous propre à l’agence choisie.
? L’utilisateur choisis une des dates disponible et valider leur choix.
? Le système enregistre et envoie les réponses d’utilisateur au serveur.
82
Partie II
Côté administrateur (Backoffice)
1. Diagramme de séquence «Authentification»
Scénario :
? L’administrateur ouvre l’application.
? Le système affiche l’interface « Login ».
? L’administrateur saisit son E-mail et son mot de passe.
? Le système vérifie si les informations données sont justes.
? En cas d’erreur l’administrateur doit ressaisir les informations correctement.
? Le menu d’administration apparait dans le cas contraire (accès à l’application Back of-
fice).
83
L’étape d’authentification est l’étape qui précède tout ce qui va
suivre :
Scénario :
? L’administrateur ouvre l’application.
? L’administrateur demande la consultation des demandes d’ouverture de compte.
? Le système affiche les demandes.
84
B. Diagramme de classe
Le diagramme de classe est un schéma utilisé en génie logiciel pour présenter les classes et
les interfaces des système ainsi que les différentes relations entre celle-ci.
85
Ce tableau représente la description du diagramme de classe :
86
C. Méthodologie d’analyse des sentiments
Le processus de l’analyse des sentiments dans notre système passe par 3 étapes pré-traitement,
traitement, résultat :
Dans la phase de pré-traitement, le texte infléchi est filtré en appliquant différentes tech-
niques de pré-traitement :
1- Tokenisation : Consiste à couper une chaine en unité linguistique identifiable consti-
tuant une donnée linguistique.
2- Eliminer les mots vide : Les mots vides (ou stop words) sont des mots qui sont
tellement communs qu’il est inutile de les traiter ou de les utiliser dans une recherche
d’informations. En Français certains de ces mots sont « Est », « les », « mais » . . . etc.
Un mot vide est un mot non significatif figurant dans un texte.
3- Eliminer les nombres : Consiste à supprimer tous les nombres existe dans le texte.
4- Eliminer les caractères spèciaux : Consiste à supprimer tous les caractères exis-
tants.
5- Correction orthographique : Consiste à corriger les fautes d’orthographe.
6- Racinisation (Stemming) : Correspond à la partie du mot qui reste, une fois qu’on
a tué son préfixe et son suffixe.
Dans la phase de traitement, nous avons utilisé l’algorithme KNN pour l’implémentation,
Sa réalisation passe par 3 étapes :
Première étape : Consiste à calculer la similarité entre le commentaire (réponse) et le
corpus d’apprentissage 1 (ligne par ligne).
Il existe plusieurs mesures de similarité, nous avons choisi pour notre projet ‘wup’ comme
mesure..
Deuxième étape : Classer les classes et les distance dans un tableau par ordre décroissant
en fonction de la distance.
Troisième et dernière étape : Extraire les 5 plus proches classes qui est ordonné tou-
jours par ordre croissant.
1. "French sentiment analysis dataset" , C’est une collection de plus de 1,5 million de tweets de données tra-
duis en français, avec leurs sentiments. Les données ont deux colonnes, polarité et statut. La polarité 0 indique un
sentiment négatif, et 4 un sentiment positif. Lien de téléchargement https ://github.com/gamebusterz/Grench-
Sentiment-Analysis-Dataset/blob/master/xab.
87
Le schéma ci-dessous représente les différentes étapes de réalisation, mené d’un petit exemple :
6.4 Conclusion
Ce chapitre a donné une vision sur notre travail, et a donné l’aspect conceptuel de l’appli-
cation « Hiss@by » et son back office.
En premier lieu nous avons exposé les différentes interactions entre les objets de système grâce
aux diagrammes de séquence détaillés et enfin un diagramme de classe qui représente les dif-
férentes métiers de nos deux systèmes.
Désormais la phase de conception est terminée, nous pouvons s’étaler alors sur l’activité finale
de notre projet qui est la phase de réalisation et qui sera présenté dans le chapitre suivant.
88
Chapitre 7
Réalisation et développement
Introduction
Cette partie constitue le dernier volet de ce rapport.
Après avoir terminé la phase de spécification et conception, la solution étant déjà choisie et
étudiée, il nous reste que de se décider dans quel environnement nous allons travailler, exposer
les choix techniques utilisés et le langage adopté, et présenter l’implémentation et les tests
réalisés.
SDK Androïde
90
7.1.2 Sublime Text
Sublime Text est un editeur de texte créé en 2007 par Jon Skinner qui se donna
trois principes à respecter pour la création de son logiciel :
Il est écrit en C plus plus et Python et est disponible sur toutes les plateformes (Windows,
Linux, Mac OS).
Sublime texte est actuellement à la version 3.1 sortie le 7 mai 2018 est sous licence propriètaire.
Il intègre la plupart des fonctionnalités de base d’un éditeur de texte, dont la coloration syn-
taxique, l’auto complétion, un système de plugins etc.. mais il propose aussi des fonctionnalités
plus avancées tels que : la sauvegarde automatique, la personnalisation des raccourcis clavier,
un marque-page au sein même des fichiers, la sélection et édition dans plusieurs sections de
code en parallèle ou encore une Minimap qui permet une prévisualisation de tout le fichier
dans une barre latérale.
Sublime Text est un éditeur de texte puissant gratuit et disponible sur toutes les plateformes et
permet la prise en charges d’un grand nombre de langages de programmation (PHP, Python,
C...).
C’est un logiciel libre créé par Linux Torvalds, auteur du noyau Linux, et
distribué selon les termes de la licence publique générale GNU version 2. En 2016 il s’agit du
logiciel de gestion de versions le plus populaire qui est utilisé par plus de douze millions de
personnes [15].
7.2.2 GitHub
91
7.3 Langage de développement
7.3.1 JAVA
Java est un langage de programmation orienté objet, développé par Sun Mi-
crosystems et destiné à fonctionner dans une machine virtuelle, il permet de créer des logiciels
compatibles avec des nombreux systèmes d’exploitation.
Java et non seulement un langage de programmation puissant conçu pour être sûr, inter plate-
formes et international, mais aussi un environnement de développement qui est continuellement
étendu pour fournir des nouvelles caractéristiques et des bibliothèques permettant de gérer de
manière élégante des problèmes traditionnellement complexes dans les langages de programma-
tion classiques, tels que le multithreading, les accès aux bases des données, la programmation
réseau, l’informatique répartie.
En plus java est considéré comme un langage adaptable aux plusieurs domaines puisqu’une
application web implémentée par celle-ci peut avoir des extensions ou des modifications dans
le futur. De plus, java permet de réduire le temps de développement d’une application grâce à
la réutilisation du code développé [22].
7.3.2 JSON
92
7.3.3 Xml
7.3.4 Javascript
Cloud Firestore est une base de données de documents NoSQL qui nous permet
de facilement stocker, synchroniser et interroger des données pour nos applications mobile et
web à l’échelle mondiale.
Bien que cela puisse ressembler à quelque chose de similaire à la base de données en temps
réel, Firestore apporte beaucoup de nouvelles choses à la plateforme qui en fait quelque chose
de complètement différent de Realtime Database [8].
Firebase Realtime Database est une base de données NoSQL hébergée dans le
cloud qui nous permet de stocker et de synchroniser des données entre les utilisateurs en temps
réel.
Realtime Database est vraiment juste un gros objet JSON que les développeurs peuvent gérer
en temps réel [8].
93
7.5 Serveur application
7.5.1 FireBase
Dans notre projet, nous avons utilisé la plateforme Firebase, afin de communi-
quer les données entre la partie cliente mobile et le serveur web.
En effet, Firebase est une plateforme d’application mobile et web qui fournit aux développeurs
une pléthore d’outils et de services pour les aider à développer des applications de haute qualité,
à élargir leur base d’utilisateurs et à générer davantage de profits [8].
Dans l’architecture à trois niveaux, les applications au niveau serveur sont délocalisées,
c’està-dire que chaque serveur est spécialisé dans une tâche (serveur web/ serveur de base de
données par exemple).
Il permet :
? Une plus grande flexibilité/souplesse.
? Une sécurité accrue car la sécurité peur être définie indépendamment pour chaque ser-
vice, et à chaque niveau.
? De meilleures performances, étant donné le partage des tâches entre les différents ser-
veurs.
94
Cette architecture (appelée 3 tiers) fait intervenir trois parties indépendantes
les unes des autres :
1. La couche de données liée au serveur de base de données (FireBase) : stockage
et accès aux données. Le système de stockage des données a pour but de conserver une
quantité plus ou moins importante de données de façon structurée.
Nous pouvons utiliser pour cette partie des systèmes très variés qui peuvent être des
systèmes de fichiers, des mainframes, des systèmes de bases de données relationnelles,
etc.
2. La logique applicative : il se compose généralement d’un script ou d’un programme
qui constitue les traitements métier nécessaires sur l’information afin de le rendre ex-
ploitable par chaque utilisateur.
3. La couche présentation (ou affichage) : associé au client qui de fait est dit «léger
» dans la mesure où il n’assume aucune fonction de traitement à la différence du modèle
2-tiers. C’est la partie la plus immédiatement visible pour l’utilisateur.
Elle a donc une importance primordiale pour rendre l’information lisible, compréhensible
et accessible.
Format de données communiquées
JSON (JavaScript Object Notation) est un format de données textuel, générique, dérivé
de la notation des objets du langage ECMAScript. Il permet de représenter de l’information
structurée.
Un document JSON ne comprend que deux éléments structurels : des ensembles de paires
nom/valeur ;des listes ordonnées de valeurs.
? Des objets.
? Des tableaux.
? Des valeurs génériques de type tableau, objet, booléen, nombre, chaîne ou null.
95
Figure 7.2 – Firebase Realtime Database.
96
Partie I
Côté client (Application mobile HISS@BY)
Le premier écran de notre application est présenté comme suit :
Dans cette partie le client doit fournir toutes les informations nécessaires dans la fiche profil
qui représente l’input de la procédure de l’entrée en relation de BNP Paribas El Djazair.
Nous avons découpé cette partie en 5 sous parties :
97
Toutes ces étapes sont présentées dans les captures suivantes :
? Confirmer son numéro de téléphone avec un code de confirmation reçu par sms.
98
? Après la confirmation de son numéro, on doit aussi confirmer adresse mail avec l’e-mail
de confirmation reçu par mail.
Il n’est pas possible de passer sans confirmer son adresse mail par mail de confirmation,
dans cette étape un compte dans notre application « Hissaby » sera créé, c’est à dire,
depuis cette étape tout est enregistrer dans la base de données, ce qui fait, l’utilisateur
par la suite peux s’arrêter à n’importe quelle étape et reprendre l’inscription où on s’est
arrêter, en se connectant par son mail et mot de passe à partir de l’interface de login.
99
Après confirmation de l’adresse mail, on peut poursuivre la création de compte :
100
Passons à l’étape suivante et à l’upload des documents officiels, cette étape
commence par l’interface explicatif suivante :
101
? Prendre une photo de résidence :
? Prendre un selfie :
102
? Scanner son passeport :
103
? L’utilisateur passe par une reconnaissance faciale pour la validation de son passeport
104
Dernière étape : prise du rendez-vous et l’envoie de la demande d’entrée en
relation :
105
Partie 2 : Connexion
Cette partie présente le menu de notre application «HISS@BY», qui est composé de plusieurs
fonctionnalité.
Pour que le client puisse accéder au menu de l’application, il doit se connecter.
106
2- Nos Agences
107
3- Satisfaction
Dans cette partie, On pose au client quatre questions puis on lui donne la possibilité d’expri-
mer sa satisfaction soit en écrivant dans le champs "Écrire quelque chose", soit oralement en
cliquant sur le petit micro qui se trouve à proximité du champs, comme il peut ne pas répondre
en cliquant sur le bouton passer.
Le premier bouton sert à envoyer la réponse du client à la base de donnée, le commentaire
(réponse du client) est traité en background 1 .
Le sentiment d’utilisateur est visualisé sur l’écran en affichant sa réaction soit par des cœurs
(s’il est satisfait), soit par un petit message (s’il es insatisfait).
L’évaluation de notre algorithme a été faite en appliquant des tests sur des parties du cor-
pus, nous avons divisé notre corpus en en 6 parties :
Remarque :
D’après le graphe on remarque que la qualité de méthode utilisée (Algorithme KNN) est bonne.
1. Les étapes de réalisation se trouvent dans le chapitre Conception page 87, section C.Méthodologie d’ana-
lyse des sentiments.
108
Figure 7.24 – Satisfaction
4- E-banking
109
Partie II
Côté administrateur (Backoffice)
• L’écran principale de notre Backoffice est présenté comme suit :
110
7.8 Conclusion
La phase de réalisation est l’étape la plus importante dans le cycle de vie d’une application.
Dans ce chapitre, nous avons décrit brièvement le processus de réalisation de notre application
en spécifiant l’environnement, les outils, les langages de développement, ainsi le système de
gestion de base de donnée associés à notre système.
En effet, nous avons achevé l’implémentation tout en respectant la conception élaborée.
111
Conclusion générale
Au terme de ce rapport, nous pouvons conclure que ce stage de fin d’études nous a donné
une occasion opportune nous permettant de confronter l’acquis théorique à l’environnement
pratique.
En effet, le stage nous a permis de prendre certaines responsabilités, par la suite de conso-
lider de plus en plus nos connaissances théoriques et pratiques. C’est là que réside la valeur
d’un tel projet de fin d’études qui combine les exigences de la vie professionnelle aux côtés
bénéfiques de l’enseignement pratique que nous avons eu à l’UVT.
Nous nous somme appuyé également durant tout le processus de conception sur l’UML, qui
est un outil graphique pratique pour illustrer notre démarche.
Nous avons commencé par l’identification des besoins qu’on a ensuite modélisé sous forme
de diagrammes de cas d’utilisation, diagrammes de séquences, diagramme de classe et terminer
par la réalisation de notre application.
Lors de ce travail, Nous avons pu mettre en pratique nos connaissances théoriques acquises
durant notre formation.
Ce projet a fait l’objet d’une expérience intéressante, Il nous a permis d’apprendre à nous
organiser, d’apprendre à travailler en groupe, d’améliorer nos connaissances et nos compétences
dans les différents outils et langages dédiés à la programmation mobile.
Au terme de ce projet, nous pouvons affirmer que nous sommes arrivés à répondre aux
objectifs qui nous ont été fixés. De plus nous avons veillé à ajouter quelques fonctionnalités
additionnelles notamment :
112
Toutefois, il reste bien des perspectives pour améliorer l’expérience utilisateur et l’efficacité
de l’application notamment :
Nous espérons enfin que le travail que nous avons effectué a été à la hauteur de la confiance
qui nous a été donnée.
113
Annexe A
Présentation de la banque
Introduction
Dans ce chapitre, nous allons présenter l’organisme d’accueil BNP Paribas El Djazair, la
société au sein de laquelle nous avons effectué notre projet de fin d’études.
A.2.2 Paribas
À l’origine, on trouve :
? La banque de Paris et des Pays-Bas créée en 1872.
? En 1968, une holding, la compagnie financière de Paris et des Pays-Bas est créée.
? En 1968, la compagnie financière de Paris et des Pays-Bas est nationalisée
? Le nom PARIBAS apparait, Ce nom était l’adresse télégraphique de la banque depuis
le début de siècle.
? A l’origine compagnie financière de Paris et des Pays-Bas, la compagnie financière de
Paribas devient Paribas en 1998 après absorption de la compagnie Bancaire.
i
A.2.3 BNP Paribas
? En 1999, une bataille boursière oppose la BNP et la société générale pour fusion avec
Paribas. La réussite de l’opération de la BNP, grâce au soutien d’Axa, conduira à la
création du groupe BNP Paribas.
? En 23 mai 2000 fusion entre BNP et Paribas.
? En mai 2001, BNP Paribas acquiert les 55 (pourcent) de BancWest qu’elle ne possédait
pas encore.
? BancWest devient alors une filiale à 100(pourcent). En 2005, BNP Paribas poursuit
sa stratégie de croissance ciblée et annonce l’acquisition, via sa filiale BnacWest, de la
banque américaine.
ii
A.4 Les activités de BNP Paribas
L’activité de BNP Paribas se répartie en 3 grandes catégories :
iii
En 2002, il y a eu la création de la filiale dont des objectifs principaux sont :
? Se positionner commercialement.
? Être une banque de références pour les activités Corporate et RetailBanking. Elle est
devenue en moins de neuf ans l’une des banques du secteur privé les plus importantes
sur le territoire algérien. Forte de ses succès, Elle possède aujourd’hui un réseau de
71 agences répartie sur tout territoire national. Elle couvre ainsi progressivement le
territoire national, avec une implantation dans 17 wilayas parmi eux (Alger, Blida, Sétif,
Bejaia, Annaba, Hassi Messaoud, Tlemcen et Constantine) Cette stratégie témoigne de
son ambition à être une banque citoyenne au service du développement économique
de l’Algérie. La vocation de BNP Paribas El-Djazair est d’être une banque universelle
qui offre des services de qualité supérieure à l’ensemble de ses clientèles. La banque
est devenue une des toutes premières banques privées sur le territoire algérien avec des
fonds propres dépassant les 15 milliards DZD à Janvier 2010 forte de ces sources. BNP
Paribas EL-Djazair est la première entreprise algérienne à avoir reçu une notation Fitch
Rating (Agence Internationale de Notation Financière) Cette notation confirme la santé
financière de la banque ainsi que la qualité de son management et son organisation.
iv
A.8 Présentation du Département Organisation Informa-
tique (DOI)
Ce département est responsable de toutes les demandes de matériel ou d’accès réseau.
Il agit sur deux domaines :
v
Annexe B
E-Banking
B.1 Qu’est-ce que la banque en ligne ?
La banque en ligne est l’outil e-banking de BNPPARIBAS El Djazaïr offrant à la clientèle
Particulier, Professionnel, et Entreprise, des services de consultation de comptes, de gestion
des paiements, de gestion de commande de chéquie...etc
i
B.4 Consulter la situation globale des comptes
La situation globale des comptes d’un client est disponible dans le menu vertical au niveau
de la « Synthèse » sous-menu « MON COMPTE ». Avec la banque en ligne, on peut consulter
les soldes de tous les comptes inscrits dans notre abonnement, ainsi que toutes les opérations
enregistrées sur ces comptes sur les 13 derniers mois.
Les soldes sont mis à jour chaque soir du dimanche au jeudi (sauf les jours fériés), avec les
opérations enregistrées par la banque dans la journée.
Les mouvements prévisionnels (prochains mouvements) sont mis à jour plusieurs fois par jour,
du dimanche au jeudi (sauf les jours fériés), avec les opérations enregistrées par la banque dans
la journée.
ii
Figure 7.32 – Interface «commander des chéquiers».
iii
B.7 Comment savoir si un virement ou une remise de
virements est exécuté ou rejeté ?
Le service est disponible dans la banque en ligne dans le menu vertical au niveau de la «
Synthèse » sous-menu « MES COMPTES ».
On peut consulter les opérations avec leur statut associé dans l’historique des opérations à
partir de la recherche multicritère ciblant les opérations recherchées.
iv
Remarque
La consultation des données est disponible dans le menu vertical
En cas de perte ou d’oubli de l’Identifiant Utilisateur ou de mot de passe, seule les agences
sont en mesure de le retrouver ou d’en attribuer un nouveau.
v
Annexe C
• Créer le fichier «assets» sous le menu app/src/main et copier les fichiers de l’OCR.
i
• Copier les fichiers « docrecog » de l’OCR et les insérer dans notre projet dans
app/src/java, en gardant le nom de package du projet.
ii
Bibliographie
[1] Latifa Abada. Natixis lance banxy, la première banque mobile en algérie. huffpostmaghreb,
avril 2018.
[2] Samir ADOUANE. Intégration des moyens de modification dynamique des contenus sur
le web. Mémoire de magister, Université el Hadj Lakhdar Batna, Batna, 2007.
[3] Meekk AL. Mes comptes bnp paribas, 2019. https ://www.pinterest.com/pin.
[4] BEGHDAD Abdelkrim Et OUSERIR Amina. Une approche deep learning pour l’analyse
des sentiments sur twitter, juin 2018.
[5] Entretien avec Marcel Cori. Qu’est-ce que le traitement automatique des langues ? Tech-
nolangue.net, juin 2006.
[6] Attijariwafa bank europe. E-attijari mobile, 2019. https ://www.appadvice.com/.
[7] Group bnp paribas. Maquette hiss@by, 2019. Document interne.
[8] Maxime chenot. Introduction à firebase, 2018. https ://lesveilleursdenuit.fr/introduction-
a-firebase/amp/.
[9] dai. Dai, 2012.
[10] BNP Paribas el djazair. Notre offre 2.0. 2019. Bnpparibas.dz.
[11] Investir en tunisie. Lancement officiel de l’application ubci mobile., avril 2013.
https ://www.investir-en-tunisie.net/.
[12] Frédéric Espiau. 2019. https ://openclassroom.com/fr/courses/2023346-creez-des-
applications-pour-android.
[13] Mike Luby et al. Twitrratr. 2008. twitrratr.
[14] SAICHE Cylia et OUYOUGOUTE Abdelatif. Conception et réalisation d’une application
web pour la gestion des étudiants d’une école privée., 2015.
[15] Marc G Gauthier. 2019. https ://openclassroom.com/fr/courses/2342361-gerez-votre-
code-avec-git-et-github.
[16] Erin Gilliam Haije. qu’est ce que l’analyse de texte ? et pourquoi devrais-je m’en soucier ?
Mopinion.fr, mars 2019.
[17] GHRIBI hayet. Application mobile , cour l3 siq. 2017.
[18] Aymen HEDIDAR. Conception et realisation d’une application mobile m-banking, 2012.
[19] Arne holst. Global mobile os market, 2017. www.statista.com/statistics/266136/global-
market-share-held-by-smarthone-operating-systems/.
[20] Mickael jacinto nunes. 10 templates gratuits pour vos back-office. novembre 2011. web-
plus-sucre.fr.
[21] Djamila Oueld Khettab. Start-up de la semaine : Yassir l’application mobile qui veut «
ubériser » le transport en algérie. jeune afrique, mai 2018.
126
[22] MOUSSOUNI Zobir ET RAMDANI Massinissa. Conception et réalisation d’une applica-
tion mobile pour le service de tourisme, cas d’étude "wilaya de bejaia", juin 2017.
[23] Z Mohamed. Application mobile dans les entreprises. document interne, 2012.
[24] Bnp paribas. Procedure EER de BNP Paribas ED, 2019. Document interne.
[25] sous la direction d’Eric Roig Réalisé en collaboration avec des professionnels du droit et de
finance. Back office (définition). juillet 2019. Droit-finances commentcamarche.
[26] TweetFeel. Tweetfeel an analytical look at twitter’s feeling. 2013. jacdigital.
[27] yeeply. Type des applications web. juin 2018. https ://fr.yeeply.com/.