Déploiement d’applications Java ME

Slides:



Advertisements
Présentations similaires
Un environnement de développement éducatif
Advertisements

Les Systèmes d’Information Financière Atelier conjoint ACBF / Banque Mondiale / AFRITAC de l’Ouest Gérer l’application dans le temps, sur les plans fonctionnel,
Les Web Services Schéma Directeur des Espaces numériques de Travail
La GNU/GPL v3 du point de vue des administrations publiques _______ L'importance des SaaS Pascal Verniory responsable du service juridique du Centre.
CRÉER UNE APPLICATION INTERNET RELIEE A UNE BASE DE DONNEES
Approche graphique du nombre dérivé
L'installation et la diffusion 1 LInstallation et la Diffusion.
Département Édition - Intégration SEMINAIRE SOA Migration du canal Esup MonDossierWeb Olivier Ziller / Charlie Dubois Université Nancy 2 16 octobre 2007.
Nouvelle version du canal Esup MonDossierWeb
Affichage interactif, bidimensionnel et incrémental de formules mathématiques Hanane Naciri et Laurence Rideau INRIA Sophia Antipolis CARI'2000.
Le developpement web  Préparé par : ASSAL Lamiae JAMALI Zakarya
Mobiles Services and Midlets
Excel 2007 et les services Excel. Pourquoi Excel ? Outil privilégié danalyse des données issues des bases multidimensionnelles Ergonomie connue des outils.
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Jeu sur téléphone mobile
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 1 Cilia, un framework de médiation ouvert, léger, multi-personnalités.
Guillaume KRUMULA présente Exposés Système et Réseaux IR3 Mardi 5 Février 2008.
Jeux vidéo sur mobiles Module : Développement d’applications mobiles Enseignant : Sébastien CHOPLIN Cédric Montillot Djilali Maghraoui Master MIAGE OSIE.
Mise en œuvre d’une démarche et d’un outil de gestion de « connaissances métier » basés sur la collaboration. Cyril BEYLIER
Indicateurs de position
Enter Title of Presentation Here
Stéphane Frenot - Département Télécommunication - SID - II - Comp 312 Avantages de l'approche distribuée Economie Performance.
JOME, un Composant Logiciel pour le Télé-Enseignement des Mathématiques via le WEB, Compatible OpenMath et MathML Laurent DIRAT OVE / I3S-UNSA.
Maîtrise des données et des métadonnées de l’ODS
Copyright © 2004, SAS Institute Inc. All rights reserved. Processus Stockés SAS une perspective analytique Sylvain Tremblay SAS Canada 25 avril 2006.
Les personas : une méthode pour l’intelligence client ?
Android Réaliser par: Alia Ragueme Asma Lazrag Maroua Laribi.
Logiciel de Mobile Device Management
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Terminale: GSI Professeur: Mme BELLLI
Présentation du SVI - DELSOL Mikaël
XML-Family Web Services Description Language W.S.D.L.
Plugin B pour JEdit Matthias Meusburger Antoine Acquaviva
Serveurs Partagés Oracle
Applications Chapitre B17 et C18
Validation d’applications pour les Legos Mindstorms
ECF 5 PRESENTATION « BULLE APPLICATIVE »
Programmation Approche composants Ing5 SI
Introduction aux plates formes
Développement d’application web
@SSR – Installation des applications eduscol.education.fr/securite - février 2007 © Ministère de l'Éducation nationale, de l'Enseignement supérieur et.
Développer en C avec Eclipse Introduction Création d'un projet Ajout de fichiers Compilation Exécution Utiliser le débogueur Département dinformatique.
D. Buchs, A. Chen, D. Hurzeler, L. Lúcio, L. Pedro, M. Risoldi Software Modeling and Verification group Applications Discovered = Appear Save or Discard.
Programmation concurrente
PROJET DE GENIE LOGICIEL 2005
La gestion par activités (ABM)
Séminaire Service Interoperability on Context Level in Ubiquitous Computing Environments Davide Bazzi IIUF Etude de larticle: Service Interoperability.
Projet de Master première année 2007 / 2008
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
L'application Social Buddies Powered by V2.5 ( )
‘‘Open Data base Connectivity‘‘
Bienvenue sur CAUTIONET l'outil On Line de gestion de caution
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Outil de gestion des cartes grises
Supports de formation au SQ Unifié
22 Visual Studio Tools et Office 2010 Thomas LEBRUN Architecte Access It Sebastien BOVO Application Dev Consultant Microsoft France
Tirer le meilleur parti d’Office /10/ Vincent Bippus IT/OIS 07 octobre 2014.
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
Enterprise Java Beans 3.0 Cours INF Bases de Données Hiver 2005, groupe 10 Stefan MARTINESCU.
Le web service
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
TERACOM © 2001 SoluPhone Santé Système d'échanges de données et d'informations de la Santé La M-Agency qui répond aux besoins de mobilité de votre entreprise.
Les outils Multidimensionnels SAS ® 9 Atelier Technique SAS ® Eric WOLFF Jeudi 2 juin 2005.
Protocole & Système de stockage distribué
9 février 2010 Enrique Ruiz Mateos Architecte avant-vente Microsoft
PRÉSENTATION AGL LES TESTS LOGICIELS LES TEST LOGICIELS 1 Mickael BETTINELLI Brandon OZIOL Gaétan PHILIPPE Simon LUAIRE.
PROJET DE SESSION DANS LE CADRE DU COURS: SCG Réalisation d’applications en SIG PRÉSENTÉ PAR: Marie-Andrée Levesque 18 AVRIL 2006.
Introduction O.Legrand G. Seront. Open Handset Alliance Project Regroupement d'entreprises : –de télécommunications, –de constructeurs d’appareils mobiles,
WHAT IS THIS ? Serveur d’intégration Environnement JAVA Open Source Ou logiciel d’intégration continue.
Transcription de la présentation:

