Vous êtes sur la page 1sur 91

Rsum :

Lobjectif principal de ce travail de PFE consiste implmenter une solution mobile base sur la plate forme J2ME pour la gestion des cartes de fidlit Cette Application permettra aux clients de conserver toutes leurs cartes de fidlits sur leurs tlphones, consulter leurs soldes des points et go localiser les enseignes dans lesquelles ils pourraient utiliser ses cartes. Mots cls : J2ME, LWUIT, carte de fidlit, SOAP, ZXING, QRcode.

Abstract

This final of studies project aims to implement a mobile application based on J2ME plateform to manage fidelity cards. This application will allow customers keeping all their fidelity cards on their phones, checking the number of points earned at any moment and geo locating the signboard in which they could use their cards. Keywords: J2ME, LWUIT, loyalty cards, fidelity card, SOAP, ZXING, QRcode.

Ddicaces
A Mes Trs Chers Parents (Mohamed & Lilia) Tous les mots du monde ne sauraient exprimer limmense amour que je vous porte, ni la profonde gratitude que je vous tmoigne pour tous les efforts et les sacrifices que vous navez jamais cess de consentir pour mon instruction et mon bien-tre. Cest travers vos encouragements que jai opt pour cette profession, et cest travers vos critiques que je me suis ralis. Jespre avoir rpondu aux espoirs que vous avez fonds en moi. Je vous rends hommage par ce modeste travail en guise de ma reconnaissance ternelle et de mon infini amour. Que Dieu tout puissant vous garde et vous procure sant, bonheur et longue vie pour que vous demeuriez le flambeau illuminant le chemin de vos enfants. Je ddie aussi ce travail : Mes surs (Nourhouda, Sameh, Sonia ) pour leurs encouragements incessants. Tous mes amis et spcialement (Lazhar, Mounir, Mahdi, Bilel, Noureddine, Bchir, Wissem, Takwa, Islem et Asma), en souvenir des bons moments que nous avons passs ensemble, pour leur soutien continu, leur aide prcieuse et leur amour.

Riadh Kort

Remerciement:

Le travail prsent dans ce mmoire a t effectu dans le cadre de la prparation du diplme dingnieur spcialit Gnie du Logiciel et des Systmes dInformation linstitut Suprieur dinformatique (ISI).

Au terme de ce projet, Nous tenons exprimer notre profonde gratitude et notre immense respect Monsieur Achraf Gazdar, Matre assistant en informatique linstitut suprieur dinformatique pour sa disponibilit, ces avis clairs, et ces judicieux conseils. Nos vifs remerciements accompagns de toute notre gratitude s'adressent galement Monsieur AbdelKarim Friaa et Monsieur Lajili Abdeljaoued qui ont gard un il attentif sur le droulement et lavancement de notre projet, en ayant toujours des remarques trs constructives ainsi que pour la marque de confiance quils nous ont attribue .Nous aimerons tmoigner du plaisir qu'tait pour nous de travailler sous leurs directives.

Nous exprimons aussi notre gratitude M. Oussama Frioui (Directeur Gnral de Taggist ) ainsi que lensemble de lquipe de Taggist (Aymen, Elaa, Rahma, Basma, Islem,

Noureddine, Takwa, Amani, Bchir, Asma) pour leur chaleureux accueil et aide. Avec beaucoup d'gard, nous ne manquerons pas d'exprimer notre grande reconnaissance tous les enseignants et administrateurs de l'Institut Suprieur dInformatique et tous les membres du jury pour avoir accept de juger ce modeste travail.

Sommaire
Introduction Gnrale .............................................................................................................. 1 Chapitre I : Prsentation Gnrale ......................................................................................... 4 1. Introduction ............................................................................................................. 5 2. Cadre du travail ....................................................................................................... 5 3. Prsentation de lorganisme daccueil ..................................................................... 5 4. Prsentation du projet ............................................................................................. 7 4.1 Objectifs de lapplication .............................................................................. 8 4.2 Approches du travail ...................................................................................... 8 4.3 Mthodologie et formalismes adopts ........................................................... 9 5. Conclusion ............................................................................................................. 10 Chapitre II : Etat de lart ...................................................................................................... 11 1. Introduction ........................................................................................................... 12 2. Les solutions mobiles disponibles sur le march .................................................. 12 2.1 FidMe .......................................................................................................... 12 2.2 SnappFid .................................................................................................... 13 2.3 Fidall ............................................................................................................ 13 2.4 Mobifid ........................................................................................................ 14 3. Critiques de lexistant ............................................................................................ 15 4. Conclusion ............................................................................................................. 15 Chapitre III : Etude thorique et choix techniques ............................................................ 16 1. Introduction ........................................................................................................... 17 2. Etude Prliminaire ................................................................................................. 17 2.1 Smartphones et systmes dexploitation pour mobiles ................................ 17 2.2 Problmatique .............................................................................................. 19 2.3 Les Frameworks de dveloppement mobiles multi-plateforme ................... 19 2.3.1 Comment a marche ................................................................................ 19 2.3.2 Avantages ................................................................................................ 19 2.3.3 Inconvnients .......................................................................................... 20 2.3.4 Comparaison Technique .......................................................................... 21 2.3.4.1 PhoneGap ............................................................................... 22 2.3.4.2 Titanium (Appcelerator) ........................................................ 23 2.3.4.3 Rhodes (Rhomobile) .............................................................. 24 2.3.5 Outils ....................................................................................................... 25 2.3.6 Conclusion............................................................................................... 25 2.4 Solution envisage ....................................................................................... 26 2.5 Architecture adopte .................................................................................... 26 3. Conclusion : ........................................................................................................... 27 Chapitre IV : Analyse et spcification des besoins ............................................................. 28 1. Introduction ........................................................................................................... 29 2. Analyse globale de lapplication ........................................................................... 29 2.1 Description des acteurs ................................................................................ 29 2.2 Spcification des besoins fonctionnels : ...................................................... 29 2.3 Spcification des besoins non fonctionnels ................................................ 30 2.4 Diagramme des cas dutilisation .................................................................. 31 2.5 Raffinement des cas dutilisation ................................................................. 33 2.5.1 Affectation des priorits .......................................................................... 33 2.5.2 Raffinement des cas dutilisation ............................................................ 33

2.5.2.1 Raffinement du cas dutilisation gestion des cartes de fidlit ............................................................................................... 33 2.5.2.2 Raffinement du cas dutilisation go localiser les enseignes proches du client ............................................................................... 34 2.5.2.3 Raffinement du cas dutilisation consultation du nombre de points ........................................................................ 35 2.5.2.4 Raffinement du cas dutilisation consulter les nouvelles offres 35 2.5.2.5 Raffinement du cas dutilisation authentification ............. 36 2.5.2.6 Raffinement du cas dutilisation inscription ...................... 36 2.5.2.7 Raffinement du cas dutilisation procder aux paiement : 37 2.6 Diagramme dactivit de navigation concernant le client ............................ 37 Chapitre V : Conception ........................................................................................................ 40 1. Introduction ........................................................................................................... 41 2. Conception dtaille .............................................................................................. 41 2.1 Le diagramme de classe ............................................................................... 41 2.1.1 Diagramme de classes de lapplication serveur Middleware .................. 41 2.1.2 Les classes de lapplication mobile ........................................................ 44 2.2 La base des donnes de lapplication ........................................................... 45 2.3 Architecture de la partie serveur .................................................................. 47 2.3.1 Package web service (Les mthodes distantes au niveau serveur) : ....... 48 2.4 Les diagrammes de squence ....................................................................... 49 2.4.1 Le cas dutilisation sauthentifier ...................................................... 49 2.4.2 Le cas dutilisation inscription dun nouveau membre ..................... 50 2.4.3 Le cas dutilisation afficher la liste des cartes fidlit disponibles .. 50 2.4.4 Le cas dutilisation ajouter une nouvelle carte ................................ 51 2.4.5 Le cas dutilisation afficher les cartes de fidlit personnelles ......... 52 2.4.6 Le cas dutilisation go localiser les enseignes sur une carte ............ 53 2.4.7 Le cas dutilisation visualiser le code barre de la carte .................. 54 3. Conclusion ............................................................................................................. 54 Chapitre VI : Ralisation ....................................................................................................... 55 1. Introduction ........................................................................................................... 56 2. Environnement de travail ...................................................................................... 56 2.1 Environnement matriel ............................................................................... 56 2.2 Environnement logiciel ................................................................................ 56 2.2.1 La plateforme J2ME .......................................................................... 57 2.2.1.1 Prsentation............................................................................ 57 2.2.1.2 L'architecture J2ME ............................................................... 57 2.2.2 LWUIT .................................................................................................... 59 2.2.3 La bibliothque Zxing (Zebra Crossing) ................................................. 61 2.2.4 La bibliothque Geo-J2ME ..................................................................... 62 2.2.5 Web service ............................................................................................. 62 2.2.5.1 Dfinition du protocole SOAP............................................... 62 2.2.5.2 KSOAP 2 ............................................................................... 63 2.2.5.3 Apache Axis2......................................................................... 63 2.2.5.4 Hibernate................................................................................ 64 3. Interfaces de lapplication ..................................................................................... 65 4. Ralisation partie serveur ..................................................................................... 72 5. Conclusion ............................................................................................................ 73 Conclusion gnrale ............................................................................................................... 74

75 Systmes d'exploitation utiliss par les Smartphones en 2009.............................. 75 1.1 Symbian OS ................................................................................................. 75 1.2 RIM BlackBerry OS .................................................................................... 75 1.3 Android de Google Inc................................................................................. 75 1.4 iOS de Apple Inc .......................................................................................... 75 1.5 Windows Mobile de Microsoft .................................................................... 76 1.6 Windows Phone de Microsoft ...................................................................... 76 1.7 Linux ............................................................................................................ 76 1.8 Bada de Samsung Electronics ...................................................................... 76 2. Calcul de checksum de LEAN 13 : ...................................................................... 77 Glossaire 78 Webographie ........................................................................................................................... 80 Bibliographie........................................................................................................................... 82 Annexes 1.

La liste des figures


Figure 1 : image simplifiant lide de notre projet ........................................................... 7 Figure 2. Les phases dun processus unifi ...................................................................... 9 Figure 3. lapplication FidMe ......................................................................................... 12 Figure 4. Lapplication SnappFid .................................................................................. 13 Figure 5. Lapplication Fidall ......................................................................................... 13 Figure 6. Lapplication MobiFid .................................................................................... 14 Figure 7.Part de march en 2010 Smartphone par systmes d'exploitation.................... 18 Figure 8. Schma montrant le fonctionnement de PhoneGap ........................................ 20 Figure 9. Interface de lmulateur PhoneGap ................................................................. 22 Figure 10. linterface de lancement de Titanium ............................................................ 23 Figure 11.Interface de lmulateur Rhodes ..................................................................... 24 Figure 12. Architecture adopte pour le dveloppement de lapplication ...................... 27 Figure 13 . Diagramme de cas dutilisation de client ..................................................... 32 Figure 14. Diagramme dactivit concernant le client. ................................................... 38 Figure 15. Schma simplifiant les attentes du client et les principales fonctionnalits .. 39 Figure 16. Diagramme de classes de lapplication Middleware ..................................... 43 Figure 17. Les classes de lapplication sur le mobile ..................................................... 44 Figure 18. Schma de la base des donnes ..................................................................... 46 Figure 19. Architecture dtaille de lapplication .......................................................... 48 Figure 20. Les mthodes dployes sur le serveur ......................................................... 48 Figure 21 . Diagramme de squence pour le cas dutilisation sauthentifier ............ 49 Figure 22. Diagramme de squence pour le cas dutilisation inscription nouveau membre ........................................................................................................................ 50 Figure 23. Diagramme de squence pour le cas dutilisation consulter la liste des cartes disponibles ......................................................................................................... 51 Figure 24. Diagramme de squence du cas dutilisation ajouter une nouvelle carte 52 Figure 25. Diagramme de squence du cas dutilisation afficher les cartes de fidlit personnelles ................................................................................................................. 53 Figure 26. Diagramme de squence du cas dutilisation go localiser enseigne ...... 53 Figure 27 . Diagramme de squence du cas dutilisation visualiser le code barre de la carte .............................................................................................................................. 54 Figure 28. Architecture Logicielle de lapplication ........................................................ 56

