Vous êtes sur la page 1sur 67

Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par

Chadrack Le-Prince GBEGBE


UNIVERSITE DE BANGUI
REPUBLIQUE CENTRAFRICAINE

************

Unité – Dignité – Travail

**********

INSTITUT SUPERIEUR DE TECHNOLOGIE


*************
DIRECTION DES ETUDES
*************
DEPARTEMENT DE GENIE INFORMATIQUE
*************

Mémoire de fin de cycle en vue d’Obtention de la Licence Professionnelle en Informatique

THEME :
Gestion Automatisée des Cartes Electroniques Ecobank
avec des alertes aux Clients via Kannel sous Linux

OPTION : Informatique de Gestion

Présenter Par : Sous la Direction :

 GBEGBE Chadrack Le - Prince  M. Claver GUERET LIGBY

Enseignant à l’Université de Bangui

Année – Académique
2016- 2017
1
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Introduction
Depuis plus de deux décennies, l’informatique ne cesse de transformer le milieu social, le
milieu éducatif, le milieu sanitaire voire le milieu commercial. Il constitue le support
d’accroissement des productivités, des chiffres d’affaire des entreprises et des organisations.

Afin d’élargir et faciliter les opérations ou les transactions bancaires avec les clients, les
banques en générale et l’Ecobank l’une de ces dernières en particulier n’a pas fait figure
d’exception à cette émergence, elle utilise l’informatique comme un outil de travail capable
de rendre ses activités encore plus accessibles et plus faciles; en investissant dans la mise en
place d’une application web de gestion automatisée de la disponibilité des cartes bancaires.

Cette application joue le rôle d’alerte aux clients des disponibilités de leur cartes, facilités
l’information et la distribution de cette dernière aux responsables. Dans ce contexte, nous
élaborons l’application en trois partiesconsécutives :

 Un système d’alerte aux clients dont leur carte est disponible ;


 Le coté général de l’application qui permet aux employés de vérifierles cartes retirées
et non retirées, de charger les informations d’une carte et la délivrance aux
propriétaires;
 Le coté administration, dédiéà un employé charger de créer le profil d’autres employés
et la configuration en cas des erreurs.

Désigné comme une préoccupation de l’Ecobank, il fait l’objet duthème de notre MEMOIRE
« La Gestion automatisée de la disponibilité des cartes Electroniquesd’ECOBANK avec
des alertes aux clients via KANNEL Sous Linux ».Faceàce problème, l’on s’interroge à la
question de savoir pourquoi mettre en place cette application ? Comment la déployer ? Quels
sont les moyens utilisés pour la mise en place ?

Ainsi, ces interrogations nous amènent à segmenter notre travail en quatre parties :

 Dans la première partie, nous allons réaliser une Etude Préalable ;


 Dans la deuxième partie, nous présenterons les Etudes de Faisabilité
 Dans la troisième partie, nous parlerons d’une Etude Théorique ;
 Dans la quatrième partie, nous finirons avec l’Implémentation de notre projet.

2
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

ETUDE PREALABLE

3
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

I. Présentation D’ECOBANK
A. Généralité sur Ecobank

Ecobank Centrafrique est une société anonyme dont le siège social se trouve à Lomé au
TOGO. Elle est située au centre-ville de Bangui Place de la République BP 910 Bangui,
République Centrafricaine ; Elle comporte six Agences à savoir :

 Une Agence principale (AGP) retrouvée au centre-ville de Bangui, elle regorge


plusieurs services dont nous avons: Le service informatique, juridique, financier,
ressources humaines…

 Une Agence qui est située au PK0 à côté de la société mobile orange

 Une Agence au Port Amont

 Trois autres agences MINUSCA (Minusca HQ, MinuscaLogbase, Minusca


Bouar).

1. Historique

Ecobank Transnational Incorporated (ETI), société anonyme, est créée en 1985 comme
holding bancaire à l’initiative de la Fédération des chambres de commerce d’Afrique de
l’Ouest avec le soutien de la Communauté Economique des États de l’Afrique de l’Ouest
(CEDEAO). Au début des années 1980, l’industrie bancaire de l’Afrique de l’Ouest, est
dominée par les banques d’État et les banques étrangères. Il n’existe pratiquement aucune
banque du secteur privé africain dans la région. La Fédération ouest-africaine des
chambres de commerce a favorisé et accompagné le lancement d’un projet pour la
création d’un établissement bancaire régional privé en Afrique de l’Ouest. EcoPromotion
S.A. est créée en 1984. Ses actionnaires fondateurs ont réuni le capital de départ destiné
aux études de faisabilité et aux activités promotionnelles ayant conduit à la création
d’ETI.

En octobre 1985, ETI est créée avec un capital autorisé de 100 millions $ US. Le capital
initial versé de 32 millions $ EU est mobilisé auprès de plus de 1500 personnes et
institutions des pays de l’Afrique de l’Ouest. Le principal actionnaire est le Fonds de
coopération, de compensation et de développement (Fonds de la CEDEAO), bras financier

4
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

de la CEDEAO. ETI signe un accord de siège avec le gouvernement du Togo en 1985, qui
lui confère le statut d’organisation internationale, jouissant des droits et privilèges
nécessaires lui permettant d’exercer en tant qu’institution régionale, avec un statut
d’établissement financier non-résident.

ETI débute ses activités avec sa première filiale au Togo en mars 1988. Ecobank est
aujourd’hui la première banque panafricaine, présente dans 36 pays du continent. Elle est
implantée dans plus de pays africains que d’autresbanques existantes.

Aujourd’hui Ecobank est à ce jour, opérationnelle dans des pays d’Afrique de l’Ouest, de
l’Est, Centrale et Australe

2. Mode de Fonctionnement

Le fonctionnement et les actions d’Ecobank sontfaçonnés par trois principaux éléments qui
conditionnent le secteur bancaire, à savoir : la croissance profitable, la taille et l'efficacité
dans le but de générer la rentabilité. La stratégie de croissance du Groupe est basée sur une
série de facteurs comprenant notamment une expansion par la pénétration de nouveaux
marchés à fortpotentiel de rendements sur le continent, l'augmentation des parts de
marchédans les marchés existants grâce à l'ouverture de nouvelles agences et de nouveaux
canaux de distribution ainsi que la mise en place de projets de rapprochement avec des
banques locales, le lancement de nouveaux produits et services bancaires et le lancement des
produits et services financiers destinés aux couches sociales ayant un faible taux de
bancarisation.

La stratégie d'amélioration de l'efficacité du Groupe s'inspire des succès réaliséspar


d'autresopérateurs dans des pays émergents plus avancés en prenant en compte les conditions
locales. Le Groupe a démarré un processus de centralisation de ses services opérationnels
internes par le biais d'une plateforme de services partagée. Les travaux ont débuté et leur mise
en œuvre permettra de réaliser des économies significatives et des améliorations de l'efficacité
du Groupe.
Pour aboutir à cet objectif de taille, Ecobank choisie de fonctionner non pas comme un groupe
de banques, mais comme une banque àcaractèreunique opérant selon les normes
opérationnelles communes dans tous les marchés d'implantation tout en respectant les
règlementations locales, les conditions des marchés en question et la culture des affaires.

5
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Ecobank a démarré un programme d'identification des opportunités d'affaires qui permettra de


développer ses activités par l'acquisition d'intérêts majoritaires dans d'autres banques
installées dans des marchés d'implantation du Groupe et sur de nouveaux marchés.

3. Activités

A l'égard des autres banques commerciales, Ecobank Centrafrique se consacre aux activités
bancaires traditionnelles : activités d'intermédiation bancaire et les prestations de services
pour le compte de tiers. Elle porte un accent particulier sur la prestation de produits et
services de haute qualité à une clientèle diversifiée qui comprend des particuliers, des petites
et moyennes entreprises, des grandes sociétés privées locales, des sociétés d'Etat, des
organisations non gouvernementales et des sociétés multinationales. La gamme des produits
et services se décline comme suit : comptes courants, comptes d'épargne, transfert de fonds,
le commerce international, la banque par Internet, la gestion des actifs, le financement
structuré, les dépôts à terme, les opérations de change, les prêts et découverts, les paiements
et encaissements, les cartes bancaires, le courtage en valeurs mobilières. De nouveaux
produits et de nouveaux canaux tels que la banque par SMS et téléphone a été récemment
lancés.

Ecobank Centrafrique a mis en place des relations stratégiques avec d'autres institutions de la
place dans des domaines spécifiques dans le but de créer des partenariats et de permettre à
ses clients d'en tirer profit par le rehaussement induit de valeurs. Les alliances les plus
notables concernent : le transfert de fonds par Western Union, le retrait d’argent en espèce, le
dépôt d’argent….

3.1. Ressources

Pour arriverà ses objectifs, Ecobank Centrafrique dispose essentiellement des ressources
commeressources humaines, matérielles et financières qui sont :

 Ressources Humaines : pour une productivité du travail meilleur, ECF utilise les
compétences d'un personnel performant dont la rigueur au travail ne fait qu'égaler leur
conscience professionnelle à toute épreuve.
 Ressources Matérielles : pour son efficacité et la satisfaction des exigences de sa
clientèle. ECF est dotée d'importants matériels et autres biens d'équipement au
nombre desquels figurent : des constructions, des matériels et mobiliers de logement,

6
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

des locaux administratifs (agences), des matériels et mobiliers de bureau, un parc


automobile très fourni, un système informatique performant avec le projet
FLEXCUBE.
 Ressources Financières : les moyens financiers d’ECF lui permettent de respecter
ses engagements vis-à-vis des tiers et d'améliorer ses services à l'acquisition de
nouvelles technologies. Ces ressources sont en général : les fonds propres dont le
capital social, les réserves, les subventions, les résultats bénéficiaires ; les fonds
collectés auprès de la clientèle sous forme de dépôts et des emprunts bancaires.

3.2. Organisations

