Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
PROJET
PRESENTEE POUR OBTENIR LE TITRE :
A.U. : 2015-2016
ISET Mahdia Adr : Av. Mourouj 5111 Hiboun Mahdia Tél : 73683407 / 73683410 Fax : 73683399
Dédicaces
Je dédie ce projet à :
Mes chers frères pour leur grand amour et leur soutien qu'ils
jour.
Ainsi ceux qui mon aidées durant cette période pour effectuer mon projet dans
les meilleurs conditions, et je tiens également à remercier virement tous ceux qui
m’ont fait preuve d’un grand esprit de collaboration et d’initiative tous les
personnels de l’équipe technique et qui m’apportent une aide précieuse par leurs
suggestion et leurs conseils.
Que tous ceux qui ont contribué de près ou de loin à la réalisation de ce travail
trouvent ici l’expression de nos sincères gratitudes.
I. Introduction ....................................................................................................................... 3
I. Introduction ....................................................................................................................... 9
I. Introduction ..................................................................................................................... 26
1. Historique .............................................................................................................. 30
a. Application ................................................................................................... 30
3. Conclusion ............................................................................................................. 41
Bibliographie........................................................................................................................... 43
Netographie ............................................................................................................................. 44
Annexe ..................................................................................................................................... 45
Liste des Figures
Introduction générale
Dans un monde actif et continuellement évolutif, la motivation d'avoir des moyens
performants et efficaces de communication et d'échange d'informations devient de plus en
plus fondamentale. Cette motivation donne naissance à une révolution favorisant le travail à
distance et l'accès aux besoins en temps réduit à l’aide d’internet qui a bouleversée les
habitudes de travail dans de nombreux métiers.
C’est dans ce cadre qu’entre le sujet de notre PFE. Il s’agit en fait, de concevoir et de
développer une solution informatique assurant l’exposition des informations des monuments
et des endroits les plus connus de la ville de Mahdia sur un rayon de 100 km.
Pour une meilleure accessibilité à ces informations, nous avons décidé de développer une
application mobile capable de gérer et d’exposer toutes ses informations et de les synchroniser
à travers la communication avec une application web dédiée.
En effet, les applications mobiles ne cessent d’enregistrer une croissance de plus en plus
importante, qui sont facilitent la vie des internautes. Par conséquent, il doit y avoir une
montée rapide en compétences afin de s’adapter aux nouveaux besoins, et développer des
solutions intégrantes plusieurs composantes mobiles, pour des applications mobile sur divers
plateforme comme : IOS, Windows Phone, Bada, Android etc.
Ce rapport détaillera les différentes phases dont nous sommes passées par afin d’aboutir à une
application fiable et satisfaisante. Pour cela le rapport définit le travail qui nous avons
effectué, il est composée par trois grands chapitre. Le premier chapitre aura pour présente
l’entreprise et l’analyse et spécification des besoins, le deuxième chapitre est consacré aux
conceptions. Le dernier chapitre comporte les détails de réalisation de notre application.
I. Introduction
Dans ce chapitre, nous allons présenter en premier lieu la société dans laquelle nous avons
effectué notre stage de fin d’étude. Ensuite, nous allons faire une étude de l’existant sur les
modalités des travaux actuelles. Enfin nous allons spécifier l'ensemble des besoins
fonctionnels et non fonctionnels liés à notre application.
1. Description de l’existant
L’application que nous voulons développer est dédiée aux utilisateurs ayant visité le
gouvernement de Mahdia ou bien qui souhaite la visiter dans la future.
Le tourisme mobile propose aux utilisateurs de téléphone portable de se situer sur une carte
dans la ville où ils se trouvent. Le service comprend non seulement la géo localisation en
temps réel, mais également, des informations sur la ville et ses centres d’intérêts (musées,
parcs, monuments, événements culturels ou artistiques du moment, etc…) : un vrai guide
touristique. L’originalité est qu’il permet à l’utilisateur de personnaliser son guide selon sa
localisation.
Conscients que nous vivons actuellement le passage d’E-tourisme au M-tourisme, nous avons
décidé de saisir cette opportunité en lançant une application mobile touristique. Notre
particularité est que notre application porte dans son spectre le tourisme durable et solidaire.
Nous avons opté pour ce choix parce que nous avons l’intime conviction que le tourisme de
masse n’a plus sa place privilégiée en Tunisie et que l’avenir du secteur touristique est dans le
tourisme alternatif.
2. Critique de l’existant
Selon une étude réalisé par d’Orange, « aujourd'hui, plus d'un tiers de la population mondiale
surfe sur Internet depuis son téléphone mobile. En un an, leurs ventes ont progressé de 74%.
Plus d'un quart de la population mondiale est équipée et on estime que les smartphones
couvriront la totalité du parc de la téléphonie mobile d'ici 2020. Le mobile est en passe de
devenir le principal canal de avant, pendant et après le voyage. Smartphones et tablettes, les
nouveaux outils du voyageur pour s'informer, le voyageur utilise de moins en moins
l'ordinateur mais de plus en plus son mobile (+ 31 % par rapport à 2011) et aussi sa tablette
(+17 % par rapport à 2011). 44 % des voyageurs en 2012 ont téléchargé une application
mobile en lien avec leur voyage. La clientèle de loisirs réserve davantage sur un site mobile:
dans 40 % des cas pour un hébergement, dans 38 % des cas pour le vol et dans 33 % des cas
pour la location de voiture. L'usage de la vidéo : 66 % consultent des vidéos pour avoir des
idées de voyage et 64 % consultent les vidéos d'une destination avant le voyage. Les touristes
européens qui partent en vacances l'été passent quotidiennement 2 heures et 25minutes à
visiter et faire des activités culturelles sur leur Smartphone ou tablette. »
Ces données, confortent notre conviction que les applications mobiles représentent une
nouvelle alternative très attrayante qui permet à la fois de promouvoir la destination Tunisie
en général et le tourisme culturel en particulier.
3. Solution proposée
Notre solution vise à s’imposer en offrant une bonne qualité de services, une fluidité dans la
navigation et une bonne performance en temps de réponse.
Application mobile permettent à des revenant ou bien des touristes potentiel d’accéder
à un ensemble des données relatif aux diffèrent endroits la visite de Mahdia.
Application web concernent la gestion centralisée de toutes les données du système à
développer.
l’accent sur les besoins fonctionnels ainsi que les besoins non fonctionnels pour éviter le
développement d’une application non satisfaisante.
1. Besoins fonctionnels
Un acteur joue le rôle d’une entité externe (utilisateur humain, dispositif matériel ou autre
système) qui interagit directement avec le système étudié. L’acteur représenté dans notre
application peut être soit un administrateur, soit un visiteur.
Les besoins non fonctionnels décrivent les objectifs liés aux performances du système et aux
contraintes de son environnement. Ses exigences techniques sont souvent exprimées sous
forme d’objectifs spécifiques que doit atteindre le système.
Assurer une cohérence et une crédibilité aux informations stockées dans la base de
données.
L’ergonomie des interfaces de l’application mobile et web.
Sécurité : à développer d’avantage
6 Institut Supérieur d’Études Technologiques de Mahdia 2015/2016
Projet Fin d’Études Chapitre 1 : Analyses et Spécifications des Besoins
Qualité
Accessibilité et performance
Renouvellement
Fiabilité
VI. Conclusion
À travers ce chapitre, nous avons présenté l’entreprise et le cadre du projet. En outre nous
avons analysé et étudié les différentes applications de tourisme afin d’enrichir nos
fonctionnalités et augmenter la performance de l’application pour répondre à nos besoins.
Ainsi, nous nous sommes positionnés dans le contexte de notre projet, ceci va nous permettre
d’entamer la prochaine étape qui consiste à présenter la phase de conception.
Chapitre 2 : Conception
Chapitre 2 : conception
I. Introduction
Le Modèle conceptuel de données est une représentation statique du système d’information. Il
a comme objectif de constituer une représentation claire et cohérente des données manipulées
dans le système d’information.
Cette section sera présentée comme suit : nous commençons par le choix de la méthodologie
de conception et justification. Ensuite nous identifions les acteurs et les diagrammes des cas
d’utilisation, puis nous présentons les diagrammes de séquence, enfin le diagramme de classe.
1. Langage UML
« UML » (en anglais Unified Modeling Language ou langage de modélisation unifié) est un
langage de modélisation graphique à base de pictogrammes. Il est apparu dans le monde du
génie logiciel, dans le cadre de la « conception orientée objet ».
Couramment utilisé dans les projets logiciels, il peut être appliqué à toutes sortes de systèmes
ne se limitant pas au domaine informatique.
o Diagramme de classes
o Diagramme d'objets
o Diagramme de composants
o Diagramme de déploiement
o Diagramme de profils
Diagrammes comportementaux :
o Diagramme états-transitions
o Diagramme d'activité
o Diagramme de séquence
o Diagramme de communication
o Diagramme de temps
2. Utilisation de l’UML
1. Les Acteurs
Un acteur représente l'abstraction d'un rôle joué par des entités externes (utilisateur, dispositif
matériel ou autre système) qui interagissent directement avec le système (réception
d’information, etc.). Pour notre application, il y aura qu'un seul acteur. Nous allons nommer
cet acteur tout simplement : « Utilisateur ».
Chaque usage que les acteurs font du système est représenté par un cas d’utilisation. Chaque
cas d’utilisation représente une fonctionnalité qui leur est offerte afin de produire le résultat
attendu. Ainsi, le diagramme de cas d’utilisation décrit l’interaction entre le système et
l’acteur en déterminant les besoins de l’utilisateur et tout ce que doit faire le système pour
l’acteur.
Dans ce sens nous avons fait deux applications, d’une part une application web pour la
gestion des données et d’autre parte une application mobile.
<<extend>>
<<extend>>
<<extend>> Contacter les responsables
gérer endroit
<<extend>>
<<extend>>
<<extend>>
Lister Favoris <<Acteur>>
:Serveur Google Map
Visualiser Carte
Utilisateur <<include>>
<<Acteur>>
:Serveur web
<<extend>>
Participer au événement
gérer événement
N.B : Dans l’application mobile l’utilisation de l’authentification n’est pas utilisée dans notre
cas. Les utilisateurs sont passé en tant que anonyme.
Ajouter Endroit
<<extend>>
<<include>>
Ajouter Parcours
<<extend>>
Gérer parcours <<extend>> Modifier Parcours
Authentification
Supprimer Parcours
Administrateur <<extend>>
Lister Parcours
<<extend>>
<<include>>
Ajouter événement
<<extend>>
Modifier événement
<<extend>>
Gérer événement Lister événement
<<extend>>
Supprimer événement
<<extend>>
<<include>>
Ce diagramme représente l’intersection entre deux application mobile et web pour réfléchira
les données.
Pour assurer que l’application est à jour il doit être faire des synchronisations des
données avec l’application web dans certains temps prédéfini.
Gérer endroit
Utilisateur
Lister endroit requête
Traitement
Résultat
Afficher liste des endroits
l'importation de l'image
Exporter l'image
opt [Contacter]
Demande d'appelle
Extraction le numéro
établir l'appelle
Traitement
Retourne les données
Affichage Map
Ce diagramme décrit la gestion des endroits dans partie mobile pour laquelle
l’utilisateur doit choisir endroit puis le système afficher les détails sur l’endroit
sélectionné par suite à partir des options ajouter aux favoris, contacter les
propriétaires, visualiser en carte « MAP » et une description vocale.
Gérer Parcours
par
Selectionner parcours requête
Importer image
Export image
Traitement
Afficher Map
Ce diagramme décrit la gestion des parcours, lorsque l’utilisateur choisira de lister les
parcours il y a deux taches effectués simultanément c’est l’extraction les données à
partir une base des données local « Sqlite » et la deuxième c’est l’importation de
l’image de serveur web pour l’afficher dans avec les détails sur le parcours.
Gérer év ènement
Utilisateur
Lister événements requête
par
Selectionner événement requête
importer image
Temps de repense
export l'image
opt [Participer]
demande de participation envoye les données
sauvgarde les données
Résultat
Afficher le résultat
V. Diagramme de classe
Le diagramme de classe représente les classes intervenant dans le système. Le diagramme de
classe est une représentation statique des éléments qui composent un système et de leurs
relations.
Les diagrammes de composants et les diagrammes de déploiement sont les deux derniers
types de vues statiques en UML. Les premiers décrivent le système modélisé sous forme de
composants réutilisables et mettent en évidence leurs relations de dépendance. Les seconds se
rapprochent encore plus de la réalité physique, puisqu'ils identifient les éléments matériels
(PC, Modem, Station de travail, Serveur, etc.), leur disposition physique (connexions) et la
disposition des exécutables (représentés par des composants) sur ces éléments matériels.
VII. Conclusion
Ce chapitre a été consacré à différentes étapes de la conception détaillée. Du raffinement du
diagramme de cas d’utilisation, vers du diagramme de séquence de plusieurs cas d’utilisations
pour montrer les interactions entre les acteurs et le système. Finalement nous avons terminé
avec le diagramme de classe avec lequel nous avons pour présenter la structure de notre
application.
Chapitre 3 : Réalisation
Chapitre 3 : Réalisation
I. Introduction
En détaillent ce chapitre, nous sommes déjà passé par les étapes nécessaires à fin d’entrainer
la phase de la réalisation. Le problème a été profondément analysé, nous avons défini une
conception complète à notre jugement. Une conception qui comporte et décrit tous les besoins
de l’application.
1. Environnement matériel
Marque ACER
Processeur Intel Core i7 2.4GHz
Mémoire 8 GO
Disque Dur 1 TO
Système d’exploitation Windows 10 Professionnel
Tableau 7 : Environnement matériel 1
2. Environnement logiciel
Android studio
Notepad ++
Notepad ++ est un éditeur de texte générique codé en C++. Ce logiciel, basé sur la
composante Scintilla, a pour but de fournir un éditeur léger (aussi bien au niveau de la taille
du code compilé que des ressources occupées durant l’exécution) et efficace. Il est également
une alternative au bloc-notes de Windows (d’où le nom). Le projet est sous licence GPL.
FileZilla
FileZilla est un client FTP, FTPS et SFTP, développé sous la licence publique générale
GNU.
Sqlite Browser
Sqlite Browser est un logiciel gratuit, domaine public, outil visuel open source utilisé
pour créer, concevoir et éditer des fichiers de base des données compatible avec Sqlite.
Power Designer
Power Designer est un logiciel de conception créé par la société Sybase, qui permet de
modéliser les traitements informatique en utilisent les diagrammes UML.
WampServer
Iconion
Iconion vous permet de convertir n'importe quelle police d'icône en une superbe icône
au format png en y ajoutant couleur, ombre, arrière-plan, gradient, traits, et plusieurs autres
éléments fantaisistes.
JAVA
XML
PHP
PHP: Hypertext Preprocessor, plus connu sous son sigle PHP (acronyme récursif), est
un langage de programmation libre, principalement utilisé pour produire des pages Web
dynamiques via un serveur HTTP, mais pouvant également fonctionner comme n'importe
quel langage interprété de façon locale. PHP est un langage impératif orienté objet.
SQL
HTML5
JQuery 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. La première version est
lancée en janvier 2006 par John Resig.
JSON
Bootstrap
Bootstrap est une collection d'outils utile à la création de sites et d'applications web.
C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons, outils de
navigation et autres éléments interactifs, ainsi que des extensions JavaScript en option..
1. Historique
Android doit son nom à la startup éponyme spécialisée dans le développement d'applications
mobiles rachetée par Google en août 2005, nom venant lui-même d'« androïde » qui désigne
un robot construit à l'image d'un être humain.
2. Architecture Android
Android est basé sur un noyau linux 2.6, au-dessus l’architecture générale :
a. Application
Android repose sur un noyau Linux (version 2.6) qui gère les services du système, comme la
sécurité, la gestion de la mémoire et des processus, la pile réseau et les pilotes. Il agit
également comme une couche d'abstraction entre le matériel et la pile logicielle.
Cette application permet à l’administrateur de gérer les endroits, les parcours, les évènements
(insertion, modification, suppression et l’affichage). Pour cela nous hébergons cette
application dans le web sous le nom de domaine stage.lelkol.net
a. Interface d’authentification
b. Interface d’accueil
Cette interface représente l’étape de l’ajoute des endroits par l’administrateur qui
contient nom, description, long, lat, numéro statues, type, et image de type png
L’interface représente la liste des endroits qui contient l’image, description, latitude,
longitude, statuts et les actions (modification et suppressions). Ainsi deux actions de
modification et suppression.
Depuis cette interface l’administrateur peut ajouter des nouveaux parcours et les
endroits qui sont formulent le parcours.
Dans cette interface en trouvent les détails les parcours. Ainsi deux bouton
modification et suppression.
a. Icône de l’application
La figure représente les différents types des icônes de l’application (hdpi, mdpi, xhdpi,
xxhdpi, xxxhdpi).
Cette interface représente le chargement des données de la base des données local
« Sqlite » dans l’application. Ainsi les informations supplémentaires.
Depuis cette interface en peut gérer la carte de l’api Google Map, les fonctionnalités
sont :
o Localisation géographique de l’utilisateur sur la carte
o Changement le type de carte (Normale, Hybrid, Satellite, terrain).
o Recherche les endroits
o Et un bouton de retour vers la page d’accueil.
Dans cette interface, l’utilisateur permet de gérer les endroits et profitez de ces
fonctionnalités suivante :
o Consulte la liste des endroits par son catégorie (Restaurant, cafés, etc.).
o Consulter les détails pour chaque endroit (image, description, etc.).
o Afficher ma position les endroits la plus proche de ma position.
o Gérer favoris c’est-à-dire que en peut ajouter, supprime et consulte les endroits
3. Conclusion
Conclusion générale
Au bout de notre cursus en licence informatique, nous avons été chargés de réaliser un projet
de fin d’études. Notre travail s'est basé sur le développement d'un programme sur les
technologies mobiles (Smartphone). Ceci nous a amené à découvrir une nouvelle plateforme
de développement et à enrichir notre savoir et notre expérience.
Au cours de la phase de réalisation de notre application, nous avons élaboré une étude
préalable sur les smart phones et son importance sur le plan social afin de préciser le but
principal pour la future application. Cette phase a constitué le point de départ pour l’étape
d’analyse et de spécification des besoins. Une fois nos objectifs sont fixés nous avons
enchaîné avec la conception afin de mener à bien notre projet. Nous avons procédé à la phase
de réalisation au cours de laquelle nous nous sommes familiarisés avec le langage de
programmation java.
Pour conclure, notre travail peut être sujet à des extensions. En effet, nous envisageons
d’ajouter une application «mTorism» sur Play store dans notre travail, la possibilité
développer sous d’autres plateformes.
Bibliographie
[1] L'art du développement Android 4eédition, 1er décembre 2012, de Grant Allen
[2] Développez pour Android, 1re édition, 1er mars 2011, de Cyril Mottier et Ludovic
Perrier.
Netographie
[1] http://stackoverflow.com
[2] https://openclassrooms.com
[3] https://developers.google.com
[4] http://android.developpez.com/cours
[5] https://www.youtube.com
[6] http://www.tutorialspoint.com/android
[7] http://stage.lelkol.net
[8] http://getbootstrap.com
[10] http://phpmyadmin.ovh.net
[11] http://www.ovh.tn
[12] https://www.wikipedia.org
Annexe