Figure 29. Interface principal de LWUIT Demo prsentant les principaux widgets apports avec LWUIT ..................................................................................................... 59 Figure 30. Interface montrant leffet rotation ................................................................. 60 Figure 31. interface montrant les possibilits graphiques avec LWUIT ........................ 60 Figure 32. Interface graphique de lapplication Ressource Editor ........................... 61 Figure 33. Schma dcrivant une communication client serveur en utilisant les web service ............................................................................................................................. 62 Figure 34. Structure dun message SOAP ...................................................................... 63 Figure 35. Interface de lancement de lapplication ......................................................... 65 Figure 36. Interface dauthentification ........................................................................... 65 Figure 37. Interface ajout nouveau membre ................................................................... 66 Figure 38. Interface questionnant le client de choisir entre visualiser ses cartes ou ajouter dautres cartes. .................................................................................................... 66 Figure 39. Interface liste des cartes de fidlits disponibles ........................................... 67 Figure 40. Interface dtails carte..................................................................................... 68 Figure 41. Interface ajout dune carte ............................................................................ 68 Figure 42. Carte slectionne.......................................................................................... 69 Figure 43. Liste des cartes propritaires ........................................................................ 69 Figure 44. Code 1D carte affich .................................................................................... 70 Figure 45. QR code carte affich .................................................................................... 70 Figure 46. Go localisation vue satellite ......................................................................... 71 Figure 47. Go localisation vue normal .......................................................................... 71 Figure 48. La liste des services dploys sur le serveur ................................................. 72 Figure 49. Exemple dun Soap Request et dun Soap Response. .................................. 72

La liste des tableaux


Tableau 1. Comparatif des solutions Phonegap, Titanium, Rhomobile ........................ 21 Tableau 2. Tableau comparatif mentionnant les possibilits offertes par les Os mobile et celle des Frameworks. ..................................................................................................... 25 Tableau 3. Tableau daffectation des priorits ................................................................ 33 Tableau 4. Description du cas dutilisation gestion des cartes de fidlit ................ 34 Tableau 5. Description du cas dutilisation go localiser les enseignes proches ...... 34 Tableau 6. Description du cas dutilisation consultation du nombre des points ...... 35 Tableau 7. Description du cas dutilisation consulter les nouvelles et promotions . 35 Tableau 8. Description du cas dutilisation authentification ................................... 36 Tableau 9. Description du cas dutilisation inscription ............................................ 37 Tableau 10. Description du cas dutilisation procder au paiement ........................ 37

ISI

Introduction gnrale

Taggist

Introduction Gnrale

Application mobile pour la gestion des cartes de fidlit

Page 1

ISI

Introduction gnrale

Taggist

Le march des applications mobiles connait un essor phnomnal et devient une vritable manne financire pour les entreprises. Cest dans cette optique, que plusieurs entreprises telles que les supermarchs et les hypermarchs n'ont pas hsit exploiter les avances technologiques pour offrir des services innovants et rapides leurs consommateurs. Le seul et unique objectif tait la recherche perptuelle de solutions pratiques pour fidliser les clients et faciliter leurs achats. Une ide ingnieuse est ne : Inutile dsormais de trimballer ses cartes de fidlit lorsqu'on veut faire ses achats, depuis qu'une application mobile a t dveloppe pour les Smartphones et qui stocke toutes ces cartes. Le contexte de notre projet est de proposer une solution mobile permettant davoir toutes les cartes de fidlit toujours avec le client, en les retrouvant sur son tlphone mobile. Ce rapport prsente lensemble des tapes suivies pour dvelopper la solution. Il contient six chapitres organiss comme suit : Le premier chapitre intitul Prsentation Gnrale est consacr la prsentation du contexte du travail ainsi que lorganisme daccueil. Le chapitre Etat de lart sarticule autour de ltude de quelques applications mobiles de gestion des cartes de fidlit et la prsentation de leurs fonctionnalits offertes. Nous nous sommes bass sur cette tude pour faire la spcification de notre application, qui fera lobjet du quatrime chapitre. Le chapitre suivant intitul Etude thorique et choix techniques contient une tude des solutions techniques existantes sur le march en mentionnant leurs avantages et leurs inconvnients, pour finir par donner la solution retenue.

Dans le chapitre Analyse des besoins et spcification , nous dterminons les besoins fonctionnels et non fonctionnels de notre application et prsentons les diffrents cas dutilisation. Application mobile pour la gestion des cartes de fidlit Page 2

ISI

Introduction gnrale

Taggist

Le cinquime chapitre intitul Conception dtaille les diffrents aspects conceptuels de lapplication. Le dernier chapitre intitul Ralisation prsente lenvironnement de travail ainsi que les outils logiciels que nous avons utiliss pour la ralisation de notre projet. Il illustre aussi le travail ralis avec un ensemble dinterfaces graphiques conues pour lapplication. En conclusion, nous mentionnons les diffrents atouts de ce projet et les perspectives damliorations possibles.

Application mobile pour la gestion des cartes de fidlit

Page 3

ISI

Prsentation Gnrale

Taggist

Chapitre I : Prsentation Gnrale

Application mobile pour la gestion des cartes de fidlit

Page 4

ISI

Prsentation Gnrale

Taggist

1. Introduction
Ce chapitre est consacr pour la prsentation de lentreprise daccueil, la prcision du cadre du projet et la problmatique puis lnumration des tapes de travail raliser pour achever ce projet.

2. Cadre du travail
Ce stage sinscrit dans le cadre dun projet de fin dtudes pour lobtention dun diplme dingnieur informatique de lInstitut Suprieur dInformatique. Notre stage a t effectu au sein dune Socit de Services en Ingnierie Informatique (SS2I) TAGGIST . Le sujet est intitul "Conception et dveloppement dune application mobile dun

programme de fidlit multi enseignes ".

3. Prsentation de lorganisme daccueil


TAGGIST est spcialiste de lintgration de Nouvelles Technologies. En troite collaboration avec les cabinets de conseil, les fabricants de matriel et les diteurs logiciels, Cest une compagnie dintgration des technologies et des systmes dinnovation, spcialise dans le dveloppement des applications mobile, ingnierie logicielle, dveloppement dapplications web. Les activits de TAGGIST sarticulent autour de 4 axes : Prestations de conseil. Intgration de solutions RFID, codes barres, NFC, biomtrie et GPS. Dveloppement de produits et de solutions spcifiques. Distribution de matriels et consommables.

Application mobile pour la gestion des cartes de fidlit

Page 5

ISI

Prsentation Gnrale

Taggist

TAGGIST est compose de deux groupes. Le premier groupe est spcialis dans le dveloppement des solutions mobile. Le deuxime est spcialis dans le dveloppement des applications web sur la plateforme J2EE. Elle est implante dans la ville Charguia-Tunis et la ville Kairouan. Une liste non exhaustive des solutions dveloppes est la suivante : TAGGISTImmob : la solution de gestion des immobilisations vous donne la possibilit de situer gographiquement votre parc mobilier et/ou informatique et dautomatiser linventaire. TAGGISTDoc : cest une solution de suivi des mouvements douvrages et/ou de documents papiers. Lide est ici dquiper des documents dtiquettes RFID. Ainsi, ils seront dcrits dans notre logiciel, puis identifis sur le lecteur de table. TAGGISTLocalisation: elle permet aux utilisateurs de suivre en temps rel et intervalle de temps rgulier (paramtrable de 0.2 secondes quelques minutes) lidentification des lments devant tre surveills et alerter les responsables prdfinis par Mail et/ou SMS lorsquun lment quitte sa zone de localisation prdfinie. TAGGISTTime&Pointage : cest une solution de gestion du temps et de pointage par empreinte digitale et/ou badges RFID (sans contact). Elle offre une gestion rigoureuse des vnements de prsences et dabsences travers une liaison automatique une ou plusieurs pointeuses Biomtriques (par Empreinte Digitale). TAGGISTSecurity: cest une solution la pointe de technologie adapte pour des expositions temporaires, galeries et collections prives, des muses ou collections importantes. TAGGISTGPS: cette solution est base sur une balise GPS/GSM de tracking et de secours, autonome et de trs petite taille qui peut fonctionner en mode GPRS ou SMS. TAGGISTGMAO : ce logiciel intgre toutes les fonctionnalits attendues d'un logiciel de GMAO en conformit avec les normes qualits appliques dans les entreprises (normes ISO). Le logiciel TAGGISTGMAO est dune implantation simple et rapide. En outre, il est totalement paramtrable pour tout type dentreprise. Les menus, les crans, les documents ou les graphiques sont personnalisables par chaque utilisateur.

Application mobile pour la gestion des cartes de fidlit

Page 6

ISI -

Prsentation Gnrale

Taggist

TAGGISTEventent : Cest une solution complte de gestion d'vnement. De l'dition du badge lectronique, l'utilisation de celui-ci aux entres de salles, sur les stands des exposants ou pour le contrle de services.

TAGGISTSant : Solution en cours de dveloppement TAGGISTTextile : Solution en cours de dveloppement TAGGISTTGGYNET : Solution base sur la technologie NFC (Near Field Communication). Cette solution est confidentielle et prouve les comptences de notre quipe et la qualit de nos dirigeants de fournir des solutions Innovantes et la pointe de la technologie. En effet, cette solution est laurate au concours international SIMAGINE 2009. Le site web de la socit TAGGIST est : www.taggist.fr

4. Prsentation du projet
Les avantages des cartes de fidlit sont nombreux aussi bien pour les clients travers les rductions appliqus sur leurs achats et la collecte des points de fidlit, que pour les socits qui prservent long terme leurs parts dans le march et leurs rentabilits. Mais le nombre de ses cartes a augment dune faon exponentielle, ce qui rend impossible de pouvoir les transporter toujours sur soi. Nous proposons comme solution une application mobile multi-enseignes qui a comme objectif de limiter la multiplication des supports

papiers. L'ide est simple : Enregistrer toutes ses cartes de fidlits sur son Smartphone pour les avoir toujours sur soi. Lors du passage en caisse, le code barre de la carte de fidlit est prsent sur l'cran du tlphone.

Figure 1 : image simplifiant lide de notre projet Application mobile pour la gestion des cartes de fidlit Page 7

ISI

Prsentation Gnrale

Taggist

4.1 Objectifs de lapplication


- Permettre le client davoir toutes ses cartes de fidlit toujours sur soi. - La possibilit pour un client dadhrer automatiquement des nouvelles cartes de fidlit depuis son tlphone mobile. - Informer les clients sur les nouvelles offres existantes fin de bnficier de tous les avantages et rductions lies. - Visualiser sur une carte gographique, les enseignes dont le client possde une carte de fidlit ------

-Consulter le solde de points travers un compte en ligne ou travers le tlphone mobile.

4.2

Approches du travail

Le projet comprend deux phases : la premire est la recherche dune solution convenable pour raliser lapplication, et la deuxime, la phase de conception et de dveloppement. Phase de recherche

Cest ltape qui inclut ltude bibliographique, dans laquelle nous devons saisir les diffrentes notions et technologies utiliser dans le projet, les architectures, etc. Aussi, elle renferme les tests des diffrentes solutions mises en hypothse pour raliser lapplication, et nous fixons les outils ncessaires pour la ralisation du projet. Phase de conception et dveloppement

Cest une tape, dans laquelle, nous spcifions les besoins fonctionnels et nous modlisons le systme raliser pour clarifier les tches accomplir dans la partie dveloppement. Cette phase se termine par une partie qui comprend la programmation et les tests de validation.

Application mobile pour la gestion des cartes de fidlit

Page 8

ISI

Prsentation Gnrale

Taggist

4.3 Mthodologie et formalismes adopts


Nous allons adopter la mthode agile : Rational Unified Process comme un processus de dveloppement logiciel. Nous avons opt pour ce choix d ces caractristiques car il est : Itratif. centr sur l'architecture. pilot par des cas d'utilisation et orient vers la diminution des risques.[URL 1]

Expression des besoins

Test

Analyse

Implmentation

Conception