Pour une réussite meilleure de ses activités, ECF a mis en place une bonne organisation
centralisée grâce à une équipe compétente, dynamique et professionnelle. Elle est donc
structurée en départements, services et réseaux d'agences comme l'indique l'organigramme
suivant:

La Direction Générale : elle élabore et met en place la stratégie de la filiale selon les
objectifs de développement érigés par le Groupe. Elle assure en interne, la
coordination des activités des directions fonctionnelles et commerciales suivantes :
La Direction des Opérations et des Technologies (DOT) : elle regroupe les
divisions et services ci-après : opérations, portefeuille local, transfert, commerce
extérieur, caisse, opérations rapides, contrôle et vérifications des opérations,
rapprochement, espace entreprise, archive, technologies de l'information et services
généraux.
La Direction d’Audit : l'Audit Interne s'assure du respect des procédures à travers
l'exécution des opérations de banque. Il opère à travers les services Contrôle et
Vérification, Audits, Investigations et Contrôle des agences
La Direction Contrôle Financier : elle élabore le budget et s'occupe de son
exécution. Elle élabore également les états financiers en fin d'années.
La Direction Juridique: le Département Légal a la responsabilité de tous les aspects
juridiques de la vie de la banque. Elle assure un rôle de conseil en interne sur les
questions de droit,le suivi des contentieux en relation avec le monde judiciaire
(avocats, tribunaux), le suivi des problèmes liés à la bonne gouvernance

7
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

(déontologie), de la gestion des Audits et des Saisie-arrêt aussi l'organisation des


Assemblée Générales et Conseils d'Administration.
La Direction des Ressources Humaines : elle est chargée de la gestion des
carrières à savoir : le recrutement, le suivi des plans de carrière, la formation, la
promotion et le reclassement ; de l'organisation.
La Division EBS: avec une clientèle constituée de PME/PMI (dont le chiffre
d'affaires est inférieur à 5 millions de dollars) et des professions libérales, elle
est chargée d'élaborer les marchés cibles, de prospecter les clients, d'analyser
les critères d'acceptation de risque et de monter les dossiers de crédit pour
approbation au Risque (prêts ou chèques sans provision), tout en développant
et fidélisant le portefeuille.
Direction Trésorerie et Institutions Financières : cette dernière assure la gestion
des actifs et passifs de l'institution, effectue des placements auprès des
Institutionnels et Banques correspondantes.
Marketing et Communication des Produits : il élabore le plan de communication
externe de la banque et met en œuvre les différentes actions proposées.
Responsable de l'image de la banque à l'extérieur, il est chargé de la promotion
de l'ensemble des produits et services. Il veille au maintien d'un niveau optimal
de la qualité de service, responsable de la qualité des prestations offertes à la
clientèle et de Change (achat et vente des devises).
La banque commerciale: elle s'occupe de la gestion des produits électroniques
de la banque et de la collecte des fonds issus des recettes réalisées par les
entreprises. Il a également en charge le service Monétique qui gère les produits
tels que Cartes Ecobank (cartes Azur et Prépayée), Visa, MasterCard et banque à
distance.

8
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

3.3. Organigramme d’Ecobank

Actionnaires Assemblée
Générale

Président du Conseil
d’Administration
Secrétariat Générale & Juridique
Audit

Compliance Direction Générale Contrôle Interne

Assistante de Direction
Direction Générale Adjoint

Ressource Humaines Direction financière

Costumer Service Trésorerie & Opérations & Corporate


Commercial Bank Bank client Gestion des Risques
Institution Financière Technologies Bank

Head
LAM FI/IO
PersonalBanking& Risque Manager A.L.M Opérations
Markeing

OPS RISK MANAGER T.S.O


Head Public Sector Informatiques- LAM G Corporate
Technologie Client Care

Head PME & Local Administration Crédit


Corporate
EBS LAM Corporate

Remitances Business Précontentieux

Réseau

Bangui AGP Port-Amont Terminal Nord KM5 PK0 MINUSCA I MINUSCA II

9
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

II. Etude de l’existant


Cette étude nous permet de faire une analyse de forces et faiblesses actuelles de la société
ECF de ce qui existe au sein de cette organisation, de connaitre ces ressources matérielles et
logicielles. Afin de dégager une possibiliténécessaire pour cette dernière, de recenser le
souhait des utilisateurs, de connaître les contraintes à considérer dans la conception du
système. Cette étude nous facilitera ainsi dans la proposition des solutions qui pouvant
satisfaire les besoins des utilisateurs.

1. Analyse de l’existant

La compréhension la plus meilleure de l’infrastructure informatique aide à déterminer la


portéede la mise en place de l’application de gestion automatisée des cartes des clients
disponibles. Il est important de disposer des informations précises sur le mode de prestation
de service pour la satisfaction de la clientèle. En effet il s’agira donc pour nous de rassembler
les informations relatives à l’organisation de l’existant. Ici nous allons faire l’inventaire de
tous les outils informatiques. La société Ecobank Centrafrique disposedes élémentstels que :

 Les serveurs comme :


 Serveurs de base de données Windows Serveur 2003, 2008 R2 et 2012;
 Serveur de base de données Oracle
 Elle possède des matériels informatiques comme :
 Des modems, des routeurs et des Switchs ;
 Une gamme d'ordinateurs de bureau de marque HP;
 Des PC de marque HP pour les chefs de services;
 Des imprimantes de marques HP;
 Des télécopieurs de marque HP ;
 Des IP phone.
 Les Applications existantes de la société ECF sont :
 Java Jre6u33-Windows*64 ;
 Le logiciel de gestion de la comptabilité,
 FlexPress, Link, RT (Rapide Transfer)…
 le système d'exploitation Windows;
 Les outils Microsoft office 2007, 2010 et 2013, Adobe,

10
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 Les outils comme : Adobe, FlexPress, Link, RT (Rapide Transfer) ………


 un anti-virus McAfee sur chaque ordinateur
 L’application OMNI réservés aux grandes entreprises;
 L’application internet Banking qui permet aux personnes morale et physiques
d’avoir acesà leur compte bancaire à distance
 L’application Bankcollect pour faciliter l’encaissement des chèques et des
cash au niveau de la caisse ;
 L’application Eco-Marchands qui permet de faire la suivie des terminaux des
paiements électroniques;
 Etc…
2. Critique de l’existant

En dépit des applications et plateformes que la société Ecobank dispose, les employés et les
clients se plaignent toujours par rapport au mode de gestion des cartes disponibles. Leur
plainte s’explique par le faite que d’une part les clients ne sont pas alertés à propos de leur
carte disponible. A chaque fois, ils sont contrés de se déplacer jusqu’à l’agence pour s’avoir si
leur carte est disponible ou pas.D’autre part, les employés en particulier ceux de service
clientèle n’arrivent pas à savoir si la carte du client lambda est disponible.

Toutes ces difficultés constituent un frein dans la bonnequalité de prestation des services de la
banque à sa clientèle. Et cela entraine de manière constante des critiques négatives sur les
personnels de ladite entreprise.

3. Travail à faire

La tâche à exécuter est de concevoir et développer une application de gestion


automatisée des cartes bancaire disponible de l’Ecobank que nous avons nommée «
Ecobank card » par rapport aux informations que l’Ecobank a mis notre porté.
Cetteapplication est divisée en deux modules : un premier dédié au Front Office qui
permet aux employés de :

 connaitre les cartes retirées ;


 Connaitre les cartes non retirées.
 Connaitre l’ensemble des cartes déjà distribuée aux clients.

11
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Et un second pour le Back Office permettant l’administration de l’application. En effet, le


Back Office désigne l'ensemble des parties du système auxquelles l'utilisateur final n'a pas
accès. C'est la partie, que l’Administrateur d’Ecobank card doit assurer le bon fonctionnement
de l'application.

 Charger les cartes disponibles dans l’application afin que les clients puisses être
informés des alertes émanant de la banque ;
 connaitre les cartes non retirées et de modifier les statuts ;
 La mise à jour de la base de données et de l'application.

4. Ebauchés de Solutions

Pour permettre une amélioration de ses conditions, deux possibilités de solutions sont
disponibles. Nous avons :

4.1. Achat d’un logiciel : l’une de solution désigne la procuration d’un nouveau
logiciel par l’Ecobank
4.2. Développer un logiciel en Local : l’autre solution pour Ecobank est
d’engager un programmeur afin de mettre en place une application relative aux
besoins.

La première solution est une dépense colossale pour la société Ecobank car un nouveau
logiciel a besoin d’une somme d’argent nécessaire, Or développer un logiciel par un
informaticien en interne facilite et résorbe le coût.Pour que cette application soit possible à
l’Ecobank, nous avons différents atouts à en tenir compte qui en font partie des solutions
proposées. Tout d’abord on a :

4.2.1. Récolte des Informations

Cette phase permet de recueillir toutes les informations nécessairesliéesà ce nouveau logiciel.
Les personnels visés donnent les informations comme les données relatives à un client à
savoir:

 Nom ;
 prénom ;
 numéro de téléphone ;

12
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 numéro de la carte ;
 le type de la carte.

Ainsi, ces informationsélémentairespermettent de réaliser le logiciel comme a été mentionné


dans le travail à faire ci-haut

4.2.2. La méthodologie de développement

Avant de développer un site web ou une application informatique et se lancer dans l’écriture
du code, il faut tout d’abord organiser les idées, les documenter, puis organiser la réalisation
en définissant les modules et les étapes de la réalisation. Cette démarche antérieure à l’écriture
s'appelle la modélisation. La modélisation consiste à créer une représentation virtuelle d’une
réalité de telle façon à faire ressortir les points auxquels on s’intéresse.

En informatique nous avons deux approches qui nous permettent de mettre en place
un site internet ou une application informatique. D’une part, on a le langage l’UML
(UnifiedModelingLanguage) et d’autre part, nous avons la méthode MERISE (Méthode
d’Etude et de Réalisation Informatique par sous-ensemble)

4.2.2.1. Le Langage UML :

UML (UnifiedModelingLanguage) est un langage de modélisation unifié


permettant de modéliser une application logicielle de façon standard dans le cadre de
conception orienté objet. UML permet de couvrir le cycle de vie d’un logiciel depuis la
spécification des besoins jusqu’au codage en offrant plusieurs moyens de description et de
modélisation des acteurs et d’utilisation système, du comportement des objets, du flot de
contrôle internes aux opérations, des composants d’implémentation et leurs relations, de la
structure matérielle et de la distribution des objets et des composants indépendamment des
techniques d’implémentation et peut être mis à jour selon les besoins.

UML n’est peut-être pas une méthode, mais ses concepteurs précisent néanmoins une
méthode basée sur l’utilisation d’UML. Il suit une méthode suivante :

 Piloter par les cas d’utilisation ;


 Centrer sur l’Architecture ;
 Itérative et Incrémentale.

13
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Le langage UML part sur le principe des Diagrammes. C’est grâce à ces derniers que l’UML a
les possibilités de représenter, de manipuler, de modéliser le réel. Ainsi, UML définit 9 types
de diagrammes dans deux catégories de vues, les vues statiques et les vues dynamiques.

Les Vues statiques:

 Les diagrammes de cas d’utilisation décrivent le comportement et les fonctions d’un


système du point de vue de l’utilisateur ;
 Les diagrammes de classes décrivent la structure statique, les types et les relations des
ensembles d’objets ;
 Les diagrammes d’objets décrivent les objets d’un système et leurs relations ;
 Les diagrammes de composants décrivent les composants physiques et l’architecture
interne d’un logiciel ;
 Les diagrammes de déploiement décrivent la répartition des programmes exécutables
sur les différents matériels

Les Vues dynamiques :

 Les diagrammes de collaboration décrivent les messages entre objets (liens et


interactions) ;
 Les diagrammes d’états-transitions décrivent les différents états d’un objet
 Les diagrammes d’activités décrivent les comportements d’une opération (en termes
d’actions) ;
 Les diagrammes de séquence décrivent de manière temporelle les interactions entre
objets et acteur.

4.2.2.2. La Méthode Merise :

Définie comme uneMéthode d’Etude et de Réalisation Informatique par Sous-Ensemble,


c’est une méthode de conception, de développement et de réalisation de projets informatiques.
Le but de cette méthode est d'arriver à concevoir un système d'information. La méthode
MERISE est basée sur la séparation des données et des traitements à effectuer en plusieurs
modèles conceptuels et physiques. La séparation des données et des traitements assure une
longévité au modèle. En effet, l'agencement des données n'a pas à être souvent remanié, tandis
14
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

que les traitements le sont plus fréquemment.Ce type de méthode est appelé analyse. Il existe
plusieurs méthodes d'analyse, la méthode la plus utilisée en France étant la
méthode MERISE. Voici les modèles utilisés par la méthode MERISE :

 Modèle Conceptuel de Communication ;


 Modèle Conceptuel de Traitement ;
 Modèle conceptuel des données ;
 Modèle conceptuel des traitements ;
 Modèle organisationnel des traitements ;
 Modèle logique des données ;
 Modèle physique
4.2.2.3. Tableau Comparatif entre MERISE ET UML

Merise UML
méthode d'analyse et de conception de langage de représentation d'un système
système d'information d'information.

méthode de modélisation de données et système de notation orienté objet.


traitements orienté bases de données
relationnelles.

Relationnel. Objet.

Franco-français International

schéma directeur, étude préalable, étude langage de modélisation des systèmes


détaillée et la réalisation. standard, qui utilise des diagrammes pour
représenter chaque aspect d'un système
exemple: statique, dynamique,....en
s'appuyant sur la notion d'orienté objet

plus adapté à une approche théorique plus orientée vers la conception

du "bottom up" de la base de données vers le du "top down" du modèle vers la base de
code données

15
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

4.3. SGBD

Un système de gestion de base de données (SGBD) est un logiciel système servant à


stocker, à manipuler ou gérer, et à partager des informations dans une base de données, en
garantissant la qualité, la pérennité et la confidentialité des informations, tout en cachant la
complexité des opérations. Pour mettre en place une application du genre nous avons
plusieurs SGBD à savoir : Oracle, MySQL, Maria DB, Dbase, Sybase, Informix, SQL
server, Post gré. Le choix parmi ces derniers est fait selon le développeur ou le propriétaire
de l’application.

4.4. Langages de Programmations :

Plusieurs langages existent dans le développement d’une application client-serveur, nous


avons les langages cotes clients et les langages cotés serveurs. Ces langages ont les
portabilités en fonction du rôle dont ils jouent. Ils sontlèges et relativement simple à
implémenter (syntaxe pas trop complexe).Nous avons du coté client les langages :

 JavaScript : il est le plus utilisé des langages de programmation web côté client. Il est
reconnu par tous les navigateurs (dans les versions actuelles). Il se base sur le langage
normalisé ECMAScript
 JScript : il est fort proche du JavaScript est simplement une adaptation de celui-ci
par Microsoft.
 VB Script c’est le langage de script développé par Microsoft sur base du Visual Basic.
Ce langage n'est interprété que par les navigateurs basés sur ceux développés
par Microsoft (soit Internet Explorer et Max thon). Il est donc peu utilisé sur l'Internet
(mais utilisé parfois sur des intranets).
 DHTML n'est PAS un langage de script mais simplement la combinaison, dans une
page web, de JavaScript, de HTML 4 ou de XHTML et de CSS.

Du coté serveur nous avons :

 ASP (Active Server Pages) : Technologie développée par Microsoft à partir de 1996
dans le but de créer des pages dynamiques. ASP permet d'ajouter du code dans la page
HTML qui sera interprété par le serveur. La partie ADO (ActiveX Data Object) de
ASP permet de se connecter à une base de données.

16
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Langages utilisés : VB Script (langage par défaut) ou JScript.


Portabilité : La technologie est implémentée sur les serveurs web de Microsoft (IIS et
PWS).
Mise en place : Utilisation de langage de Script donc d'accès relativement aisé (mais
se complexifie vite).
Performance : Bonne performance surtout si l'on utilise du code compilé (dll).
Utilisation : Tout site web dynamique peut être créé en ASP.

 ASP.NET : Technologie développée par Microsoft sur base du Framework.Net.


