Syncml Module UE libre – Développement d’applications pour les terminaux mobiles Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Bibliographie / Sitographie 1 Module UE libre – Développement d’applications pour les terminaux mobiles Sommaire Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie / Sitographie Questions / Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Introduction La synchronisation Syncml Caractéristiques Exemple 2 Module UE libre – Développement d’applications pour les terminaux mobiles Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Introduction (1) Introduction 3 Module UE libre – Développement d’applications pour les terminaux mobiles Introduction (1) Aujourd’hui, l’homme moderne souhaite pouvoir : Accéder à l’information n’importe où, n’importe quand Faire communiquer l’ensemble de ses outils Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Introduction (2) Problématique : 4 Module UE libre – Développement d’applications pour les terminaux mobiles Introduction (2) Problématique : Il existe un large panel de téléphones mobiles, de PDA et de systèmes d’exploitation Il existe de nombreux protocoles de synchronisation différents L’absence d’une norme simple de synchronisation pose beaucoup de problèmes PalmSync ActiveSync Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Protocole de synchronisation (1) 5 Module UE libre – Développement d’applications pour les terminaux mobiles Protocole de synchronisation (1) Les utilisateurs mobiles : Ne sont pas toujours reliés à un réseau et à ses données stockées Recherchent périodiquement des données du réseau pour les stocker sur leur mobile Ont besoin de se renseigner sur les mises à jour effectuées sur le réseau depuis leur dernière connexion Doivent mettre à jour le réseau à partir des données modifiées sur leur mobile Doivent résoudre des problèmes de conflit au niveau des données Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Protocole de synchronisation (2) 6 Module UE libre – Développement d’applications pour les terminaux mobiles Protocole de synchronisation (2) Le protocole de synchronisation : Permet de rendre 2 ensembles de données identiques Dans le cas des mobiles, il s’applique aux données que le mobile stocke localement Définit le déroulement de la session de synchronisation quand le mobile est connecté au réseau Doit soutenir l’identification et les commandes de synchronisation, même en cas de conflit Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Problème de synchronisation (1) 7 Module UE libre – Développement d’applications pour les terminaux mobiles Problème de synchronisation (1) Aujourd’hui : L’industrie produit des outils de synchronisation non interopérable Chaque protocole fonctionne seulement pour des transports choisis Chaque protocole n’est mis en application que sur quelques mobiles Chaque protocole n’accède qu’à un petit ensemble de données gérées en réseau Cette prolifération des technologies Complique la tâche des utilisateurs, des fabricants, des fournisseurs et des créateurs d’applications Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Problème de synchronisation (2) 8 Module UE libre – Développement d’applications pour les terminaux mobiles Problème de synchronisation (2) Aujourd’hui, les utilisateurs finaux emploient différents produits de synchronisation : Procédure de synchronisation entre les dossiers d’un ordinateur portable et les données présentes sur le réseau Procédure de synchronisation pour l’agenda électronique Procédure de synchronisation pour la gestion des emails Etc. Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Besoin d’un protocole commun (1) 9 Module UE libre – Développement d’applications pour les terminaux mobiles Besoin d’un protocole commun (1) Un protocole commun doit pouvoir : Travailler efficacement sur tout type de réseaux Supporter divers protocoles de transport Supporter tout type de données Permettre à diverses applications d’accéder aux données Être bâti autour des technologies Internet existantes Minimalement, fournir les fonctionnalités nécessaires aux applications Etc. Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Besoin d’un protocole commun (2) 10 Module UE libre – Développement d’applications pour les terminaux mobiles Besoin d’un protocole commun (2) Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Présentation de Syncml (1) 11 Module UE libre – Développement d’applications pour les terminaux mobiles Présentation de Syncml (1) Syncml signifie Synchronisation Markup Language et est défendu par : Ces 8 membres forment le Consortium Syncml Forum Syncml a été spécifié courant 2000 (version 1.0) et est passé à la version 1.1 en Février 2002 Environ 600 entreprises utilisent ce standard Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Présentation de Syncml (2) 12 Module UE libre – Développement d’applications pour les terminaux mobiles Présentation de Syncml (2) Basé sur la norme XML, Syncml est un protocole visant à créer un standard pour une synchronisation universelle des données : Quelques soient les données (agenda, messagerie, carnet d’adresses…) Quelque soit l’outil (ordinateur, assistant personnel, téléphone…) Quelques soient le logiciel (Outlook, Lotus…) et le système d’exploitation Quelque soit le protocole (USB, Bluetooth, IrDA, TCP-IP, GPRS/WAP…) Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Présentation de Syncml (3) 13 Module UE libre – Développement d’applications pour les terminaux mobiles Présentation de Syncml (3) Les avantages attendus sont nombreux : Pour l’utilisateur, un usage simplifié et étendu des procédures de synchronisation Pour le constructeur, la possibilité d’inclure dans un terminal, dont la mémoire est limitée, un protocole unique avec une gamme plus large de services Pour les prestataires de services et les développeurs, des produits plus compétitifs en matière de coût d’exploitation ou de développement Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Principe de fonctionnement (1) 14 Module UE libre – Développement d’applications pour les terminaux mobiles Principe de fonctionnement (1) Mise à jour et échange de données : Résolution des conflits BD 1 BD 2 A C B Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Principe de fonctionnement (2) 15 Module UE libre – Développement d’applications pour les terminaux mobiles Principe de fonctionnement (2) Architecture du protocole Syncml : Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
serveur modifications 16 Module UE libre – Développement d’applications pour les terminaux mobiles Principe de fonctionnement (3) Architecture du protocole Syncml : client modifications SyncML serveur serveur modifications Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Méthodes de synchronisation (1) 17 Module UE libre – Développement d’applications pour les terminaux mobiles Méthodes de synchronisation (1) Two-way sync (le client et le serveur échangent des informations sur des données modifiées ; le client envoie les modifications d’abord) Slow sync (synchronisation dans les 2 sens ; chaque donnée envoyée est comparée sur les 2 bases) One-way sync from client only (le client met à jour le serveur ; le serveur accepte et met à jour les données et n’envoie pas ses modifications) Refresh sync from client only (les données du client recouvrent les données du serveur) Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Méthodes de synchronisation (2) 18 Module UE libre – Développement d’applications pour les terminaux mobiles Méthodes de synchronisation (2) One-way sync from server only (le serveur met à jour le client) Refresh sync from server only (les données du serveur recouvrent les données du client) Server alerted sync (le serveur commande à distance le client de lancer un des types de synchronisation avec le serveur cités ci-dessus ; de cette façon, le serveur à distance commande le client) Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Exemple de code Syncml Introduction 19 Module UE libre – Développement d’applications pour les terminaux mobiles Exemple de code Syncml <SyncML> <SyncHdr> … </SyncHdr> <SyncBody> </SyncBody> </SyncML> Syncml fonctionne avec des balises, tout comme le XML Syncml est découpé en 2 grandes parties : L’entête : SyncHdr Le corps : SyncBody Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Quelques commandes Syncml 20 Module UE libre – Développement d’applications pour les terminaux mobiles Quelques commandes Syncml <Add> <Alert> <Atomic> <Copy> <Delete> <Exec> <Get> <Map> <Put> <Replace> <Results> <Search> <Sequence> <Status> <Sync> Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Conclusion Introduction 21 Module UE libre – Développement d’applications pour les terminaux mobiles Conclusion L’avenir est pour ce type de solution normalisée qui est à la fois : Simple Standard Evolutive Sécurisée Les grands groupes comme Microsoft et Palm veulent modifier leurs systèmes de synchronisation afin de les rendre compatibles avec le Syncml : Ne pas rester en marge Garder une certaine compétitivité Mettre fin aux solutions propriétaires Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
Bibliographie / Sitographie 22 Module UE libre – Développement d’applications pour les terminaux mobiles Bibliographie / Sitographie http://www.syncml.org http://www.extendedsystems.fr http://sync4j.sourceforge.net http://www.improve-technologies.com Etc. Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Questions/Réponses Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005
? Questions / Réponses Introduction La synchronisation Syncml 23 Module UE libre – Développement d’applications pour les terminaux mobiles Questions / Réponses ? Introduction La synchronisation Syncml Caractéristiques Exemple Conclusion Bibliographie Conclusion Sébastien RAMET Julien ROSSI IUP MIAGE – AMIENS M2 OSIE – 2004/2005