Figure 2. Les phases dun processus unifi conceptuels tels que les acteurs, les processus mtiers, les activits et les composants du systme, ainsi que les lments concrets tels que les langages de programmation, les schmas de bases de donnes, etc. [URL 2]

Application mobile pour la gestion des cartes de fidlit

Page 9

ISI

Prsentation Gnrale

Taggist

5. Conclusion
Dans ce chapitre introductif, nous avons prsent lorganisme daccueil ainsi que le projet raliser. Nous allons entamer maintenant la phase de prparation de ce projet qui est ltude de lexistant et la prsentation des diffrentes solutions disponibles sur le march.

Application mobile pour la gestion des cartes de fidlit

Page 10

ISI

Etat de lart

Taggist

Chapitre II : Etat de lart

Application mobile pour la gestion des cartes de fidlit

Page 11

ISI

Etat de lart

Taggist

1. Introduction
Ce chapitre a pour objet de prsenter quelques applications mobiles pour la gestion des cartes de fidlit dune manire dtaille, en exposant leurs fonctionnalits.

2. Les solutions mobiles disponibles sur le march


La technologie mobile offre de multiples avantages en termes de fidlisation et communication client pour les enseignes : - Augmenter et faciliter l'adhsion au programme de fidlit. - Dmatrialiser la carte de fidlit . - Proposer des coupons de rduction dmatrialiss -Rduire les cots et dlais dune campagne cible de communication (moins de plastique, moins de papier, gain de temps, gratuit des notifications). Le march prsente une panoplie des solutions informatiques ddies la gestion des cartes de fidlit, que nous prsentons ci-aprs.

2.1 FidMe

FICHE TECHNIQUE :

Innovante et simple utiliser, FidMe vous permet denregistrer vos cartes de fidlit en quelques secondes. Grce son outil de reconnaissance de code barre, vous passez votre carte devant lobjectif de votre mobile (sur certains modles) ou saisissez votre numro client et le tour est jou ! [URL3] Disponible pour les plates formes :

Figure 3. lapplication FidMe

Application mobile pour la gestion des cartes de fidlit

Page 12

ISI

Etat de lart

Taggist

2.2 SnappFid
Fiche technique :

Snapp' (ex Business Anywhere) est spcialise dans le commerce mobile et la dmatrialisation de programmes de fidlit. Informations personnelles : Vos clients peuvent consulter et diter les informations de leur compte (suivant vos spcifications). Identification du client : Le code-barres est affich sur l'cran, le client peut alors tre scann en caisse ou prsenter son code en magasin. Consultation du solde : Vos clients peuvent consulter le solde de leur programme de fidlit et ses dtails, mais galement les derniers achats et les primes acquises. Coupons et offres : Notifications ou consultation, les clients reoivent directement leurs coupons et offres personnalises utilisables en magasin. News : les dernires actualits de votre marque ou enseigne. Geolocalisation : Aidez vos clients trouver facilement l'tablissement le plus proche grce aux outils de cartographie type GPS en temps rel. Disponible pour les plates formes :

[URL 4]

Figure 4. Lapplication

SnappFid

2.3 Fidall

Figure 5. Lapplication Fidall Application mobile pour la gestion des cartes de fidlit Page 13

ISI

Etat de lart

Taggist

Fiche technique : Fidall vous permet tout dabord denregistrer gratuitement une fois pour toutes vos cartes de fidlit, afin de les retrouver sur votre tlphone mobile Vous pourrez ensuite pour certaines cartes adhrer dun simple clic. Fidall se charge de transmettre votre demande dadhsion la boutique ou enseigne de votre choix. Enfin, Fidall vous offre la possibilit de consulter les soldes de points de certains programmes de fidlit, depuis une interface unique. De plus, lapplication utilise la go localisation. Fidall vous renseigne sur les enseignes dont vous possdez la carte de fidlit et qui se trouvent prs de votre position. [URL 5] Disponible pour les plates formes :

2.4 Mobifid
Mobifid propose aux enseignes de dmatrialiser leurs programmes de fidlit sur tlphone portable.

L'application Mobifid est brinde aux couleurs de l'enseigne. Elle permet au consommateur de grer sa carte de fidlit, recevoir des coupons de rductions, cumuler des points, consulter le catalogue cadeau.... Cette application serait interface avec le systme d'information de l'enseigne. [URL 6] Disponible pour les plates formes :

Figure 6. Lapplication MobiFid

Application mobile pour la gestion des cartes de fidlit

Page 14

ISI

Etat de lart

Taggist

3. Critiques de lexistant
Quelle que soit la technologie utilise ou les services supplmentaires apports aux consommateurs par ces solutions, un enjeu majeur reste l'intgration de la solution aux systmes d'information de l'enseigne. La remonte d'informations doit tre efficace et pertinente. Les donnes remontes par ces applications doivent tre intgres au SGBD de l'enseigne. De plus, nous constatons que la plupart des firmes offrant ces applications, prsentent une version cible pour chaque Os mobile (ex : offrir une application dvelopp avec Objective C sur lApps Store pour les SmartPhone iPhone, une autre version tlchargeable depuis lAndroid Market faite avec Java pour des appareils supportant Android, dautres ddies aux Blackberry etc.).

Nous cherchons dvelopper une solution gnrique qui serait compatible avec toutes les Os mobiles disponibles sur le march sans tre oblig reprendre le travail de dveloppement pour chaque plateforme.

4. Conclusion
Dans ce chapitre nous avons essay dtudier quelques applications mobiles de gestion des cartes de fidlit dans le but davoir une ide sur les fonctionnalits de ces dernires et de ressortir leurs points forts. Sur la base de cette tude, nous allons laborer la spcification de notre application. Une tude thorique sur les plates formes open source ddies pour des applications Smartphones fonctionnant sur plusieurs Os mobiles fera lobjet du chapitre suivant.

Application mobile pour la gestion des cartes de fidlit

Page 15

ISI

Etude thoriques et choix techniques

Taggist

Chapitre III : Etude thorique et choix techniques

Application mobile pour la gestion des cartes de fidlit

Page 16

ISI

Etude thoriques et choix techniques

Taggist

1. Introduction
Ce chapitre est dcompos en trois sections importantes. Tout dabord, une tude prliminaire sur les Smartphones, les Framework ddis pour le dveloppement mobile multiplate formes, et par la suite le choix de la solution technique adopter. Et enfin, une vue globale sur la plateforme du projet.

2. Etude Prliminaire
2.1 Smartphones et systmes dexploitation pour mobiles
Un Smartphone, un tlphone intelligent ou un ordiphone est un tlphone mobile qui offre des fonctions d'un Personal digital Assistant . Il fournit les fonctionnalits d'agenda, de navigation web, de calendrier, de consultation de courrier lectronique, de messagerie instantane et du GPS (Global Positioning System). Un Smartphone peut aussi permettre d'installer des applications additionnelles sur l'appareil. Ces applications peuvent tre dveloppes par l'oprateur, par le fabricant ou par n'importe quel autre diteur de logiciel. Vu la grande importance des tlphones intelligents, une grande varit dentreprises se place dans le march des Smartphones en dveloppant des systmes dexploitation pour mobiles. Vers la fin de lanne 2007, les systmes d'exploitation les plus rpandus dans le monde sont:

Symbian (rachet par Nokia) tout en occupant 67 % de parts de march. Windows Mobile (dvelopp par Microsoft) avec 13 % de parts de march. BlackBerry avec 10 % de parts de march. iPhone OS dvelopp par Apple sur l'iPhone avec 7 % de parts de march. Palm OS : encore prsente sur quelques Treo. Linux tel que LiMo et OpenMoko. J2ME (Java 2 Micro Edition) est une technologie Java spcialement adapte au dveloppement des applications sur des appareils mobiles (tel que des PDA, des tlphones cellulaires, des systmes de navigations pour voiture, etc.), capacits limites en termes de processeur, mmoire, affichage et saisie.

Application mobile pour la gestion des cartes de fidlit

Page 17

ISI

Etude thoriques et choix techniques

Taggist

En 2008, le nouveau systme d'exploitation open source Android, dvelopp par Google, a fait son apparition. En 2009, Palm Inc lance le Palm pr-quip du Palm webOS . D'autres systmes dexploitation sortent sous Linux. Microsoft, Symbian et Blackberry mettent jour leurs systmes pour rester au niveau de l'iPhone OS et d'Android. Au dbut de 2010, une autre enqute sur les systmes d'exploitation les plus courants en France, indique que Symbian est le grand perdant dans le dveloppement du march durant ces deux dernires annes et que Blackberry, Windows Mobile, iPhone OS et Android sont devenus les systmes d'exploitation les plus utiliss : La Figure 7 prsente le taux doccupation du march par ses systmes dexploitation :

iPhone OS tout en occupant prs de 30% du march Windows Mobile avec environ 20 % du march Android avec environ 20% du march Blackberry avec environ 20% du march Symbian avec environ 10% du march Palm webOS, Linux et autres avec des parts ngligeables du march [ pour plus de dtails, consulter la partie Annexe]

D'autres systmes d'exploitation sont en dveloppement au dbut de 2010 tels que Bada dvelopp par Samsung et MeeGo le produit de Intel et Nokia.[ URL 7]

Figure 7.Part de march en 2010 Smartphone par systmes d'exploitation

Application mobile pour la gestion des cartes de fidlit

Page 18

ISI

Etude thoriques et choix techniques

Taggist

2.2 Problmatique
Cette diversit au niveau des plateformes mobiles, met les socits ditrice des logiciels dans lembarras du choix de lenvironnement du dveloppement. Taggist a pens dans un premier lieu concevoir une application mobile multi-plate forme, c'est--dire compatible et fonctionnelles sur plusieurs os de smartphones (iphones, android,etc.) Ceci devient de plus en plus possible pour des petites applications simples grce aux nombreux Frameworks open source ddies pour des applications Smartphones

multiplateforme. Ces applications sont dveloppes avec des langages destins au web (de plus en plus, html5 et JavaScript).

2.3
2.3.1

Les Frameworks de dveloppement mobiles multi-plateforme


Comment a marche

Malgr le fait que chaque Smartphone parle une langue totalement diffrente que les autres, ils partagent un grand avantage, c'est qu'ils ont tous un navigateur web, afin qu'ils comprennent tous HTML, CSS et JavaScript. Donc, c'est le point d'entre pour toute technique de ciblage multiplateforme. La Figure 8 illustre un exemple concret de fonctionnement de PhoneGap, lun de ces Frameworks mobiles

2.3.2 Avantages
- Ecrire avec des technologies de dveloppement web, au lieu de l'apprentissage de chaque Framework. - "Write once run every where" (en fait ce n'est pas de cette faon que les choses se passent, la plupart du temps, c'est Write once debug every where").

Donc, pas de phase d'apprentissage pour chaque plate-forme, et pas de temps de dveloppement supplmentaire pour le portage chaque plate-forme, seul un petit effort pour un dploiement sur des plateformes diffrentes.

Application mobile pour la gestion des cartes de fidlit

Page 19

ISI

Etude thoriques et choix techniques

Taggist

Figure 8. Schma montrant le fonctionnement de PhoneGap

2.3.3 Inconvnients
- Plus appropri pour les applications orientes donnes, mais moins efficace dans les applications multimdia riches. - Pas de support pour les jeux. - Un rendement infrieur par rapport aux technologies indignes et natives. - Le Look & Feel est le mme sur toutes les plateformes: la quasi-totalit de ces Framework ont dcid de fonder lapparence de leurs composants graphiques similaires celle de l'iPhone. Bien que cette dcision permet de crer des applications presque identiques des applications natives sur l'iPhone, mais cela risque de dcevoir ou de frustrer certains

Application mobile pour la gestion des cartes de fidlit

Page 20

ISI

Etude thoriques et choix techniques

Taggist

utilisateurs de BlackBerry et / ou Android qui sont familiariss avec ces environnement. [URL10 ]

2.3.4 Comparaison Technique