L'évolution est importante par rapport à ASP et les possibilités deviennent quasi
infinies.ASP.NET a le gros avantage, par rapport à d'autres technologies, de bien
séparer le contenu de la page web, sa mise en forme et la programmation des aspects
dynamiques (travail en Code Behind).
Langages utilisés : C#, VB.Net, JavaScript.Net... et de nombreux autres langages
partageant le Common RuntimeLanguage du Framework.Net.
Portabilité : La technologie est implémentée sur les serveurs web de Microsoft (IIS
2003).
Mise en place : Utilisation de langage de programmation et nécessite donc de bonnes
bases en programmation mais le langage importe peu (plusieurs langages possibles).
Avec la version 2 (ASP.NET 2.0) et un outil de développement comme Visual Studio,
le développement d'applications peut déjà aller très loin sans programmation :
beaucoup de contrôles sont gérés par leurs propriétés.
Performance : Excellentes performances car tout le code est compilé (soit
précompilé, soit compilé à la volée).
Utilisation : Tout type d'application web peut être créé avec ASP.NET.

 PHP (PHP: HypertextPreprocessor) est un langage de script interprété côté serveur.


Le code PHP est lu par le serveur et interprété pour produire une page HTML (ou
d'autres types de fichier comme des images ou des documents PDF) à chaque fois que
la page sera demandée. Ce langage a été créé initialement dans le cadre des
logiciels Open Source. De nombreux développeurs ont ensuite profité de l'Open
Source pour développer de nombreux modules prêts à l'usage et paramétrables à
volonté.

17
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Portabilité : Les modules serveurs de PHP sont implémentés sur les serveurs Apache
et Unix mais PHP peut être implémenté sur d'autres plates-formes via des CGI. PHP
travaille généralement avec une base de données MySQL.
Mise en place : PHP est un langage de script, donc relativement facile à apprendre. La
syntaxe est simplifiée, mais part d'une base de C.
Performance : Très bonnes performances1 . La seule limite serait l'évolution rapide
des modules et donc parfois le besoin de "rafraîchir" la programmation.
Utilisation : Tout type d'application web peut être créé avec PHP.
Dernière version : PHP 7.0.

 JSP (Java Server Pages) : Technologie développée par Sun Microsystems dans le but
de créer des pages dynamiques avec le langage Java. Les JSP permettent d'ajouter du
code Java dans la page HTML qui sera interprété par le serveur. On peut distinguer
trois ensembles d'instructions JSP :Les instructions de programmation permettent
d’insérer des bouts de code Java directement dans la page web, et donnent accès à une
grande partie de la bibliothèque de programmation de la version standard de Java
(composants JavaBeans, accès aux bases de données via JDBC, etc.). Les actions
permettent essentiellement d’utiliser des composants JavaBeans existants.
Portabilité : Très grande portabilité grâce à Java : serveurs Apache mais aussi IIS, etc.
Mise en place : Utilisation de Java comme langage de programmation.
Performance : Très variable en fonction de l'implémentation utilisée.
Utilisation : Tout type de fonctionnalités.
 Servlets : Le nom vient d'une analogie possible à faire avec les applets. Il s'agit donc
de programmes créés en Java et tournant sur le serveur web. L'exécution du
programme génère les pages web renvoyées au client.
Langages utilisés : Java.
Portabilité : Très grande portabilité grâce à Java : serveurs Apache mais aussi IIS, etc.
Mise en place : Utilisation de Java comme langage de programmation.
Performance : Très variable en fonction de l'implémentation utilisée.
Utilisation : Tout type de fonctionnalités.

4.5. Les Passerelles SMS :

18
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Une passerelle est un système logiciel ou un matériel permettant le passage d'un milieu à un
autre tout en assurant la conversion des informations d'un format a un autre.Il en existe
plusieurs dont certaines sont propriétaires (Alligata, Ozeki SMS, Wapme, jataayu SMS
Gateway.), tandis que d’autres sont libres, mais pas en produits finis (Kannel, Gammu, …).
Certaines solutions dites « propriétaires », seraient des dérivées de « Kannel », puisque cette
dernière n’est pas une solution toute faite. En effet, la solution « Kannel » pourrait être reprise
et adaptée aux besoins qui s’imposent ; la solution dérivée obtenue étant personnalisée, peut
elle-même être commercialisée ou mise à la disposition des utilisateurs. La multitude de
protocoles de communication avec les SMSCs.

5. Solution Retenue

A l’instar des propositions que nous avons eu àébaucherprécédemment, la solution que nous
jugeons bien d’admettre est le développement d’une application client-serveur avec des
systèmes d’alerte aux clients via le Kannel. Cette application sera développer en langage de
programmation PHP avec MySQL comme SGBD et Apache comme serveur web et
l’environnement de développement sera linux.

19
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

ETUDE DE
FAISABILITE

III. Expression du Besoin


Pour mettre en place cette application, il nous faut des moyens matériels et logiciels :

20
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 Un serveur HP ProLiant de type de Microsoft 2008 pour une bonne compatibilité avec
celui de la banque.
 Un Ordinateur (portable ou fixe) qui permet de supporter un système d’exploitation
linux ;
 Un modem GSM (exemple Huawei-E303) ;
 Un téléphone portable qui sera utilisé pour tester les différents services
 Déploiement d’une base de données avec le SGBD MySQL ;
 Déploiement de l’application en PHP pour permettre le recueillement automatique des
données du client.
 Mise en place d’une passerelle SMS avec Kannel, qui permettra aux clients de
l’Ecobank d’être alertes de la disponibilité de leur carte

A.2. Cout du besoin

Matériel Prix
Un serveur (Linux, 1TB Disque dur, 8GB) 2 000 000 Fcfa
Cout du Logiciel 500 000 Fcfa
Cout du développement 5 000 000 Fcfa
Total 7 500 000

21
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

ETUDE THEORIQUE

IV. Présentation du Projet

22
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

En vue de pallier ces problèmes et permettre une fiabilité de l’offre de service d’une manière
organisée et rapide dans cette banque de réseau, l’Ecobank nous a confié la tâche de
concevoir et de développer une application web du type client-serveur. C’est dans ce contexte
que vient s’inscrire notre projet de fin d’études. Il s’agit en fait d’une application Web avec la
configuration de passerelle Kannel permettant aux clients d’être alerter de la disponibilité de
leur carte et au service clientèle qui se charge de la distribution des cartes pour en savoir en
interne les cartes bancaires disponibles, les cartes retirées et les cartes non retirées.

Dans cette partie nous allons théoriquement parler de la passerelle sms et Kannel ensuite nous
présentons les concepts et méthode de notre application enfin nous terminons par la
présentation des outils de développement de notre application.

1. Notion de la passerelle

Par définition, une passerelle est un outil permettant de passer d’un système à un autre. Dans
un réseau TCP/IP, un réseau local peut accéderà Internet par le biais d’une passerelle. En
réalité, cette étiquette de passerelle que l’on attribue à cet outil d’interconnexion, ne corrobore
pas puisqu’il ne s’agit clairement que du routage au niveau IP.

Au sens propre du terme, une passerelle est un support destiné à connecter des systèmes de
téléinformatiques ayant des architectures différentes ou des protocoles différents voire offrant
des services différents. La passerelle doit alors dépouiller la trame des informations
spécifiques au protocoleémetteur et les remplacer par leur équivalentes dans le protocole
récepteur. Elle peut mettre en relief des réseauxà partir du niveau physique ; toutefois, elle ne
doit donc pas être confondue a un répéteur (couche 1 du modèle OSI), un pont (couche 2 du
modèle OSI) ou un routeur (couche 3 du modèle OSI), bien qu’elle puisse jouer leur rôle.

En poussant des études sur la requête entrante, elle ne la diffuse que si elle est bien en accord
avec les règlesdéfinies par l’administrateur réseau. Ce système offre directement, outre
l’interface entre deux réseauxhétérogènes, une sécuritésupplémentairecar chaque information
est passéeà la loupe (causant la lenteur). L’inconvénient majeur de ce système est qu’une telle
application doit être disponible pour chaque service (FTP, HTTP, Telnet, SMS, etc.). Nous
avons choisi de représenterà travers le niveau en terme du modèle OSI, auquel peut
fonctionner une passerelle SMS.

2. Présentation de la passerelle SMS KANNEL

23
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Kannel est une solution Open Source, mis sous licence FreeBSD lancé par la compagnie
FinlandaiseWapit Ltd en Juin 1999. Elle est écrite en langage C, et fourni une passerelle mixte
SMS et WAP. La licence FreeBSD est une licence libre utilisée pour la distribution de
logiciels. Elle permet de réutiliser une partie ou tout le logiciel sans restriction, qu’il soit
intégré dans un logiciel libre ou propriétaire. En outre, elle permet également de gérer le push,
le pull ou pull-push SMS c’est-à-dire respectivement, l’envoi des messages aux
entitésextérieures, la réception d’un SMS ou la réception de requête, puis l’envoi de la
réponseaprès traitement àpartir de la plateforme. Au niveau de l’application se fait le
traitement de la requête, puis l’envoi de la réponse via le SMSC de rattachement à l’abonné
demandeur. Dans la mesure où la passerelle est reliéeà plusieurs SMSCs, une configuration
appropriée se chargera du routage du SMS-MT vers le SMSC concerné ; l’éditeur de service
n’a donc pas l’obligation de maitriser avec ses contours le protocole d’interfaçage au SMSC,
mais il est obligé de le déterminer.

3. Principe de fonctionnement de Kannel

Le SMS est transité par le réseau de téléphonie mobile vers le client. Le serveur autorise à
part la liaison au SMSC via la liaisonspécialisée, une liaison à travers un simple modem
GSM. L’acheminement des SMS diffère selon les deux modes de liaison. En effet, selon le
mode de liaison du serveur au SMSC de l’operateur, par le truchement d’un modem GSM
(SMSC virtuel), le SMS traverse deux fois l’interface AIR.

Elle est indiquée lorsqu’il s’agit d’un trafic pas assez grand. Il est prouvé empiriquement que
le serveur connecté selon ce mode, ne peut traiter qu’au plus 6 à 10 SMS a la minute.

Pour ce mode de liaison, à travers une liaison spécialisée du serveur au SMSC de l’operateur,
le SMS ne traverse qu’une fois l’interface AIR comme l’indique la figure

24
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Figure 3 : Liaison du serveur à travers un modem GMS

La liaison via un modem est celle que nous avons retenue pour les tests et présentation de
l’application, surtout du fait de sa mise en œuvre facile, techniquement et financièrement. Les
résultats obtenus seront valables pour une liaison spécialisée. Le traitement du SMS se faisant
au sein du serveur, il convient de procéderà une étude de sa structure interne.

4. Architecture Kannel

L’architecture de Kannel montre qu’il est constitué de trois principalesparties appelées


« Box » ou « daemons », leur intercommunication correcte confèreàKannel, sa stabilité et son
utilité. Il s’agit en effet de:

 Bearerbox ;
 SMSbox ;
 WAPbox.

4.1. Description des Parties (Blocs)


 Le Bearerbox

Présenté comme le noyau de Kannel, le bearerbox est l’interface entre le réseau de téléphonie
mobile et les autres compartiments du serveur. Pour les autres parties, il joue le rôle de
routeur. En effet, le bearerboxreçoit les SMS provenant d’un réseau mobile et se charge de les
transmettre à la partie approprie. Au fur et à mesure que les autres parties se connectentau
bearerbox et s’y déconnectent, ce dernier met à jour de façon dynamique la liste des parties en

25
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

ligne. Mis à part la réception de messages entrants, le bearerboxreçoit aussi tous les messages
sortants et les adapte au format du réseau auquel il s’interconnecte.

 Le SMSbox

Présenté comme le logiciel qui permet d’effectuer toutes les transactions SMS, le
SMSboxreçoit un SMS à partir du bearerbox, l’analyse afin d’en extraire les mots-clés et les
paramètres s’il y a lieu. En fonction du mot clé, le serveur renvoie la réponse au client ;
réponse qui peut être un texte statique, le résultat de l’exécution d’une action associée. Dans
le cas où le service SMS configuré dans le fichier renvoie à un URL (unified Ressource
Locator), le SMSbox peut récupérer les données contenues et les envoyer au bearerbox qui a
son tour les renvoie au client via le SMSC de l’opérateur de téléphonie mobile. Le SMSbox
peut égalementréceptionner les SMS provenant d’ordinateurs d’un réseau informatique tel que
l’intranet ou internet. En effet, les messages reçus au format http sont convertis en messages
de typeSMS pour être accessibles aux terminaux GSM.

 Le WAPbox

Le WAPbox est le composant permettant de faire tout ce qui est WAP du mobile. La
passerelle est l’élémentcentral de la communication dans le WAP : elle permet d’une part
d’assurer la connexion entre le monde GSM et le réseau informatique (Internet ou Intranet),
mais surtout elle code et décode les requêtes et les réponses entre le terminal mobile et le
serveur Web.

SMSC SMSbox
SMS Protocol HTTP

Bearerbox HTTP
Server
WAP Wapbox
Phone WAP stack HTTP

Kannel

Figure 3 : Présentation de l’architecture de Kannel et la relation avec l es


entités externes telles que le serveur http, SMSC et le WAP

26
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

4.2. Mode de Communication entre les parties


Les données sont échangées entre le bearerbox et les WAPbox, SMSboxà travers le protocole
TCP/IP. TCP/IP est un protocole adapté très souvent pour une utilisation en réseauxétendus
(comme internet), et son incorporation dans la procédure de communication des différentes
parties de Kannel, signifie que ces parties peuvent êtredéployées sur des ordinateurs aussi
distants que possible, si nécessaire. Les performances en termes de risque de crash sont plus
optimisées lorsque ces parties sont déployées sur des machines différentes. En titre de rappel,
de façon permanente, les différentes partieséchangentà intervalles réguliers des messages de
signalisations.

SMSbox
TCP

bearerbox

WAPbox
TCP

Figure 4 : Architecture physique du serveur /passerelle Kannel

Interface avec les entités externes

La figure suivante présente les différentesentités externes pouvant interfacer avec le serveur
(passerelle Kannel).

27
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Figure 5 : les entités externes d’interfaçage

Le serveur SMS peut s’interfacer pour l’instant avec des entités du type :

 Les terminaux GSM ou SMSC virtuel du genre WAVECOM ;


 Les SMSC tels que ceux de NOKIA ;
 Les serveurs http ;
 Passerelle SMS.

Quel que soit la nature de l’entité qui renvoi la requête, le serveur l’intègre d’abord dans une
file d’attente, puis ensuite essaie de la renvoyer en mode TCP au SMSboxà travers le
bearerbox.

6. Architecture du système d’alerte

L’architecture de notre système est composée d’une passerelle SMS assurant ainsi l’envoi des
SMS via le réseau GSM. La passerelle SMS est reliée au serveur de la base de
donnéescontenant toute les informations sur les informations relatives à la disponibilité de la
carte bancaire du client via le réseau TCP/IP.

28
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 Le programme mis en place est chargé de récupérer les informations relatives au


client : le numéro de compte du client, le nom du client, la date de la disponibilité de
la carte et le numéro de téléphone afin de parvenir au Kannel;
 Le Kannel met les informations au service de SMSbox
 Le SMSbox joue ensuite le rôle de convertir les Informations sous forme de SMS
afin d’être transporté sur les supports GSM via le réseau GSM jusqu’à SMSC;
 Depuis le SMSC l’interface AIR transporte le SMS jusqu’au client ;
 Le client muni d’un téléphone portable et d’une carte SIM opérationnelle dont le
numéro a été chargé dans le système reçoitl’information.

7. Aspect Sécurité

Lors de la mise en place d’un système informatique, la sécurité se présente comme étant le
facteur essentiel qui assure son bon fonctionnement en limitant les risques d’erreurs, de
fraudes et en assurant les 5 objectifs de la securite qui sont :
 la confidentialité ;
 l’intégrité ;
 la disponibilité ;
 l’authentification ;
 la non répudiationdes informations des utilisateurs.
Pour pallier ces risques encourus par le système, des mesures de sécurité ont été prises
au niveau du SMS et du système en soi.

7.1. La Sécurité physique

La sécurité physique concerne la protection de tout le matériel disponible dans le réseau et


tout ce qui s’y ajoutera (régulateur, onduleur, câble, serveur, etc.). Aussi, l’Administrateur
devra procéderà la sauvegarde des données sur les disques externes en cas de panne du
système.

29
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

7.2. La Sécurité Logique

Elle concerne la sécurité du système lui-même. Nous avons :

7.2.1. Authentification

L’accès au système est assujetti à un nom d’utilisateur (login) et un code d’accès (Mot de
passe). Le contrôle d’intégrité de mot de passe est assure par le biais de l’algorithme de
Hachage (SHA1)

L’algorithme de Hachage a pour objectif d’empêcher de reconstruire une source de


donnéesdifférentes produisant un résultat donné. Il est trèsrépandu et sert beaucoup à stocker
les mots de passe. Il comprend des caractèreshexadécimaux d’une longueur qui peut atteindre
32 caractères.

Ces informations peuvent êtremodifiées a volante par l’utilisateur pour élever le niveau de
sécuritéà son compte :

 L’accès direct à une page web est redirige vers une page d’authentification ;
 Chaque utilisateur dispose d’un droit d’accès au système, ce qui permet la gestion des
permissions en fonctions de ce droit.
 Le filtrage des données est effectué avant leur insertion dans la base de données afin
d’éviter toute sorte d’injection SQL ou autre par les utilisateurs avertis.

NB : l’élément le plus faible dans le domaine de la sécurité est l’utilisateur lui-même. Le


besoin de la formation et de la sensibilisation de ces derniers est une solution
prépondérante pour pallier la plupart des risques gravissant.

30
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

V. Choix d’une Méthode d’analyse et de Conception :

Comme nous avons évoqué en amont, il existe deux approches dans la modélisation
informatique. Dans un cas, nous avons la méthode MERISE et dans l’autre cas, nous avons le
langage UML.

En vue de réaliser ce projet, nous adoptons la méthode de conception de système


d’information MERISE pour la modélisation de notre application. Cette dernière est l’une des
méthodes de conception employée pour la mise en place des applications informatique. Cette
méthodes englobe tout le cycle de vie d’un logiciel depuis le schéma directeur jusqu’à
l’écriture de code.

1. La Méthode Merise :
1.1. Présentation de Merise

Définie comme uneMéthode d’Etude et de Réalisation Informatique par Sous-Ensemble,


c’est une méthode de conception, de développement et de réalisation de projets informatiques.
Le but de cette méthode est d'arriver à concevoir un système d'information. La méthode
MERISE est basée sur la séparation des données et des traitements à effectuer en plusieurs
modèles conceptuels et physiques.

La séparation des données et des traitements assure une longévité au modèle. En


effet, l'agencement des données n'a pas à être souvent remanié, tandis que les traitements le
sont plus quotidien. La méthode MERISE date de 1978-1979, et fait suite à une consultation
nationale lancée en 1977 par le ministère de l'Industrie dans le but de choisir des sociétés de
conseil en informatique afin de définir une méthode de conception de systèmes d'information.
Les deux principales sociétés ayant mis au point cette méthode sont le CTI (Centre Technique
d'Informatique) chargé de gérer le projet, et le CETE (Centre d'Etudes Techniques de
l'Equipement) implanté à Aix-en-Provence

Pour aider le concepteur dans leurtâche, la méthode Merise propose un ensemble de


formalismes et de règles destinées à modéliser de manière indépendante les données et les
traitements du système d’information. Ces modèles ne sont qu’une base de réflexion pour le
concepteur et un moyen de communication entre les divers acteurs du système d’information.
Seule la validation de l'ensemble se fera en commun.

31
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Parmi les informations qui appartiennent au système d’information, certaines doivent ou


peuvent faire l’objet d’un traitement automatisé grâce aux outils informatiques. Pour assurer
la cohérence du système d’information, la méthode Merise propose une démarche
d’informatisation comportant les étapes suivantes :

 Le schéma directeur :

Dont le rôle est de définir, de manière globale, la politique d’organisation et d’automatisation


du système d’information. Pour ce faire, il est nécessaire de répertorier l’ensemble des
applications informatiques existantes à modifier et à développer. Pour rendre contrôlable et
modulable ce développement, il est nécessaire de découper le système d’information en sous-
ensembles homogènes et relativement indépendant. Ces sous-ensembles sont appelés
domaines. Par exemple, on peut trouver le domaine « Approvisionnement », le domaine «
Personnel ». Les résultats attendus à la fin de cette étape sont une définition précise des
domaines, une planification du développement de chaque domaine et un plan détaillé, année
par année, des applications qui doivent être réalisées.

 L’étude préalable par domaine :

Qui doit aboutir à une présentation générale du futur système de gestion (modèles des
données et des traitements) en indiquant les principales novations par rapport au système
actuel, les moyens matériels à mettre en œuvre, les bilans coût – avantage. Cette étude est
réalisée en 4 phases :

 une phase de recueil qui a pour objectif d’analyser l’existant afin de cerner les
dysfonctionnements et les obsolescences les plus frappantes du système actuel.
 une phase de conception qui a pour objectif de formaliser et hiérarchiser les
orientations nouvelles en fonction des critiques formulées sur le système actuel
et d’autre part des politiques et des objectifs de la direction générale. Cela
revient à modéliser le futur système avec une vue pertinente de l'ensemble.
 une phase d’organisation dont l’objectif est de définir le système futur au
niveau organisationnel: qui fait quoi ?
 une phase d’appréciation dont le rôle est d’établir les coûts et les délais des
solutions définies ainsi que d’organiser la mise en œuvre de la réalisation. A cet
effet un découpage en projets est effectué.

32
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 L’étude détaillée

Par projet qui consiste d’une part à affiner les solutions conçues lors de l’étude préalable et
d’autre part à rédiger, pour chaque procédure à mettre en œuvre, un dossier de spécifications
détaillé décrivant les supports (maquettes d’états ou d’écran) ainsi que les algorithmes
associés aux règles de gestion… A l’issue de cette étude, il est possible de définir le cahier
des charges utilisateurs qui constitue la base de l’engagement que prend le concepteur vis à
vis des utilisateurs. Le fonctionnement détaillé du futur système, du point de vue de
l’utilisateur, y est entièrement spécifié.

 La réalisation dont l’objectif

Est l’obtention des programmes fonctionnant sur un jeu d’essais approuvés par les utilisateurs.

 la mise en œuvre

Qui se traduit par un changement de responsabilité : l’équipe de réalisation va en effet


transférer la responsabilité du produit à l’utilisateur. Cette étape intègre en particulier la
formation des utilisateurs. Après une période d’exploitation de quelques mois, la recette
définitive de l’application est prononcée.

 La maintenance

Elle consiste à faire évoluer les applications en fonction des besoins des utilisateurs, de
l’environnement et des progrès technologiques.

2. Cycle d’abstraction de conception des systèmes d’information

La conception du système d'information se fait par étapes, afin d'aboutir à un système


d'information fonctionnel reflétant une réalité physique. Il s'agit donc de valider une à une
chacune des étapes en prenant en compte les résultats de la phase précédente. D'autre part, les
données étant séparées des traitements, il faut vérifier la concordance entre données et
traitements afin de vérifier que toutes les données nécessaires aux traitements sont présentes
et qu'il n'y a pas de données superflues.

33
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Schéma du cycle d’abstraction

Système d’information manuel

Expression des Besoins

Modèle Conceptuel

Cycle d’abstraction pour la conception de


Système d’Information
Modèle Physique

Modèle Logique

Système d’information automatisé

L'expression des besoins est une étape consistant à définir ce que l'on attend du système
d'information automatisé, il faut pour cela :

 faire l'inventaire des éléments nécessaires au système d'information

 délimiter le système en s'informant auprès des futurs utilisateurs


Cela va permettre de créer le MCC (Modèle conceptuel de la communication) qui définit les
flux d'informations à prendre en compte.La première étape de ce modèle est d'arriver à isoler
le système en le délimitant. Il s'agit donc de définir le système et les éléments externes avec
lesquels il échange des flux d'information. Ces éléments extérieurs sont appelés acteurs
externes (ou partenaires).
L'étape suivante consiste à mettre au point le MCD (Modèle conceptuel des données)qui a
pour but d'écrire de façon formelle les données qui seront utilisées par le système
d'information. Il s'agit donc d'une représentation des données, facilement compréhensible,
permettant de décrire le système d'information à l'aide d'entités . Le modèle logique (MLD)
représente un choix logiciel pour le système d'information.Ce dernier consiste à décrire la
structure de données utilisée sans faire référence à un langage de programmation. Il s'agit

34
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

donc de préciser le type de données utilisées lors des traitements.Le modèle


physique(MPD)reflète un choix matériel pour le système d'information. Cette étape consiste
à implémenter le modèle dans le SGBD, c'est-à-dire le traduire dans un langage de définition
de données.Le langage généralement utilisé pour ce type d'opération est le SQL, et plus
spécialement le langage de définition de données du SQL.Dictionnaire de Données (DD)

3. Modèle Conceptuel de Communication (MCC)

Modèle de représentation schématique faisant apparaitre les différents intervenants (acteurs


internes ou externes) du système étudié. Le MCC recherche les acteurs impliqué dans le
système d’information qui peuvent être externes à l’organisation, internes mais hors du champ
d’étude ou dans le champ d’étude ainsi que le flux entre les acteurs.

Il permet aussi de définir le domaine de gestion sur lequel on doit travailler et


d’appréhender le fonctionnement de la gestion. Pour cela, avant de représenter notre
diagramme de flux, il va falloir définir certain concept de base.

 Le Diagramme de flux : est un échange de bien d’argent, d’information entre les


acteurs émetteurs et récepteurs d’un domaine d’étude.

 Acteur : toute personne (physique, morale et service) qui joue un rôle dans le
transit d’information et produit un flux.

 Le Formalisme

1
Acteur Acteur
Externe Interne

35
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

4. Modèle Conceptuel de Traitement (MCT)


Le modèle conceptuel des traitements permet de traiter la dynamique du système
d'information, c'est-à-dire les opérations qui sont réalisées en fonction d'événements.

Ce modèle permet donc de représenter de façon schématique l'activité d'un système


d'information sans faire référence à des choix organisationnels ou des moyens d'exécution,
c'est-à-dire qu'il permet de définir simplement ce qui doit être fait, mais il ne dit pas quand,
comment ni où...

Voici les éléments qui composent ce dernier. Nous avons :

 les Evènements :Un événement représente un changement dans l'univers extérieur au


système d'information, ou dans le système d'information lui-même.

 un événement externe est un changement de l'univers extérieur


 un événement interne est un changement interne au système d'information

On représente un événement par une ellipse en trait plein pour les événements internes
à l'organisation, en trait pointillé pour les événements externes.

Evènement Evènement
Interne Externe

 définition d’un processus : Un processus est un sous-ensemble de l'activité de


l'entreprise, cela signifie que l'activité de l'entreprise est constituée d'un ensemble de
processus. Un processus est lui-même composé de traitements regroupés en ensembles
appelés opérations.
 Opération : Une opération est un ensemble d'actions exécutées par le système suite à
un événement, ou à une conjonction d'événements. Cet ensemble d'actions est
ininterruptible, c'est-à-dire que les événements ne sont pas pris en compte (ils ne sont
pas forcements ignorés pour autant) tant que l'opération n'a pas été accomplie.
 La Synchronisation : La synchronisation d'une opération définit une condition
booléenne sur les événements contributifs devant déclencher une opération. Il s'agit

36
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

donc de conditions au niveau des événements régies par une condition logique réalisée
grâce aux opérateurs:

 OU

 ET

 NON

 Voici le formalisme complet du MCT

Evènement Evènement
1 2

Synchronisation

Opération
Action 1
Règle d’émission 1 Action 2
… Règle d’émission 2

Evènement Evènement
Rés ultat 1 Rés ultat 2

37
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

5. Le Dictionnaire de données
Ce dernier nous présente l’ensemble des données (Propriétés) qui seront manipulées dans la
future base de données. Il permet de recenser les informations nécessaires. Il met l’accent sur
le numéro (Num), la rubrique qui montre le nom de chaque champ, la désignation de chaque
rubrique, le type de données que doit contenir la rubrique, l’observation qui donne quelques
détails sur les données. Dans le cadre de notre projet, après épuration des synonymes et
polysémie.

6. modèle Conceptuel de Données (MCD)

La Modélisation des données, au niveau conceptuel, vise essentiellement à présenter les


données de l’ensemble des prénommés pris en compte dans les systèmes d’informations par
des classes d’objet et les relations, sans tenir compte des aspects techniques de stockage de
l’accès. Elle a pour finalité d’étudier les données et les liens entre ces données, puis de
proposer une représentation schématique, définissant avec précision les objets qui traduisent
aux mieux l’activité de l’organisation à laquelle on s’intéresse. Afin d’atteindre les objectifs
assignés, on a utilisé des concepts suffisamment variés de sens et d’outils pour la mise en
œuvre de ce projet. Les concepts utilises pour le formalisme sont :

 Entité : cette dernière se définit comme un groupe d’objet parfaitement identifiable du


système, pourvu d’une existence propre et conforme aux choix de gestions de
l’organisation ;
 Propriété : la propriété est une information élémentaire. Elle peut être calculée ou
concaténée. C’est le composant élémentaire d’une entité. Une propriété soulignée est
appelée identifiant.
 Identifiant : une propriété particulière qui permet d’identifier une occurrence d’entité
des autres sans ambiguïté.
 Association : une association permet de représenter les liens entre le système, en
fonction d’un certain contexte. Elle est aussi un objet du système généralement
dépourvu d’existence propre, c’est-a-dire qu’elle n’existe que par rapport aux objets
qu’elle lie. On parlera aussi de relations dites abstraites ; celle qui traduisent
simplement un lien mais ne peuvent être décrites ; et des relations dites concrètes ;
descriptibles à l’aide d’un certain nombre de propriété.

38
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 Cardinalité (min, max) : quand à celle-ci, elle indique le nombre minimum ou


maximum (n, m) de fois qu’une occurrence de l’objet participe aux occurrences des
autres entités
 Agrégation des entités et associations
 Voici le formalisme du MCD

Libellé Libellé

Propriété 1 Propriété 1
Propriété 2 (N; M) (N; M) Propriété 2
… Relation …
… …
Propriétés N Propriétés N

Entité A Entité B

7. Modèle Logique de Données (MLD)

Apres avoir mis en place le modèle Conceptuel de Communication (MCC) ensuite le


Dictionnaire de données (DD) ainsi que le modèle Conceptuel de Données (MCD), la
quatrième phase (le modèle Logique de Données) permet de décrire les enregistrements
logiques et d’avoir une idée sur la structure physique des données grâce aux estimations faites
à partir des volumes d’enregistrement.

Ainsi nous avons choisi d’implémenter notre système d’information sur le modèle du type
base de données relationnelle, nous sommes censés de transcrire le MCD en MLD.

A ce stade, on présente les concepts suivants pour formaliser le système d’information,

Attribut : c’est le plus petit élément manipulable par le concepteur ; décrit par un nom
d’attribut, prenant des valeurs dans un domaine ayant un sens dans le système d’information
d’étudie.

Relation : c’est la liaison entre une ou plusieurs entités.

Clé étrangère : l’attribut qui n’est pas la clé primaire dans cette relation mais qui l’est dans
une autre.

39
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Contrainte d’intégrité : Ensemble des règles de cohérence des valeurs prises par les attributs
et les clés.

7.1. Traduction du modèle Conceptuel de Données (MCD) en modèle


Logique de Données (MLD)

Le passage du MCD en MLD au niveau des classes de relation se fait en fonction des classes
entités participant à la relation. Ainsi le modèle Logique de Données de notre système se
présente de la manière suivante :

8. modèle Physique de Données (MPD)

Il a pour utilité de choisir et d’implémenter le modèle dans le SGBD (Système de Gestion de


Base de Données), c’est-à-dire le traduire dans un langage de définition de la base de données.
Il décrit aussi les différentes tables qui seront créées dans la base de données.

9. Choix du système d’exploitation : Linux

Linux est préférable qu’autres systèmes concurrents comme Mac OS, Microsoft Windows.
C’est un système libre qui s’est très vite imposé en informatique en raison des multiples
avantages qu’il offre entre autre sa stabilité, son efficacité, dans la maintenance des
applications et sa sécurité. Dans le cadre du projet, la distribution Linux Ubuntu a été choisie,
en raison de la documentation à notre portée sur l’utilisation de la passerelle Kannel et la
mise en place d’une plateforme de Websms.

10.Choix des outils de développement


10.1. SGBD(MYSQL)

Pour mettre en place notre application, nous choisissons le SGBD MySQL. C’est un serveur
de base de données SQL très rapide, multithreads, multi-utilisateurs et robuste. Le serveur
MySQL est destiné aux missions stratégiques aux systèmes de production à forte charge, ainsi
qu’à l’intégration dans des logiciels déployés à grande échelle. MySQL est une marque
déposée de MySQL AB.

40
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Le logiciel dispose de deux licences. Les utilisateurs peuvent choisir entre MySQL comme
open Source/ logiciel libre, sous les termes de la licence GNU General Public License
(http://www.gnu.org/licenses/) ou bien, ils peuvent acheter une licence commerciale auprès de
MYSQL AB.

MySQL est un système de gestion de bases de données. Une base de donnes est un ensemble
organise de données. Cela peut aller d’une simple liste de course au supermarché a une galerie
de photos, ou encore les grands systèmes d’informations multinationales. Pour ajouter, lire et
traiter des données dans une base de données tel que le serveur MySQL. Comme de gestion
de bases de données joue un Rolle central en informatique, aussi bien en tant qu’application a
part entière, qu’intègre dans d’autres logiciels.

10.2. Le langage de programmation PHP

PHP (abréviation de personal Home Page ou HyperText Preprocessor), est un langage de


script qui s’intègre aux pages html et qui permet de réaliser des pages dynamiques. Nous
portons le choix sur ce langage, par rapport à sa portabilité, il est adaptable a plusieurs
environnement systèmes Windows, Linux Mac OS, etc.

 Il s’exécute sur le serveur et permet d’accéder facilement aux bases de données ;


 C’est un produit « Open Source » c’est-à-dire que le code est accessible à tout
développeur.
 Il est produit, combiné au système d’exploitation Linux, au Serveur Apache et à la
base de données MySQL (eux-mêmes gratuits), il permet de créer des applications a
des couts très réduits.

10.3. Le JavaScript

JavaScript est défini comme Le langage de programmation de scripts orienté objet.Ses scripts
sont majoritairement interprétés. Et quand on dit que le JavaScript est un langage de scripts,
cela signifie qu'il s'agit d'un langage interprété ! Il est donc nécessaire de posséder un

41
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

interpréteur pour faire fonctionner du code JavaScript, et un interpréteur, nous en utilisons un


fréquemment : il est inclus dans notre navigateur Web !

10.4. Le HTML

Le HTML (HyperText MarkupLanguage) est un format de présentation de données


permettant de créer des pages web pouvant être lues dans des navigateurs. C'est un
langage de description de données, et non un langage de programmation. Il est figé c'est-à-
dire qu'une fois le document chargé dans le navigateur, il ne répond à aucune action de
l'utilisateur sur le contenu de la page. Ce langage est pourvu d'un système de balisage qui
va permettre de structurer notre document.

10.5. Cascading StyleSheet

Le concept de feuilles de style est apparu en 1996 avec la publication par le W3C d'une
nouvelle recommandation intitulée « CascadingStyleSheets » (feuilles de style en
cascade), notée CSS.

Le principe des feuilles de style consiste à regrouper dans un même document des
caractéristiques de mise en forme associées à des groupes d'éléments. Il suffit de définir
par un nom un ensemble de définitions et de caractéristiques de mise en forme, et de
l'appeler pour l'appliquer à un texte. Il est ainsi possible de créer un groupe de titres en
police Arial, de couleur verte et en italique.

42
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

10.6. Bootstrap

Bootstrap est un Framework qui rend la vie plus facile dans la créationde l'architecture
d'une page web ou une application informatique. Mais Bootstrap va bien plus loin
qu'offrir du code CSS déjà bien organisé et structuré. Il offre aussi des plugins JQueryde
qualité pour enrichir une page.Aux préalables :

 La base indispensable est de posséder de bonnes notions en HTML et CSS.


 Pour comprendre la mise en œuvre des plugins JQuery, de besoin des quelques
bases dans ce domaine.

10.7. Serveur Web : apache (http)

Le serveur http apache jouit d’une notoriété indiscutable dans le monde d’internet. D’après la
société Netcraft qui étudie chaque mois les parts de marché des différents types de serveurs
web, apache domine largement ses concurrents avec une utilisation sur plus de 60% des
serveurs http publics dans le monde. Ce succès est non seulement dû à sa gratuité, mais
également à sa robustesse et a son extensibilité

Architecture Client-serveur Trois tiers

43
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

IMPLEMENTATION

44
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

VI. Mise en Œuvre de notre application

1. Modélisations de la Base de Données

1.1. Modèle Conceptuel de Communication (MCC)

Employer

4
8
5 1
9

Client Banque

3
Système

7 2
6

Serveur
Base de Données

45
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

1.) le client charge les informations de la carte disponible dans le système ;


2.) le système sauvegarde ces informations dans la base de données ;
3.) le système envois une alerte sur le téléphone du client ;
4.) le client se présenteà l’agence devant l’employer chargé de la distribution de ces
cartes ;
5.) le client vérifie si la carte est belle et bien pour le client en interrogeant le système ;
6.) le système interroge la base de données ;
7.) la base de données donne les informations nécessaires au système;
8.) le système met les informations au service de l’employer ;
9.) et l’employer délivre la carte au client.

