Académique Documents
Professionnel Documents
Culture Documents
CURRICULUM VITAE
RAMPANARIVO Andrianantenaina Fidèle
Lot 05G40 Bis Ampatana ANTSIRABE – MADAGASCAR
Tél: 033 49 198 28, 034 04 192 72
26 ans, célibataire
rampanarivoandry@gmail.com
I -FORMATIONS ET DIPLÔMES
MINI-PROJETS EN INFORMATIQUE
Juin 2013 : Réalisation d’un logiciel « Gestion de Service-Employé sous JAVA et
surveillance de sa Base de Données sous postgreSQL.»
Décembre 2012 : Réalisation d’un logiciel « Système d’Information Géographique (SIG) des
22 régions de Madagascar.»
Novembre 2012 : Réalisation d’un logiciel « Gestion d’une location de voiture utilisant le
Framework Java Server Faces et Hibernate.»
III -COMPETENCES INFORMATIQUES
DEDICACE
Je dédie ce mémoire :
A Dieu éternel, qui est mon appui tout au long de mes études ;
A mes Parents RAPANARIVO Désiré et RASOARIMALALA Jeannette qui m’ont
soutenu aussi bien matériellement que moralement et sans ménager leurs efforts;
A mes frères et sœurs et toute la famille ;
A tous les personnes proches de moi qui m’ont aidé moralement pendant les périodes
difficiles de mes études ;
A tous les personnels de la société Madagile Ambohitsoa Mahazoarivo
Antananarivo ;
A tous les étudiants membres du groupe Texas qui m’ont fournis des aides précieuses
et aussi d’encouragement.
iii
REMERCIEMENTS
Nous tenons à remercier Dieu qui, nous a donné la force et la santé pendant la période
d’études et aussi pour la bonne réalisation du stage.
Nous remercions tous les employés et les stagiaires de la société Madagile pour tout
le temps et l’aide qu’ils nous ont offert pour la réalisation de ce projet, et aussi la solidarité
et la bonne humeur dans laquelle nous avons pu travailler ensemble durant le stage.
Nous exprimons également nos sincères remerciements plus particulièrement aux
personnes suivantes :
Docteur RAFAMANTANANTSOA Fontaine Directeur de l’Ecole Nationale
d’Informatique, d’avoir assuré la bonne direction des étudiants ainsi que l’école et qui
nous a permis d’effectuer le stage pour compléter notre formation ;
Monsieur ANDRIAMAHEFARIVO Serge, Directeur de la société Madagile, qui n’a
pas hésité à nous prendre comme stagiaire au sein de son établissement ;
Monsieur RABEMANANTSOA Désiré, Chef de projet de la société Madagile et
aussi notre encadreur professionnel, qui nous a énormément aidé et donné des
conseils pour réaliser le projet ;
Docteur RATIARSON Venot, enseignant à l'Ecole Nationale d'Informatique, de nous
avoir encadré pédagogiquement, dirigé et donné des remarques pendant le stage ;
Tous les enseignants de l'Ecole Nationale d'Informatique de nous avoir transmis leurs
expériences et leurs connaissances
Notre famille pour leur soutien moral et financier, tout au long de nos études.
A tous ceux que nous oublions mais qui d’une manière ou d’autre manière nous ont
permis de bien terminer notre stage.
iv
SOMMAIRE
CURRICULUM VITAE ................................................................................................................ i
DEDICACE ................................................................................................................................ iii
REMERCIEMENTS .................................................................................................................. iv
SOMMAIRE................................................................................................................................ v
NOMENCLATURE .................................................................................................................... vi
LISTE DES TABLEAUX ........................................................................................................... vii
LISTE DES FIGURES .............................................................................................................. viii
INTRODUCTION GENERALE .................................................................................................. 1
Partie I : ...................................................................................................................................... 2
PRESENTATION ...................................................................................................................... 2
Chapitre 1. Présentation de l’Ecole Nationale d’Informatique .................................................. 3
Chapitre 2. Présentation de la Société ...................................................................................... 10
Chapitre 3. Description du Projet ............................................................................................. 12
Partie II : ................................................................................................................................... 15
ENSEMBLE DES TECHNOLOGIES ..................................................................................... 15
Chapitre 4. Informatique mobile, Smartphones et internet mobile ........................................ 16
Chapitre 5. Système d’exploitation Android .......................................................................... 21
Partie III : ................................................................................................................................. 30
ANALYSE ET CONCEPTION ............................................................................................... 30
Chapitre 6. Analyse préalable ................................................................................................. 31
Chapitre 7. Méthodologie de développement ......................................................................... 35
Chapitre 8. Présentation de la notation UML ......................................................................... 41
Chapitre 9. Conception détaillée ............................................................................................. 46
Partie IV : ................................................................................................................................. 67
REALISATION ....................................................................................................................... 67
Chapitre 10. Outils, langages, architecture informatique Ajax et Framework open-source
Cordova .................................................................................................................................... 68
Chapitre 11. Création et configuration du projet..................................................................... 74
Chapitre 12. Représentation graphique ................................................................................... 81
CONCLUSION GENERALE ..................................................................................................... 88
REFERENCES BIBLIOGRAPHIQUES ...................................................................................... x
REFERENCES WEBOGRAPHIQUES ........................................................................................ x
GLOSSAIRE .............................................................................................................................. xi
ANNEXES ............................................................................................................................... xiii
TABLES DES MATIERES ....................................................................................................... xix
NOMENCLATURE
AJAX Asynchronous Javascript And Xml
API Application Program Interface
ASP Active Server Page
BSD Berkeley Software Distribution
CGB Caribbean Global Business
CSS Cascading Style Sheet
DOM Document Object Model
DSDM Dynamic Systems Development Method
ENI Ecole Nationale d’Informatique
FTP File Transfert Protocol
GPL General Public License
GPRS General Packet Radio Service
GPS Global Positionning System
GSM Groupe Spécial Mobile
HTML5 HyperText Markup Language 5
HTTP HyperText Transfer Protocol
IPC Inter-Process Communication
JNI Java Native Interface
OHA Open Hanset Alliance
PDA Personal Digital Assistant
PHP Personal Hme Page
RAD Rapid Application Developpement
RIM Research In Motion
SDK Software Development Kit
STL Standard Template Library
UML Unified Modeling Language
USB Universal Serial Bus
VM Virtual Machine
W3C World Wide Web Consortium
vi
WWW Word Wide Web
XP extrême Programming
vii
ix
INTRODUCTION GENERALE
Aujourd’hui, le téléphone portable fait partie de notre vie quotidienne. Le marché du
téléphone portable est un marché qui n’a cessé de s’étendre à grande vitesse depuis quelques
années. On utilise le téléphone non seulement pour passer des appels et envoyer des
messages, mais aussi pour écouter des musiques, voir des vidéos, surfer sur le web, jouer avec
divers jeux et exécuter des d'applications.
Le commerce électronique ou vente en ligne, désigne l'échange de biens, de services et
d'informations entre les réseaux informatiques, notamment Internet. Il ne se limite pas au seul
réseau Internet. Dans le cadre du commerce interentreprises, des transactions électroniques se
réalisent sur les réseaux téléphoniques mobiles. Ainsi, nous avons choisi de réaliser une
application mobile pour la plate-forme abtobmarket en raison de faciliter les besoins des
utilisateurs et de les satisfaire.
D’autre part, cette application procure de nouveaux usages et une multitude
d’opportunités commerciales.
C'est dans cette perspective que la société Madagile choisit de mettre en place le projet
: « Conception et réalisation d’application mobile de la plate-forme abtobmarket »
A l’issue de ce projet, on espère que l’application va offrir l'ensemble des fonctions
indispensables qui permettront aux utilisateurs de voir et d’accéder aux données de la plate-
forme.
Pendant la réalisation et la conception du projet, nous avons opté d'appliquer la
méthode XP comme méthode de développement et nous avons utilisé la notation UML pour
la modélisation.
Par la suite, nous présenterons succinctement dans la première partie la présentation
générale, la seconde partie l’ensemble des technologies utilisées, la troisième partie, l’analyse
et la conception. Et pour terminer la quatrième partie, la phase de la mise en œuvre du projet.
Partie I :
PRESENTATION
Cependant la professionnalisation ne peut se faire qu’en « vase close » ; elle exige une
«orientation client » et une « orientation marché ». Ce sont les entreprises qui connaissent le
mieux leurs besoins en personnel informatique qualifié. Ces entreprises partenaires
collaborent avec l’ENI en présentant des pistes et des recommandations pour aménager et
réactualiser périodiquement les programmes de formation. Ainsi, dans le cadre de ce
partenariat avec les sociétés dans les divers bassins d’emploi en Informatique, l’Ecole offre
sur le marché de l’emploi des cadres de bon niveau, directement opérationnels et avec des
connaissances mise à jour.
L’architecture des programmes pédagogiques dispensés à l’Ecole s’appuie sur le couple
théorie-pratique :
Des enseignements théoriques et pratiques de haut niveau sont dispensés intra-muros à
l’Ecole,
Des voyages d’études sont effectués pour les étudiants nouvellement inscrits et ayant
passé une année d’études à l’Ecole
Des stages d’application et d’insertion professionnelle sont pratiqués en entreprise
chaque année par les étudiants au terme de chaque formation académique à l’Ecole.
Les stages effectués en entreprise par les étudiants de l’ENI sont principalement des
stages de pré-embauche.
Ces stages pratiques font assurer l’Ecole d’un taux moyen d’embauche de 97%, six mois
après la sortie de chaque promotion de diplômés.
1.5 Organigramme
La figure 1 représente l’organigramme de l’ENI :
Parmi ces Etablissements, on peut citer : ACCENTURE Maurice, AIR MAD, AMBRES
ASSOCIATES, AUF, B2B, Banque Centrale, BFV SG, BIANCO, BLUE LINE, BNI-CA,
BOA, CEDII Fianarantsoa, CEM, Central Test, Centre Mandrosoa Ambositra, CNA, CNRIT,
COLAS, COPEFRITO, Data Consulting, D.G. Douanes Tana, DLC, DTS/MOOV , FID,
FTM, GNOSYS, IBONIA, IFIR des paramédicaux Fianar, INGENOSYA, INSTAT, IOGA,
JIRAMA, Lazan’i Betsileo, MADADEV, MADARAIL, MAEP, MECI, MEF, MEN,
MESupReS, MFB, MIC, MICROTEC, MININTER, MIN TélCom et Nouvelles
Technologies, NEOV MAD, NY HAVANA, OMNITEC, ORANGE , OTME, PRACCESS,
QMM Fort-Dauphin, SECREN, SIMICRO, SNEDADRS Antsirabe, Société d’Exploitation
du Port de Toamasina, Softewell, Strategy Consulting, TACTI, TELMA , AirTel, WWF,…
L’organisation de stages en entreprise contribue, non seulement à assurer une meilleure
professionnalisation des formations dispensées, mais à accroître, de façon exceptionnelle, les
opportunités d’embauche pour les diplômés de l’Ecole.
Ces derniers sont recrutés, non seulement par des entreprises et organismes nationaux,
mais aussi par des organismes de coopération internationale tels que l’USAID
MADAGASCAR, la Délégation de la Commission Européenne, la Banque Africaine de
Développement (BAD), la Mission Résidente de la Banque Mondiale, la Commission de
l’Océan Indien, etc.
1.7.2 Au niveau international
Entre 1996 et 1999, l’ENI a bénéficié de l’assistance technique et financière de la
Mission Française de Coopération et d’Action Culturelle dans le cadre du PRESUP.
La composante du PRESUP consacrée à l’ENI a notamment porté sur :
Une dotation en logiciels, microordinateurs, équipements de laboratoire de
maintenance et de matériels didactiques ;
Et depuis le mois de mai 2000, l’ENI fait partie des membres de bureau de la 8
Conférence Internationale des Ecoles de formation d’Ingénieurs et Techniciens
d’Expression Française (CITEF).
Forte d’une équipe d’ingénieurs, avec plus d’une dizaine d’années d’expérience dans
leur domaine, Madagile est le partenaire idéal pour tous vos besoins en communication et en
commercialisation.
Madagile repose ses valeurs sur la compétence et l’expertise de son équipe formée
d’ingénieurs expérimentés et de techniciens chevronnés dans le domaine de la communication
et de la relation clientèle.
2.3 Objectifs
L’objectif, c’est le profit généré par le développement des outils de communication et
de commercialisation des clients. Madagile engage à offrir des services de qualité et un
respect des délais grâce à sa structure de travail.
Les clients bénéficient des tarifs les plus compétitifs sur le marché de l’externalisation
grâce à la qualité de société offshore Madagile.
10
2.4 Organisation
La figure 2 représente l’organigramme de la société Madagile.
Madagile est une filiale du Groupe Caribbean Global Business créée en 2011.
Cette filiale gère une partie technologique du Groupe.
La majorité de ses actions est détenue par Caribbean Global Business, soit plus de
50%.
11
3.2 Objectif
L’objectif de la société pour le projet est d’avoir une application utilisant de
technologies sans fil, plus particulièrement la téléphonie mobile, afin d’accéder à tous les
données de la plate-forme, d’élargir le marché et de répondre aux besoins des clients.
Autrement dit, l’application assure aussi les différents aspects fonctionnels de e-commerce
comme :
Visite ;
Administration de mode de paiement ;
Gestion de panier ;
Gestion des commandes.
14
Partie II :
ENSEMBLE DES TECHNOLOGIES
15
4.1.2 Nomadisme
Le nomadisme désigne les usages et usagers des technologies électroniques et
informatiques sans-fil. Ces dernières permettent d’accéder aux médias et aux informations
numériques, de les modifier et de les communiquer par la téléphonie mobile ou par l’internet.
Mais aussi de travailler en ligne ou hors-ligne, quel que soit l’endroit où l’on se trouve [14].
4.2 Smartphones
4.2.1 Définition et fonctionnalités
Un Smartphone ou téléphone intelligent, est un téléphone mobile évolué qui permet
bien plus de choses qu’envoyer ou recevoir des messages textes et /ou passer des appels. La 16
[16]
saisie des données se fait le plus souvent par le biais d'un écran tactile ou d'un clavier .
Selon le principe d'un ordinateur, il peut exécuter divers logiciels ou applications grâce à un
Figure 3 : iPhone
b. Android
C’est un système d'exploitation pour Smartphones, tablettes tactiles, PDA et terminaux
mobiles. C'est un système open source utilisant le noyau Linux. Il a été lancé par une startup
rachetée par Google en 2005 (figure 4).
17
Figure 4 : Android
c. Windows Mobile
C’est le nom générique donné aux différentes versions de Microsoft Windows conçues
pour des appareils mobiles tels que les Smartphones (figure 5).
d. BlackBerry
C’est une ligne de téléphones intelligents développée depuis 1999, d'abord sous le nom
de RIM, nom de produit BlackBerry. Puis En janvier 2013, elle a adopté le nom unique de
BlackBerry. Ces téléphones sont fabriqués par la compagnie canadienne Research In Motion
(RIM), utilisant le système d'exploitation propriétaire Blackberry OS (figure 6) [18].
Figure 6 : BlackBerry
18
4.3.2 Evolution de 3G
L’amélioration de 3G donne 3G+ et la version améliorée de la 3G est la 4G. La
quatrième génération technologique permettra des débits encore plus grands pour couvrir les
besoins futurs. 4G permet de très haut débit mobile.
4.3.3 Appareils utilisant l’internet mobile
Les appareils qui utilisent la technologie 3G sont :
Les Smartphones
Ils utilisent la 3G pour l’internet et leurs applications. Mais pour se faire, un
Smartphone doit être compatible à la 3G pour pouvoir bénéficier des avantages offerts par
cette technologie. Il doit aussi disposer d’une carte SIM 3G et d’un abonnement à l’internet
chez un opérateur mobile.
19
Figure 8 : clé 3G
Les tablettes 3G
Les tablettes tactiles sont apparues en 2010 (figure 9). Pour se naviguer en internet, elles
utilisent également une carte SIM. Son avantage par rapport aux Smartphones est la
dimension de son écran qui est bien plus supérieure.
Figure 9 : Tablette 3G
20
5.1.3 Historique
En juillet 2005, Google a acquis Android Inc, une petite startup qui développait des
applications pour téléphones mobiles.
Après ce rachat de Google, une équipe dirigée par Andy Rubin, un ancien d'Android
Inc, a commencé à travailler sur un système d'exploitation pour appareil mobile basé sur
linux.
En 2007, le 5 novembre, l'OHA a été officiellement annoncée, ainsi que son but :
Développer des standards open source pour appareil mobile.
Le premier standard annoncé a été Android, une plate-forme pour appareils mobiles
basée sur un kernel linux 2.6.
21
En septembre 2008, la première version stable du SDK est sortie. Actuellement, la
dernière version est la 1.2.
5.1.4 Caractéristiques
Le tableau 1 représente les caractéristiques d’Android.
Tableau 1 : Caractéristiques d’Android
5.2 Architecture
5.2.1 Description de l’architecture d'Android
Android est basé sur un kernel linux 2.6, au-dessus du kernel il y a l'« hardware
abstraction layer » qui permet de séparer la plateforme logique du matériel.
Au-dessus de cette couche d'abstraction on voit les librairies C/C++ utilisées par certain
nombre de composants du système Android.
Au-dessus des librairies se trouve l'Android Runtime, qui contient les librairies cœurs du
Framework ainsi que la machine virtuelle exécutant les applications.
Au-dessus de la couche « Android Runtime » et des librairies cœurs se trouve le 22
Framework permettant au développeur de créer des applications.
Enfin au-dessus du Framework il y a les applications.
5.2.3 Librairies
Rappelons que ces librairies sont écrites en C/C++. Elles sont natives et fournissent les
fonctionnalités de bas niveau d'android.
Mais Android ne supporte pas la glibc, donc les ingénieurs d'Android ont développé une
librairie C nommé Bionic libc.
a. Bionic libc
C’est une librairie légère et rapide. Elle est optimisée pour les appareils mobiles et a été
développé spécialement pour Android. Cette libc est sous licence BSD
Quelques caracteristiques de Bionic libs :
Elle pèse environ 200Ko soit la moitié de la glibc ;
Bionic libc ne supporte pas les threads POSIX ;
Les exceptions C++ et les wide char ne sont pas supportées ;
Il n'y a pas de STL.
b. WebKit
C’est un moteur de rendu, qui fournit une fondation pour pouvoir développer un
navigateur web. WebKit est composé de deux librairies : WebCore et JavascriptCore qui sont
disponible sous licence GPL. Il supporte le CSS, Javascript, DOM et AJAX et sa version
présente dans Android a été légèrement modifiée pour s'adapter aux appareils mobiles.
c. Media Framework
C’est une librairie basée sur OpenCore de PacketVideo. Elle permet de supporter des
standards audio, vidéo et images.
a. Dalvik
Dalvik est une machine virtuelle basée sur une architecture de registre comme des
machines virtuelles qui ont une architecture de pile. Cette architecture dépend des stratégies
de compilation et d'interprétation choisies.
Après compilation, les applications Java développées pour Android doivent avoir une
extension dex. C’est un format dalvik exécutable avec l'outil dx. L’outil dx compile les .java
en .class et ensuite il convertit ces .class en .dex. Un .dex peut contenir plusieurs classes. Les
strings dupliqués et les autres constantes utilisées dans de multiples classes sont regroupés
dans un .dex et le bytecode utilisé dans les .dex est le Dalvik bytecode.
Notons que la taille d’un .dex décompressé est un peu plus petit qu'un .jar compressé
dérivé des mêmes fichiers .class.
b. Core libraries
Les libraries Core sont des librairies qui fournissent le langage Java disponible pour les
applications. Avec Android, le langage Java reprend en grande partie l'API JSE 1.5. Il y a des
APIs qui ne sont pas nécessaires pour Android et aussi ceux qui sont spécifiques.
Les tableaux 2 et 3 représente la liste des packages JSE 1.5 supportés, non supportés par
Android et spécifiques dans les librairies Core d'Android.
Tableau 2 : Liste des packages JSE 1.5 utilisés par Android
5.3 Framework
26
Le framework est une couche qui se situe au-dessus de l'Android Runtime et des librairies.
Il fournit des API permettant aux développeurs de créer des applications riches.
Activity Manager Elle gère le cycle de vie des applications et maintient une pile de
navigation qu’on appelle navigation backstack qui permet d'aller
d'une application à une autre et de revenir à la précédente quand la
dernière application ouverte est fermée.
Package Manager Ce package est utilisé par l'Activity Manager pour charger les
informations provenant des fichiers .apk. C’est l’Android package
file.
Window Manager Il gère les fenêtres des applications, autrement dit, il gère la fenêtre
qui doit s’afficher devant une autre à l'écran.
Resouce Manage C’est ce qui gère tout ce qui n'est pas du code, c’est à dire toutes les
ressources comme images, fichier audio, ….
Content Provider Il gère le partage de données entre les applications, comme par
exemple une base de données peut être consultée par d'autres
applications que l'application. Les Données peuvent se partager à
travers une base de données SQLite, des fichiers, le réseau, ….
View System Il fournit tous les composants graphiques comme listes, grille, texte
box, buttons et aussi le navigateur web embarqué.
Tableau 6 : Services fournissant l’accès vers les API matérielles de bas niveau d’Android
5.4 Fonctionnement
5.4.1 Démarrage
Rappelons qu’au démarrage de tout système Linux, le bootLoader charge le kernel et
lance le processus init. C’est le père de tous les processus [8].
Ensuite, un certain nombre de daemons est lancé comme USB daemon ou usbd, Android
Debug Bridge ou adbd, Debugger Daemon ou debuggerd qui permet de gérer les requêtes de
debug de processus. Par exemple : dump memory et Radio Interface Layer Daemon ou rild.
Puis, le processus init lance le processus zygote. C’est le service le plus important. Il
initialise une instance de Dalvik VM, aprés charge les classes et écoute sur un socket pour
créer des Dalvik VM. Les VM créées partagent des zones mémoires communes qui permet de
minimiser la mémoire utilisée et chaque VM crée par zygote est une mère ou fork d'une VM.
Cette fork permet d'accélérer le démarrage d'une application.
Ensuite, le processus init lance le processus runtime. Ce dernier lance le Service Manager
comme DNS qui permet d'enregistrer et de récupérer des références vers des services. Après,
runtime enregistre ce Service Manager comme le Context Manager par défaut.
Et après, le processus runtime envoie une requête au processus zygote en lui demandant
de lancer le System Service. Zygote va créer une nouvelle instance de Dalvik VM pour le
processus System Service et démarrer le service. Ce System Service va lancer l'Audio Flinger
et le surface Flinger, qui vont par la suite s'enregistrer auprès du Service Manager.
La figure 11 représente la description de ce démarrage.
28
5.4.2 Interaction
L'application utilisateur récupère la Location Manager Service en utilisant Binder IPC.
Ensuite la Location Manager interroge le GpsLocationProvider qui, lui-même interroge la
librairie C/C++ en utilisant JNI (Java Native Interface). C’est le GpsLocationProvider qui va
charger la librairie dynamique libgps.so.
La figure 12 représente cette interaction.
29
Figure 12 : Interaction des composantes qui construit Android
Partie III :
ANALYSE ET CONCEPTION
30
Assurance de la qualité
Réalisations
Mobile Web et IT
IPhone, Android, Windows Mobile, Mangeto, WordPress, Joomla, Drupal, Zend Framework
BlackBerry, Etc Prestashop, Symfony, Ext JS, FX, Java, Microsoft.net
Etc 32
6.1.1 Configuration matériel informatique de la société Madagile
Ordinateur de bureau
Nombres : 4
Système d’exploitation : Windows 7
Ordinateur portable
Nombres : 2
Système d’exploitation : Windows 7, Mac
Imprimante
Nombre : 1
Marque : HP Deskjet 1050
Connexion
Connexion internet avec WIFI
Débit 512ko/s
Fournisseur : Bleuline
Type : 4G/Wifi
34
et en octobre 1999, la méthode est née officiellement avec le livre Extreme Programming
Explained de Kent Beck [2].
7.2.2. Objectifs
L’objectif principal de la méthode XP est de réduire les coûts du changement. Elle met
l’accent sur la revue de code faite en permanence par un binôme, sur les tests qui sont faits
systématiquement avant chaque développement, la conception continue ou refactoring, la
simplicité et la traduction des besoins en métaphores.
Une phase d'exploration détermine les scénarios client qui seront fournis
pendant cette itération
L'équipe transforme les scénarios en tâches à réaliser et en tests fonctionnels
Chaque développeur s'attribue des tâches et les réalise avec un binôme
Lorsque tous les tests fonctionnels passent, le produit est livré
Le cycle se répète tant que le client peut fournir des scénarios à livrer. Généralement le cycle
de la première livraison se caractérise par la durée et le volume important de fonctionnalités
embarquées. Après la première mise en production, les itérations peuvent devenir plus
courtes.
7.2.4. Valeurs de XP
XP repose sur cinq valeurs fondamentales, nous allons les décrire sur le tableau 8 :
36
37
Tests fonctionnels À partir des scénarios définis par le client, l'équipe crée des
procédures de test qui permettent de vérifier l'avancement du
développement. Lorsque tous les tests fonctionnels passent,
l'itération est terminée. La recette fonctionnelle d'une application
est de plus en plus souvent confiée à des experts du test
indépendants des développeurs.
Tests unitaires Avant de mettre en œuvre une fonctionnalité, le développeur écrit
un test qui vérifiera que son programme se comporte comme
prévu. Ce test sera conservé jusqu'à la fin du projet, tant que la
fonctionnalité est requise. À chaque modification du code, on lance
tous les tests écrits par tous les développeurs, et on sait 38
Conception simple L'objectif d'une itération est de mettre en œuvre les scénarios
sélectionnés par le client et uniquement cela. Il n’est pas nécessaire
d’envisager des prochaines évolutions car cela ferait perdre du
temps sans avoir la garantie d'un gain ultérieur. Les tests
permettront de changer l'architecture plus tard si nécessaire. Plus
l'application est simple, plus il sera facile de la faire évoluer lors
des prochaines itérations.
Utilisation de On utilise des métaphores et des analogies pour décrire le système
métaphores
et son fonctionnement.
D’apres les tableaux 9 et 10, et comme nous avons déjà mentionné les participants dans la 39
réalisation du projet (Chapitre 3, 3.4), alors :
Le PDG du groupe CGB est à la fois client, testeur et aussi tracker ;
Enchainement de travail
La semaine de 16/09/2013, nous avons commencé à faire le « jeu de la
planification », puis la « conception simple » et enfin la « métaphore ».
La semaine de 30/09/2013, nous avons livré une première version du logiciel et nous
avons commencé à faire le test et aussi l’itération.
La semaine de 07/10/2013, nous avons fait le « refactoring ».
La semaine de 14/10/2013, nous avons entré dans la phase d’itération et de test par
semaine. Dans la première itération, l’implémentation de la méthode courante a été
faite par l’autre stagiaire et puis dans la deuxième cet implémentation a été faite par
Andry.
Chaque semaine, on a fait changer de place et ainsi de suite jusqu’à la fin de notre
période de stage.
Chaque jour, on intègre dans le code de base tous les changements (intégration
continue) et on fait le test après.
40
Selon les cas, il y a une utilité variable donc ces diagrammes ne sont pas
nécessairement tous produits à l’occasion d’une modélisation. Dans le cadre du notre projet,
seuls les diagrammes suivants sont produits pour la conception des applications :
Le diagramme de séquence
Le diagramme de classe.
8.2.1 L'acteur
Tout ce qui est à l’extérieur du système et qui interagit avec ce dernier est dit «acteur». Ils
peuvent donc être des utilisateurs humains, ou d’autres systèmes ou encore des matériels
informatiques.
Un cas d'utilisation se représente par une ellipse contenant le nom du cas soit un verbe soit
à l’infinitif (figure 15).
43
45
d. Administrateur
Le seul qui a le droit de modifier le contenu de l’application, il peut :
o Gérer les statuts de la commande;
o Administrer le moyen de paiement;
o Gérer les comptes d’accès clients;
o Gérer les comptes d’accès des abonnées;
o Consulter les statistiques de visites de l’application;
o Consulter les statistiques des ventes;
9.1.2. Identification des cas d’utilisations
D’après la description des acteurs ci-dessus, nous allons présenter sur la figure 20 le.
o Description textuelle
Dans la description textuelle, il y a des règles communes à suivre comme:
Ecrire un paragraphe qui décrit l'ordre des actions ;
Lister deux colonnes y compris les actions de l'acteur et les réponses
du système ;
Utiliser un patron identifiant les acteurs, les conditions préalables, les
postconditions, les scénarios principaux de réussite du processus, ….
o Description graphique
Nous allons montrer dans le diagramme de séquence (figure 22), le diagramme du
scenario nominal correspondant au cas d’utilisation.
50
o Description textuelle
Pour le cas d’utilisation « gérer compte abonné », toutes les séquences des tâches sont
présentées dans les tableaux 14 et 15.
Tableau 14 : Séquences des tâches cas d’utilisation gérer compte abonné
o Description graphique
La figure 24 présente le diagramme de séquence nominal du cas d’utilisation « gérer
compte » pour les abonnés
52
o Description textuelle
Pour le cas d’utilisation « gérer panier », toutes les séquences des tâches sont 53
présentées dans le tableau 16.
Au point 1.6
Les Scénarii d'Exception
2.1 Erreur d’ajouter au panier 54
2.2 Retour à la liste des produits
o Description graphique
La figure 26 montre le diagramme de séquence nominal du cas d’utilisation « gérer
panier ».
Les Scénarii Nominaux 1.1 Commander les produits dans son panier
1.2 Accès sur formulaire authentification si
n’est encore connecté
1.3 S’authentifier
1.4 validation
1.5 Formulaire d’adresse de facturation et de
livraison
1.6 Mise à jour des adresses si nécessaires
1.7 Validation
1.8 Page transport
Au point 1.4
Les Scénarii d'Exception
2.1 authentification erroné
2.2 retour page compte 56
o Description graphique
La figure 28 présente le diagramme de séquence nominal du cas d’utilisation gérer
commande.
o Description textuelle
Pour le cas d’utilisation « gérer paiement », toutes les séquences des tâches sont
présentées dans le tableau 18.
Tableau 18 : Séquences des tâches cas d’utilisation gérer paiement
Au point 1.6
Les Scénarii d'Exception
2.1 mode de paiement inactif
58
2.2 retour choix de mode de paiement
o Description graphique
La figure 30 montre le diagramme de séquence nominal du cas d’utilisation gérer
paiement.
59
o Description textuelle
Le tableau 19 montre toutes les séquences de tâches en cas d’utilisation « gérer
produits ».
Tableau 19 : Séquences des tâches cas d’utilisation gérer produits pour les abonnées
Identification de cas d'utilisation
Nom Gérer produit
Objectif Visualisation et mis à jour de produits
Acteur Principal Internaute
Date de création : 23/09/2013 Date de modification : 07/02/2014
Auteur Andry
Version 1.0
Description des scenarii
Les Scénarii Nominaux 1.1 Mettre à jour les produits dans son espace
1.2 Accès sur formulaire authentification si
n’est encore connecté
1.3 S’authentifier
1.4 validation
1.5 Mise à jour des produits
1.6 Validation
Au point 1.4
Les Scénarii d'Exception
2.1 authentification erroné
2.2 retour page compte
o Description graphique
La figure 32 montre le diagramme de séquence nominal en cas d’utilisation « gérer
produit » pour les abonnés. 60
Figure 32 : Diagramme de séquence nominal du cas d’utilisation gérer produits pour les
abonnés
61
Partie abonnée
Le diagramme (figure 34) montre tous les cas d’utilisation dans la partie Front Office
de la partie abonnée.
Notons que « gérer produits », « gérer services », « gérer ventes », « gérer actualités »,
« gérer annonces » ont les mêmes actions. Alors nous n’allons prendre que le cas « gérer
produits » dans le diagramme.
64
65
66
Partie IV :
REALISATION
67
a. Caractéristiques
Nous allons citer quelques caractéristiques de MySQL
Avantages
Rapide ;
Robuste (On peut stocker une importante quantité d’informations sous
différents types) ;
Facile à utiliser et à administrer ;
Compatible sur différentes plateformes ;
Licence Open Source.
Inconvénients
Taille de données limitées (maximum trente Go)
Support incomplet des triggers et procédures stockées ;
Assez peu de richesse fonctionnelle ;
Pas d'héritage de table.
10.1.4 Apache
Apache HTTP Server ou Apache, est un logiciel de serveur HTTP produit par l'Apache
Software Foundation.
Apache est aussi un logiciel libre avec un type spécifique de licence, nommée licence
Apache.
Ses performances, sa robustesse, son utilisation aisée, et sa licence font de lui le serveur
web le plus populaire au monde, depuis mars 1997.
Ce serveur est aussi multiplateforme, il peut tourner sous plusieurs systèmes
d’exploitation. De plus, il exécute du PHP et permet de stocker plusieurs sites web.
10.2 Langages
10.2.1 HTML5
HTML5, la dernière révision majeure d'HTML pour représenter les pages web. C’est un 69
[9]
langage qui désigne un ensemble de technologies Web : HTML5, CSS3 et JavaScript .
10.2.2 CSS3
Les feuilles de style en cascade CSS forment un langage informatique pour décrire la
présentation des documents HTML et XML. Les standards définissant CSS sont publiés par
W3C. Au milieu des années 1990, CSS devient couramment utilisé dans la conception de sites
web et bien pris en charge par les navigateurs web dans les années 2000. CSS3 est la dernière
norme CSS qui est totalement rétro compatible avec les versions antérieures de CSS.
10.2.3 JavaScript, JQuery et Jquery mobile
JavaScript souvent abrégé JS un langage de programmation de scripts principalement
utilisé dans les pages web interactives mais aussi côté serveur [10] [11].
JQuery, une bibliothèque JavaScript libre qui porte sur l'interaction entre JavaScript et
comprenant Ajax et HTML, son but est de simplifier des commandes communes de
JavaScript.
Et jQuery Mobile, un tactile optimisée Framework web plus connu sous le nom de
bibliothèque JavaScript ou un cadre mobile actuellement développé par le jQuery équipe de
projet.
10.2.4 PHP
PHP: Hypertext Preprocessor, plus connu sous son sigle PHP, un langage de
programmation libre principalement utilisé pour produire des pages Web dynamiques via un
serveur HTTP, il peut fonctionner comme n'importe quel langage interprété de façon locale.
C’est est un langage impératif orienté-objet [15].
10.3 Architecture informatique Ajax
10.3.1 Définition
L'architecture informatique Ajax : Asynchronous Javascript And XML, est une méthode
de développement web basée sur l'utilisation d'un script Javascript. Elle permet de construire
des applications Web et des sites web dynamiques interactifs sur le poste client. Elle combine
JavaScript, les CSS, XML, le DOM et le XMLHttpRequest pour l’amélioration et le confort
d'utilisation des Applications Internet Riches [21].
10.3.2 Historique
En 1989, le WWW a été créé et en 1990 il a été popularisé. En 1996, JavaScript est
apparu pour la première fois, il utilise le navigateur Web Netscape Navigator. En 1998, W3C
a normalisé le DOM : Document Object Model. En cette année même, XMLHttpRequest qui
70
initialise un composant ActiveX a été créé par Microsoft pour l’application web Outlook Web
Access. Entre 2002 et 2005, XMLHttpRequestajout a été ajouté à la norme ECMAScript et
mis en œuvre sur la plupart des navigateurs du marché. Le 18 février 2005, le terme Ajax a
été introduit dans un article sur le site Web par un informaticien americain Jesse James
Garrett.
10.3.3 Les technologies utilisées
La méthode Ajax consiste à utiliser de manière conjointe diverses technologies
normalisées :
Javascript
HTML et CSS
DOM
XMLHttpRequest
XML et JSON
10.3.4 Principe
Dans une application Web avec la méthode classique, lors de chaque manipulation faite
par l'utilisateur, le navigateur envoie une requête contenant une référence à une page Web,
puis le serveur Web effectue des calculs, et envoie le résultat sous forme d'une page Web à
destination du navigateur. Celui-ci affichera alors la page qu'il vient de recevoir. Chaque
manipulation entraîne la transmission et l'affichage d'une nouvelle page. L'utilisateur doit
attendre l'arrivée de la réponse pour effectuer d'autres manipulations. Cette méthode utilise
des mécanismes propres au WWW, qui sont incorporés dans tous les navigateurs et ne
nécessite pas de programmation.
Tandis qu’avec la méthode utilisant Ajax, un programme est écrit en langage de
programmation JavaScript, incorporé dans une page web, est exécuté par le navigateur. Ajax
envoie en arrière-plan des demandes au serveur Web, puis modifie le contenu de la page
actuellement affichée par le navigateur Web en fonction du résultat reçu du serveur, évitant
ainsi la transmission et l'affichage d'une nouvelle page complète. De plus, les demandes sont
effectuées de manière asynchrone. Autrement dit, le navigateur Web continue d'exécuter le
programme JavaScript alors que la demande est partie, il n'attend pas la réponse envoyée par
le serveur Web et l'utilisateur peut continuer à effectuer des manipulations pendant ce temps.
71
En Octobre 2011, ce Framework est racheté par Adobe et passe sous licence Open Source
Apache sous le nom Cordova.
10.4.2 Support
Le tableau 23 représente la liste des fonctionnalités par appareils supportés par Cordova.
Tableau 23 : Liste des fonctionnalités par appareils supportés
iPhone / iPhone Android Blackberry Blackberry Web-OS Windows Symbian Bada
iPhone 3GS and OS 6.0+ 10 Phone 7 et
3G newer 8
Accéléromètre Oui Oui Oui Oui Oui Oui Oui Oui Oui
Appareil photo Oui Oui Oui Oui Oui Oui Oui Oui Oui
Boussole Non Oui Oui Non Oui Oui Oui Non Oui
Contacts Oui Oui Oui Oui Oui Non Oui Oui Oui
Fichiers Oui Oui Oui Oui Oui Non Oui Non Non
Géolocalisation Oui Oui Oui Oui Oui Oui Oui Oui Oui
Médias Oui Oui Oui Non Oui Non Oui Non Non
Réseau Oui Oui Oui Oui Oui Oui Oui Oui Oui
Notifications Oui Oui Oui Oui Oui Oui Oui Oui Oui
Stockage Oui Oui Oui Oui Oui Oui Oui Oui Non
73
74
75
Ensuite, nous allons choisir la version cible, dans notre cas, nous utilisons Android 3.0 (figure
39).
77
Figure 42 : Ajout des fichiers de PhoneGap dans le projet
1. Dans le dossier www créons un fichier que nous allons nommer index.html. Ce fichier
sera utilisé comme point d'entré principal pour l'interface de notre application PhoneGap.
Dans la balise <head> </head> le script suivant est obligatoire à chaque fichier html:
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
2. Nous aurons besoin d'ajouter la bibliothèque cordova.jar au chemin de génération pour
le projet Android: faisons un clic droit sur cordova.jar puis entrons dans Build Path et
ajouter au Build Path.
3. Ouvrons le fichier d'activité créé précédemment :
Ajoutons l'instruction d'import : import org.apache.cordova.DroidGap;
Modifions la classe Activity en la faisant hériter de DroidGap à l'aide du mot extends :
public class MonProjet_Activity extends DroidGap {
Remplaçons l'appel à setContentView() par une référence vers le fichier
android_asset/www/index.html (cela permet de charger l'interface PhoneGap):
super.loadUrl("file:///android_asset/www/index.html");
Alors notre fichier d’activité sera comme suit:
78
Cette balise sert à identifier les tailles d'écrans qui sont prises en charge par l’application. On
peut changer d'écran et varier la taille du support en modifiant le contenu de cette balise.
Ces balises servent à identifier les fonctionnalités que nous voulons activer pour
l’application. Les lignes ci-dessus activent toutes les autorisations nécessaires à l'ensemble
des fonctionnalités de PhoneGap pour qu'il puisse fonctionner.
6. Après la configuration des autorisations d'applications, nous allons modifier la balise
<activity> existante qui se trouve à l'intérieur de la balise <application>. Ajoutons lui
l'attribut suivant : android:configChanges="orientation|keyboardHidden".
7. Pour terminer la configuration, nous devons créer une nouvelle balise
<activity></activity> de la classe org.apache.cordova.DroidGap à la suite de la première
79
balise activity mais rester dans la balise <application>. Le contenu de cette balise est :
82
12.1.2 Clients
Si l’utilisateur clique sur Clients, il aurra la page d’authentification (figure 47).
S’il est un client déjà inscrit, il va s’authentifier pour avoir la page d’accueil du client (figure
48). Sinon il va s’inscrire en tant que client en remplissant le formulaire (figure 47) et il aura
après la page d’accueil du client (figure 48).
Si le client clique par exemple sur Mes Messages, il aura un sous-menu et s’il veut
envoyer un message à un autre client, il va cliquer sur Créer un nouveau message (figure 48).
83
84
12.1.3 Abonnés
Si l’utilisateur clique sur Abonnés, il aurra la même page d’authentification comme dans
le cas de client (figure 47). Mais ce sont deux pages différentes car l’utilisateur s’authentifie
en tant qu’abonné.
Si l’abonné réussit l’authentification, il sera redirigé vers la page d’accueil des abonnés
(figure 49), sinon il revient à la page d’authentification.
Cette page d’accueil d’abonné représente son espace. Si l’abonné clique sur Mes
Informations par exemple, il peut faire la mise à jour de son compte, sa connexion et son pack
(figure 49).
85
86
87
CONCLUSION GENERALE
Pour conclure, en vue de ne pas perdre les clients de la plate-forme abtobmarket, la
société Madagile cherche à concevoir et à réaliser une application Android compatible
pour la version 3.0 et toutes les autres versions ultérieures.
Ainsi, l’application est un outil qui facilite les tâches des utilisateurs car ils ont
la possibilité d’utiliser un téléphone portable.
88
REFERENCES BIBLIOGRAPHIQUES
[1]. Tarak Chaari, 2010, UML : Atelier UML, 94 pages.
[2]. Kieran Conboy & Brian Fitzgerald, "The Agile Manifesto was put forward in 2001,
and several method instantiations, such as XP, SCRUM, and Crystal exist.", Extreme
Programming And Agile Methods - XP/Agile Universe 2004: 4th Conference On Extreme
Programming And Agile Methods, Calgary, Canada, August 15-18, 2004, Proceedings,
chap. Toward a Conceptual Framework of Agile Methods, Springer Verlag, New York,
août 2004, (ISBN 354022839X)
REFERENCES WEBOGRAPHIQUES
[3].www.cours-informatique-gratuit.fr/facile/multimedia/7.l-internet-mobile consulté le 05
décembre 2013
[4].www-igm.univ-mlv.fr/~dr/XPOSE2008/android/archi_comp.html consulté le 10 janvier
2014
[5]. http://dev.mysql.com/doc consulté le 12 janvier 2014
[6]. http://www.developpez.com consulté le 02 février 2014
[7]. http://fr.wikipedia.org/wiki/Commerce_%C3%A9lectronique 02 février 2014
[8]. http://fr.wikipedia.org/wiki/Application_mobile 04 février 2014
[9]. http://fr.wikipedia.org/wiki/HTML5 12 février 2014
[10]. http://fr.wikipedia.org/wiki/JavaScript 20 février 2014
[11]. http://fr.wikipedia.org/wiki/JQuery 20 février 2014
[12]. http://fr.wikipedia.org/wiki/Apache_Cordova 25 février 2014
[13]. http://fr.wikipedia.org/wiki/Adobe_PhoneGap 02 mars 2014
[14]. http://fr.wikipedia.org/wiki/Nomadisme_num%C3%A9rique 08 mars 2014
[15]. http://fr.wikipedia.org/wiki/PHP 08 mars 2014
[16]. http://fr.wikipedia.org/wiki/Smartphone 30 mars 2014
[17]. http://www.cours-informatique-gratuit.fr/facile/multimedia/7.l-internet-mobile 31
mars 2014
[18]. http://fr.wikipedia.org/wiki/BlackBerry 08 mars 2014
[19]. http://fr.wikipedia.org/wiki/Adobe Dreamwer 26 février 2014
[20]. http://fr.wikipedia.org/wiki/Eclipse 28 février 2014 x
[21]. http://fr.wikipedia.org/wiki/Ajax 08 avril 2014
GLOSSAIRE
A F
Authentification Framework
Mécanisme utilisé pour vérifier l’identité Un Framework est un ensemble d'outils et de
d’un correspondant sur Internet et assurer le composants logiciels organisés
respect de l’intégrité du message qu’il émet. conformément à un plan d'architecture et des
design patterns. L'ensemble forme un
B
squelette de programme. Il est souvent fourni
Back Office sous la forme d'une bibliothèque logicielle, et
Le terme back office est un terme accompagné du plan de l'architecture cible du
d'architecture logicielle qui, par rapport à une Framework.
architecture trois tiers, regroupe la partie Front Office
métier et données. Dans les sites web Le terme front office est un terme
commerciaux, le back office est l’interface d'architecture logicielle. Il désigne la partie
qui regroupe la partie gestion. qui prend en charge l'interface d'une
Base de données application. On retrouve typiquement le front
Ensemble structuré de données portant sur un office dans les sites web commerciaux qui
sujet bien déterminé, stockées d’une manière permettent de commander en ligne ou celui
cohérente. des banques permettant de gérer des comptes
E en ligne.
E-commerce H
Le commerce électronique ou « e-commerce HTTP
» est l’ensemble des échanges électroniques Protocole de transfert des pages HTML sur le
liés aux activités commerciales, il désigne réseau Internet. Préfixe des adresses des sites
aussi l’échange de biens et de services entre WEB et protocole de base du Net. Il indique
deux entités sur les réseaux informatiques, aux serveurs Web ce qu’ils doivent envoyer
notamment Internet. au poste client en fonction de la requête.
xi
I
Madagile | Ambohitsoa Mahazoarivo Antanarivo 101
Ecole Nationale d’Informatique Août 2014
Internet
Réseau mondial associant des ressources de
télécommunication et des ordinateurs,
serveurs et clients, destiné à l’échange de
messages électroniques, d’informations
multimédias et de fichiers. Il fonctionne en
utilisant un protocole commun.
M
Mobile
Un mobile peut être soit un téléphone
portable, soit un petit ordinateur de poche.
S
Serveur
Ordinateur servant plusieurs utilisateurs
(clients). Il contient généralement les
données et effectue un certain nombre de
traitements sur ces données.
SGBD
Outil logiciel composé d’un ensemble de
procédures qui permettent de décrite et de
manipuler des données et bien sûr de
protéger ces données.
SQL
Langage standard de structuration et
d’interrogation des bases de données
relationnelles.
xii
ANNEXES
A. Code source
A.1 Configuration Paramètres et configuration au démarrage de l’application
Nous allons utiliser ces codes de configuration pour avoir le code complet de la page
d’authentification du client suivante.
xiii
xiv
xv
xvi
Classe client
xvii
xviii
b. Android ........................................................................................................... 17
c. Windows Mobile ............................................................................................ 18
d. BlackBerry ...................................................................................................... 18
4.3 Internet mobile ............................................................................................................. 19
4.3.1 Mobile de troisième génération (3G) ................................................................ 19
4.3.2 Evolution de 3G ................................................................................................ 19
4.3.3 Appareils utilisant l’internet mobile .................................................................. 19
Chapitre 5. Système d’exploitation Android .......................................................................... 21
5.1 Présentation .................................................................................................................. 21
5.1 .1 Android............................................................................................................. 21
5.1.2 OHA .................................................................................................................. 21
5.1.3 Historique .......................................................................................................... 21
5.1.4 Caractéristiques ................................................................................................ 22
5.2 Architecture .................................................................................................................. 22
5.2.1 Description de l’architecture d'Android ............................................................ 22
5.2.2 Kernel linux ...................................................................................................... 23
a. Quelques patches se présentant avec un kernel d’Android ........................... 23
5.2.3 Librairies ........................................................................................................... 24
a. Bionic libc....................................................................................................... 24
b. WebKit............................................................................................................ 24
c. Media Framework........................................................................................... 24
d. Surface et Audio Flinger................................................................................. 24
5.2.4 Hardware Abstraction Layer ............................................................................. 25
5.2.5 Android Runtime ............................................................................................... 25
a. Dalvik ............................................................................................................. 25
b. Core libraries .................................................................................................. 25
5.3 Framework ................................................................................................................... 26
5.3.1 Core Plateform Services .................................................................................... 27
5.3.2 Hardware Services............................................................................................ 27
5.4 Fonctionnement ............................................................................................................ 28
5.4.1 Démarrage ......................................................................................................... 28
5.4.2 Interaction.......................................................................................................... 29
Partie III : ................................................................................................................................. 30
ANALYSE ET CONCEPTION ............................................................................................... 30
Chapitre 6. Analyse préalable ................................................................................................. 31
6.1 Analyse de l’existant .................................................................................................... 31
6.1.1 Configuration matériel informatique de la société Madagile ........................... 32 xx
6.2 Critique de l'existant ...................................................................................................... 33
6.3 Les solutions adoptées ................................................................................................... 33
6.4 Conception avant-projet ................................................................................................ 33
Partie IV : ................................................................................................................................. 67
REALISATION ....................................................................................................................... 67
Chapitre 10. Outils, langages, architecture informatique Ajax et Framework open-source
Cordova .................................................................................................................................... 68
10.1 Outils ........................................................................................................................... 68
10.1.1 Adobe Dreamweaver ....................................................................................... 68
10.1.2 Eclipse ............................................................................................................. 68
10.1.3 MySql .............................................................................................................. 68
a. Caractéristiques .............................................................................................. 69
10.1.4 Apache ............................................................................................................. 69
10.2 Langages...................................................................................................................... 69
10.2.1 HTML5............................................................................................................. 69
10.2.2 CSS3 ................................................................................................................. 70
10.2.3 JavaScript, JQuery et Jquery mobile ................................................................ 70
10.2.4 PHP................................................................................................................... 70
10.3 Architecture informatique Ajax .................................................................................. 70
10.3.1 Définition ......................................................................................................... 70
10.3.2 Historique ......................................................................................................... 70
10.3.3 Les technologies utilisées ................................................................................. 71
10.3.4 Principe............................................................................................................. 71
10.4 PhoneGap ou Cordova ............................................................................................... 72
10.4.1 Définition et historique.................................................................................... 72
10.4.2 Support ........................................................................................................ 73
10.4.3 Adobe PhoneGap Build .............................................................................. 73
Chapitre 11. Création et configuration du projet..................................................................... 74
11.1 Création du projet ..................................................................................................... 74
11.1.1 Installation d’Eclipse ....................................................................................... 74
11.1.2. Mise en place d’outils Android ....................................................................... 74
11.2 Instanciation du projet pour utiliser PhoneGap .......................................................... 77
11.3. Configuration des fichiers au serveur......................................................................... 80
11.4. Architecture de l’application ...................................................................................... 80
Chapitre 12. Représentation graphique ................................................................................... 81
12.1 Page d’accueil ............................................................................................................ 81
12.1.1 Visiteurs ........................................................................................................... 81
12.1.2 Clients............................................................................................................... 83
12.1.3 Abonnés ............................................................................................................ 85
12.1.4 A propos de nous .............................................................................................. 86
CONCLUSION GENERALE ..................................................................................................... 88
REFERENCES BIBLIOGRAPHIQUES ...................................................................................... x xxii
REFERENCES WEBOGRAPHIQUES ........................................................................................ x
GLOSSAIRE .............................................................................................................................. xi
ANNEXES ............................................................................................................................... xiii
xxiii