Nous allons tudier les 3 principales technologies de base savoir: Phone gap, Titanium, et Rhodes .Le tableau Tableau 1 reprsente un comparatif de solutions open source pour crer des applications pour smartphones qui seront fonctionnelles sur plusieurs OS .[URL 11] Produit Licence PhoneGap Open-source (MIT License) Prix Smartphones Gratuit iPhone, Android, BlackBerry, Symbian, Palm Langages HTML, JavaScript, CSS Apparence native Dploiement manuel manuel RhoSync non oui oui HTML, JavaScript, CSS Titanium Appcelerator Open-source (Apache Public v2.0) Gratuit / $499 Phone, Android RhodesRhomobile Open-source (MIT License) Gratuit / $1000 iPhone, BlackBerry, Windows Mobile, Symbian et Android HTML, Ruby

Tableau 1. Comparatif des solutions Phonegap, Titanium, Rhomobile

Application mobile pour la gestion des cartes de fidlit

Page 21

ISI 2.3.4.1 PhoneGap

Etude thoriques et choix techniques

Taggist

Figure 9. Interface de lmulateur PhoneGap Description : PhoneGap cre des applications mobiles utilisant les technologies web seulement: HTML, CSS et JS. Une application Tlphone n'est pas si diffrent d'une application web en mode Ajax: les pages ne sont jamais (ou rarement) rafrachie, et l'interface et l'application sont grs entirement en JavaScript. Ce choix de technologies signifie que PhoneGap peut tre utilis seuls pour des applications simples, ou peut tre combin avec des framework JavaScript comme Sencha Touch, jQuery Mobile ou avec un langage mobiles tels que MOBL . Ces Framework aident dvelopper des applications avec des interfaces utilisateurs riches, intuitives et conviviales. L'avantage du Framework PhoneGap est clair: le dveloppement est rapide et plusieurs plates-formes le supportent.

Application mobile pour la gestion des cartes de fidlit

Page 22

ISI Inconvnients :

Etude thoriques et choix techniques

Taggist

Malgr le fait que JavaScript soit largement utilis, l'exprience de l'utilisateur dpend beaucoup de la puissance de l'appareil et l'acclration de certaines fonctions au niveau du matriel. Certains tlphones Android, par exemple, offrent une interaction rapide et de qualit leve, tandis que d'autres offrent une exprience plus limite et presque lente.

2.3.4.2 Titanium (Appcelerator)

Figure 10. linterface de lancement de Titanium Description : Les applications faites avec Titanium sont compiles pour l'OS de destination. Elles paraissent donc plus natives que celles dveloppes avec PhoneGap et sont moins gourmandes en ressources. Inconvnients : Il n'est pas toujours facile de construire un code qui fonctionne sur Android et iPhone. Certains composants sont parfois prsents sur une plate-forme, mais pas forcment sur l'autre, certains comportements ne sont pas les mmes sur l'un ou l'autre.

Application mobile pour la gestion des cartes de fidlit

Page 23

ISI

Etude thoriques et choix techniques

Taggist

2.3.4.3 Rhodes (Rhomobile)

Figure 11.Interface de lmulateur Rhodes Description :Rhodes est bas sur un modle compltement diffrent: chaque application mobile embarque un VM Ruby, un framework minuscule bas sur le modle MVC sur Ruby on Rails et un serveur Web simplifie. Il supporte une large gamme d'appareils: la version BlackBerry 4,6 +, 5.x, 6.x, Android, IOS et Windows Mobile. Inconvnient : Caractristiques Graphique: Avec Rhodes, les vues sont cres sous forme de pages HTML. Il y a des composants natives que nous pouvons accder. jQTouch (un plugin JQuery pour le dveloppement mobile) est galement intgr, mais dans l'ensemble, les applications cres ont une apparence plus proche du "web" et moins "native" et pas ncessairement conviviales. Vitesse dexcution lente: lintgration d'une Machine virtuelle Ruby, un petit serveur web qui envoie des pages HTML un navigateur rend la vitesse dexcution plus lent. Le dmarrage de l'application, est en particulier, plus lent que sur les autres outils. Le temps de latence est important.

Application mobile pour la gestion des cartes de fidlit

Page 24

ISI

Etude thoriques et choix techniques

Taggist

2.3.5 Outils

Rhodes : apporte avec lui un cur ddi pour la construction et le paquetage des applications et possde un diteur web web tool pour accomplir ses tches. Phonegap : dpend des outils de dveloppement natives intgrs avec chaque plateforme SDK, xCode pour iPhone, le plugin Eclipse pour Blackberry Titanium : possde un puissant environnement de dveloppement intgr pour la construction des applications mobiles.

2.3.6 Conclusion
Application Native sur diffrent Os mobile Application Web(Mobile Apps Cross Platform) Accs restreints aux ressources du tlphone Toutes les
Performance

Performance et capacit

Fonctionnalits ne sont pas accessibles et supportes. (limite du navigateur) Sans processus dapprobation. Problme didentification de lapplication par lutilisateur

Tlchargement Disponible pour le tlchargement de lapplication

dans les Apps store, Android Market (aprs approbation de ladministrateur du site)

Mode de fonctionnement Apparence Complexit de lapplication

Mode offline / online Apparence native complexe

Doit tre en mode online Pas ncessairement Ddie pour des applications simple

Tableau 2. Tableau comparatif mentionnant les possibilits offertes par les Os mobile et celle des Frameworks. Application mobile pour la gestion des cartes de fidlit Page 25

ISI

Etude thoriques et choix techniques

Taggist

2.4 Solution envisage


Tenant compte de cette tude, nous avons jug que ces Framework sont des solutions non fiables surtout avec des applications complexes et gourmandes en ressources. Alors, la slection dune de ces plateforme serait un risque potentiel qui pourra engendrer des rsultats inattendues. Suite cette constatation, nous avons choisi de travailler avec la plate forme J2ME et de reprendre la mme application sur les autres environnements (Blackberry, iPhone, Android ) avec dautres collgue.

2.5 Architecture adopte


La Figure 12 illustre larchitecture adopter pour notre application. Tout dabord, notre projet sera dfalqu en trois modules : - Une partie cliente : elle consiste la ralisation des diffrentes interfaces de lapplication
mobile ainsi que linterprtation des donnes fournis et leurs affichages.

- Une partie serveur : Cette partie permet lalimentation de la partie cliente avec les donnes.
De plus, elle permet linsertion, la consultation des donnes et la mise jour de lapplication cliente.

- Une partie dinterconnexion entre le client et le serveur : Ce module permet de mettre en


correspondance linteraction entre les diffrents intervenants de lapplication et assure la communication entre eux..

Application mobile pour la gestion des cartes de fidlit

Page 26

ISI

Etude thoriques et choix techniques

Taggist

Figure 12. Architecture adopte pour le dveloppement de lapplication

3. Conclusion :
Nous avons prsent dans ce chapitre une ide sur larchitecture adopte dans notre projet. De plus, nous avons prsent la solution retenue et les technologies utiliser. Une tude plus approfondie sera prsente dans les prochains chapitres. Lanalyse des besoins et la spcification feront lobjet du chapitre suivant.

Application mobile pour la gestion des cartes de fidlit

Page 27

ISI

Analyse et spcification des besoins

Taggist

Chapitre IV : Analyse et spcification des besoins

Application mobile pour la gestion des cartes de fidlit

Page 28

ISI

Analyse et spcification des besoins

Taggist

1. Introduction
La phase danalyse et spcification des besoins prsente une tape primordiale dans le cycle de dveloppement dun projet. En effet, elle permet de mieux comprendre le travail demand en dgageant les besoins des diffrents utilisateurs que le systme doit accomplir.

2. Analyse globale de lapplication


Lobjectif de notre travail est de concevoir et dvelopper une application mobile pour un programme de fidlit multi-enseignes qui permettra un client connect partir du site ou de son mobile(J2ME) de grer ses cartes.

2.1 Description des acteurs


Cette section a pour objet de prsenter les acteurs et leurs fonctionnalits lesquelles doit rpondre notre application. Nous commenons notre analyse par identifier les acteurs qui agissent sur notre systme savoir : Le client : Le client est un acteur principal qui interagit avec notre application. Cette personne bnficie de toutes les fonctionnalits de lapplication en mode connect ainsi quen mode non connect. Lenseigne : cest un acteur principal qui intervient seulement dans la partie web. Il prsente ses diffrentes agences, boutiques, dans le but dexposer leurs cartes de fidlit. Ladministrateur : joue un rle primordial dans lassurassions du bon fonctionnement du systme. Cest la personne qui prend en charge la gestion des comptes des utilisateurs (les clients et les enseignes) ainsi que la gestion des cartes fidlits sur lesquelles portent les traitements des diffrents utilisateurs (ajout, adhsion, suppression, modification) et la gestion des promotions.

2.2 Spcification des besoins fonctionnels :


Le Client : Il accde lapplication sur son tlphone mobile pour : Application mobile pour la gestion des cartes de fidlit Page 29

ISI

Analyse et spcification des besoins Ouvrir un compte sur cette application sil nest pas encore inscrit.

Taggist

Ajouter une carte de fidlit sur son mobile (saisir les dtails de la carte : nom, prnom, N de la carte) Choisir lune de ces cartes de fidlits dj acquis. Adhrer une nouvelle carte de fidlit. Go localiser les enseignes proches dont il possde une carte de fidlit. Retrouver le solde des points de certaines cartes de fidlit. Procder aux paiements des cartes slectionnes. Lenseigne peut : Grer ses cartes : o Consulter la liste de ses cartes. o Ajouter une carte avec spcification du nombre des points offerts, dlais de validit de la carte... o Modifier la description dune carte. o Supprimer une carte. Grer les offres : o Consulter la liste de ses offres. o Ajouter une nouvelle offre (dlai de loffre, description de loffre). o Modifier une offre (dlai, dtails). o Supprimer une offre. Ladministrateur peut : Grer les comptes des utilisateurs: ajout, modification, suppression, consultation dun compte utilisateur. Grer les cartes : ajout, modification, suppression, consultation dune carte. Grer les offres sur les cartes : ajout dune nouvelle offre, modification dune offre, suppression dune offre lors ce quelle dpasse la date limite.

2.3 Spcification des besoins non fonctionnels


Aprs avoir dtermin les besoins fonctionnels nous prsentons ci-dessous lensemble des contraintes respecter pour garantir la performance du systme, donc de fournir un produit

Application mobile pour la gestion des cartes de fidlit

Page 30

ISI

Analyse et spcification des besoins

Taggist

performant qui respecte les exigences de lutilisateur et qui peut faire face des risques de panne ou de non fonctionnement. Performance :

Afin dtre accepte par le client, notre application doit respecter ce critre tout en assurant un temps de rponse minimum et des fonctionnalits rependant aux besoins de lutilisateur. La simplicit:

Un visiteur assez modeste pourra utiliser un tel service de faon intuitive. Lergonomie de linterface :

Les interfaces doivent tre simple et conviviale : On doit essayer le maximum dliminer lencombrement. La modularit de lapplication :

Avoir un code simple facile maintenir et comprendre en cas de besoin.

2.4 Diagramme des cas dutilisation


La Figure 13 illustre les diffrentes fonctionnalits offertes pour le client travers notre application mobile.

Application mobile pour la gestion des cartes de fidlit

Page 31

ISI

Analyse et spcification des besoins


<<extend>>

Taggist

Client

Inscription Finaliser profil


<<include>>

Golocaliser les enseignes


<<include>> <<include>>

Consulter les offres et les promotions Dconnexion


<<include>> <<include>>

s'authentifier Procder au paiement


<<include>>

Consulter le solde des points


<<include>> <<extend>>

Adhrer une carte chercher une carte Ajouter une carte

Choisir une carte

Grer les cartes

Choisir une carte par pourcentage Choisir une carte par points

Supprimer une carte

Visualiser les dtails d'une carte Modifier les dtails d'une carte

Figure 13 . Diagramme de cas dutilisation de client

Application mobile pour la gestion des cartes de fidlit

Page 32

ISI

Analyse et spcification des besoins

Taggist

2.5 Raffinement des cas dutilisation


2.5.1 Affectation des priorits
A cette tape de cycle de dveloppement, il est ncessaire de dterminer les cas dutilisation les plus prioritaires. Le choix repose sur la dpendance des cas dutilisation, de lactivit de lentreprise et des choix des utilisateurs. Cas dutilisation Sauthentifier Inscription Gestion des cartes de fidlit Consultation des nombres de points Go localiser les enseignes proches de client Consulter les nouvelles offres Procder aux paiements Acteur Client Client Client Client Client Client Client priorit 2 2 1 1 1 1 2