46
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

1.2. Le Modèle Conceptuel de Traitement

Employé

. Chargement des
informations dans le
système

Non ok ok

L’employé vérifie les Envois d’alerte


données au client

. Présentation du client a
la banque avec les
informations reçus
. Vérification des
informations du client

Carte disponible

Chargements des
Le client retire la
adresses du client dans le
carte
système

47
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

1.3. Le Dictionnaire de Données

Rubrique Désignation Type Taille Entité Observation


Id_client Identifiant client N 11 Client Obligatoire
Nom Nom client AN 60 Client Obligatoire
Prenom Prénom Client AN 70 Client Obligatoire
Adresse Adresse du client AN 50 Client Obligatoire
Telephone Telephone client N 20 Client Obligatoire
Id_carte Identifiant carte N 11 Carte Obligatoire
Numero_carte Numéro carte AN 50 Carte Obligatoire
Statut Statut carte AN 20 Carte Obligatoire
Dates Dates enregistrement AN 20 carte Obligatoire
Id_emp Identifiant de l’employer N 11 Employer Obligatoire
Nom Nom employer AN 60 Employer Obligatoire
Prenom Prenomemployer AN 70 Employer Obligatoire
Fonction Fonction employer AN 50 Employer Obligatoire
Login Pseudo employer AN 50 Employer Obligatoire
password Mot de passe de connexion AN 50 Employer Obligatoire
Role Niveau des droits AN 50 Employer Obligatoire
Token Pour réinitialisation MP booléen 2 Employer Obligatoire
Id_cart Id type carte N 11 Type_carte Obligatoire
Lib_carte Type carte AN 60 Type_carte Obligatoire

