Académique Documents
Professionnel Documents
Culture Documents
Memoire MANEH Edemagnon Mathieu
Memoire MANEH Edemagnon Mathieu
N° d’ordre : 2022/GL-014
MEMOIRE DE FIN DE FORMATION
Pour l’obtention du diplôme de
LICENCE PROFESSIONNELLE
Thème
Mention : Informatique
Je dédie ce mémoire à ma mère Mme EGBENOU Amèvi, à mon père Mr MANEH Komlan, et à
ma grande mère Mme KOBANA Massan.
REMERCIEMENTS
Nous remercions notre Dieu Tout-Puissant qui par sa grâce et sa bonté nous a donné la santé et la
vie durant toute notre formation.
Nous exprimons notre gratitude à :
➢ Dr. Kossi ATCHONOUGLO (MC), Directeur du CIC pour tous les efforts qu’il déploie
pour ce centre ;
➢ Dr. Tchamye Tcha-Esso BOROZE (MC) : Directeur-adjoint du CIC/UL chargé des
études, non seulement pour son dévouement pour la cause estudiantine ou encore sa culture
de l’excellence et pour toutes ses efforts pour l’amélioration de notre cadre de formation ;
➢ Dr. Kossi TEPE (MA) : Directeur adjoint chargé de la division maintenance informatique
au CIC/UL, pour la rigueur qu’il déploie dans notre formation et pour ses bons conseils ;
➢ Mme Grâce D. A. AMOUZOU, notre Directrice de mémoire pour son accompagnement,
son attention, et ses précieux conseils au cours de l’implémentation du projet et de la
rédaction du document de mémoire et aussi pour ses expériences qu’elle à partager avec
nous en tant qu’enseignante chercheur au CIC/UL.
➢ M. Koffi AGBAKOU, notre maître de stage qui par son savoir-faire, son expérience et sa
patience nous a guidé, conseillé, soutenu durant notre stage et dans l’accomplissement des
différentes tâches qui nous ont été assignées ;
➢ M. Koffi ADJEVI, Directeur Générale de CAPFIND SAS, pour nous avoir accepté au
sein de son entreprise, et pour ses précieux conseils, ses encouragements, son soutien
morale et financier ;
➢ M. Yaovi HOETOWOU, Enseignant chercheur au CIC/UL, qui par son esprit d’analyse
et son savoir-faire, nous a guidé au cours de notre formation pour la réalisation du projet
tutoré.
➢ M. Anani ATADEGNON, Responsable de la division Développement et Enseignant au
CIC, pour la transmission de ses connaissances et le partage de son expérience ;
➢ M. Folly AKAKPO, pour ses nombreux conseils, pour nous avoir poussé, à toutes les
occasions, à toujours donner le meilleur de nous ;
➢ M. Essowèdew Elie DANIGUE, Collègue de stage, qui a géré la mise de l’architecture
réseau de la zone wifi avec qui nous avons partagé les bons moments et les moments
difficiles de la réalisation de ce projet ;
➢ Tout le personnel de CAPFIND SARL TOGO, pour son accueil ;
➢ Notre famille et nos amis qui ont occupé et occupent encore une partie non négligeable de
notre vie tout au long de notre formation ;
➢ Nos camarades du CIC qui nous ont soutenu et avec qui nous formons une famille.
RESUME
Internet est né vers les années 60 et a connu un essor fulgurant au cours des dernières décennies.
En effet, son premier rôle consistait à aider les usagers du web à communiquer plus facilement
entre eux malgré la distance. Cependant aujourd’hui, il est utile non seulement dans le domaine de
la communication, mais aussi dans celui de l’aviation, de la robotique, de la médecine, du
commerce, des sciences, de l'éducation et de l’aéronautique pour ne citer que ceux-là. Ainsi, afin
de permettre à la population ouest africaine et particulièrement togolaise d’avoir constamment
accès à une connexion internet de bon débit et à moindre coût, la startup CAPFIND SAS par sa
filiale CAPFIND TOGO SARL se propose de mettre en place une zone wifi élargie capable de
couvrir tout un pays, voire toute l’Afrique de l’ouest. C’est alors que le projet de :
« Développement et déploiement d’une plateforme de gestion et de commercialisation de zone
wifi » a été lancé par la startup dans le but développer une plateforme qui permettra la gestion et la
monétisation de la wifi zone ainsi mise en place. L’implémentation de ce projet nous a été confiée
dans le cadre de notre stage de fin de cycle. La plateforme à mettre en place a également pour
objectifs de fournir un API piloté par l’application de l’entreprise pour effectuer la vente et l’achat
des forfaits wifi, faire communiquer la plateforme avec un serveur d’authentification radius pour
permettre aux utilisateurs du réseaux de se connecter automatiquement à tous les points d’accès de
la zone wifi de l’entreprise et celles de ses partenaires grâce à des comptes rechargeables avec des
identifiants uniques au détriment du système des tickets de connexions (communément appelé
voucher ) utilisé par la plupart des zones wifi actuelles . Après analyse, pour la conception de notre
plateforme nous avons opté le langage de modélisation UML pour la modélisation du projet, la
méthodologie Agile SCRUM pour l’implémentation du projet, et nous avons utilisé le Framework
LARAVEL du langage PHP pour le développement et MySQL comme Système de Gestion de
Base de Données.
ABSTRACT1
The Internet was born around the 1960s and has grown rapidly over the past few decades. Indeed,
its first role was to help web users communicate more easily with each other despite the distance.
However today, it is useful not only in the field of communication, but also in that of aviation,
robotics, medicine, commerce, science, education and aeronautics. cite only these. Thus, in order
to allow the West African and particularly Togolese population to have constant access to an
internet connection of good speed and at a lower cost, the startup CAPFIND SAS through its
subsidiary CAPFIND TOGO SARL proposes to set up an extended wifi zone. capable of covering
an entire country, or even all of West Africa. It was then that the project of: "Development and
deployment of a wifi zone management and marketing platform" was launched by the startup with
the aim of developing a platform that will allow the management and monetization of the wifi zone
as well as establishment. The implementation of this project was entrusted to us as part of our end-
of-cycle internship. The platform to be set up also aims to provide an API driven by the company's
application to carry out the sale and purchase of wifi packages, to communicate the platform with
a radius authentication server to allow users of the networks to automatically connect to all the
access points of the wifi zone of the company and those of its partners thanks to rechargeable
accounts with unique identifiers to the detriment of the system of connection tickets (commonly
called voucher) used by most current wifi zones. After analysis, for the design of our platform we
opted for the UML modeling language for the project modeling, the Agile SCRUM methodology
for the project implementation, and we used the LARAVEL Framework of the PHP language for
the development and MySQL as Database Management System.2
1
Générer sur google Traduction
SOMMAIRE
REMERCIEMENTS ....................................................................................................................... ii
RESUME ........................................................................................................................................ iii
ABSTRACT ....................................................................................................................................iv
SOMMAIRE .................................................................................................................................... v
LISTE DES TABLEAUX ............................................................................................................. vii
LISTE DES FIGURES ................................................................................................................. viii
LISTE DES PARTICIPANTS ......................................................................................................... x
GLOSSAIRE ...................................................................................................................................xi
INTRODUCTION ............................................................................................................................ 1
CHAPITRE 1 : PRESENTATION DES CADRES DE FORMATION ET DE STAGE ................ 3
1.1 Présentation du cadre de formation: CIC/UL [14] ........................................................... 4
1.2 Présentation du cadre de stage : CAPFIND SAS [15]...................................................... 6
CHAPITRE 2 : ETUDE PREALABLE DU PROJET ..................................................................... 9
2.1 Présentation du sujet ........................................................................................................ 10
2.2 Problématique .................................................................................................................. 10
2.3 Objectifs........................................................................................................................... 11
2.4 Résultats attendus ............................................................................................................ 11
2.5 Etude de l’existant ........................................................................................................... 11
2.6 Critique de l’existant ....................................................................................................... 14
2.7 Proposition de solutions................................................................................................... 16
2.8 Choix de la solution ......................................................................................................... 17
2.9 Spécification de la solution.............................................................................................. 17
2.10 Evaluations techniques des livrables ........................................................................... 17
2.11 Choix des livrables et architecture globale .................................................................. 20
2.12 Planning prévisionnel................................................................................................... 22
CHAPITRE 3 : ANALYSE ET CONCEPTION ........................................................................... 24
3.1 Présentation de la méthode d’analyse .............................................................................. 25
3.2 Présentation de l’outil de modélisation : Draw.io ........................................................... 27
GLOSSAIRE
API : est un acronyme pour Applications Programming Interface. Une API est une interface de
programmation qui permet de se "brancher" sur une application pour échanger des données.[1]
Plateforme : En informatique, une plateforme désigne un matériel ou un logiciel qui héberge une
application ou un service.[2]
Un réseau wifi : permet de relier par ondes radio plusieurs appareils informatiques (ordinateur,
routeur, smartphone, modem Internet, etc…) au sein d’un réseau informatique afin de permettre la
transmission de données entre eux.[3]
Zone wifi : un lieu à l’intérieur duquel un accès à internet sans fil est disponible grâce à un hotspot
(point d’accès) WiFi.[4]
Un système de gestion de base de données ou SGBD : est un logiciel système servant à stocker,
à manipuler ou gérer, et à partager des données 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.[5]
Un logiciel propriétaire : est un logiciel qui ne permet pas légalement ou techniquement, ou par
quelque autre moyen que ce soit, d'exercer simultanément les quatre libertés logicielles que sont
l'exécution du logiciel pour tout type d'utilisation, l'étude de son code source (et donc l'accès à ce
code source), la distribution de copies, ainsi que la modification du code source.[6]
RADIUS (Remote Authentication Dial-In User Service) : est un protocole client-serveur
permettant de centraliser des données d’authentification. Le fonctionnement du service RADIUS est
basé sur Protocole AAA et un système client/serveur qui va avoir pour rôle de définir les accès
d’utilisateurs distants à un réseau. Le client étant en générale un NAS.[7]
NAS : Un serveur d'accès au réseau (NAS) est un type de serveur qui fournit aux utilisateurs
connectés ou à distance un réseau externe plus large et / ou Internet.[8]
Le protocole AAA[9] : acronyme de : Authentication, Authorization, and Accounting, il fait
référence à 3 trois actions à savoir :
• Authentication : c’est le fait de reconnaître un utilisateur et de l’associer à un mot de
passe.
• Authorization : c’est l’action de laisser, ou d’interdire, un utilisateur d’accéder à certaines
ressources
• Accounting fait référence aux suivis de consommation d’un utilisateur : sur quel routeur il
s’est connecté ? Combien de temps s’est-il connecté ?
Le portail captif : C’est une technique consistant à forcer les clients HTTP d'un réseau de
consultation à afficher une page web spéciale (le plus souvent dans un but d'authentification) avant
d'accéder à Internet normalement.[10].
Un forfait wifi permet à un utilisateur de naviguer sur Internet avec un téléphone mobile, ou un
ordinateur selon des volumes horaires spécifiques alloués à ce dernier.
Un SDK : Software Development Kit, désigne un ensemble d'outils utilisés par les développeurs
pour le développement d'un logiciel destiné à une plateforme déterminée (Linux, Windows,
Android, etc.). On le traduit en français par kit de développement.[11]
Cloud : le terme « Cloud » est une forme abrégée de « Cloud Computing ». Un Cloud est constitué
de serveurs situés à distance et accessibles de n’importe où et à n’importe quel moment via une
connexion Internet sécurisée et protégée.[12]
Open source : signifie que le code source d'un logiciel est public et accessible. Le logiciel en
question peut alors être modifié et diffusé par n'importe quel individu. L’initiative open source
impose dix exigences pour la licence des logiciels open source. [13]
INTRODUCTION
La technologie est l’ensemble des inventions qui ont révolutionné le monde. Elle simplifie la vie
de tous les jours. En effet, la technologie est partout : à la maison, au bureau, au marché, dans les
rues et plus encore. Toutes les inventions technologiques ont pour principal objectif de réduire
l’effort humain. À part la vie quotidienne, la technologie joue aussi un rôle important dans
beaucoup de domaine à savoir l’agronomie, l’éducation, la santé etc..[15]
Internet est l’une des nouvelles technologies les plus connues dans le monde actuel et il est
accessible à presque tout le monde. C’est à la fois un moyen de communication et d’information.
Grâce à ce dernier, vous pouvez être informé du reste du monde et découvrir de nouvelles cultures.
Sur internet, vous pouvez gagner de l’argent facilement. En effet, vous pouvez faire des activités
rémunérées, comme : la lecture des mails, les sondages, les vidéos YouTube et plus encore ; ce qui
permet à certains jeunes qui n’ont pas de travail d’avoir des revenus. En plus il est aussi un excellent
outil éducatif.[15]
De nos jours, l’influence de l’internet est très indispensable et contribue activement à l’avancée du
monde tel qu’on le connaît, et également dans l’épanouissement des personnes [1].
Malheureusement, l’Afrique a un faible taux de pénétration ou d’utilisation de l’internet mobile
(un taux de 28% pour l’Afrique subsaharienne), dû à la cherté du smartphone (GSMA) [2] et aussi
la cherté des données mobiles, qui coûtent plus de 50 $(soit plus de 29435 FCFA) pour 1Go dans
certains pays [3]. Notre pays le Togo n’est pas non plus exclu de cette situation car il est classé
parmi les pays les plus chers de l'UEMOA selon l’ARCEP, ses prix de forfaits voix et data sont 25
fois plus chers que le meilleur prix pratiqué dans l’UEMOA [4].
Au regard de tout ce qui précède, l’accès à une connexion internet au quotidien de nos jours s’avère
primordial et très important. Dans la perspective de faciliter l’accès à la connexion internet aux
populations africaines et togolaises, la startup CAPFIND SAS par sa filiale CAPFIND TOGO
SARL se propose de mettre en place une plusieurs zones wifi interconnectées formant ainsi une
zone wifi élargie, qui permettra non seulement d’avoir constamment accès à une connexion internet
et ce à moindre coût, mais également la possibilité de se connecter au réseau wifi peu importe notre
localisation.
Afin d’assurer la commercialisation ou la monétarisation de la zone wifi, la gestion des
équipements de la zone wifi (s’assurer du bon fonctionnement des équipements, voir les statistiques
des temps de connexion et de nombres de personnes connectées par équipement etc…) CAPFIND
SAS décide de mettre en place un projet de : « Développement et déploiement d’une plateforme
de gestion et de commercialisation de zone wifi ».
La réalisation du projet nous a été confiée dans le cadre de nos stages de fin de formation pour
l’obtention d’une licence professionnelle en Génie Logiciel au Centre Informatique et de Calcul de
l’Université de Lomé.
Ce document présente un résumé des travaux effectués au cours de notre période de stage. Il
s’articule essentiellement autour de quatre (04) principaux chapitres à savoir :
• Étude préalable ;
• L’analyse et la conception ;
• La réalisation et la mise en œuvre du projet.
1.1.2 Objectifs
Le Centre Informatique et de Calcul en plus de sa fonction de formation des étudiants doit assurer
pour le compte des institutions de l’Université Lomé :
réalisation des différentes études nécessaires à l’informatisation de toutes les entités de l’Université
de Lomé en collaboration avec les autres divisions.
CAPFIND TOGO SARL est là filiale togolaise de CAPFIND SAS, une start-up basée à Lyon en
France. Elle a été incubée par 1KUBATOR. La société promeut un réseau social qui se distingue
en connectant automatiquement et à moindre coût ses utilisateurs à internet sur ses zones wifi et
celles de ses partenaires dans les agglomérations ouest africaine. Ces derniers peuvent également
se faire des revenus supplémentaires en acceptant le transport de personnes ou de colis dans leur
ville ; Voyagez de ville en ville à moindre coût en réservant un covoiturage. Y réserver leurs tickets
de bus intra-urbains. Ses utilisateurs pourront également effectuer leur paiement en boutique ou
virements d'argent à leur proche simplement et en toute sécurité depuis l'appli.
Les plateformes de CAPFIND sont ouvertes à toutes personnes désireuses de devenir partenaire en
souscrivant à une ligne internet à mettre à la disposition du réseau de points d'accès internet et
augmenter leurs revenus mensuels.
1.2.2 Objectif
L’objectif principal est de fournir aux africains une alternative pouvant leur permettre d’accéder à
moindre coût à internet et de profiter des ressources primordiales de l’internet à travers une et une
seule plateforme
• Le directeur Technique : Il a pour mission de gérer les opérations et les aspects techniques
de la startup , il gère également les moyens et ressources techniques disponibles. Il est
chargé de coordonner les départements chargés du déploiement et l’optimisation du réseau
wifi , du développement de l’application mobile , du développement des plateformes SAS ;
• Le gestionnaire des relations avec les investisseurs : Il s’assure d’établir de très bonnes
relations avec les investisseurs, il assure également les échanges des d’informations et
données nécessaires avec ces derniers.
• Le département chargé du déploiement et l’optimisation du réseau wifi : Ce
département prend en charge le déploiement des zones wifi, l’optimisation de ces zones
wifi, s’assure du bon fonctionnement des équipements et point d’accès du réseau. Il
s’occupe de la sécurité du réseau wifi.
• Le département chargé du développement de l’application mobile : Ce département
s’occupe du développement de l’application mobile de la startup, de l’optimisation de ses
fonctionnalités et s’assure également des mises à jour régulières et de la sécurisation de
cette dernière.
• Le département chargé du développement des plateformes SAAS : Il s’occupe du
développement des plateformes SAS (Software Access Service), plateformes qui offrent
d’autres services à la startup mais aussi à des personnes et entreprises externes à la startup
sous forme de prestation de service, Il assure également la maintenance et la veille
sécuritaire de ces plateformes.
• Le département du marketing et communication : Son rôle est d’assurer le marketing
et la communication autour des produits de la startup ;
• Le bureau des filiales : Il se charge de la gestion des filiales de la startup.
Ces deux cadres, le CIC et CAPFIND SAS, ont été des facteurs importants dans la réalisation du
projet. Le CIC nous a permis d’acquérir les compétences nécessaires à l’implémentation du projet
et CAPFIND SAS a fourni un bon cadre de travail, un accompagnement financier, et le matériel
néccessaire pour la réalisation du projet
Ce chapitre nous permettra de faire une présentation détaillée de notre sujet, de présenter ses
objectifs, problématique à laquelle il répond ainsi que les résultats attendus.
2.2 Problématique
la plupart des zones wifi actuelles ne peuvent couvrir que de petites surfaces comme l’étendue
comme un établissement, une place publique etc. …[4] , et les logiciels ou plateformes de gestion
de ces wifi zones (tels que MIKROTIK, DALORADIUS) utilisent le système de « voucher » (qui
consiste à créer de tickets de connexion pour une durée déterminée). Mais ce système de voucher
connaît quelques insuffisances tels que :
-La perte d’un ticket de connexion ;
-L’oubli des identifiants de connexion d’un ticket ;
-Les identifiants de connexion d’un ticket ne peuvent se connecter qu’à une seule zone wifi.
Face à cette situation, certaines questions se posent, telles que :
Comment déployer une zone wifi sur une surface très étendue (pouvant couvrir tout une ville, un
pays, voir toute une sous-région) ? Comment remplacer le système voucher communément utilisé
par des comptes utilisateurs rechargeables ? Comment gérer la commercialisation d’une telle zone
wifi, les différents acteurs qui seront mis en jeu et les équipements de la zone wifi ?
Le but de notre travail a été de proposer une solution à ces différentes questions.
2.3 Objectifs
Dans cette section, nous présenterons les objectifs généraux et spécifiques du projet.
• Une plateforme de commercialisation de la zone wifi utilisable par toute personne disposant
d’un réseau wifi est mise en place, testée et mise en production.
• La connexion automatique d’un utilisateur de la wifi zone ayant un forfait wifi actif à tous
les points d’accès de la zone wifi grâce à un compte rechargeable.
Plusieurs plateformes et systèmes de gestion de zone wifi existent déjà. Mais notre étude
s’articulera autour de quelques-uns à savoir MIKROTIK, UBIQUITI, DALORADIUS.
2.5.1 MIKROTIK
Mikrotik a été fondé en 1995 pour développer des routeurs et des systèmes de connexion sans fil
pour les fournisseurs d'accès à internet. Mikrotik est muni des systèmes de connexion sans fil
permettant d'avoir accès à internet dans plusieurs pays à travers le monde entier. L'expérience de
l'entreprise Mikrotik dans l'utilisation du matériel des PC standard industriel et les systèmes
complets de routage leur ont permis de créer le système logiciel RouterOS Ce système permet de
transformer un ordinateur personnel en routeur (incluant des fonctionnalités telles qu'un Pare-feu,
un serveur et un client VPN), contrôler le trafic en fonction d'une qualité de service (QOS), un
accès réseau sans-fil. Le système peut également être utilisé afin de créer un portail captif. Ce
système d'exploitation possède une licence multi-niveau, chaque niveau offrant davantage de
fonctionnalités. Les frais de licence seront basés sur le niveau sélectionné. Une interface graphique,
nommée Winbox, est également disponible afin de configurer le système. Enfin, une API permet
de personnaliser le système et le surveiller.[17]
En 2002, l'entreprise a décidé de mettre sur pied son propre matériel et c'est ainsi qu'est née la
RouterBoard. Actuellement, l'entreprise confectionne autour de 20 types de matériels routeurs
différents et plus de 10 types d'interfaces ou équipements radio (Wireless). Les produits Mikrotik
sont ainsi vendus à divers clients se trouvant dans presque tous les pays du monde entier.[17]
2.5.2 DALORADIUS[18]
daloRADIUS est une plate-forme Web RADIUS avancée destinée à la gestion des points d’accès
et des déploiements de FAI (Fournisseur d’Accès à Internet) à usage général. Il offre une gestion
riche des utilisateurs, des rapports graphiques, une comptabilité et s’intègre à Google Maps pour
la géolocalisation des points d’accès. daloRADIUS est écrit en PHP et JavaScript et utilise une
couche d’abstraction de base de données, ce qui signifie qu’il prend en charge de nombreux
systèmes de base de données, parmi lesquels les populaires MySQL, PostgreSQL, Sqlite, MsSQL
et bien d’autres.Il est basé sur un déploiement FreeRADIUS avec un serveur de base de données
servant de backend. il implémente des ACL(Access Control List ou liste de contrôle d'accès
en français désigne en réseau en réseau, une liste des adresses et ports autorisés ou interdits par
un pare-feu. [19]), l’intégration de Google Maps pour localiser visuellement les points d’accès et
bien d’autres fonctionnalités. daloRADIUS est essentiellement une application web pour gérer un
serveur radius donc théoriquement il peut gérer n’importe quel serveur radius mais spécifiquement
il gère FreeRADIUS et sa structure de base de données. Depuis la version 0.9-3, daloRADIUS a
introduit une couche d’abstraction de base de données à l’échelle de l’application basée sur le
package PEAR: :D B de PHP qui prend en charge une gamme de serveurs de base de données.
2.5.3 UBIQUITI
Ubiquiti Networks est une société qui fabrique de nombreux équipements tels que des routeurs, des
caméras, des bornes Wi-Fi, des switchs, etc.… avec notamment la gamme de produits UniFi. Les
clients peuvent gérer leurs appareils Ubiquiti à partir de la plateforme Web ui.com. Ubiquiti
représente des dizaines de millions d'appareils déployés à travers le monde.[20]
La solution de gestion centralisée de la marque, grâce à une plateforme qui intègre un contrôleur
d’équipement appelé UniFi Controller, est l'une des plus convaincantes du marché. Cette
plateforme peut être utilisée comme service hébergé, mais c'est assez cher : 299 dollars par an pour
10 appareils ou moins, 498 dollars jusqu'à 20 appareils, 697 dollars jusqu'à 30 puis 199 dollars par
tranche de dix ensuite. Heureusement, elle est également installable gratuitement sur une machine
locale de votre choix, sur un cloud, ou encore des équipements spécifiques de Ubiquiti tels que :
les Cloud Key. UniFi XG Server [21]
Comme les outils de configuration et de gestion sont si faciles à aborder et que les tarifs du matériel
sont souvent inférieurs aux produits concurrents (même ceux à destination du marché des
particuliers !), il ne s’agit même plus d’une alternative : c’est « la » solution à retenir pour
l’entreprise et pour le domicile.[22]
Le système peut également prendre en charge « automatiquement » un portail captif avec des codes
à usage limité, comme dans les hôtels où vous vous connectez au réseau WiFi automatiquement,
puis une page spéciale de l’hôtel vous invite à saisir un code que la réception vous a remis (et qui
est généralement valable 24h). Une fois le code validé, vous pouvez surfer et lire votre courriel. Le
système complet préinstallé est fourni dans l’interface de gestion. Là aussi, la mise en place ne
demande que quelques clics.[22]
• Il est installé directement sur un routeur MIKROTIK dans le réseau local et ce routeur sert
directement de passerelle dans ce réseau ;
• Il faut un routeur MIKROTIK par réseau local, et les comptes de connexion créés sur un
routeur ne peuvent se connecter que sur ce réseau ce qui n’est pas adapté à notre contexte.
• De plus MIKROTIK utilise pour la création des comptes de connexion le système de
voucher, avec quand même la possibilité de créer des comptes de connexion rechargeable.
Mais le rechargement des comptes se fait manuellement par l’augmentation du temps de
connexion de ces comptes, ce qui n’est pas faisable avec par exemple pour 100 à 1 millions
d’utilisateurs.
2.6.2 Le système de gestion DALORADIUS
Le mode de fonctionnement de fonctionnement de DALORADIUS est très proche de celui de
MIKROTIK. Bien qu’il ne soit pas aussi populaire que MIKROTIK, il ne nécessite pas de routeur
spécifique. Ainsi, il peut être installé dans le réseau local sur un équipement servant de passerelle.
Cependant son principal avantage est qu’il peut être aussi installé aussi sur le cloud et permettre de
gérer plusieurs zones wifi à la fois ; ce qui permettrait aux comptes de connexion crées sur ce
dernier de se connecter à toutes ces zones wifi. Mais il dispose aussi de quelques insuffisances à
savoir :
• Le nombre d’équipements ou d’appareils supportés par un service UISP Cloud gratuit est
limité [23] ;
• Le contrôleur Ubiquiti ne supporte que les équipements Ubiquiti ;
• Les équipements Ubiquiti sont moins chers par rapport à ses concurrents mais plus chers
que les équipements ordinaires.
Inconvénients
• Le contrôle peut être restreint ;
• Certains objectifs peuvent ne pas être atteints ;
• Une application web d’administration permettant la gestion des vendeurs, des opérateurs,
des partenaires, des managers et administrateurs ainsi que toutes les ventes et tous les
paiements ;
• La mise en place d’un serveur RADIUS pour l’authentification des utilisateurs au niveau
de la zone wifi ;
• Une API de vente de de forfait wifi piloté par l’application mobile de l’entreprise et qui
assure d’intermédiaire entre l’application mobile, l’application de gestion et le serveur
RADIUS.
• Oracle Database ;
• MySQL ;
• PostgreSQL.
2.10.8 PostgreSQL
Le principal avantage de PostgreSQL est qu'il est open source. En outre, il est de nature robuste
avec de hautes performances et multitâche. Cette base de données comprend également de
nombreuses fonctionnalités qui en font l'un des bons choix parmi toutes les bases de données. [33]
PostgreSQL est open source comme MySQL cependant MySQL est réputé pour sa facilité
d’utilisation et sa rapidité, alors que PostgreSQL propose de nombreuses fonctionnalités plus
avancées, c’est la raison pour laquelle PostgreSQL est souvent décrit comme une version open-
source d’Oracle. [34]
2.11.3 APIs
Suite à l’étude des APIs de communication effectué au niveau de l’étude technique des livrables
nous avons opté pour l’utilisation des API REST pour les raisons suivantes :
TOTAL 65
Le projet a connu quelques retards à cause de certains imprévus dont principalement l’installation
de la configuration de freeradius prévu initialement pour 5 jours n’as pas pu tenir dans le temps
imparti et a pris plutôt deux semaines.
En résumé, ce chapitre a permis de faire cette étude préalable du sujet, cette étude a permis
d’exposer la problématique du sujet et de définir les objectifs à atteindre pour une pleine réalisation
du projet. Suite à cela, l’étude des différentes propositions de solutions nous aura permis de choisir
celle permettant de répondre au mieux à la problématique.
Après la spécification de la solution, cela grâce à l’étude du projet, il est temps de passer à son
analyse et à sa conception dans le chapitre prochain.
Dans ce chapitre seront présentées la méthode d’analyse ainsi que le langage et les outils de
modélisation nécessaires à la réalisation et à la compréhension de l’étude détaillée du projet.
• Diagramme de cas d’utilisation : décrit les interactions entre le système et les utilisateurs
(et autres systèmes externes). Il aide dans la visualisation des exigences / besoins ;
• Diagramme d’activité : montre la séquence et le parallélisme dans les activités du système
; autrement dit, modélisation des processus métier avec les échanges de données ;
• Diagramme de classes : présente les classes, types, interfaces et relations entre eux ;
• Diagramme d’objets : permet de représenter les instances des classes, c'est-à-dire des
objets ;
• Diagramme de machine à états : montre les différents états des classes à travers leur cycle
de vie (de la création / instanciation des objets à leur destruction) et les événements qui
provoquent les transitions / changements d’états ;
• Diagramme d’interaction, qui se décline en deux types de diagrammes :
▪ Diagramme de séquence : présente les interactions entre des objets pour lesquelles
l’ordre des interactions est important ;
▪ Diagramme de communications : décrit les interactions entre objets pour lesquels
les connexions entre objets sont importantes ;
• Diagramme de composants : permet de rassembler des classes ou des composants tels que
vus par l’équipe de développement pour décomposer le système en parties de logiciel
gérables (du point de vue développement en gestion de projet) ;
• Diagramme de paquetages : permet de rassembler des éléments de modélisation par
exemple pour les distribuer entre membres de l’équipe de développement ;
• Diagramme de déploiement : décrit les unités d’installation, de configuration et de
déploiement du produit fini sur un parc de machines.
Acteurs Descriptions
Le client C’est un utilisateur du réseau qui effectue des opérations d’achat de forfait
wifi via un API de la plateforme pilotée par une application mobile. Cet
utilisateur peut également acheter un forfait wifi auprès d’un vendeur, et
acheter du forfait wifi pour un autre utilisateur à partir de son compte. Il a
également la possibilité de signaler une panne d’un équipement ou la mise
en hors service d’un point d’accès.
Le vendeur C’est une personne qui a une boutique ou un point de vente, qui s’inscrit en
tant que vendeur, et effectue des opérations de vente de forfait wifi via un
API piloté par une application mobile après avoir fait un abonnement
prépayé.
Le manager C’est un utilisateur à qui on confie la gestion des partenaires et des vendeurs.
Il peut également reverser de l’argent à ses partenaires via la plateforme.
L’administrateur C’est l’utilisateur qui a une vue globale sur le système c’est-à-dire les ventes,
paiements et équipements enregistrés sur la plateforme
• Le paquet client : Il prend en charge les fonctionnalités liés à l’achats de forfaits wifi, et
la signalisation des pannes des équipements.
• Le paquet vendeur : Il englobe la vente forfaits wifi, l’affichage des toutes le ventes et
l’abonnement prépayé.
• Le paquet partenaire : Il se rapporte à l’affichage des utilisateurs connectés et des
services de paiement en ligne.
• Le paquet Technicien : Ce paquet regroupe l’enregistrement et la gestion (création,
modification) des équipements, de l’enregistrement des localisations des points d’accès et
boutique.
Ce chapitre a permis de présenter la méthode d’analyse ainsi que le langage et les outils de
modélisation nécessaires à la réalisation et ensuite elle a permis de comprendre de l’étude
détaillée du projet.
Le prochain chapitre nous permettra de faire une présentation de la solution obtenue ainsi que les
outils et moyens mis en œuvre.
Il sera présenté dans cette section, les outils et moyens de mise en œuvre de notre solution et ensuite
la présentation des résultats obtenus.
Il est souvent utilisé conjointement avec le langage de programmation JavaScript et des feuilles de
style en cascade (CSS)
• Le CSS3 [26]
Le terme CSS est l'acronyme anglais de Cascading Style Sheets qui peut se traduire par "feuilles
de style en cascade". Le CSS est un langage informatique utilisé sur l'internet pour mettre en forme
les fichiers HTML ou XML. Ainsi, les feuilles de style, aussi appelé les fichiers CSS, comprennent
du code qui permet de gérer le design d'une page en HTML.
• Le JavaScript [39]
Le JavaScript est un langage de programmation utilisé notamment lors de la conception de sites
web et d’applications. Il est particulièrement utile pour concevoir des sites dynamiques, Il permet
de créer du contenu mis à jour de façon dynamique, de contrôler le contenu multimédia, d'animer
des images
• Le PHP [40]
Le PHP Hypertext Preprocessor, plus connu sous son sigle PHP, est un langage de programmation
libre, principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP. PHP
est un langage impératif orienté objet. Il s'agit d'un langage de script interprété côté serveur.
Il est considéré comme une des bases de la création de sites web dits dynamiques mais également
des applications web. PHP a permis de créer un grand nombre de sites web célèbres, comme
Facebook, Wikipédia, etc.
• Bootstrap
Bootstrap est un Framework CSS libre et gratuit que nous avons utilisé à cause de sa simplicité et
des outils qu’il met à la disposition des développeurs.
• JQuery
C’est une est une bibliothèque JavaScript libre et multiplateforme créée pour faciliter l'écriture de
scripts côté client dans le code HTML des pages web.
• Ajax
C’est un Framework JavaScript qui permet d’envoyer des requêtes HTTP vers un serveur.
• Laravel [41]
Laravel est un Framework web open-source écrit en PHP respectant le principe modèle-vue-
contrôleur. Il est entièrement développé en programmation orientée objet. Nous avons utilisé
Laravel pour développer la totalité du backend de notre application.
• Git
C’est un outil gratuit permettant le contrôle des versions d’une application et aussi le travail
collaboratif entre plusieurs développeurs sur un même projet.
• GitLab [42]
GitLab un outil open-source basé sur Git, permettant de gérer les dépôts de code source, leur
versioning, et qui propose tout un tas de fonctionnalités autour de vos projets de développement
• Serveur Apache :
Le logiciel libre Apache HTTP est un serveur HTTP. C'est le serveur HTTP le plus populaire
du World Wide Web qui permet d’héberger des pages web.
• MySQL [32]
MySQL est un système de gestion de bases de données relationnelles (SGBDR). Il est distribué
sous une double licence GPL et propriétaire. Il fait partie des logiciels de gestion de base de
données les plus utilisés au monde
• Freeradius[7]
FreeRADIUS est le serveur RADIUS open source le plus populaire et le serveur RADIUS le plus
largement déployé au monde. Il prend en charge tous les protocoles d’authentification courants et
le serveur est livré avec un outil d’administration d’utilisateur Web basé sur PHP appelé
dialupadmin. Les modules inclus avec le cœur du serveur prennent en charge MySQL, PostgreSQL,
Oracle et de nombreuses autres bases de données. Il prend en charge tous les types
d’authentification EAP populaires, y compris PEAP et EAP-TTLS.1
L’instance lightsail de AWS a également servis à installer le serveur Radius et la base de données
des utilisateurs dans le cloud
• Modèle : C'est une classe qui permet une gestion simple et efficace des manipulations
de données et l'établissement automatisé de relations entre tables.
• Vue : la vue est chargée de la mise en forme pour l'utilisateur, elle se contente de récupérer
des variables pour savoir ce qu'elle doit afficher.
• Contrôleur : cette partie gère la logique du code qui prend des décisions. C'est en
quelque sorte l'intermédiaire entre le modèle et la vue : le contrôleur va demander au
modèle les données, les analyser, prendre des décisions et renvoyer le texte à afficher à
la vue.
Serveur Radius
● L’espace de techniciens ;
● L’espace des partenaires ;
● L’espace des managers ;
● L’espace des administrateurs.
Nous présenterons dans cette section la structure de ces espaces et les interfaces obtenues.
CONCLUSION
Ce document présente le travail réalisé au cours de onze (11) semaines de stage, effectué au sein
de la startup CAPFIND SAS. Au cours de ce stage nous avions appris à mettre en pratique les
connaissances et les compétences acquises durant les trois années de formation au CIC, et
également acquérir de nouvelles compétences nécessaires en entreprise telles que, le travail en
équipe, les notions de la gestion du temps, la gestion du stress et la capacité à surmonter les
obstacles et les échecs. Le document ainsi rédigé s’est articulé autour de quatre (4) grands chapitres.
Le premier chapitre a permis de présenter les cadres de formation et de stage. Le chapitre suivant
a présenté l’étude préalable du sujet en passant par une étude minutieuse de l’existant, sa critique,
des propositions de solutions de solutions ont été faites face aux problèmes liés à la gestion et
commercialisation de zone wifi et enfin une étude technique des livrables été effectuée, suivi de la
présentation des livrables choisies et de l’architecture globale de la solution à implémenter.
Le troisième chapitre a été consacré à l’analyse et la conception de la solution proposée, une étude
détaillée a été faite après avoir présenté la méthode d’analyse et l’outil de modélisation.
Enfin, la réalisation et la mise en œuvre de la solution ont été abordées dans le dernier chapitre.
La solution obtenue, permet la vente des forfaits wifi, elle permet de faire les comptes de chaque
vente et enfin permet aux utilisateurs du réseau de se connecter à tous les points d’accès du réseau.
Cependant les fonctionnalités liées à l’achat de forfait wifi directement par un utilisateur sans
passer par l’intermédiaire d’un vendeur, et également paiement directement via l’application sont
en développement car elles nécessitent un compte marchand pour leurs implémentations, les
démarches pour acquérir un compte marchand ont été déjà entamées par la Startup, mais elles sont
toujours encore de traitements.
Le système pourrait évoluer en intégrant un contrôleur d’équipement qui permettra la configuration
et le paramétrage de tous les équipements du réseau à distance, la supervision de tout le réseau à
partir d’une seule interface, intégrer directement un service ou un module marchand au sein de
l’application ce qui permettra de réduire les considérablement les frais de transaction proposés par
les fintech (2.5% sur Flooz et 4% sur T-Money pour paygate[43], 2,5% sur Flooz et 3,5% sur
Tmoney pour CinetPay[44])
BIBLIOGRAPHIE
[1] BOITMOBILE, « API - Définitions Marketing » L’encyclopédie illustrée du marketing ».
https://www.definitions-marketing.com/definition/api/ (consulté le 19 mars 2022).
[2] « Que signifie plateforme? - Definition IT de Whatis.fr », Whatis.com/fr.
https://whatis.techtarget.com/fr/definition/plateforme (consulté le 19 mars 2022).
[3] « Wi-Fi », Wikipédia. 13 mars 2022. Consulté le: 19 mars 2022. [En ligne]. Disponible sur:
https://fr.wikipedia.org/w/index.php?title=Wi-Fi&oldid=191868888
[4] « Espace WiFi : qu’est-ce qu’une zone WiFi ? - Noodo ». https://www.noodo-
wifi.com/faq/zone-wifi/ (consulté le 19 mars 2022).
[5] « Système de gestion de base de données », Wikipédia. 21 novembre 2021. Consulté le: 19
mars 2022. [En ligne]. Disponible sur:
https://fr.wikipedia.org/w/index.php?title=Syst%C3%A8me_de_gestion_de_base_de_donn%
C3%A9es&oldid=188187485
[6] « Logiciel propriétaire », Wikipédia. 6 février 2022. Consulté le: 19 mars 2022. [En ligne].
Disponible sur:
https://fr.wikipedia.org/w/index.php?title=Logiciel_propri%C3%A9taire&oldid=190611088
[7] « Installation Of FreeRADIUS On CentOS And Ubuntu | Unixmen ».
https://www.unixmen.com/installation-freeradius-centos-ubuntu/ (consulté le 19 mars 2022).
[8] « Qu’est-ce qu’un serveur d’accès au réseau (NAS)? - définition de techopedia - Réseaux -
2022 ». https://fr.theastrologypage.com/network-access-server (consulté le 19 mars 2022).
[9] « Mettez en place un serveur RADIUS », OpenClassrooms.
https://openclassrooms.com/fr/courses/2557196-administrez-une-architecture-reseau-avec-
cisco/5135511-mettez-en-place-un-serveur-radius (consulté le 19 mars 2022).
[10] « Portail captif », Wikipédia. 24 janvier 2021. Consulté le: 20 mars 2022. [En ligne].
Disponible sur: https://fr.wikipedia.org/w/index.php?title=Portail_captif&oldid=179167498
[11] « SDK (Software Development Kit) : définition, traduction ».
https://www.journaldunet.fr/web-tech/dictionnaire-du-webmastering/1203359-sdk-software-
development-kit-definition-traduction/ (consulté le 29 mars 2022).
[12] « Qu’est-ce qu’un Cloud ? », IONOS Digitalguide.
https://www.ionos.fr/digitalguide/serveur/know-how/quest-ce-que-le-cloud/ (consulté le 29
mars 2022).
[13] « Qu’est-ce qu’un logiciel open source ? - Ryte Wiki ».
https://fr.ryte.com/wiki/Open_source (consulté le 30 mars 2022).
[14] « Histoire | Centre Informatique et de Calcul del’Université de Lomé ». https://cic.univ-
lome.tg:8084/fr/node/71 (consulté le 19 mars 2022).
[15] « Vous connecte à internet automatiquement – Capfind ». https://capfind.co/app-mobile/
(consulté le 19 mars 2022).
[16] « Les fournisseurs d’accès internet du Togo », Go Africa Online.
https://www.goafricaonline.com/tg/annuaire/fournisseurs-acces-internet (consulté le 21 mars
2022).
[17] « Memoire Online - Techonologie Mikrotik: Le Wifi - Hervé FOWOH KOUAM »,
Memoire Online. https://www.memoireonline.com/08/13/7306/m_Techonologie-Mikrotik-
Le-Wifi5.html (consulté le 20 mars 2022).
[18] « daloRADIUS ». http://daloradius.com/ (consulté le 23 mars 2022).
[19] « Access Control List », Wikipédia. 23 décembre 2021. Consulté le: 23 mars 2022. [En
ligne]. Disponible sur:
https://fr.wikipedia.org/w/index.php?title=Access_Control_List&oldid=189162914
[20] « Ubiquiti : d’après un lanceur d’alerte, la fuite de données serait catastrophique ! | IT-
Connect », 2 avril 2021. https://www.it-connect.fr/ubiquiti-dapres-un-lanceur-dalerte-la-fuite-
de-donnees-serait-catastrophique/ (consulté le 19 mars 2022).
[21] D. Legrand, « UniFi Controller d’Ubiquiti : utilisez un Raspberry Pi comme une Cloud
Key », 5 février 2019. https://www.nextinpact.com/article/66986/unifi-controller-dubiquiti-
utilisez-raspberry-pi-comme-cloud-key (consulté le 19 mars 2022).
[22] « Ubiquiti : le matériel réseau professionnel à la portée de tous | IT Awareness », 2 octobre
2017. https://it-awareness.swiss/ubiquiti-le-materiel-reseau-professionnel-a-la-portee-de-tous/
(consulté le 19 mars 2022).
[23] « UISP - Free Cloud Device Limit », Ubiquiti Support and Help Center.
https://help.ui.com/hc/en-us/articles/360036283753-UISP-Free-Cloud-Device-Limit (consulté
le 19 mars 2022).
[24] « Framework: définition simple et objectifs du terme ».
https://www.1min30.com/dictionnaire-du-web/framework (consulté le 19 mars 2022).
[25] « Top 10 des meilleurs frameworks de développement mobile », Mobiskill, 21 janvier 2021.
https://mobiskill.fr/blog/conseils-emploi-tech/top-10-des-meilleurs-frameworks-de-
developpement-mobile/ (consulté le 21 mars 2022).
[26] « CSS - Définition ». http://glossaire.infowebmaster.fr/css/ (consulté le 19 mars 2022).
[27] « Best CSS Frameworks in 2021 », DEV Community. https://dev.to/thenerdydev/best-css-
frameworks-in-2021-1f3p (consulté le 21 mars 2022).
[28] « La gestion des API, un défi pour les décideurs ». https://www.cio-
online.com/actualites/lire-la-gestion-des-api-un-defi-pour-les-decideurs-13554.html (consulté
le 21 mars 2022).
[29] « SOAP », Wikipédia. 3 novembre 2021. Consulté le: 31 mars 2022. [En ligne]. Disponible
sur: https://fr.wikipedia.org/w/index.php?title=SOAP&oldid=187678121
[30] « Que signifie API RESTful? - Definition IT de Whatis.fr », LeMagIT.
https://www.lemagit.fr/definition/API-RESTful (consulté le 31 mars 2022).
[31] « Liste Avantages et inconvénients de Oracle Database 11g ».
http://www.ordinateur.cc/Logiciel/Logiciel-de-base-de-donn%C3%A9es/112879.html
(consulté le 19 mars 2022).
[32] « MySQL », Wikipédia. 18 février 2022. Consulté le: 19 mars 2022. [En ligne]. Disponible
sur: https://fr.wikipedia.org/w/index.php?title=MySQL&oldid=190982337
[33] « Qu’est-ce que PostgreSQL? | Caractéristiques | Avantages et inconvénients ».
https://fr.education-wiki.com/5154595-what-is-postgresql (consulté le 19 mars 2022).
[34] « Différence entre MySQL et PostgreSQL - WayToLearnX ».
https://waytolearnx.com/2018/11/difference-entre-mysql-et-postgresql.html (consulté le 19
mars 2022).
[35] « Définition | UML | Futura Tech ». https://www.futura-
sciences.com/tech/definitions/informatique-uml-3979/ (consulté le 19 mars 2022).
[36] « Qu’est-ce qu’un diagramme de classes UML | Lucidchart ».
https://www.lucidchart.com/pages/fr/diagramme-de-classes-uml (consulté le 19 mars 2022).
[37] « Visual studio code — EduTech Wiki ».
https://edutechwiki.unige.ch/fr/Visual_studio_code (consulté le 19 mars 2022).
[38] « Hypertext Markup Language », Wikipédia. 14 février 2022. Consulté le: 19 mars 2022.
[En ligne]. Disponible sur:
https://fr.wikipedia.org/w/index.php?title=Hypertext_Markup_Language&oldid=190832208
[39] « Les avantages d’un développement en JavaScript », Zeste!, 12 mai 2016.
https://zeste.couleur-citron.com/2016/05/12/avantages-developpement-en-javascript/
(consulté le 19 mars 2022).
[40] « Introduction - Le PHP - Les bases du langage ».
https://www.codingame.com/playgrounds/34845/le-php---les-bases-du-langage/introduction
(consulté le 19 mars 2022).
[41] « Laravel », Wikipédia. 6 mars 2022. Consulté le: 19 mars 2022. [En ligne]. Disponible sur:
https://fr.wikipedia.org/w/index.php?title=Laravel&oldid=191662356
[42] « GitLab : définition et utilisation », FreelanceTalks, 27 février 2021.
https://blog.freelancerepublik.com/quest-ce-que-gitlab-definition-et-utilisation/ (consulté le
19 mars 2022).
[43] « PayGate - Le portail de paiement en ligne le plus sûr au Togo ». https://paygateglobal.com
(consulté le 24 mars 2022).
[44] « CinetPay - Une offre unique qui répond à tous les besoins. », CinetPay.
https://cinetpay.com/pricing (consulté le 24 mars 2022).
REMERCIEMENTS ....................................................................................................................... ii
RESUME ........................................................................................................................................ iii
ABSTRACT ....................................................................................................................................iv
SOMMAIRE .................................................................................................................................... v
LISTE DES TABLEAUX ............................................................................................................. vii
LISTE DES FIGURES ................................................................................................................. viii
LISTE DES PARTICIPANTS ......................................................................................................... x
GLOSSAIRE ...................................................................................................................................xi
INTRODUCTION ............................................................................................................................ 1
CHAPITRE 1 : PRESENTATION DES CADRES DE FORMATION ET DE STAGE ................ 3
1.1 Présentation du cadre de formation: CIC/UL [14] ........................................................... 4
1.1.1 Historique ................................................................................................................... 4
1.1.2 Objectifs ..................................................................................................................... 4
1.1.3 Organisation administrative ....................................................................................... 4
1.2 Présentation du cadre de stage : CAPFIND SAS [15]...................................................... 6
1.2.1 Description ................................................................................................................. 6
1.2.2 Objectif ....................................................................................................................... 6
1.2.3 Organigramme de l’administration ............................................................................ 6
CHAPITRE 2 : ETUDE PREALABLE DU PROJET ..................................................................... 9
2.1 Présentation du sujet ........................................................................................................ 10
2.2 Problématique .................................................................................................................. 10
2.3 Objectifs........................................................................................................................... 11
2.3.1 Objectif général ........................................................................................................ 11
2.3.2 Objectifs spécifiques ................................................................................................ 11
2.4 Résultats attendus ............................................................................................................ 11
2.5 Etude de l’existant ........................................................................................................... 11
2.5.1 MIKROTIK .............................................................................................................. 11
2.5.2 DALORADIUS[18] ................................................................................................. 12