Tableau 3. Tableau daffectation des priorits

2.5.2 Raffinement des cas dutilisation


2.5.2.1 Raffinement du cas dutilisation gestion des cartes de fidlit
Nom du cas d'utilisation Acteurs Pr condition Post condition Scnario principal

Gestion des cartes de fidlit Client Le systme fonctionne et lutilisateur est authentifi Le client pourra ajouter, supprimer, et modifier les dtails de ces cartes de fidlit. 1. Le systme prsente les diffrentes cartes de fidlit existantes. 2. Le client pourra soit ajouter ou adhrer une carte. 3. Dans le cas dajout, le client doit insrer le code de sa carte dj acquise et quelques renseignements. 4. Dans le cas dadhsion, les dtails de la carte seront affichs et un code barre est gnr automatiquement. 5. Le client peut modifier ou supprimer les cartes enregistres dans son profil.

Application mobile pour la gestion des cartes de fidlit

Page 33

ISI
Exceptions

Analyse et spcification des besoins

Taggist

Le systme affiche un message derreur dans le cas o : -Les donnes introduites par le client sont incohrentes. Par exemple : un code barre contenant des caractres alphabtiques. -le client ne remplit pas tous les champs obligatoires. -le code barre de la carte ajout est inexistant dans la base des donnes.

Tableau 4. Description du cas dutilisation gestion des cartes de fidlit 2.5.2.2 Raffinement du cas dutilisation go localiser les enseignes proches du client
Nom du cas d'utilisation Acteurs Pr condition

Go localiser les enseignes proches Client Le systme fonctionne. lutilisateur est authentifi et possde au moins une carte de fidlit. Le systme pourra trouver facilement les enseignes les plus proches grce aux outils de cartographie type GPS en temps rel. 1. Le systme prsente les diffrentes cartes de fidlit du client. 2. Le client choisit une de ses cartes. 3. Le systme montre une carte contenant des marqueurs indiquant lemplacement des enseignes et la faon dy accder. 4. Les offres doivent tre aussi go localise. Le systme se plante sil est narrive pas accder aux services GPS pour identifier lemplacement actuel du client et les enseignes proches du lieu.

Post condition Scnario principal

Exceptions

Tableau 5. Description du cas dutilisation go localiser les enseignes proches

Application mobile pour la gestion des cartes de fidlit

Page 34

ISI

Analyse et spcification des besoins

Taggist

2.5.2.3 Raffinement du cas dutilisation consultation du nombre de points


Nom du cas d'utilisation Acteurs Pr condition

Post condition Scnario principal

Exceptions

Consultation du nombre de points Client Le systme fonctionne. lutilisateur est authentifi et possde au moins une carte de fidlit. Le client pourra consulter son cumul des points de fidlit collects chez lun des enseignes. 1. Le systme prsente les diffrentes cartes de fidlit du client. 2. Le client choisit une de ses cartes. 3. Le client consulte lensemble des points de fidlit collects et ses dtails, Il pourra galement visionner lhistorique de ses derniers achats et les primes acquises. Le systme affiche un message derreur si la connexion avec le serveur base des donnes est inaccessible.

Tableau 6. Description du cas dutilisation consultation du nombre des points 2.5.2.4 Raffinement du cas dutilisation consulter les nouvelles offres
Nom du cas d'utilisation Acteurs Pr condition

Post condition

Scnario principal

Exceptions

consulter les nouvelles offres et promotions Client Le systme fonctionne. Lutilisateur est authentifi et possde au moins une carte de fidlit. Notifications ou consultation, les clients reoivent directement sur leurs appareils les offres et les promotions offertes par lune des enseignes. 1. Le systme prsente les diffrentes cartes de fidlit du client. 2. Le client choisit une de ses cartes. 3. Il choisit ensuite de visualiser les nouvelles offres et promotions concernant lenseigne propritaire de cette carte. Les offres et promotions ne seront prsentes sur le tlphone du client que dans le mode Online. Dans le cas dabsence de connexion, rien nest affich.

Tableau 7. Description du cas dutilisation consulter les nouvelles et promotions

Application mobile pour la gestion des cartes de fidlit

Page 35

ISI

Analyse et spcification des besoins

Taggist

2.5.2.5 Raffinement du cas dutilisation authentification


Nom du cas d'utilisation Acteurs Pr condition

Authentification Client
Chaque personne dsirant bnficier des services de lapplication doit sauthentifier dabord. Cette personne doit saisir son login et mot de passe puis cliquez sur le bouton sauthentifier. Cet utilisateur accdera aux fonctionnalits de lapplication selon ces privilges. Un simple utilisateur aura des fonctionnalits restreintes. 1. Le systme affiche le formulaire d'authentification 2. Lutilisateur saisit son login et mot de passe. 3. Lutilisateur bnficiera des fonctionnalits de lapplication selon son privilge (administrateur / simple utilisateur) 4. Le systme affiche un message d'erreur, si le mot de passe est incorrect et demande lutilisateur de senregistrer sil navait pas un login et un mot de passe. En cas dinexistence du mot de passe et du login introduit, un message derreur est affich.

Post condition

Scnario principal

Exceptions

Tableau 8. Description du cas dutilisation authentification 2.5.2.6 Raffinement du cas dutilisation inscription
Nom du cas d'utilisation Acteurs Pr condition Post condition Scnario principal

Exceptions

Inscription Client Le systme fonctionne et lutilisateur voulant bnficier des services offerts par lapplication. Lutilisateur aura un mot de passe et un login et pourra accder aux services de lapplication. 1. Le systme demande au client de saisir son login, mot de passe, et CIN. 2. Les donnes seront envoyes un serveur distant pour vrifier leur cohrence et unicit. 3. Le systme affiche un message de confirmation concernant linscription. 4. Le systme demande au client de finaliser son compte avec ses informations personnelles. Les dtails de linscription (login, CIN) existent dj dans notre systme. Dans ce cas, un message derreur sera mis invitant le client saisir de nouveau ses dtails.

Application mobile pour la gestion des cartes de fidlit

Page 36

ISI

Analyse et spcification des besoins Tableau 9. Description du cas dutilisation inscription

Taggist

2.5.2.7 Raffinement du cas dutilisation procder aux paiement :


Nom du cas d'utilisation Acteurs Pr condition

procder au paiement Client


Lorsque le client choisit les cartes de fidlit type avec remise, il doit payer en ligne une somme dargent contre ce type de service accord. Le client aura un code barre (1D, 2D) pour sa nouvelle carte de fidlit choisie. 1. Le systme propose au client ce type de service en prsentant les dtails et les avantages accords. 2. Le client choisit la carte cible. 3. Il procde ensuite au paiement : Il devra saisir ses coordonns bancaires et quelques informations personnelles. 4. Le systme affiche un message indiquant la russite de la transaction. Le systme affiche un message d'erreur, si les donnes bancaires sont errones, ou si son solde est insuffisant.

Post condition Scnario principal

Exceptions

Tableau 10. Description du cas dutilisation procder au paiement

2.6 Diagramme dactivit de navigation concernant le client


La Figure14 reprsente un scnario complet dutilisation de lapplication..

Application mobile pour la gestion des cartes de fidlit

Page 37

ISI

Analyse et spcification des besoins

Taggist

connexion
do/ saisir login & password login ou pwd non valide Pas encore inscrit

cration compte
do/ remplir dtails formulaire do/ finaliser son compte do/ choisir paramtres connexion

sinon

affichage cartes personnelles


do/ visualiser dtails cartes personnelles do/ filtrage carte par(catgories, nom) do/ consulter les notifications des nouvelles promotions

slectionner une carte

ajouter une carte

visualiser dtails carte slectionne


do/ afficher code barre do/ afficher points collects do/ retrouver les enseignes proches golocaliser les enseignes

visualiser les cartes disponibles


do/ afficher la liste des cartes do/ rechercher une carte selon(catgories, nom) do/ slectionner une carte slectionner une carte

afficher la carte gographique


do/ accder aux enseignes marqus sur la carte do/ visualiser chemin d'accs

visualiser dtails carte slectionne


do/ afficher description carte do/ slectionner Ajouter carte do/ slectionner adhrer carte choix "Ajout carte" choix "adhsion carte"

code barre erron

saisir code barre


do/ saisir son code barre do/ vrifier cohrance code choix carte avec remise choix carte avec collecte des points

procder aux paiement


do/ saisir coordonnes bancaires do/ valider transaction

Recevoir code barre

Ajouter la nouvelle carte la collection personnelles

Figure 14. Diagramme dactivit concernant le client.

Application mobile pour la gestion des cartes de fidlit

Page 38

ISI

Analyse et spcification des besoins

Taggist

Dans ce qui suit, une figure rcapitulative et simplifie des objectifs entamer et de larchitecture mettre en place.

Figure 15. Schma simplifiant les attentes du client et les principales fonctionnalits Conclusion : Dans ce chapitre, nous avons numr les diffrents besoins fonctionnels et non fonctionnels de notre application. Ensuite, nous avons fait une tude des diffrents cas dutilisation de notre solution. Ce chapitre a t dune importance cruciale surtout pour la comprhension des besoins et attentes du client.

Application mobile pour la gestion des cartes de fidlit

Page 39

ISI

Conception

Taggist

Chapitre V : Conception

Application mobile pour la gestion des cartes de fidlit

Page 40

ISI

Conception

Taggist

1. Introduction
Dans ce chapitre nous abordons la partie conception du projet, dans laquelle, nous dtaillons les diffrents lments de conception, savoir les diagrammes de squences, et les diagrammes de classes.

2. Conception dtaille
La conception est la plus importante tape du cycle du dveloppement logiciel. Elle se base essentiellement sur la bonne spcification et lanalyse des besoins. Notre dmarche dbute par la comprhension du problme. Ensuite nous analysons le problme pour donner une solution adquate. A prsent, nous sommes dans la phase de concevoir la solution. Notre conception doit obir larchitecture dj choisie pour les diffrentes parties du systme do cette phase prliminaire qui nous permettra de dfinir les composants globaux de notre systme.

2.1 Le diagramme de classe


Le diagramme de classes est une modlisation statique du systme en termes de classes et de relations entre ces classes. Son intrt rside dans la modlisation des entits du systme dinformation.

2.1.1 Diagramme de classes de lapplication serveur Middleware


La Figure 16 illustre les principales classes de notre application : Classe Client : est la classe qui contient toutes les informations concernant le client. Classe Enseigne : est la classe qui contient tous les dtails concernant une enseigne. Classe Carte Service : est la classe qui reprsente rellement la carte de fidlit avec sa description, sa validit, son prix dachat, le taux de remise accord, les nombres des points gagns en change dun montant dpens et son tat soit active ou non. Classe Catgories : elle sert classifier les cartes de fidlit sous des catgories par exemple : les produits alimentaires, cosmtiques, motos et autos Classe Plage Code : sert associer et restreindre une plage spcifique de code pour une carte de fidlit. Classe Promotion : contient tous les dtails dune offre lance par une enseigne. Application mobile pour la gestion des cartes de fidlit Page 41

ISI

Conception

Taggist

Classe coordonne : enregistre les longitudes et les latitudes dune enseigne pour faciliter sa localisation dans Google Maps. Classe compte : sert associer une carte de fidlit prcise un client donn tout en enregistrant ses dtails tels que son cumul de points de fidlits, sa date dacquisition, son code barre. Classe Connexion : gre les connexions lapplication (contient tous les logins et mots de passe) qui servent la phase dauthentification. Classe Prfrences : sert prsenter une liste non exhaustive des prfrences dun client pour que les offres ou les campagnes publicitaires soient bien cibles. Classe ApourPrfrences : cest une classe de jointure entre la classe client et la classe prfrence.

Application mobile pour la gestion des cartes de fidlit

Page 42

ISI

Conception

Taggist

Figure 16. Diagramme de classes de lapplication Middleware

Application mobile pour la gestion des cartes de fidlit

Page 43

ISI

Conception

Taggist

2.1.2 Les classes de lapplication mobile