48
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

1.4. modèle Conceptuel de Données (MCD)

1.4.1. Règle de Gestion


R1 :Un et Un seul client disposed’un ou plusieurs types de carte Ecobank ;

R2 : Un ou plusieurs employer peuvent faire disposer avoir une carte a un client.

R3 : Une carte a un ou plusieurs types de carte


R4 : Un type de carte a plusieurs carte

1.5. modèle Logique de Données (MLD)

Le passage du MCD en MLD au niveau des classes de relation se fait en fonction des classes
entités participant à la relation. Ainsi le modèle Logique de Données de notre système se
présente de la manière suivante :

Client : (id_client, Nom, Prenom,adresse,Telephone) ;

Carte : (id_carte, numero_carte,dates) ;

49
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Employer : (id_emp, nom, prenom, fonction, login, password, role, token) ;

Type_carte : (id_cart, Lib_carte).

1.6. modèle Physique de Données (MPD)

50
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

2. Description des tables

Nom de la Table : client


Clé Primaire: id
Longueur : 11

Nom du Champ Description Type Taille Obligatoire


id_client Numéro du client Numérique 11 Oui
Nom Nom client Texte 50 Oui
Prenom Prenom client Texte 50 Oui
adresse Numéro carte Numérique 16 Oui
téléphone Phone client Alphanumérique 20 Oui

