Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page i
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
DEDICACES
Je dédie ce travail à mes parents,
M. et Mme NJITAT NYA
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page ii
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
REMERCIEMENTS
Le travail que nous vous présentons ce jour est le
fruit d'efforts fournies par plusieurs, il ne saurait qu'être gratifiant
à l'égard de tous ceux ayant participé à sa
réalisation. Nous tenons ainsi à remercier :
Le Pr. Jean Jules TEWA pour l'honneur qu'il me
fait en acceptant de présider ce jury ;
Le Pr. Claude TANGHA, doyen de la FTIC - UPAC,
pour l'honneur qu'il me fait en acceptant d'être examinateur de ce jury
;
Le Dr. Bernabé BATCHAKUI en tant
qu'encadreur académique pour sa disponibilité et ses multiples
conseils durant toute la durée du projet ; L'Université
Protestante d'Afrique Centrale (UPAC), pour la formation
qu'elle nous a donnée tout au long de notre cycle académique;
Mes parents M. et Mme NJITAT NYA pour leur
soutien matériel, financier et spirituel ;
Mes soeurs et frères NJITAT NYA Armelle,
NYA NJITAT Arnauld, YOGWA NJITAT Lorianne et
DJEYIM NJITAT Aurélie pour leur soutien moral ;
Mes camarades de promotion UPAC-FTIC-GI 2015
plus particulièrement SONTSA Raoul et
NFONDJA Fabien pour leur temps et attention tout au long de ce
travail;
Mes amis qui m'ont accompagné durant tout ce parcours. Je
pense ainsi à DAOUA Nasser, BAOUROU Saïd, Moustafa,
Ismaël BAKO, NTONE Samuel, OLOA Ghislain, MADJOUHO Gaele, NGASSAM Karelle,
MEYOU Diane.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page iii
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
RESUME
Un service web est un programme informatique accessible au
moyen d'internet, utilisant un système de messagerie standard (XML) et
n'étant lié à aucun système d'exploitation ou
langage de programmation [Sac, 06]. Il facilite ainsi la communication
entre système hétérogène et permet la
réutilisabilité de ces fonctions ou services utilisés par
d'autres systèmes d'informations.
Nous avons remarqué au cours de nos recherches que les
sites internet et même les applications mobiles qui offrent la
possibilité aux personnes de pouvoir consulter les pharmacies de garde
ne disposent pas de services web. Par conséquent, les
développeurs, particulièrement ceux de l'entreprise DNB
Technologies où nous avons effectué notre stage ne peuvent pas
profiter des services qu'offrent ces sites pour en développer d'autres
en y intégrant des modules complémentaires comme par exemple
celui de la géolocalisation.
Le présent mémoire propose un service web
(basé sur XML, wsdl et SOAP) qui donne aux utilisateurs la liste des
pharmacies de garde à proximité de leur position et le bon
itinéraire à suivre pour s'y rendre avec la prise en compte des
contraintes de temps à travers un service de géolocalisation. Ils
peuvent accéder aux informations relatives à la position de ces
pharmacies à l'aide de divers supports média
(téléphone mobile, Smartphone, tablette et internet). Par
ailleurs, nous mettons à la disposition des développeurs des
services qu'ils peuvent intégrer dans leur propre application
(rechercher les pharmacies de garde, tracer l'itinéraire, envoyer et
recevoir les SMS à travers un équipement GSM).
L'intérêt de ce travail est d'augmenter un gain de temps dans le
développement des applications et de faciliter la vie à des
utilisateurs en cas d'urgence médicale.
Mots clés : service web,
géolocalisation, Système hétérogène,
pharmacie de garde, GSM.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page iv
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
ABSTRACT
A web service is a computer program accessible through the
internet, using a standard messaging system (XML), and not related to any
operating system or programming language [Sac, 06]. As such, it facilitates
communications between heterogeneous systems and allows for the reusability of
the functions or services used by other information systems.
We saw in our research that the websites and even mobile
applications that offer the opportunity for people to consult the all-night
pharmacies do not have web services. Therefore, developers, particularly those
of the company DNB Technologies where we accomplished our internship can't take
advantage of the services offered by these sites to develop others by
integrating additional modules such as that of geolocation .
This brief offers a web service ( based on XML, and SOAP wsdl
) that gives users a list of all-night pharmacies near their position and good
directions to get there by taking into account the constraints of time through
a geolocation service. They can access information on the position of these
pharmacies using various media supports (mobile phone, smartphone, tablet, and
web). In addition, we make available to developers of services they can
incorporate into their own application (search for pharmacies on duty, trace
route, send and receive SMS messages through a GSM device). The interest of
this work is to increase time savings in the development of applications and
make life easier for users in case of medical emergency.
Keywords: web service, geolocation,
Internet, GSM, heterogeneous system, all-night pharmacy, GSM.
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Sommaire
DEDICACES i
REMERCIEMENTS ii
RESUME iii
ABSTRACT iv
GLOSSAIRE v
ACRONYMES vi
LISTE DES FIGURES vii
LISTE DES TABLEAUX viii
INTRODUCTION GENERALE 1
CHAPITRE I : CONTEXTE ET PROBLEMATIQUE 3
1.1. Contexte d'étude 3
1.2. Problèmes et objectifs 3
1.2.1. Problèmes 3
1.2.2. Objectifs 4
CHAPITRE II : ETAT DE L'ART 5
2.1. Le service « pharmacie de garde » accessible par
ordinateurs 5
2.1.1. Le site internet «
www.ici.cm » 5
2.1.2. Le site internet «
www.annuaire-medical.cm
» 6
2.2. Le service « pharmacie de garde » accessible par
mobile GSM et Smartphone 7
2.2.1. L'application mobile « pharmacy Nnam » 7
2.2.2. Le service USSD 8
2.3. Tableau comparatif des différents services et
solution proposée 9
2.3.1. Tableau comparatif 9
2.3.2. Solution proposée 10
CHAPITRE III : ANALYSE ET CONCEPTION 11
3.1. Analyse 11
3.1.1. Spécifications des besoins 11
3.1.2. Diagramme de cas d'utilisation 12
3.1.3. Diagramme de séquence système 14
3.1.4. Diagramme de classe métier 16
3.1.5. Conception architecturale 18
3.2. Conception 20
Mémoire de fin d'étude de Master en sciences
de l'Ingénieur. UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
3.2.1. Diagramme de séquence technique 20
3.2.2. Diagramme de classe 23
CHAPITRE IV : IMPLEMENTATION ET RESULTATS 25
4.1. Implémentation 25
4.1.1. Environnement de travail 25
4.1.2. APIs utilisées 25
4.1.3. Langage de programmation 26
4.2. Architecture de travail 27
4.2.1. Diagramme de composants 27
4.2.2. Diagramme de déploiement 28
28
4.3. Résultats et coût du projet 29
4.3.1. Résultats 29
4.3.2. Coût du projet 35
CONCLUSION GENERALE 37
BIBLIOGRAPHIE 39
Mémoire de fin d'étude de Master en sciences
de l'Ingénieur. UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
GLOSSAIRE
3G/CDMA Norme de téléphone
mobile
Architecture 3-tiers Conception d'un
système d'information dans laquelle la répartition des
données est
faite à trois niveaux
Application mobile Logiciel applicatif
développé pour appareil électronique mobile
(Smartphone, tablette, ...)
Application web Application accessible par le
biais d'un navigateur web
Géolocalisation un procédé
permettant de positionner un objet (une personne, etc.) sur un plan ou
une carte à l'aide de ses coordonnées
géographiques
MVC Modèle de conception d'application
dans lequel on sépare les données (modèle), la
présentation (vue) et le traitement (contrôleur)
Service web Ensemble de fonctionnalités
exposées sur internet et permettant à des systèmes
hétérogènes de pouvoir communiquer et
échanger des données sur des environnements distribués
Smartphone Téléphone disposant
d'un système d'exploitation et capable d'exécuter diverses
applications conçues pour ce dernier, tel un ordinateur
SMS Service de messagerie en
téléphonie mobile
SOAP Protocole de communication orienté
objet et permettant l'envoi de message entre
objet distants
UML Langage de modélisation
utilisé pour la conception des systèmes d'information
USSD Service de messagerie de
téléphonie mobile de type temps réel et accessible par
numéro court
.wsdl Extension de fichier descripteur de
service web écrit en XML.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page v
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page vi
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
ACRONYMES
3G 3ème
génération
API Application Programming Interface
BD Base de données
CDMA Code Division Multiple Access
CSS Cascade StyleSheet
GSM Global System for Mobile communication
HTML HyperText Markup Language
MVC Modèle - Vue - Contrôleur
PHP Hypertext Preprocessor
SMS Short Message Service
SOAP Simple Object Access Protocol
SQL Structured Query Language
TIC Technologie de l'Information et de la
Communication
UML Unified Modeling Language
USB Universal Serial Bus
USSD Unstructured Supplementary Service
Data
WSDL Web Service Description Language
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page vii
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
LISTE DES FIGURES
Figure 1 : présentation du service de pharmacie de garde
du site
ici.cm 6
Figure 2 : Présentation du service de pharmacie de garde
du site
annuaire-medical.cm 7
Figure 3 : Présentation de l'application mobile «
pharmacy Nnam » 8
Figure 4 : Diagramme des cas d'utilisation. 13
Figure 5: Diagramme de séquence « consulter pharmacie
de garde » 15
Figure 6: Diagramme de séquence « ajout d'une
pharmacie » 16
Figure 7: Diagramme de classe métier 17
Figure 8 : Architecture structurelle 18
Figure 9 : Architecture MVC 19
Figure 10 : Diagramme de séquence technique : cas d'une
recherche avec nom de ville par
ordinateur ou Smartphone 20 Figure 11 : Diagramme de
séquence technique : cas d'une recherche avec coordonnées GPS
par ordinateur ou Smartphone 21 Figure 12 : Diagramme de
séquence technique : cas d'une recherche par SMS avec
téléphone
GSM 22
Figure 13 : Diagramme de classe 24
Figure 14 : Diagramme de composants 27
Figure 15 : Diagramme de déploiement 28
Figure 16 : Ecran d'authentification de la page d'administration
29
Figure 17 : Ecran d'accueil : Gestion des pharmacies et gestion
des gardes. 30
Figure 18 : Interface de connexion d'OZEKI NG 31
Figure 19 : Interface d'accueil de l'API OZEKI NG 32
Figure 20 : Ecran d'administration d'envoi et de réception
de SMS de la plateforme OZEKI NG
33
Figure 21 : Ecran d'accueil du site 33
Figure 22 : Ecran des résultats de recherche avec carte et
liste des pharmacies. 34
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric page viii
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
LISTE DES TABLEAUX
Tableau 1 : Tableau récapitulatif des différents
services étudiés 9
Tableau 2 : Scénarii « consulter liste des
pharmacies de garde » 14
Tableau 3 : Scénarii « gérer pharmacie
» 14
Tableau 4 : Tableau des caractéristiques de
l'environnement matériel et logiciel 25
Tableau 5 : Tableau récapitulatif 35
Tableau 6 : Liste des intervenants avec tarif journalier 35
Tableau 7 : Répartition du travail par intervenant et
coût total 36
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 1
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
INTRODUCTION GENERALE
Les systèmes répartis sont définis comme
un ensemble composé d'éléments reliés par un
système de communication avec des éléments ayant des
fonctions de traitement (processeurs), de stockage (mémoire) et de
relation avec le monde extérieur (capteurs, actionneurs) [Sam,
01]. Selon Sacha KRAKOWIAK en 2004, les systèmes répartis
sont des systèmes utiles tant pour des entreprises que des individus car
ils fournissent des accès distants à des ressources, donnent la
possibilité de partager des ressources et des informations et
interconnectent de façon générale plusieurs
systèmes. Grâce à une architecture orientée service
et une programmation orientée composant, les systèmes
répartis permettent la mise en oeuvre des applications conçues et
fonctionnant grâce à l'ajout de divers composants ou applications
annexes se trouvant sur d'autres systèmes d'informations. Aujourd'hui,
grâce à cette architecture, les développeurs d'applications
(web et mobiles) profitent pour offrir des services facilitant le quotidien. La
mise sur pied d'une application comme Google map développée par
la firme Google et lancé aux USA en 2004 en est un exemple parfait
d'application web offrant un service de cartographie en ligne. Ce service de
cartographie permet par exemple de : localiser un lieu, déterminer le
moyen de s'y rendre, le temps et même la distance à parcourir, le
trafic routier en fonction de la position de l'utilisateur. Google MAP offre
à travers ce service de géolocalisation un ensemble d'autres
services que l'on qualifie de «web services»
(basés sur XML, SOAP et WSLD).
C'est à travers ces types de service offert par Google map
que s'inscrit et s'appui notre projet de fin d'étude dont l'objectif est
de mettre sur pied un service web utilisant cette application et ses services
dans le but de déterminer les pharmacies de garde la plus proche de la
position de ses utilisateurs.
Le présent travail est basé sur une étude
théorique et pratique de la mise en oeuvre d'un tel service. En dehors
de cette introduction et de la conclusion générale, il est
constitué de quatre (4) chapitres : le premier chapitre est
consacré au contexte d'étude et à la problématique,
le deuxième chapitre présente l'état de l'art des
solutions web services existantes, le troisième chapitre présente
l'analyse et la conception de notre système
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 2
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
(application et service web) et enfin, le dernier chapitre
s'intéresse à l'implémentation et aux résultats.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 3
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
CHAPITRE I : CONTEXTE ET PROBLEMATIQUE
Dans ce chapitre, nous présentons le contexte
d'étude, la problématique liée à notre thème
et les objectifs.
1.1. Contexte d'étude
Avec l'amélioration des services de
télécommunication au Cameroun grâce aux apports fournis par
la technologie 3G et CDMA, l'accès à internet devient facile et
les services comme par exemple la géolocalisation deviennent facilement
accessibles et utilisables des utilisateurs et développeurs
d'application. Les utilisateurs peuvent désormais connaitre la position
d'une entreprise, d'un hôpital, d'une école, d'une pharmacie ou
même d'un restaurant à proximité de leur position et les
développeurs, intégrer ces services dans leur application.
1.2. Problèmes et objectifs
1.2.1. Problèmes
Prenons par exemple une personne qui se retrouve dans une
situation où à une heure très tardive ou de fort trafic
routier se retrouve avec un enfant ou épouse malade et
hospitalisé et qui a besoin urgemment d'un médicament. Cette
personne a pour reflexe de se rendre à la pharmacie la plus proche de sa
position. Mais, si cette pharmacie n'est pas de garde, il devra consulter la
liste des pharmacies de garde, déterminer celle qui lui semble la plus
proche et s'y rendre afin de pouvoir acheter ce médicament. Cette perte
de temps peut par exemple entraîner le décès de son
enfant.
Un développeur d'application souhaite offrir à
ses utilisateurs un moyen de pouvoir consulter en ligne la liste des pharmacies
de garde avec une possibilité de pouvoir localiser ces pharmacies sur
une carte géographique. Pour gagner en temps dans le
développement de son système, il décide d'utiliser les
services offerts par les sites internet disposant des listes de pharmacie de
garde et, y intégrer le service de géolocalisation. Mais, si ces
sites ne sont pas développés selon une architecture
orientée service, il ne pourra pas profiter de ces services et devra en
développer un autre. Il perd en temps de développement.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 4
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Ces deux illustrations nous montrent la
nécessité qu'il puisse exister des services qui permettent
à celui en quête de pharmacie de garde de pouvoir
déterminer les pharmacies de garde à proximité de sa
position à travers divers médias et, aux développeurs, un
service qui pourront intégrer dans leur application.
1.2.2. Objectifs
Au vue des problèmes, Nos objectifs peuvent être
classés en deux grandes catégories : objectifs utilisateurs
usuels et objectifs développeurs.
1.2.2.1. Objectif utilisateurs usuels
Pour les utilisateurs usuels, nous leur offrons la
possibilité d'avoir les pharmacies de garde à proximité de
leur position en utilisant divers supports médias
(téléphone mobile GSM, Smartphone, tablette, internet)
grâce au service de géolocalisation de Google : Google
MAP;
1.2.2.2. Objectif développeurs
Pour les développeurs, nous leur permettons d'utiliser
les services offerts par la plateforme à savoir le service de
géolocalisation, le service de calcul de distance, le service de
tracé d'itinéraire, ... . Pour profiter de ces services, ils
doivent utiliser un fichier descripteur de service web (fichier
WSDL) qui est accessible à travers le
protocole SOAP.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 5
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
CHAPITRE II : ETAT DE L'ART
Ce chapitre présente les applications existantes qui
fournissent le service de pharmacie de garde accessible à travers divers
supports médias.
Le service « pharmacie de garde » est un ensemble
d'informations qui donne aux usagers la liste des pharmacies de garde. Avant
l'avènement des technologies de l'information et de la communication
(TIC), la liste des pharmacies de garde était consultable auprès
des pharmacies. Mais, avec les services offerts par les TIC, il est
désormais possible d'avoir la liste des pharmacies de garde sans se
déplacer grâce à différents supports de média
(téléphone mobile, Smartphone, tablette, ordinateur).
2.1. Le service « pharmacie de garde »
accessible par ordinateurs
Lorsque nous parlons de « pharmacie de garde »
accessible par ordinateurs, il s'agit de service nécessitant l'usage
d'un navigateur web. Grâce à ce navigateur web, les utilisateurs
ont la possibilité de consulter un ensemble d'informations se trouvant
sur internet grâce à un site internet.
Certains sites internet camerounais offrent des informations
donnant la liste des pharmacies de garde des différentes villes du pays.
Parmi plusieurs de ces sites parcourus, deux ont suscité notre attention
; Les autres n'offrant pas des mises à jour fréquentes.
2.1.1. Le site internet «
www.ici.cm »
Selon le site
www.camer.be,
ici.cm est à la fois un annuaire
dynamique et un guide pratique qui répertorie plusieurs milliers
d'entreprises tout secteur confondu sur le territoire national Camerounais. Mis
sur pied par l'équipe de développement de la
société YooMee, ce site offre un accès à plusieurs
services d'informations dans divers secteurs d'activités parmi lesquels
les transports, les services publics, les bars, la santé, ... Au -
delà de toutes ces informations, ils donnent aux utilisateurs des
infos-utiles parmi lesquelles les pharmacies de garde des villes de
Yaoundé et Douala accessible directement via le lien
http://www.ici.cm/infos-utiles/pharmacies-de-garde.html
comme nous le montre la figure suivante :
Mémoire de fin d'étude de Master en
sciences de l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 6
Mise en oeuvre d'une plateforme de
géolocalisation pour la recherche optimale des pharmacies de
garde
Figure 1 : présentation du service de
pharmacie de garde du site
ici.cm
L'Annuaire Médical du Cameroun est un portail
d'informations en santé regroupant les profils (domaine,
activité, coordonnées, ...) des entreprises, institutions,
Professionnels et acteurs intervenants dans le domaine médical au
Cameroun. Ils mettent à la disposition des utilisateurs un ensemble de
services fournissant une base de données des acteurs de la santé
au Cameroun, un moteur de recherche de ces acteurs ainsi qu'une rubrique
d'informations donnant les numéros d'urgence et la liste des pharmacies
de garde de toutes les villes du Cameroun. Le lien
http://annuaire-medical.cm/fr/pharmacies-de-garde/centre
donne par exemple la liste des pharmacies de garde de la région du
centre comme nous le montre la figure suivante :
Mémoire de fin d'étude de Master en
sciences de l'Ingénieur.
UPAC-FTIC, septembre 2015 Par KUIKWAN NYA
Cédric Page 7
Mise en oeuvre d'une plateforme de
géolocalisation pour la recherche optimale des pharmacies de
garde
Figure 2 : Présentation du service de
pharmacie de garde du site
annuaire-medical.cm
2.2. Le service « pharmacie de garde »
accessible par mobile GSM et Smartphone
Support média facilement maniable et transportable
contrairement à un ordinateur, le téléphone mobile est
devenu l'appareil technologique de notre quotidien. Les opérateurs
téléphoniques et développeurs d'applications mettent
à la disposition des utilisateurs des petites applications afin de leur
offrir un accès rapide à l'information. Ainsi il devient possible
grâce à ces APIs de pouvoir consulter les différentes
pharmacies de garde. Sur le plan application mobile, nous dénombrons
très peu d'applications offrant ce service.
2.2.1. L'application mobile « pharmacy Nnam »
« Pharmacy Nnam » est une application mobile
développée par le groupe MG Soft et disponible sur Smartphone et
tablette avec pour système d'exploitation Android. Elle offre à
ces utilisateurs la possibilité de consulter la liste des pharmacies des
différentes villes du pays, les pharmacies de garde à
proximité de l'utilisateur grâce à l'appui d'une carte
géographique et aussi la liste des médicaments. Elle est
téléchargeable en suivant le lien
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 8
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
http://www.mboastore.cm/Web/5-apps-39.html
et se présente comme nous le montre la figure suivante :
Figure 3 : Présentation de l'application
mobile « pharmacy Nnam »
2.2.2. Le service USSD
Les services USSD sont des services de
téléphonie de type temps réel ou de messagerie
instantanée qu'offrent les opérateurs à leur abonné
afin de pouvoir accéder à un ensemble d'informations de
façon rapide et efficace. Grâce à un numéro court,
les abonnés pourront par exemple consulter le solde de leur compte,
transférer du crédit, ... C'est dans cette optique que les
opérateurs de téléphonie mobile donnent la
possibilité à leur abonnés d'accéder à des
informations utiles comme par exemple la liste des pharmacies de garde. Pour
les abonnés de Orange Cameroun, ce service est disponible au
numéro #111# par exemple et, pour les abonnés MTN c'est le
*141*2*8#.
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
2.3. Tableau comparatif des différents
services et solution proposée
2.3.1. Tableau comparatif
Le tableau 1 nous présente les caractéristiques
dégagées de l'étude menée pour ces
différents services. Cinq (5) critères sont retenus pour
l'établissement de ce tableau à savoir :
- Usage d'une connexion internet : est-il nécessaire
d'avoir une connexion internet pour pouvoir profiter du service offert ?
- Service de géolocalisation : Offre-il un moyen de
pouvoir localiser l'utilisateur ainsi que les pharmacies de garde à sa
proximité sur une carte géographique ?
- Mobilité : est-il possible de consulter le service
quelque soit l'endroit où se trouve l'utilisateur à travers un
appareil mobile ?
- Réutilisabilité : est-il possible pour un
développeur d'application web de pouvoir intégrer les services
offerts à son application ?
- Accès direct : Est-il possible de consulter
directement les pharmacies de garde dès exécution de
l'application?
Tableau 1 : Tableau récapitulatif des
différents services étudiés
Services
|
Connexion internet nécessaire ?
|
Service de
géolocalisation disponible ?
|
Mobilité ?
|
Réutilisable ?
|
Accès direct ?
|
http://www.ici.cm/infos-
|
Oui
|
Non
|
Non
|
Non
|
Non
|
utiles/pharmacies-de-
|
garde.html
|
|
http://www.annuaire-
|
Oui
|
Non
|
Non
|
Non
|
Non
|
medical.cm/fr/pharmacie-
|
de-garde
|
|
Pharmacy Nnam
|
Oui
|
Non
|
Oui
|
Non
|
Oui
|
Service USSD (orange et MTN)
|
Non
|
Non
|
Oui
|
Non
|
Oui
|
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 9
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 10
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Nous constatons que l'ensemble des services offerts par ses
sites et applications ne disposent pas d'un service de géolocalisation
et n'offrent pas un moyen aux développeurs de pouvoir intégrer ce
service à leur application.
2.3.2. Solution proposée
Nous nous rendons compte de la nécessité de
permettre à des utilisateurs en quête de pharmacie de garde la
plus proche d'eux une application offrant des services web qui permet de :
- D'avoir la liste des pharmacies des pharmacies de garde
à proximité de la position d'une personne à travers divers
supports médias (téléphone mobile GSM, Smartphone,
tablette et internet) ;
- D'avoir l'itinéraire à suivre pour rejoindre ces
pharmacies de garde;
- Permettre aux développeurs de pouvoir intégrer
ces services web à leurs applications.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015
Par KUIKWAN NYA Cédric Page 11
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
CHAPITRE III : ANALYSE ET CONCEPTION
Dans ce chapitre, nous allons présenter une
spécification des besoins auxquels doit répondre l'application,
ensuite une analyse de ces besoins et enfin la phase de conception.
Pour la modélisation de notre système, nous
avons opté pour une modélisation objet et notre choix s'est
porté sur le langage UML «Unified Modeling
Language».
En effet, UML est un langage de modélisation formel et
normalisé, né de la fusion de plusieurs méthodes
existantes. Il permet de modéliser informatiquement un ensemble
d'éléments d'une partie du monde réel en un ensemble
d'entités informatiques. Ces entités informatiques sont
appelées objets. Ces objets sont décrits par des vues statiques
et dynamiques, incluant un ensemble de diagrammes, qui collaborent pour
représenter diverses projections d'une même représentation
d'un système d'objets.
3.1. Analyse
3.1.1. Spécifications des besoins
Il est question pour nous de déterminer les
fonctionnalités et les acteurs les plus pertinents et d'identifier les
cas d'utilisation initiaux. Nous aurons deux types de besoin : Les besoins
fonctionnels et les besoins non fonctionnels.
? Les besoins fonctionnels.
Les besoins fonctionnels décrivent les attentes que
fournira le système d'informations à ces utilisateurs et donnent
l'ensemble des services visibles et accessibles par les utilisateurs du
système. Comme besoin fonctionnel de notre application, nous recensons
:
- La confirmation de la position actuelle ;
- La consultation de l'itinéraire ;
- La consultation des pharmacies de garde ;
- La gestion des pharmacies (enregistrement, modification,
suppression); - La gestion des gardes (enregistrement, modification,
suppression);
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 12
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
- La gestion des villes au sein du système
(enregistrement, modification, suppression).
? Les besoins non fonctionnels
Les besoins non fonctionnels quant à eux
décrivent toutes les contraintes auxquelles devra être soumis le
système d'information pour pouvoir fonctionner. Nous avons comme besoins
non fonctionnels :
- Ergonomie et souplesse : L'application
devra offrir aux utilisateurs une interface facile d'accessibilité et
des interactions simple à comprendre ;
- Rapidité : Le temps de
réaction du système quant à une requête émis
par un utilisateur devra très court ;
- Réutilisabilité et maintenable:
Le service offert par cette application devra être accessible,
compréhensible, facilement lisible et réutilisable par d'autres
développeurs;
- Accessibilité : L'application devra
être accessible pour tout type d'utilisateur. Ainsi que ce soit par
téléphone mobile GSM, par ordinateur ou Smartphone, l'utilisateur
devra accéder à l'information.
3.1.2. Diagramme de cas d'utilisation
Ce diagramme permet de mettre à la disposition des
utilisateurs diverses fonctions de notre système d'informations
[Nou, 10]. Se basant sur les besoins fonctionnels du système,
Ces fonctions appelées des cas permettent aux utilisateurs de pouvoir
interagir avec le système comme nous le montre la figure suivante:
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Figure 4 : Diagramme des cas
d'utilisation.
3.1.2.1. Scénario de base
Le diagramme des cas d'utilisation ci-dessus nous permet de
ressortir les différents acteurs ou utilisateurs de l'application ainsi
que les actions exécutables par eux.
- L'utilisateur : Il peut consulter la liste
des pharmacies de garde à partir d'un ordinateur ou d'un Smartphone
disposant d'une connexion internet. Il peut aussi le faire à partir d'un
téléphone mobile GSM grâce au service SMS.
- L'administrateur : Il peut se connecter et
se déconnecter afin de pouvoir y effectuer des tâches de gestion
(ajout, modification, suppression et consultation) des pharmacies, des gardes
et même des villes.
- La société DNB : Il met
à la disposition des développeurs le service web rattaché
à l'application.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 13
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 14
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Tableau 2 : Scénario « consulter liste
des pharmacies de garde »
Acteur : l'utilisateur
Cas d'utilisation : consulter par ordinateur ou
Smartphone
But : Permettre à l'utilisateur de
pouvoir avoir une liste des pharmacies de garde de la ville où il se
trouve
Pré condition : la page doit être
accessible à l'utilisateur
Post condition : la page contenant la liste des
pharmacies de garde devra être disponible avec les informations attendues
par l'utilisateur.
Description : L'utilisateur confirme sa position
géographique ou renseigne la ville dans laquelle il se trouve puis
clique sur le bouton « consulter ))
Tableau 3 : Scénario « gérer
pharmacie »
Acteur : l'administrateur
Cas d'utilisation : ajouter pharmacie
But : Permettre à l'administrateur de
pouvoir ajouter une pharmacie au système Pré condition
: l'administrateur doit être authentifié par le
système
Post condition : Le processus d'enregistrement
devra retourner un message de confirmation ou d'erreur d'enregistrement
à l'administrateur.
Description : L'administrateur renseigne
l'ensemble des informations caractérisant une pharmacie. Une fois le
formulaire rempli, il clique sur le bouton « enregistrer )) afin de
pouvoir sauvegarder les données dans la BD.
|
3.1.3. Diagramme de séquence système
Le diagramme de séquence fait ressortir toutes les
interactions qui s'effectuent entre l'utilisateur et le système pour
l'exécution des scénarios recensés [Nou, 10].
Ainsi pour le scénario de consultation de pharmacie de garde par
ordinateur et gestion de pharmacie, nous avons les figures suivantes :
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Utilisateur
position ou ville de l'utilisateur
Carte google map avec pharmacie de
garde
listePharma
Système
Garde(ville/position, date)
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 15
pharmacie de garde la plus proche de sa
position
liste des pharmacies de garde avec
itinéraire
Figure 5: Diagramme de séquence «
consulter pharmacie de garde »
Ce diagramme de séquence décrit l'échange
de message effectué entre l'utilisateur et le système pour la
consultation des pharmacies de garde. Ainsi, le système est capable
à travers la position de l'utilisateur de lui renvoyer une liste des
pharmacies de garde à proximité de sa position.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 16
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Figure 6: Diagramme de séquence «
ajout d'une pharmacie »
3.1.4. Diagramme de classe métier
Ce diagramme est l'un des éléments clés
de la modélisation UML [Lau, 09]. Grâce aux diagrammes de
séquence représentés, elle donne une représentation
statique du futur système à développer. Ainsi, à
l'aide de la figure suivante, nous avons les interactions qui s'effectuent
entre les différents objets de notre système.
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
service
listePharmacie () listePharmacieGarde ()
calculDistance () + tracerItineraire ()
|
pharmacie
|
id
nomPh adressePh quartierPh
telPh latitudePh longitudePh
sitePh
+
+
+
: int : string : string :
string : int : int : int :
string
region
+ <<Getter"" getnomRegion () :
string +
<<Setter"" setnomRegion (string newNomRegion) :
void
+ <<Constructor"" region ()
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Constructor""
getid ()
setid (int newId)
getnomPh ()
setnomPh (string newNomPh)
getadressePh ()
setadressePh (string newAdressePh)
getquartierPh ()
setquartierPh (string newQuartierPh)
gettelPh ()
settelPh (int newTelPh)
getlatitudePh ()
setlatitudePh (int newLatitudePh)
getlongitudePh ()
setlongitudePh (int newLongitudePh)
getsitePh ()
setsitePh (string newSitePh)
pharmacie ()
: int
: void : string : void :
string : void : string : void :
int
: void : int
: void : int
: void : string : void
1..1
0..*
1..1
1..*
- nomRegion : string
-
-
: string : int : int
nomVille
latitudeVille
longitudeVille
<<Getter"" <<Setter""
<<Constructor"" <<Getter""
<<Setter"" <<Getter""
<<Setter""
getnomVille ()
setnomVille (string newNomVille)
ville ()
getlatitudeVille ()
setlatitudeVille (int newLatitudeVille)
getlongitudeVille ()
setlongitudeVille (int newLongitudeVille)
+ + + + + + +
: string : void
: int : void : int :
void
pharmacieInterface
|
+ + + +
|
ajouterPharmacie () modifierPharmacie ()
supprimerPharmacie () consulterPharmacie ()
|
|
|
|
|
|
|
ville
1..1 *
- nomGroupe : string
- date : date +
<<Getter"" getnomGroupe () :
string
+ <<Setter"" setnomGroupe (string
newNomGroupe) : void +
<<Getter"" getdate () : date
+ <<Setter"" setdate (date newDate) :
void
+ <<Constructor"" groupe ()
1..1
1..*
garde
-
-
|
idGr : int
dateGr : date
|
+ «Getter""
<<Setter""
+ Getter""
+ : «Setter""
+ <<Constructor""
getidGr () : int
setidGr (int newIdGr) : void
getdateGr () : date
setdateGr (date newDateGr) : void garde
()
administrateur
|
-
|
idUs
nomUs
passUs
|
: string : string : string
|
+
+
+
+
+
+
+ <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Getter""
<<Setter"" <<Constructor""
getidUs ()
setidUs (string newIdUs)
getnomUs ()
setnomUs (string newNomUs)
getpassUs ()
setpassUs (string newPassUs)
administrateur ()
: string : void : string :
void : string : void
-
Figure 7: Diagramme de classe
métier
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 17
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 18
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
3.1.5. Conception architecturale
? Architecture logique
L'architecture logique de notre futur système est
présentée par la figure 8 ci dessous :
Client web
Serveur d'application
Client mobile
BD
GSM
Internet
Figure 8 : Architecture structurelle
A l'aide d'une connexion internet, l'utilisateur (client web)
accède au serveur d'application pour obtenir la liste des pharmacies de
garde à proximité de sa position. Si l'utilisateur ne dispose pas
de connexion internet, il (client mobile) peut accéder au serveur
d'application à partir d'un téléphone mobile GSM en
envoyant un SMS. Un modem GSM connecté au serveur d'application traite
l'envoi et la réception des SMS utilisateurs.
? Modèle MVC
Pour mettre sur pied tout système d'information, le
choix d'un modèle architectural doit être effectué. Ce
choix permet de profiter des avantages qu'il offre comme la
réutilisation, la robustesse, l'efficacité et l'interconnexion
à travers d'autres systèmes.
Pour la mise sur pied de notre application et service web,
nous avons opté pour une architecture MVC (Modèle - Vue -
Contrôleur) qui est très pratique pour la gestion des interactions
au sein des applications notamment des applications web.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 19
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Une architecture MVC [Dev, 06] est un modèle
destiné à répondre aux besoins des applications
interactives en séparant la problématique liée aux
différents composants des architectures de leur architecture
respective.
Les trois couches de cette architecture sont décrites
comme suit :
- Le modèle : Il représente en
général une vue de la base de données du système
d'information. Ainsi dans un langage orienté objet, il se
matérialise par un ensemble de classe. Il a aussi la possibilité
d'agir sur la vue en y modifiant les données ;
- La vue : Elle représente l'interface
graphique permettant à l'utilisateur de pouvoir y effectuer ses
actions.
- Le contrôleur : Il représente la
récupération et le traitement des données envoyées
depuis la vue par un utilisateur. Il renvoie aussi à la vue les
données traitées afin que celles-ci puissent être
affichées.
La figure suivante illustre l'interaction qui puisse exister
entre ces trois couches.
Requête web
Mise à jour des données
CONTROLEUR
Mise à jour de la vue
Récupération des données
MODELE
VUE
Figure 9 : Architecture MVC [Dev,
06]
Les avantages apportés par l'architecture MVC sont :
- La séparation des données de la vue et du
contrôleur (ce qui permet une conception claire et efficace de
l'application)
- Une indépendance des données, de l'affichage
et des actions (ce qui donne plus de souplesse pour la maintenance et
l'évolutivité du système).
- Un gain de temps de maintenance et d'évolution de
l'application.
wsdl
service
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
3.2. Conception
3.2.1. Diagramme de séquence technique
Nous présentons à ce niveau les
échanges de message s'effectuant entre l'utilisateur et le
système en fonction du cas d'utilisation « rechercher pharmacie de
garde ».
serviceClient
utilisateur
ville utilisateur
serviceServeur
tableauPharmacie(nom, tel,
quartier)
|
newSoapServer(wsdl)
addFunction(listePharmacieGarde)
listePharmacieGarde(ville, date)
tableauPharmacie(nom, tel,
quartier)
requete recherche pharmacie de
garde
newSoapClient(wsdl)
listePharmacieGarde()
tableauPharmacie(nom, tel,
quartier)
|
listePharmacieGarde()
tableauPharmacie(nom, tel,
quartier)
|
Figure 10 : Diagramme de séquence technique
: cas d'une recherche avec nom de ville par ordinateur ou
Smartphone
La figure 10 montre l'échange de message dans
le système lorsqu'un utilisateur souhaite avoir la liste des pharmacies
de garde à partir d'un ordinateur ou Smartphone disposant d'un
navigateur web. Il envoie à l'objet a serviceclient » sa
ville. Ce dernier utilise le service web
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 20
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
représenté par l'objet « wsdl
» pour avoir accès au service demandé par
l'utilisateur et renvoyé le résultat de cette requête sous
forme de tableau.
Figure 11 : Diagramme de séquence technique
: cas d'une recherche avec coordonnées GPS par ordinateur ou
Smartphone
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 21
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
A la différence de la figure 10, la figure 11
décrit le comportement de l'application lorsqu'un utilisateur transmet
à l'application ses coordonnées géographiques (latitude et
longitude). Grâce à ces coordonnées, l'utilisateur peut
consulter sur une carte géographique la liste des pharmacies de garde
à proximité de sa position et ainsi avoir un itinéraire et
une estimation de distance à parcourir.
Figure 12 : Diagramme de séquence technique
: cas d'une recherche par SMS avec téléphone GSM
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 22
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 23
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
La figure 12 présente le comportement de l'application
lorsqu'un utilisateur souhaite connaître la liste des pharmacies de garde
à proximité de son quartier. L'échange de message est
pratiquement semblable à celle des figures 10 et 11.
3.2.2. Diagramme de classe
Grâce à ces diagrammes de séquences
techniques, nous remarquons que de nouveaux objets interviennent dans notre
système d'information. Il est nécessaire de les
représenter dans notre diagramme de classe afin d'avoir un
système d'information répondant aux caractéristiques
souhaitées.
La figure 13 décrit le diagramme de classe
nécessaire pour la mise en oeuvre de notre application :
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Figure 13 : Diagramme de classe
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 24
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 25
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
CHAPITRE IV : IMPLEMENTATION ET RESULTATS
4.1. Implémentation
Nous présentons l'environnement de travail et les
technologies utilisées pour la mise sur pied de notre service.
4.1.1. Environnement de travail
Ce travail a été élaboré sur un
ordinateur portable dont les caractéristiques sont les suivantes :
Tableau 4 : Tableau des caractéristiques
de l'environnement matériel et logiciel
Marque
|
emachines
|
Modèle
|
eME443
|
RAM
|
3Go
|
Disque dur
|
320 Go
|
Processeur
|
AMD E-300 radeom (tm) HD Graphics (2 CPUs)
1.3GHz.
|
Système d'exploitation
|
Windows 7 64 bits
|
4.1.2. APIs utilisées
Pour le développement de l'application web, un ensemble
d'APIs a été utilisé parmi lesquels :
? NetBeans IDE 8.0
NetBeans est un environnement de développement JAVA,
open source. Il intègre ainsi des modules (plugins) de base permettant
de faciliter le travail du programmeur. Mais depuis, les
récentes versions intègrent des plugins permettant aux
programmeurs de développer en des langages autres que JAVA. Ainsi, que
ce soit en PHP, CU, Python, ... il désormais possible d'utiliser ces
langages de développement en NetBeans.
? Adobe Dreamweaver CS6
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 26
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Adobe Dreamweaver CS6 est un outil de développement
orienté web. Il offre ainsi la possibilité aux
développeurs de pouvoir avoir un aperçu en direct du travail
effectué sur chaque page web développé facilitant ainsi
tout problème de design.
? OZEKI NG - SMS GATEWAY [OZEK 15]
OZEKI NG - SMS GATEWAY est une API de gestion de SMS (envoi et
réception) en divers langages de programmation (PHP, JAVA, CU, ...). Il
permet ainsi d'envoyer et de recevoir des SMS à travers un modem GSM, de
stocker ses SMS dans une base de données pour un traitement
ultérieur.
4.1.3. Langage de programmation
Les langages de programmation utilisés pour la mise sur
pied de notre application et service web sont :
- HTML5 / CSS3: Dernière version
majeure d'HTML, c'est un format de données conçus pour
représenter les pages web et utilisant le CSS pour la mise en forme
[mat, 12]. Ce langage nous a été nécessaire pour
la mise sur pied des interfaces graphiques
- JavaScript: C'est un langage de
programmation de script principalement utilisé pour rendre les pages web
interactives ;
- Webix : C'est une bibliothèque
JavaScript et HTML5 utile pour le développement des applications web et
mobiles. Il a été utilisé pour le
développement des interfaces graphique côté utilisateur
;
- PHP: C'est un langage de programmation
libre orienté objet principalement utilisé pour produire des
pages web dynamiques via un serveur http [Das et Ge, 07]. Ce langage
nous a été utile pour la communication avec le serveur web et
l'échange des données avec le serveur de BD ;
- XML : C'est un langage de balisage qui sert
à encoder ou structurer les données [Sch, 07]. Ce
langage a été utilisé pour la mise sur pied du service web
qu'offre notre application.
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
4.2. Architecture de travail
L'analyse et la conception de notre système
effectuées, nous allons réaliser l'architecture logicielle et
matérielle de notre système. Ces architectures se
présentent sous forme de diagramme avec d'une part le diagramme de
composants qui représente l'architecture logicielle et le diagramme de
déploiement qui représente l'architecture matérielle.
4.2.1. Diagramme de composants
Le diagramme de composants décrit
l'organisation du système du point de vue des éléments
logiciels comme les modules (paquetages, fichiers sources,
bibliothèques, exécutables), des données (fichiers,
bases de données) ou encore d'éléments de configuration
(paramètres, scripts, fichiers de commandes) [Lau 09].
Grâce à ce diagramme, nous avons la possibilité de
mettre en évidence les différents composants (Un composant est
une unité autonome offrant un ou des services bien précis) de
notre application comme le montre la figure suivante :
Figure 14 : Diagramme de composants
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 27
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
4.2.2. Diagramme de déploiement
Un diagramme de déploiement est une vue
statique qui sert à représenter
l'utilisation de l'infrastructure physique par le
système et la manière dont les composants du
système sont répartis ainsi que leurs relations entre eux
[Lau 09].
A partir des composants, nous constatons que pour le
déploiement de notre système, il est nécessaire d'utiliser
une architecture 3-tiers contenant un serveur d'application, un serveur de base
de données et une partie d'accès aux données (le plus
souvent un navigateur web). Ainsi, le diagramme suivant illustrera notre
diagramme de déploiement :
Figure 15 : Diagramme de
déploiement
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 28
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015
Par KUIKWAN NYA Cédric Page 29
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
4.3. Résultats et coût du projet
Au bout de cette implémentation, nous présentons
sous forme de captures d'écran commentées les résultats et
le coût total du projet.
4.3.1. Résultats
? Côté administrateur
Les figures suivantes sont celle visible du côté
administrateur du système.
Figure 16 : Ecran d'authentification de la page
d'administration
A ce niveau, l'administrateur du système doit se
connecter en renseignant son identifiant et son mot de passe afin de pouvoir
effectuer des mises à jour du système.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 30
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Figure 17 : Ecran d'accueil : Gestion des
pharmacies et gestion des gardes.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 31
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Après authentification de l'administrateur, il peut se
rendre sur la rubrique gestion des pharmacies pour ajouter, modifier ou
supprimer une pharmacie. Il en est de même pour les gardes et les
villes.
Figure 18 : Interface de connexion d'OZEKI
NG
A ce niveau l'administrateur doit entrer son nom d'utilisateur
et son mot de passe pour accéder à l'application de gestion de
SMS.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 32
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Figure 19 : Interface d'accueil de l'API OZEKI
NG
A ce niveau, l'administrateur a accès à
l'ensemble des fonctionnalités offertes par l'API. Il peut consulter,
envoyer ou même supprimer des messages ; il peut aussi définir le
lieu de sauvegarde par défaut des messages. Dans notre cas, nous le
faisons au sein d'une base de données nommée «
pharmaciesms ».
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 33
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Figure 20 : Ecran d'administration d'envoi et de
réception de SMS de la plateforme OZEKI NG
? Côté utilisateur via
ordinateur
Les figures suivantes sont celles visibles du côté
utilisateur du système.
Figure 21 : Ecran d'accueil du site
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
A l'accueil, le système demande à l'utilisateur
s'il souhaite que le navigateur soit localisé. Si ce dernier accepte, le
navigateur récupère la latitude et la longitude du navigateur
pour traitement et permet à l'utilisateur de voir les pharmacies
à proximité de sa position comme nous le montre la figure
suivante.
Figure 22 : Ecran des résultats de
recherche avec carte et liste des pharmacies.
A ce niveau, il est possible pour l'utilisateur d'avoir la
liste des pharmacies de garde ainsi que celle la plus proche.
? Côté développeur d'application
web.
Le service offert par l'application sera accessible à
l'adresse
www.pharmacie.cm/ws/service.wsdl.
Le développeur, pour l'intégrer à son application doit
spécifier le chemin d'accès menant lors du développement
de son application.
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 34
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 35
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
? Récapitulatif du travail
effectué
Le tableau présente l'ensemble du travail effectué
pour la mise sur pied de
l'application :
Tableau 5 : Tableau
récapitulatif
Fonctionnalités
|
Réalisé
|
En cours
|
Non-Réalisé
|
Recherche de pharmacie de garde (par internet ou
SMS)
|
90%
|
10%
|
0
|
Calcul de distance
|
90%
|
10%
|
0
|
Tracé d'itinéraire
|
40%
|
50%
|
10%
|
Géolocalisation
|
100%
|
0
|
0
|
Service web
|
90%
|
10%
|
0
|
Ce tableau montre que plus de 82% l'ensemble des
fonctionnalités a été développé pour cette
application. Ce qui nous permet d'avoir une entière satisfaction quant
au travail effectué. Pour la fonctionnalité « tracé
d'itinéraire », il est nécessaire que les pharmacies aient
une adresse reconnue par le système Google MAP ce qui n'est pas encore
le cas pour l'ensemble des pharmacies de la ville de Yaoundé.
4.3.2. Coût du projet
Nous présentons le coût du projet. Il prend en
compte les intervenants et les tâches effectuées par ceux-ci.
Tableau 6 : Liste des intervenants avec tarif
journalier
Equipe
|
Infographiste
|
Développeur
|
Ingénieur
|
Utilisateur
|
Effectif
|
1
|
1
|
1
|
5
|
Tarif / jour (en FCFA)
|
70.000
|
130.000
|
200.000
|
10.000
|
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
Tableau 7 : Répartition du travail par
intervenant et coût total
Tâches
|
Intervenants
|
Unité
|
QTE
|
P.U
(En FCFA)
|
Coût (en FCFA)
|
Etude théorique
|
Ingénieur
|
Jour
|
21
|
200.000
|
4.200.000
|
Analyse
|
Ingénieur
|
Jour
|
20
|
200.000
|
4.000.000
|
Conception du système
|
Ingénieur
|
Jour
|
30
|
200.000
|
6.000.000
|
Implémentation
|
Infographiste Développeur
|
Jour
|
10
30
|
70.000
130.000
|
700.000
3.900.000
|
Test développeur
|
Développeur
|
jour
|
7
|
130.000
|
910.000
|
Test Utilisateur
|
Utilisateur
|
Jour
|
10
|
10.000
|
500.000
|
Total
|
|
20.210.000
|
Au vue du tableau 7, nous évaluons ce projet à
hauteur de 20.100.000 FCFA. La durée de ce projet est
évaluée à 128 jours allant de la phase d'analyse à
la phase de test (test développeur et test utilisateur).
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 36
Mémoire de fin d'étude de Master en
sciences de l'Ingénieur.
UPAC-FTIC, septembre 2015 Par KUIKWAN NYA
Cédric Page 37
Mise en oeuvre d'une plateforme de
géolocalisation pour la recherche optimale des pharmacies de
garde
CONCLUSION GENERALE
Le travail présenté dans ce mémoire a
été effectué dans le cadre de la mise en oeuvre d'une
application et des services web de géolocalisation pour la recherche
optimale des pharmacies de garde. Nous avons ressorti les problèmes
auxquels sont confrontés les utilisateurs (avoir la liste des pharmacies
de garde à proximité de leur position) et les développeurs
(intégrer les services de recherche de pharmacies de garde à leur
application). Une étude minutieuse a été faite sur des
sites internet et applications mobiles capable de donner la liste des
pharmacies de garde et nous avons constaté qu'ils ne donnent pas la
possibilité aux utilisateurs de connaître les pharmacies de garde
à proximité de leur position et aux développeurs de
pouvoir intégrer ces services à leur application. Pour palier
à ces manquements, une analyse et une spécification des besoins
fonctionnels et non fonctionnels du système à implémenter
ont été effectuées et nous avons choisi pour la conception
le langage ou méthode de modélisation UML. Partant du digramme
des cas d'utilisation, nous avons effectué la conception
détaillée du système en réalisant les diagrammes de
séquence et de classe. Grâce au diagramme de composants et de
déploiement, nous avons implémenté l'application et les
services web de géolocalisation pour la recherche optimale des
pharmacies de garde.
L'application et les services web vont permettre aux
utilisateurs de gagner en temps dans leur recherche dans leur recherche de
pharmacie de garde à proximité de leur position et aux
développeurs d'application de gagne en temps grâce à
l'intégration de ces services dans leur application.
Cependant, cette application ne résout pas le
problème du trafic routier. Les utilisateurs ne peuvent pas
connaître la liste des pharmacies de garde à proximité de
leur position en tenant compte des embouteillages et les développeurs
n'ont pas la possibilité d'intégrer ce service à leur
application.
Tout système est appelé à évoluer
et nous pouvons suggérer des améliorations à cette
application pour la rendre plus utile à savoir :
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 38
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
- Déterminer la liste des pharmacies de garde à
proximité d'une personne et qui dispose du médicament
recherché;
- Permettre le tracé de l'itinéraire menant de
la position de la personne aux pharmacies de garde avec la distance à
parcourir;
Mise en oeuvre d'une plateforme de géolocalisation
pour la recherche optimale des pharmacies de garde
BIBLIOGRAPHIE
[Sam, 01] Samuel TARDIEU, Système
répartis. RFC 1149. 2001. [En ligne] lien
internet :
http://www.rfc1149.net/download/documents/DS.pdf,
consulté le 14 septembre 2015.
[Sac, 06] Sacha KRAKOWIAK. Composition
d'application réparti : Service web. Université
Joseph Fourrier - Projet Sardes (Inria- IMAP-LSR). 2006. [En ligne]. Lien
internet :
http://proton.inrialpes.fr/,
consulté le 15 septembre 2015.
[Nou, 10] Nouha KHYARI. « Locate my car
» - Google map Android. Rapport de stage. Diplôme
d'ingénieur. Ingénierie informatique. Ecole nationale des
sciences de l'informatique Tunisie, 2010. [En ligne]. Lien internet :
www.memoireonline.com/03/12/5548/m
Rapport-de-stage-sur-le-projet-Locate-my-car-google-map-android.html
(consulté le 20 juillet 2015)
[Lau, 09] Laurent AUDIBERT. UML2 de
l'apprentissage à la pratique. Ellipse. France. 2007
[Mat, 12] Mathieu NEBRA. Apprenez à
créer votre site web avec HTML5 - CSS3. Le
livre du zéro. 2012
[Das et Ge, 07] Eric DASPET et Cyril Pierre De GEYER.
PHP 5 avancé 4ème édition.
Eyrolles. 2007
[Sch, 07] Daniel K. SCHNEIDER, introduction
à XML et DOM. TEFAC. 2007
[Dev, 06] NIP. Conception MVC Model - View-
Controller [en ligne]. lien internet :
http://dico.developpez.com/html/3020-Conception-MVC-Model-View-Controller.php.
2006. (Consulté le 19 août 2015)
Mémoire de fin d'étude de Master en sciences de
l'Ingénieur.
UPAC-FTIC, septembre 2015 Par
KUIKWAN NYA Cédric Page 39
|