Figure 17. Les classes de lapplication sur le mobile La Figure 17 montre les classes utilises au niveau client. La classe LocalMidlet est la Midlet de notre application qui reprsente llment principale. Elle a des relations avec toutes les classes de notre projet. La classe SoapConnection est la classe qui gre les relations dchanges et danalyse des donnes transitant entre le web service et notre application.

Application mobile pour la gestion des cartes de fidlit

Page 44

ISI

Conception

Taggist

La classe Checksum sert vrifier la cohrence des codes barres insrs et sils respectent les normes EAN13. La classe BarcodeFunction est la classe responsable de gnration des codes barres sous la forme EAN13 ou Qrcode La classe GoogleMap est la classe responsable de g localisation et dajout des marqueurs sur la carte gographique. Les classes restantes sont des formes et reprsentent les interfaces de lapplication mobile.

2.2 La base des donnes de lapplication


La Figure 18 reprsente les tables utilis dans notre base des donnes .Ces tables reprsentent lunit de persistance de notre application.

Application mobile pour la gestion des cartes de fidlit

Page 45

ISI

Conception
client id_cli id_lo nom_cli prenom_cli adresse_cli ville code_pos tel_cli email_cli cin_cli date_naiss situation_fam prof int <pk> int <fk> varchar(255) varchar(255) varchar(255) longtext varchar(255) longtext longtext varchar(20) date varchar(50) longtext

Taggist

FK_IDENTIFIER_CLI2

plage id_plage plage_min plage_max etat_plage ... int <pk> bigint bigint bool

categorie id_cat int <pk> type_cat varchar(255) FK_SPECIFIER

type_carte id_type int <pk> libelle varchar(255) FK_LIER

FK_POSSEDER carte_service compte connexion id_lo id_cat login pwd etat_lo int <pk> int <fk3> varchar(50) varchar(50) bool id_comp int <pk> FK_IDENTIFIER_CLI id_carte int <fk2> id_cli int <fk1> code_bar longtext montant_comp double nbr_pt numeric(8,0) etat_comp bool code_pin numeric(5,0) date_acq date text FK_IDENTIFIER_ENS identification motdePasse text id_carte id_ens id_type id_plage desc_carte FK_APPARTENIR validation prix_ach taux_rem montant FK_APPARTINE nb_pt etat ... int int int int varchar(255) numeric(8,0) float float float int bool <pk> <fk1> <fk3> <fk2>

FK_OFFRIR enseigne id_ens id_lo nom_com adresse_com ville_com code_pos_com tel_com mail_com num_rg ... int <pk> int <fk> varchar(255) varchar(255) varchar(50) numeric(8,0) varchar(20) varchar(255) varchar(255)

FK_GERER promotion id_pro id_carte desc_pro prix_ach_pro taux_rem_pro montant_pro nb_pt_pro date_deb_pro date_fin_pro ... int <pk> int <fk> varchar(255) float float float int date date

FK_IDENTIFIER_ENS2

coordonnee id_cor id_ens longitude_ven latitude_ven adresse_cor ville_cor tel_cor mail_cor ... int <pk> int <fk> float float FK_LOCALISER varchar(255) varchar(50) varchar(20) varchar(255)

Figure 18. Schma de la base des donnes

Application mobile pour la gestion des cartes de fidlit

Page 46

ISI

Conception

Taggist

2.3 Architecture de la partie serveur


Pour raliser notre application, nous avons opt pour une architecture n-tiers base dobjets. Cest un modle logique darchitecture applicative qui vise sparer nettement 3 couches logicielles au sein dun mme systme. Le rle de chaque couche est clairement dfini comme suit: Couche prsentation des donnes: Contient les interfaces qui vont interagir avec lutilisateur de lapplication. Le traitement mtier des donnes: correspondant lensemble des rgles de gestion de la logique applicative. Laccs aux donnes persistantes: correspondant aux donnes qui vont tre gardes de manire persvrante. Dans cette approche, les couches communiquent entre elles travers un modle dchange et chacune dentre elles propose un ensemble de services rendus. Les services dune couche sont mis la disposition de la couche suprieure.
Dans cette partie, nous allons dtailler notre architecture en lillustrant par des diagrammes de paquetage illustr par la Figure 19.