Nom de la Table : carte


Clé primaire : id_carte
Longueur : 11

Nom du champ Description Type Taille Obligatoire


id_type Numéro du type carte Numérique 11 Oui
numero_carte numéro des cartes Numérique 50 Oui
Dates Dates et heures d’enregistrement Date Oui

51
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Nom de la Table : Employer


Clé primaire :id_emp
Longueur : 11
Nom du champ Description Type Taille Obligatoire
Num_Emp Numéro Employer Numérique 11 Oui
Nom Nom Employer Texte 60 Oui
Prenom Prenom Employer Texte 70 Oui
Fonction Poste Employer Texte 50 Oui
Login Pseudo Employer Texte 50 Oui
Password Mot de passe Texte 50 Oui
Role Niveau des droits Numérique 11 Oui
Token Pour réinitialiser MP Booléen 2 Oui

Nom de la Table : Type_carte


Clé primaire : id_cart
Longueur : 11
Nom du champ Description Type Taille Obligatoire
Id_cart Numéro carte Numérique 11 Oui
Lib_carte Type carte Texte 50 Oui

Nom de la Table : disposer


Clé primaire : id
Longueur : 11
Nom du Champ Description Type Taille Obligatoire
Id clé de la table Numérique 11 Oui
Id_client Cléétrangère de client Numérique 11 Oui
Id_carte Cléétrangère de la carte Numérique 11 Oui
Id_emp Cléétrangère de l’employer Numérique 11 Oui
Dates Dates et heures du retrait Dates Oui
images Pièce Scannée du Client texte 50 Oui