Déploiement d’applications Java ME   Master MATIS – Management and Technology of Information Systems Master en Technologie des Systèmes d’Information Hikari WATANABE & Dejan MUNJIN, Juin 2007 Département des Systèmes d’Information Centre Universitaire d’Informatique Faculté des Sciences Économiques et Sociales Université de Genève Institut d’Informatique et Mathématiques Appliquées Université Joseph Fourier de Grenoble Directeur de recherche : Pr. Dimitri KONSTANTAS

Problématique Déployer une application sur grand nombre de téléphones mobiles possédant des caractéristiques différentes, des architectures hétérogènes, et un support variable des API optionnels de Java ME. Comment découvrir les API Java disponibles ? Comment réutiliser les composants Java dans le développement ? Comment améliorer une application avec les prétests ? La durée de vie d’un téléphone sur le marché est courte ce qui implique des efforts de programmation plus importants 2

Notre Approche Méthodologie Création d’une suite de tests pour le capacités de téléphones mobiles Validation pour une cas spécifique (libraire GPS de FoxyTag) Plateforme collaborative pour développeurs dans le but d’échanger les informations des tests Ma position GPRS Bluetooth Ce rapport de travail propose une méthode permettant de déployer de façon efficace une applications Java sur un grand nombre de téléphones mobiles hétérogènes. Cette méthode est composée de trois phases: Le développement d’une application de test, qui recense les capacités des téléphones mobiles. Elle permet de cibler les téléphones pour développer une application. L’étude de cas et le développement d’une librairie GPS générique, permettant de minimiser le temps de développement et maximiser la compatibilité d’une application. La réalisation d’une plateforme collaborative, ouvrant la possibilité des préstests d’une application par une communauté de spécialistes. Liste des radars Serveur web 3

Composants de Java ME Les différents composants de Java ME Les composants logiciels du téléphone mobile (Source : JSR-185 « Sun Microsystems ») Les spécifications définies dans « Java Community Process » 4

Le seul protocole d’installation spécifié: « Over The Air » Déploiement OTA Le seul protocole d’installation spécifié: « Over The Air » 1. Recherche d’applications 2. Lecture de JAD Ressources OK 3. Lecture de JAR Installation OK 4. Code de réponse Serveur web POST 900 OK 5

Avantages et inconvénients de Java ME Avantages des applications Java ME Sécurité Portabilité du langage Facilité pour un utilisateur d’installer les applications Désavantages des applications Java ME Exploitation des ressources du téléphone inefficiente à cause des API Les API de Bluetooth, Multimédia ne sont pas obligatoires Avec le protocole d’installation OTA le développeur doit connaitre les possibilités de chaque téléphone ciblé par son application 6