Lapplication doit garantir une indpendance des modules accomplissant les diffrentes fonctionnalits prdfinies. Le choix des packages dpend fortement de larchitecture de lapplication dcrite prcdemment. Le package prsentation contient la classe principal LocalMidlet qui est le moteur de lapplication Java mobile. Initialement, elle regroupe un ensemble de mthodes prdfinie ncessaire pour la ralisation et le dclenchement de lapplication mobile (startApp(), pauseApp(), destroyApp(), commandAction()).
Notre application mobile ralise un ensemble de fonctionnalits principales (La mise jour des donnes, le parse des fichiers XML provenant des messages SOAP gnr par le web service.

Ces tches sont principalement gres par la classe SoapConnection qui joue un rle primordial de consommation de web service .

Application mobile pour la gestion des cartes de fidlit

Page 47

ISI

Conception

Taggist

Figure 19. Architecture dtaille de lapplication

2.3.1 Package web service (Les mthodes distantes au niveau serveur) :


La figure ci-dessous prsente les mthodes dployes sur le serveur, et que nous pouvons accder travers les messages SOAP.

Figure 20. Les mthodes dployes sur le serveur Application mobile pour la gestion des cartes de fidlit Page 48

ISI

Conception

Taggist

2.4 Les diagrammes de squence


Le diagramme de squence dcrit laspect dynamique du systme. Il modlise les interactions entre les objets ou entre utilisateur et objet, en mettant laccent sur la chronologie des messages changs. Dans ce qui suit, nous allons dresser les diagrammes de squences de chaque cas dutilisation :

2.4.1 Le cas dutilisation sauthentifier


Cest le premier scnario qui se droule lors du dclenchement de lapplication. Selon la Figure 21, le client est invit saisir ses paramtres de connexion. Le systme vrifie la disponibilit du login et du mot de passe, pour donner ensuite accs aux fonctionnalits de lapplication.

Figure 21 . Diagramme de squence pour le cas dutilisation sauthentifier

Application mobile pour la gestion des cartes de fidlit

Page 49

ISI

Conception

Taggist

2.4.2 Le cas dutilisation inscription dun nouveau membre


Selon la Figure 22, le systme invite lutilisateur choisir ses paramtres daccs (login et mot de passe). Il essaie ensuite de vrifier lunicit de ses paramtres .Lorsque tout est rgl, un message de confirmation voque le succs de linscription.

Figure 22. Diagramme de squence pour le cas dutilisation inscription nouveau membre

2.4.3 Le cas dutilisation afficher la liste des cartes fidlit disponibles


Aprs une procdure dauthentification russie, le client pourrait consulter la liste des carte s de fidlits disponibles. Dans le cas chant, il pourrait soit adhrer cette carte ou tout simplement lajouter ses cartes personnelles.Ce scnario est dcrit dans la Figure 23.

Application mobile pour la gestion des cartes de fidlit

Page 50

ISI

Conception

Taggist

Figure 23. Diagramme de squence pour le cas dutilisation consulter la liste des cartes disponibles

2.4.4 Le cas dutilisation ajouter une nouvelle carte


Lajout dune carte ncessite que le client ne possde pas auparavant une carte de mme type. En plus lors de la saisie du code barre, le client doit respecter les normes de codage EAN13 sinon un message derreur saffiche inhibant ainsi lopration dajout de la carte. Si toutes les conditions sont remplies correctement, la nouvelle carte sajoute au compte client.

Application mobile pour la gestion des cartes de fidlit

Page 51

ISI

Conception

Taggist

Figure 24. Diagramme de squence du cas dutilisation ajouter une nouvelle carte

2.4.5 Le cas dutilisation afficher les cartes de fidlit personnelles


Le diagramme de la Figure 25, illustre les interactions entre un client et lapplication lorsque ce dernier dsire visualiser ses cartes personnelles. Il peut ensuite consulter son solde des points, go localiser les enseignes, prsenter son code barre la caisse au moment dachat.

Application mobile pour la gestion des cartes de fidlit

Page 52

ISI

Conception

Taggist

Figure 25. Diagramme de squence du cas dutilisation afficher les cartes de fidlit personnelles

2.4.6 Le cas dutilisation go localiser les enseignes sur une carte


La fonction de go localisation aide lutilisateur accder facilement ses enseignes dont il possde une carte de fidlit.

Figure 26. Diagramme de squence du cas dutilisation go localiser enseigne

Application mobile pour la gestion des cartes de fidlit

Page 53

ISI

Conception

Taggist

2.4.7 Le cas dutilisation visualiser le code barre de la carte


Au moment de paiement chez la caisse, le client peut montrer le code barre de sa carte pour quil bnfice des rductions et offres accordes par une marque donne. Le diagramme de la Figure 27 illustre le droulement de ce cas.

Figure 27 . Diagramme de squence du cas dutilisation visualiser le code barre de la carte

3. Conclusion
Dans ce chapitre nous avons dtaill les diffrentes vues conceptuelles des applications raliser travers les modles UML ncessaires. Cette conception est essentielle pour la phase de ralisation qui constitue lobjet du chapitre suivant.

Application mobile pour la gestion des cartes de fidlit

Page 54

ISI

Ralisation

Taggist

Chapitre VI : Ralisation

Application mobile pour la gestion des cartes de fidlit

Page 55

ISI

Ralisation

Taggist

1.

Introduction

Dans ce chapitre, nous prsentons lenvironnement matriel et logiciel du projet. Ensuite, nous nous intressons la description de quelques interfaces du systme implment dans le cadre de quelques scnarios dutilisation.

2. Environnement de travail
2.1 Environnement matriel
Machine de dveloppement : ordinateur portable Sony Vaio, Intel Pentium M 1,7 Ghz, 2 Go de RAM.

2.2 Environnement logiciel


Systme dexploitation : Windows XP Familial version SP 3 SGBD: MySQL version 5 IDE de dveloppement : Eclipse Helios, MyEclipse. LWUIT Ressource Editor. Outil pour la conception : Visual paradigm, Rational Rose. Traitement et modification des images : Adobe Photoshop CS. Nous avons intrt mettre en place une architecture rigoureuse, de manire garantir la maintenabilit, l'volutivit et l'exploitabilit de notre application. La Figure 28 montre l'architecture qui sera mise en place dans le cadre de notre projet.

Figure 28. Architecture Logicielle de lapplication Page 56

Application mobile pour la gestion des cartes de fidlit

ISI

Ralisation

Taggist

2.2.1 La plateforme J2ME


2.2.1.1 Prsentation

Java 2 Micro Edition est une architecture technique dont le but est de fournir un socle de dveloppement aux applications embarques. Lintrt tant de proposer toute la puissance dun langage tel que Java associ aux services proposs par une version bride du Framework J2SE : J2ME. 2.2.1.2 L'architecture J2ME L'architecture J2ME se dcoupe donc en plusieurs couches [URL 12] : Les profiles : Ils permettent une certaine catgorie de terminaux dutiliser des

caractristiques communes telles que la gestion de laffichage, des vnements dentres/sorties (pointage, clavier, ) ou des mcanismes de persistance (Base de donnes lgre intgre). Ces profiles sont soumis spcifications suivant le principe du JCP (Java Community Process) Les configurations : Elles dfinissent une plate-forme minimale en terme de services

concernant un ou plusieurs profiles donns. Les machines virtuelles : En fonction de la cible, la machine virtuelle pourra tre

allge afin de consommer plus ou moins de ressources (KVM, CVM, ) Le systme dexploitation : Lenvironnement doit sadapter au systme

dexploitation existant (Windows CE, Palm Os) . La technologie J2ME se compose dune machine virtuelle et dun jeu dAPIs appropries pour fournir des environnements dexcution sur mesure aux terminaux mobiles. Les 2 types de composants principaux de la technologie J2ME sont les configurations et les profils. Une configuration est compose dune machine virtuelle, des bibliothques du noyau, de classes et dAPIs. Actuellement, il y a deux configurations J2ME possibles : Connected Limited Device Configuration (CLDC) et ConnectedDevice Configuration (CDC) . Application mobile pour la gestion des cartes de fidlit Page 57

ISI

Ralisation

Taggist

CLDC est cre pour les terminaux dont les ressources processeur et mmoire sont limites. Gnralement, ces terminaux fonctionnent soit sur un processeur 16-bit, soit sur un 32-bit et disposent de moins de 512 Kbytes de mmoire disponible pour la plate-forme Java et ses applications. CDC est cre pour la prochaine gnration de terminaux disposant de plus de ressources. Gnralement, ces terminaux fonctionnent sur un processeur 32-bit et disposent de 2 Mbytes ou plus de mmoire disponible pour la plate-forme et ses applications. Les Profiles Un profile dfinit la structure dune application. Il est bas sur une configuration et cest la base pour produire un environnement de fonctionnement complet pour un type d'appareil donn. Il fournit gnralement l'interface utilisateur, les mthodes d'entres-sorties et le mcanisme de persistance pour un groupe d'appareil (alors un seul terminal peut supporter plusieurs profils). Toutefois certains profils peuvent tre crs pour rpondre certaines capacits ou services d'appareils (RMI, multimdia, etc.). Il existe plusieurs profiles dont nous citons : MIDP (Mobile Information Device Profile), Foundation Profile Le profil Foundation est destin la configuration CDC. Il permet un accs une implmentation complte des fonctionnalits de J2SE. Il englobe des API de gestion de rseau pour les dispositifs qui n'ont pas besoin de possibilits graphiques Le profil MIDP est destin la configuration CLDC. Il prend en charge un nombre limit des classes de J2SE et dfinit des classes d'entre/sortie et d'interface spcialises pour cette configuration. Les Midlets Les Midlets sont l'lment principal d'une application Java embarque. Pour bien saisir leur mode de fonctionnement, il suffit de prendre comme analogie les Applets ou les Servlets.

Application mobile pour la gestion des cartes de fidlit

Page 58

ISI

Ralisation

Taggist

Le cycle de vie dune Applet est gr par un conteneur, en loccurrence le Navigateur Web, dont le rle est dinteragir avec celle-ci sous la forme de mthodes de notifications prdfinies (init(),paint(),destroyed(),).

2.2.2 LWUIT
Dveloppe par Sun, LWUIT (LightWeight UI Toolkit) est une librairie de composants graphiques pour J2ME sortie en 2008.[URL 13] Cette librairie apporte des composants graphiques plus riches que les librairies standards pour le dveloppement d'applications mobiles.

Figure 29. Interface principal de LWUIT Demo prsentant les principaux widgets apports avec LWUIT Les principaux caractristiques sont :Touch Screen, Animations & Transitions, Widgets, 3D Integration, Painters, Modal Dialogs, External Tools, Fonts, rich widgets,themes Principaux avantages :
garantir un dveloppement rapide API Familier Facile & Simple

Application mobile pour la gestion des cartes de fidlit

Page 59

ISI

Ralisation

Taggist

Facilit de dploiement Un seul JAR importer Destins pour des nombreux dispositifs Les dispositifs du march de masse Consistent + extensible Interface utilisateur riche

Transitions Des transitions prtes pour utilisation >Slide, Fade > 3D transitions Cube, Rotate, Fly in Touch Screen Support Tous les widgets supporte les vnements provenant dun cran tactile. le support de lvnement Drag and Drop, flow reArrange on Drop Gestion de dfilement(Scrolling) (Effet iPhone) Figure 31. interface montrant les possibilits graphiques avec LWUIT Figure 30. Interface montrant leffet rotation

Application mobile pour la gestion des cartes de fidlit

Page 60

ISI

Ralisation

Taggist

Designer Tool (Ressource Editor) : diteur graphique pour crer des Interfaces utilisateurs intuitives et conviviales. Il est dvelopp pour les designers. Il sagit dune application autonome qui permet de crer des thmes ddis aux applications mobiles.

Figure 32. Interface graphique de lapplication Ressource Editor

2.2.3 La bibliothque Zxing (Zebra Crossing)

ZXing est un projet open-source multi-format de code-barres 1D/2D de traitement d'images mis en uvre en Java. Ce projet met l'accent sur l'utilisation de la camra intgre sur les tlphones mobiles et de dcoder les codes-barres sur l'appareil, sans communiquer avec un serveur. Les formats pouvant tre dcods sont : - UPC-A and UPC-E - EAN-8 and EAN-13 - Code 39 - Code 128 - QR Code - Data Matrix ('alpha quality) .[URL 15]

Application mobile pour la gestion des cartes de fidlit

Page 61

ISI

Ralisation

Taggist

2.2.4 La bibliothque Geo-J2ME


Cest une API qui permet lintgration rapide et facile de la carte GPS une application J2ME. The API is easy to use as entering an address and returns the coordinates for the same image of the map sought. The API uses Google Maps statics. L'API est si facile utiliser il suffit d'entrer une adresse et lAPI se charge de renvoyer les coordonnes et l'image satellitaire. La bibliothque permet aussi dajouter des marqueurs sur la carte. Elle utilise les API Google Maps statique. [URL 15]

2.2.5 Web service


2.2.5.1 Dfinition du protocole SOAP SOAP (ancien acronyme de Simple Object Access Protocol) est un protocole utile pour excuter des dialogues requte-rponse RPC (Remote Procedure Call).Cest un protocole orient objet bas sur XML. Il permet la transmission de messages entre objets distants, ce qui veut dire quil autorise un objet invoquer des mthodes dobjets physiquement situs sur un autre serveur. Le transfert se fait le plus souvent laide du protocole HTTP, mais peut galement se faire par un autre protocole, comme SMTP.[URL 16]

Figure 33. Schma dcrivant une communication client serveur en utilisant les web service

Application mobile pour la gestion des cartes de fidlit

Page 62

ISI

Ralisation Le protocole SOAP est compos de deux parties :

Taggist

une enveloppe, contenant des informations sur le message lui-mme afin de permettre son acheminement et son traitement un modle de donnes, dfinissant le format du message, cest--dire les informations transmettre.

Figure 34. Structure dun message SOAP

2.2.5.2 KSOAP 2 Une bibliothque SOAP client lger, idale pour les appareils mobiles telles que les applications J2ME (CLDC / CDC / MIDP) pour consommer les web service. il faut construire la main sa requte SOAP, et ensuite parser le rsultat soi-mme. kSOAP2 est relativement facile une fois que vous savez quelques concepts de base: Comment tablir une connexion, comment envoyer une demande, et comment accder aux objets dans une rponse analyse. [URL17]. 2.2.5.3 Apache Axis2 Axis2 est une Framework utile pour la gnration des web service. Elle se trouve avec deux implmentations Apache Axis2/Java et Apache Axis2/C. C'est un package Java libre qui fournit :

Application mobile pour la gestion des cartes de fidlit

Page 63

ISI

Ralisation

Taggist

Un environnement pouvant soit fonctionn comme un serveur SOAP/REST indpendant soit comme un plug-in de moteurs de Servlet (en particulier Tomcat). Une API pour dvelopper des services web SOAP RPC ou base de messages SOAP. Le support de diffrentes couches de transport : HTTP, FTP, SMTP, POP et IMAP, ... La srialisation/d srialisation automatique d'objets Java dans des messages SOAP. des outils pour crer automatiquement les WSDL correspondant des classes Java ou inversement pour crer les classes Java sur la base d'un WSDL (classe proxy en quelque sorte, qui fait le lien entre l'application Java cliente et le service distant).

Des outils pour dployer et tester des web-services. [URL 18]

2.2.5.4 Hibernate Cest un Framework pour J2EE qui est capable dcrire soit mme les classes qui seront ensuite exposes au code mtier. Il soccupe aussi du transfert des classes Java dans les tables de la base de donnes. Il permet galement dinterroger les donnes et proposer des moyens de les rcuprer. [URL 19]

Application mobile pour la gestion des cartes de fidlit

Page 64

ISI

Ralisation

Taggist

3. Interfaces de lapplication
Nous exposerons quelques interfaces de notre application, en essayant chaque fois de dcrire les diffrents objets interactifs mis la disposition de lutilisateur.

Lors de lancement de lapplication, une interface SplashScreen ( Figure 35) apparat mentionnant le nom de lapplication et lentreprise ditrice de la solution savoir Taggist. Ensuite le client est invit sauthentifier en saisissant ses paramtres daccs (Figure 36).

Figure 35. Interface de lancement de lapplication

Figure 36. Interface dauthentification

Application mobile pour la gestion des cartes de fidlit

Page 65

ISI

Ralisation

Taggist

Lorsque le client nadmet pas de compte, il pourrait accder aux fonctionnalits membre quelques tout dajout en dun

saisissant

informations

personnelles et les paramtres daccs .La figure 37 illustre ce cas dutilisation.

Figure 37. Interface ajout nouveau membre

La figure 38 est une interface de transition o le client doit choisir entre soit visualiser ses propres cartes, soit ajouter une nouvelle carte de fidlit.

Figure 38. Interface questionnant le client de choisir entre visualiser ses cartes ou ajouter dautres cartes.

Application mobile pour la gestion des cartes de fidlit

Page 66

ISI

Ralisation

Taggist

Lors dun ajout dune carte, le client visualise dabord une liste contenant toutes les cartes de fidlit disponibles(voir Figure 39 ). En cliquant l-dessus, une nouvelle interface apparat

mentionnant les dtails de cette carte, le prix dacquisition, le taux de remise accord etc

Figure 39. Interface liste des cartes de fidlits disponibles

Application mobile pour la gestion des cartes de fidlit

Page 67

ISI

Ralisation

Taggist

Figure 40. Interface dtails carte

Figure 41. Interface ajout dune carte

Laction dajout dune carte vrifie dabord le checksum du code insr et sil respecte les normes EAN13 (Voir Annexe).Ensuite, il vrifie si le client possde dj une carte de mme type .Si non, il vrifie encore si le code appartient la plage des codes associe. Et enfin, il ajoute cette nouvelle carte .

Application mobile pour la gestion des cartes de fidlit

Page 68

ISI

Ralisation

Taggist

Figure 43. Liste des cartes propritaires

Figure 42. Carte slectionne

Lorsque le client choisit de visualiser ses propres cartes, une liste apparat .elle contient toutes les cartes possds par ce dernier. Lorsquil ferait une slection, la taille de la carte choisie, grandit et un menu apparat en dessous prsentant des fonctionnalits tels que : laffichage du Qrcode de la carte, laffichage du code 1D de la carte, la go localisation des enseignes associes cette carte (Figure 42).

Application mobile pour la gestion des cartes de fidlit

Page 69

ISI

Ralisation

Taggist

Figure 44. Code 1D carte affich

Figure 45. QR code carte affich

La bibliothque Zxing permet au client de gnrer son code barre soit sous la forme 1D ou Qrcode. Les code barre affichs dans la figure 44 et 45 sont gnrs avec cette bibliothque.

Application mobile pour la gestion des cartes de fidlit

Page 70

ISI

Ralisation

Taggist

Figure 47. Go localisation vue normal

Figure 46. Go localisation vue satellite

Lapplication permet de visualiser laide des marqueurs lemplacement gographique des

enseignes sur une carte.

Application mobile pour la gestion des cartes de fidlit

Page 71

ISI

Ralisation

Taggist

4. Ralisation partie serveur

Figure 48. La liste des services dploys sur le serveur

Figure 49. Exemple dun Soap Request et dun Soap Response.

Application mobile pour la gestion des cartes de fidlit

Page 72

ISI

Ralisation

Taggist

La figure 48 et 49 exposent la liste des services dploys sur Axis2.Leurs spcifications reposent sur les standards SOAP et WSDL. Ces services servent alimenter lapplication mobile par les donnes ncessaires lors des traitements, assurer linterfaage entre le serveur et
cette dernire et grer aussi la persistance des donns au niveau de la base des donnes. serveur back-End pour alimenter les applications mobiles.

5. Conclusion
Dans ce chapitre nous avons dtaill les technologies utilises pour la ralisation de notre projet ainsi que les fonctionnalits de base de lapplication travers un ensemble de captures dcran .

Application mobile pour la gestion des cartes de fidlit

Page 73

ISI

Conclusion gnrale

Taggist

Conclusion gnrale
Lobjectif de ce projet de fin dtude tait de concevoir et dvelopper une application mobile pour la gestion des cartes de fidlit. Nous avons confronts des contraintes techniques dans la phase du dveloppement. En effet, nous avons pass plus de temps pour lintgration des web services avec lapplication mobile et de grer la faon de communication entre les deux. Ainsi, nous avons utilis LWUIT afin de faire le design des interfaces, ce qui nous a pouss sauto-form avant dentamer cette phase. Comme la totalit des objectifs et fonctionnalits mentionns dans la partie spcification ne sont pas atteintes, dautres amliorations peuvent tre apportes au projet. En ce qui concerne la ct ergonomique de lapplication, on peut utiliser lditeur graphique Resource Editor pour faire des interfaces plus conviviales et intuitives. Ce projet nous a donn la possibilit de dcouvrir de nouvelles approches de dveloppement ddies aux mobile et dutiliser de nouvelles technologies, telles que les web services, ainsi que les librairies de composants graphiques (LWUIT) pour J2ME. Pour ce qui est de perspectives, la dmarche co-citoyenne et la dmatrialisation des services peut toucher plusieurs domaines et pas ncessairement les cartes de fidlit seulement, Taggist vise encore dautres segments tels que les tickets restaurants. Lexprience au sein dun cadre professionnel, nous a t bnfique. Ce stage nous a permis de nous familiariser la vie professionnelle, dexploiter des notions fondamentales dans lorient objet, et dapprofondir nos connaissances thoriques, acquises lInstitut Suprieur dinformatique, par la pratique de linformatique. Nous souhaitons que la socit adopte rellement notre application et essayera de la commercialiser.

Application mobile pour la gestion des cartes de fidlit

Page 74

ISI

Annexes

Taggist

Annexe
1. Systmes d'exploitation utiliss par les Smartphones en 2009
1.1 Symbian OS
(41.2% Part de march) (Licence open source). Symbian dispose de la plus grande part de march mondialement mais reste la traine sur le march nord-amricain. La part de march de 50% est passe 40% en 2010.

1.2 RIM BlackBerry OS


(18.2% Part de march) (Source ferm, propritaire). Ce systme fut cr l'origine pour le march des hommes d'affaires. Rcemment, RIM a favoris la cration d'application web et supporte les applications multimdia. A ce jour, Blackberry's App World dispose de 6,000 applications.

1.3 Android de Google Inc.


( 17.2% Part de march ) Android de Google Inc. fut dvelopp par une petite startup qui fut achet par Google qui poursuit activement son dveloppement. Android distribu sous licence open source, est une variante de Linux. Google a lanc Open Handset Alliance qui regroupe des grands constructeurs et dveloppeurs de logiciels (tel que Intel, HTC, ARM, Samsung, Motorola and eBay). Ce systme est assez nouveau auprs des programmeurs. Il a eu six version - Android 1.0, 1.5, 1.6, 2.0, 2.1 et 2.2. De 2009 au second trimestre 2010, la part de march de l'Android est pass de 1.8% to 17.2% avec un taux de croissance de 850%..

1.4 iOS de Apple Inc


( 14.2% Part de march ) (closed source, propritaire) Le tlphone iPhone,l' iPod Touch et la tablette iPad utilisent tous le systme d'exploitation iOS, qui est driv de Mac OS X. Les applications tierces sont supports depuis juillet 2008. La boutique Apple propose 300 000 applications web.

Application mobile pour la gestion des cartes de fidlit

Page 75

ISI

Annexes

Taggist

1.5 Windows Mobile de Microsoft


( 5% Part de march ) (closed source, propritaire) Le systme Windows CE est largement distribu en Asie. Les deux variantes du systme d'exploitation Windows Mobile 6 Professional (for touch screen devices) etWindows Mobile 6 Standard lanc en fvrier 2007 n'ont pas t adoptes. La part de march de Window mobile a dclin ces dernires annes pour une part de march de 5% en 2010. Microsoft a remplac son ancien systme d'exploitation par windows 7 mobile.

1.6 Windows Phone de Microsoft


(Part de march ngligeable 2010)(closed source, propritaire) Le 15 fvrier 2010 Microsoft a lanc un nouveau systme d'exploitation pour mobile, Windows Phone 7 .Il inclut des services de Microsoft comme Windows Live, Zune, Xbox Live and Bing. Il intgre aussi des fonctionnalits mdia sociaux tel Facebook et Twitter. Comme Windows Phone 7 est une nouvelle plate-forme, il n'existe aucune compatibilit avec les applications Windows Mobile.

1.7 Linux
(2.4% Part de march en 2010) (open source, GPL) Linux a une bonne part de march en Chine grce Motorola et au Japon avec la socit DoCoMo.

1.8 Bada de Samsung Electronics


(closed source, propritaire) Ce systme d'exploitation a t dvelopp par la socit corenne Samsung qui devrait tre install sur ses tlphones traditionnels. Confirmant, moyen terme la fusion des mobiles simples avec les Smartphones.

Application mobile pour la gestion des cartes de fidlit

Page 76

ISI

Annexes

Taggist

Le premier appareil qui exploite Bada est le 'Wave' et fut lanc en 2010. Il s'agit d'un tlphone 100% tactile qui dispose d'une boutique appel Samsung Apps. Cette boutique n'a que 300 applications.[URL 20].

2. Calcul de checksum de LEAN 13 :


Le calcul du digit de checksum de l'EAN 13 est trs simple [URL 21]

La lecture se fait de la droite vers la gauche

Calculer la somme des nombres de positions paires et impaires

Impaire : 1 + 3 + 5 + 7 + 9 + 1 = 26 Paire : 2 + 4 + 6 + 8 + 2 = 22 Formule du checksum de l'EAN 13 : ( 10 - [ (3 * Impaire + Paire) modulo 10 ] ) modulo 10 Ainsi, l'exemple donne :

(10 - [ (3 * 26 + 22) module 10 ] ) modulo 10 (10 - [ (78 + 22) module 10 ] ) modulo 10 (10 - [ (100) module 10 ] ) modulo 10 (10 - [ 0 ] ) modulo 10 (10 - 0) modulo 10 10 modulo 10 0 Donc le checksum de 210987654321 est 0.

Application mobile pour la gestion des cartes de fidlit

Page 77

ISI

Glossaire

Taggist

Glossaire
Toutes ces dfinitions sont issues de ladresse lectronique suivante [URL 22] RPC : (Remote Procedure Call) est un protocole rseau permettant de faire des appels de procdures sur un ordinateur distant l'aide d'un serveur d'applications. Ce protocole est utilis dans le modle client-serveur et permet de grer les diffrents messages entre ces entits. SOAP : (ancien acronyme de Simple Object Access Protocol) est un protocole de RPC orient objet bti sur XML.Il permet la transmission de messages entre objets distants, ce qui veut dire qu'il autorise un objet invoquer des mthodes d'objets physiquement situs sur un autre serveur.

JAX-RPC : est l'abrviation de "Java API for XML-based RPC". Il s'agit d'une API Java (dfinie par Sun Microsystems) permettant de transmettre des messages SOAP en mode RPC. La version suivante a chang de nom : JAX-WS.

JAX-WS : L'API Java pour les Web Services (JAX-WS) est un langage de programmation Java API pour la cration des web services. Il fait partie de la plate-forme Java EE de Sun Microsystems. Comme les autres API Java EE, JAX-WS utilise les annotations, introduit dans Java SE 5, pour simplifier le dveloppement et le dploiement de clients de services Web et les terminaux. Il fait partie de la Java Web Services Pack de dveloppement. Le code QR : en anglais, QR code pour Quick Response) est un code-barres en deux dimensions (ou code matrice) constitu de modules noirs disposs dans un carr fond blanc. Le nom QR est l'acronyme de l'anglais Quick Response, car son contenu de donnes peut tre dcod Application mobile pour la gestion des cartes de fidlit Page 78

ISI

Glossaire

Taggist

rapidement. Destin tre lu par un lecteur de code-barres QR, un tlphone mobile, ou un smartphone, il a l'avantage de pouvoir stocker plus d'informations qu'un code barres Le code EAN 13 : (European Article Numbering 13 chiffres) sont les codes barres utiliss dans le monde entier sur l'ensemble de produits de grande consommation (On utilise parfois le code EAN 8 pour les objets de petite taille). Ils comportent 13 chiffres dont la signification varie suivant le type du produit.

Les deux ou trois premiers correspondent au pays de provenance du produit, ou une classe normalise de produits, les 4 ou 5 suivants sont le numro de membre de lentreprise p articipant au systme EAN, les 5 suivants sont le numro darticle du produit ainsi marqu et le treizime est une cl de contrle calcule en fonction des douze prcdents.

GPS : Le Global Positioning System (GPS) que l'on peut traduire en franais par systme de positionnement mondial mondial. JQuery Mobile est un framework cre par le projet jQuery dont la premire version est sortie en octobre 2010. Il est actuellement disponible en version 1.0 alpha 4.1 (depuis le 7 avril) et sous les licenses MIT et GPL2.Le principal atout de jQuery Mobile est sa compatibilit avec un grand nombre de plateformes mobiles et navigateurs. Sencha Touch : un framework HTML5 pour iOS et Android. est un systme de golocalisation fonctionnant au niveau

Application mobile pour la gestion des cartes de fidlit

Page 79

ISI

Webographie

Taggist

Webographie
[URL 1] http://sabricole.developpez.com/uml/tutoriel/unifiedProcess/ [URL 2] http://www.chef-de-projet.org/methode/uml.htm [URL 3] http://www.fidme.fr/accueil/ [URL 4] http://www.snapp.fr/fr/produits/snapp-fid/ [URL 5] http://www.fidall.com/ [URL 6] http://www.mobifid.com/ [URL 7]http://fr.wikipedia.org/wiki/Smartphone [URL 8] ftp://ftp-developpez.com/pastel-pro/mobiles/frameworks/comparatifapplications-smartphones-open-source/Frameworks-open-source-pour-applicationssmartphones-multiplateformes.pdf [URL 9] http://blog.smile.fr/Appcelerator-annonce-la-sortie-de-Titanium-Studio-1.0 [URL 10] http://blog.smile.fr/Mobile/Developpement-mobile-cross-platform-avecPhoneGap [URL 11] http://pastel-pro.developpez.com/mobiles/frameworks/comparatifapplications-smartphones-open-source/ [URL 12] http://www.3ie.fr/nouvelles_technologies/fiche/fiche_J2ME.htm [URL 13] http://fr.wikipedia.org/wiki/LWUIT [URL 14] http://code.google.com/p/zxing/ [URL 15] http://code.google.com/p/geo-j2me/ [URL 16] http://fr.wikipedia.org/wiki/SOAP Application mobile pour la gestion des cartes de fidlit Page 80

ISI

Webographie

Taggist

[URL 17] http://ksoap2.sourceforge.net/ [URL 18] candle.enst-bretagne.fr/download/FIMATEX/wpp0802-1.pdf [URL 19] defaut.developpez.com/tutoriel/java/eclipse/hibernate/ [URL 20] http://fr.wikipedia.org/wiki/Syst%C3%A8me_d%27exploitation_mobile [URL 21] http://barcode-coder.com/fr/specification-ean-13-102.html [URL 22] http://fr.wikipedia.org/wiki/

Application mobile pour la gestion des cartes de fidlit

Page 81

ISI

Bibliographie

Taggist

Bibliographie

[Xavier 2006] : Xavier Blanc & Isabelle Mounier, UML 2 pour les dveloppeurs, Eyrolles, 2006 ISBN 2-212-12029-5 [Anthony2008] : Anthony Patricio, Java persistence et Hibernate, Groupe Eyrolles, 2008 ISBN 978-2-212-12259-6 [Souilem2008] : A.Souilem, Rapport Dveloppement de lapplication Mobile NEWS en J2ME,2008 [ lEcole Nationale des Sciences de lInformatique (ENSI)] [Zhioua2010] : Zhioua Zeineb, Spcification, conception et ralisation dun systme de Elearning et de gestion des formations en ligne, 2010, [ LEcole Nationale des Ingnieurs de Tunis ]

Application mobile pour la gestion des cartes de fidlit

Page 82