52
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

3. Les moyens utilisés pour la mise en place de l’application

Pour implémenter notre application, certaines conditions obligatoires s’imposent. Nous avons
besoin des équipements matériels et Logiciel. De ce fait pour mettre en place cette application
nous avons utilisés :

Un ordinateur de marque LENOVO T61 avec la capacité de supporter le système


d’exploitation Linux distribution 14.4après l’installation et la mise a jour de tous
paquets en place, nous avons déployés notre serveur WEB et KANNEL ;
Un modem GSM Huawei-E303
Une carte SIM de l’opérateur de téléphonie TELECEL.

53
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

4. Architecture de notre application

Index

Connexion

Administrateur
Employer

Accueil Accueil Gestion des contenus paramètres Déconnexion

Gestion des cartes Gestion des Employer

chargementles Cartes Créer Employer

Liste des Cartes retirées Lister les Employer

Liste des cartes Non Retirées Gérer les Services

Liste de toutes les cartes

Déconnexion

54
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

5. Installation et configuration des éléments de notre application


 Installation du serveur web

Pour permettre le fonctionnement de notre application sous l’environnement Linux, il est


nécessaire de déployer un serveur web. Dans le cadre de notre projet nous avons utilisé le
serveur web apache ou http voici la procédure d’installation

Figure 6 : installation du serveur apache

 Installation de la base de données