Application cliente de test : FoxyTest FoxyTest permet de tester les paramètres suivants en vue de l’utilisation de FoxyTag: Identification de la plateforme Version de la configuration (CLDC) Version du profile (MIDP) Version de l’API Bluetooth, présence et utilisation des classes Bluetooth Version de l’API de localisation, présence et utilisation des classes Location Le test est envoyé vers une base de données 7

Installation de FoxyTest 8

Déroulement de l’application de test 9

FoxyTest - Transfert du rapport 10

Rapports de FoxyTest Statistique des rapports (8000) Téléphones mobiles compatibles JSR 82 par marque (5000) Téléphones mobiles incompatibles JSR 82 par marque (3000) 11

Utilisation des résultats pour le développement d’une Librairie GPS pour Java ME Pourquoi cette librairie ? FoxyTag nécessite une API Bluetooth pour fonctionner Cibler la plateforme réduit la portabilité de Java ME Limites de la librairie GPS pour Java ME La taille d’une application doit rester petite en raison de ressources limitées Introduction du code redondant augmente le risque de « bugs » Avantages de la librairie GPS Diminuer le temps de développement des versions Prévoir et intégrer les petites incompatibilités entre les téléphones dans une librairie 12

Librairie GPS - Approche bluetooth integrated GPS GPS import ch.foxytag.bluetooth.GPS; GPS gps = new GPS(); gps.connect(); foxytag import ch.foxytag.integrated.GPS; GPS gps = new GPS(); gps.connect(); FoxyTag 13

Librairie GPS - Utilisation bluetooth integrated GPS GPS { xor } « import » « import » import ch.foxytag.bluetooth.GPS; GPS gps = new GPS(); gps.connect(); foxytag import ch.foxytag.integrated.GPS; GPS gps = new GPS(); gps.connect(); FoxyTag 14

Librairie GPS pour Java ME Classe GPS intégrée dans chaque paquetage bluetooth GPS void connect() void connect(Display d) String[] getData() void locationUpdated() void stateChanged() void addGPSListener (GPSListener listener) void removeGPSListener (GPSListener listener) void notifyGPSListener() GPS GPS integrated GPS GPS 15

Librairie GPS pour Java ME Spécificités d’un GPS Bluetooth GPSBluetooth void connect(String url) void setUrl(String url) boolean isConnected() boolean isFresh() boolean isStop() void run() void stop() bluetooth GPS GPS Bluetooth GPSBluetooth 16

Librairie GPS pour Java ME Spécificités d’un GPS intégré integrated GPS GPSIntegrated void start() void providerStateChanged() GPS Intégré GPSIntegrated 17

Statistique de la librairie 5532 lignes de code La taille de la librairie compilée = 12.417 KO Utilisée dans le développement des versions de FoxyTag Intégrée dès la distribution 0.4.2 de FoxyTag Le code source de FoxyTag reste le même pour les GPS intégrés et les GPS Bluetooth Besoin de prétest Après le développement et la généralisation de la librairie, il reste le test de l’application Le test doit porter surtout sur les téléphones avec le GPS intégré

Plateforme collaborative Fonctionnalités de la plateforme de test Permettre aux développeurs d’applications Java ME de tester leurs applications de façon collaborative Favoriser les tests et non les applications Partager des connaissances sur les différences entre téléphones mobiles Proposition de versions d’une application pouvant être testées et évaluées Notation des rapports de la part des développeurs ce qui permet un classement des testeurs 19

Plateforme collaborative Indication des téléphones mobiles à disposition Évaluation des projets téléchargés Catégories favorites 20

Plateforme collaborative Téléphones mobiles nécessaire pour une version Résultats des tests (rapport) et notation 6. Liste des meilleures testeurs 21

Conclusion Déployer de manière efficace des applications mobiles : Les développeurs sont obligés de développer les versions d’une application Java ME. Ils doivent bien connaitre les spécifications Java et les différences entre les téléphones mobiles. Nous avons mis en application une approche composée de trois étapes permettant de développer et déployer une application pour accroitre sa portabilité. L’évolution future de Java sur les téléphones mobiles devrait s’orienter vers « JavaFX ». Il s’agit d’une spécification composée de sous éléments de « Java Standard Edition ». La concentration dans cette évolution est portée sur les interfaces graphiques. Les différences entre les API disponibles ne sont pas, pour l’instant plus approfondies que dans Java ME. 22

Questions ? 23