Apres l’installation du serveur apache nous installation notre base de données MySQL client
et serveur. Avec la commande :

#Apt-getinstall MySQL-client MySQL-server

 Installation des composants web

Ensuite nous installons les composants web pour permettre la gestion facile de notre
application web. Voici les composants de notre application : php5, gccxml, phpmyadmin

55
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 Installation du Modem

Dans le cadre de notre projet, le modem utilisé est le Huawei E303.Pour l’installer, nous
lançons le terminal, se connecter en tant qu’Administrateur, ensuite on installe les paquets en
tapant les commandes suivantes :

Pour vérifier si le système a bien reconnu notre modem, nous lançons sur le terminal la
commande suivante : wvdialconf

Apres l’installation de ces paquets, il faut nécessairement créer le fichier 62-option-


modemmodeswitch.rules pour faciliter la gestion du Modem. Dans le fichier, il suffit de
saisir le contenu en cour :

SUSBSYSTEM == « usb» ;

ATTR {idVendor} == « 12d1 »,

ATTR {idProduct} == « 14ac »,

RUN+= « lib/udev/modem- modes-swithc-x0%s{idVendor} –p 0x%s{idProduct}

 Installation de Kannel

La passerelle Kannel est installée par le biais de la commande qui suit :

Figure : 8 installation de la passerelle kannel

56
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

 Configuration du fichier kannel

Le fichier de configuration de kannel est structuré en groupe suivant les fonctions à assigner à
kannel. Chaque groupe comporte des variables et sont séparés par des lignes vides. Pour
configurer kannel comme passerelle SMS, nous devons éditer le fichier kannel.conf situé
dans le répertoire /etc/kannel par la commande suivante :

#gedit /etc/kannel/kannel.conf

Dans notre cas, le fichier de configuration kannel.conf est constitué de groupe core, smsbox,
smsc, modems et sendsms-user. Voici notre configuration de Kannel

Ø Fichier de configuration de kannel : /etc/kannel/kannel.conf

#Core Kannel Configuration Section

group = core

admin-port = 13000

admin-password = kannel

status-password = kannel

admin-allow-ip = "*.*.*.*"

smsbox-port = 13002

log-file = "/var/log/kannel/bearerbox.log"

access-log = "/var/log/kannel/beare rbox-access.log"

log-level = 0

unified-prefix = "00236,+236,00"

#Smsbox

group = smsbox

bearerbox-host = localhost

sendsms-port = 14000

sendsms-url = "/cgi-bin/sendsms"

57
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

sendsms-chars = "0123456789+-"

global-sender = 14000

log-level = 0

log-file = "/var/log/kannel/smsbox.log"

access-log = "/var/log/kannel/smsbox-access.log"

#Smsc

group = smsc

smsc = at

smsc-id = Huawei-E303

modemtype = huawei_e303

device = /dev/ttyUSB0

host = localhost

sms-center = +23675500000

my-number = +23675529380

keepalive = 10

speed = 9600

sim-buffering = true

#Modems

group = modems

id = huawei_e303

name = "huawei E303"

detect-string = "Huawei"

init-string ="AT+CNMI=2,1,2,2,0"

message-storage = "SM"

speed = 9600

58
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

#Sendsms

group = sendsms-user

username = kannel

password = kannel

forced-smsc = huawei-E303

user-allow-ip = "*.*.*.*"

max-messages = 3

concatenation = true

admin-port : est le port ou kannel écoute pour les commandes d'administration

admin-password : mot de passe pour l'administration de kannel, il est privé.

status-password : mot de passe pour la visualisation de la configuration

log-file : est le chemin vers le fichier qui contient les informations de fonctionnement (ou
disfonctionnement) des applications respectives smsbox et bearerbox. Leurs emplacements
sont définis dans les CORE et SMSBOX.

access-log : journalise les connexions à l'interface avec les paramètres envoyés

Pour démarrer kannel il faut agir comme suit :

#bearebox-v 0 /etc/kannel/kannel.conf

Si dans le contenu du terminal il y a une ligne du genre « AT SMSC successfullyopened »,


c'est que kannel fonctionne normalement.

Démarrer ensuite le smsbox :

59
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

#smsbox-v 0 /etc/kannel/kannel.conf

 Tests de kannel

Le test se fait en envoyant un message via le navigateur : http://localhost:14000/cgi-


bin/sendsms?user=kannel&pass=kannel&to=72160180&text=bravo+la+configuration

Le navigateur affiche le résultat suivant:

0 :accepted for delivery

Cela signifie tout simplement que kannel a bien reçu la requête et a délivré le message avec
succès.

Création d'un certificat auto-signé pour le serveur Apache

Afin de pouvoir utiliser une connexion SSL, il est nécessaire d'avoir un certificat signé qui
peut coûter très cher. Dans notre cas nous allons créer un certificat auto-signé, considéré
comme non sûr par les navigateurs mais suffisant pour obtenir une connexion SSL au serveur.

On va créer le certificat nécessaire dans le répertoire /etc/apache2/ssl

#make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

Il faut alors répondre à une question demandant le nom d'hôte du serveur.

Notre certificat se trouve donc à l'emplacement /etc/apache2/ssl/apache.pem.

Configuration spécifique d'apache

Dans un premier temps il est nécessaire que le serveur apache écoute sur le port 443. Pour
cela il suffit d'éditer le fichier /etc/apache2/ports.conf et vérifier que la ligne « Listen 443 » y
soit présente. La meilleure manière de l'intégrer est de l'écrire de la sorte :

<IfModulemod_ssl.c>

Listen 443

</IfModule>

60
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Ainsi, lors de la désactivation (volontaire ou non) du module SSL d'Apache, la configuration


restera correcte et ne plantera pas le serveur. Dans un second temps il est nécessaire de créer
un VirtualHost Apache prenant en compte notre certificat SSL. Debian et Ubuntu en fournisse
un par défaut (/etc/apache2/sites-available/default-ssl) que nous allons modifier pour tester.

#nano /etc/apache2/sites-available/default-ssl

Puis nous pouvons activer le module SSL pour Apache, le VirtualHost SSL et redémarrer
Apache :

#a2enmod ssl

#a2ensite default-ssl

#service apache2 restart

Il est ensuite possible de tester que cela fonctionne en allant à l'adresse : http://localhost:443
ou https://localhost

Le navigateur devrait spécifier que le certificat n'est pas considéré comme sûr mais nous
permettre de voir et d'accepter le certificat afin de pouvoir avoir accès à la page en question.

61
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

VII. Présentation des Ecrans de l’application


1. Espace de connexion
Cet espace permet aux employés de service clientèle de se connecter et de gérer les cartes.

2. Création du Profile d’un Employé


Cet espace donne le droit a l’Administrateur de créer un employé et lui donné des droits sur
l’application.

62
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

3. Liste des employés qui ont un profile sur l’application


Les employés crées dans l’application

4. Espace de chargement des cartes


Ce dernier donne l’accès aux employés de droit de niveau 1 de charger les cartes disponible et
en même temps d’envoyer des alertes sms aux propriétaires des cartes

63
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

5. Espace de délivrance des cartes


Ici cet espace permet aux employés du niveau 0 de délivrer la carte une fois que le client se
présente avec le message dont il a reçu.

6. Espace d’affichage de toutes les cartes Ecobank


A ce niveau, nous affichons toutes les cartes disponibles distribuées et non distribuées aux
propriétaires

64
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

7. Pages de statistique
La page statistique nous permet de voir les évolutions et le nombre de nos cartes celles qui
sont distribuées et non distribuées en fonction du type

65
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

Conclusion
Au terme de ce Mémoire, nous pouvons conclure que ce stage de fin d’études nous a donné
une occasionnécessaire 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 consolider
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 reçuà l’Institut Supérieur de
Technologie (IST).

Ce travail de conception et de développement d’une application de Gestion automatisée de


la disponibilité des cartes ECOBANK avec des alertes aux clients via KANNEL au long
du stage nous a été bénéfique sur plusieurs plans : il nous a permis de perfectionner nos
connaissances acquises en programmation, en conception et en administration système.

Du point de vue technique, ce projet nous a permis de nous adapter avec l’environnement de
développement informatique, de même il nous a permis de maîtriser la méthode
développement, des nouvelles technologies de programmation et approfondir notre
connaissance dans l’environnement Linux.

Au début de notre stage, nous avons consacré du temps pour l’étude et recenser les
fonctionnalités de notre application. L’étude analytique menée dans les détails nous a permis
de prévoir puis contourner les problèmes rencontrés. Et tout au long du développement, nous
avons concentré sur les nouvelles technologies utilisés et les techniques de programmation
appliquées. Durant l’élaboration du projet, nous avons rencontré plusieurs difficultés tant au
niveau conceptuel qu’au niveau de la réalisation. Tout de même, nous avons réussi à les
surpasser pour présenter en fin de compte une application opérationnelle.

Comme perspective, nous espérons voir notre application évoluer par une étape,
d’approfondir le volet développement avec des services distribués ;permettre un accès distant
via un réseau VPN afin de rendre encore notre application plus intéressante. Nous
comptonsenfin que le travail que nous avons effectué a été à la hauteur de la confiance qui
nous a été donnée.

66
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »
Mémoire de Fin de Cycle pour l’obtention de la Licence Professionnelle en Informatique rédigé par
Chadrack Le-Prince GBEGBE

67
Thème : « La Gestion automatisée de la disponibilité des cartes Ecobank avec des alertes au client
via Kannel »

Vous aimerez peut-être aussi