La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 1 Systèmes dinformation pervasifs Unité denseignement de.

Présentations similaires


Présentation au sujet: "F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 1 Systèmes dinformation pervasifs Unité denseignement de."— Transcription de la présentation:

1 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 1 Systèmes dinformation pervasifs Unité denseignement de base Frédérique Laforest

2 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 2 Qui suis-je? Frédérique Laforest –http://liris.cnrs.fr/frederique.laforest Maître de conférences INSA de Lyon Recherche au LIRIS –axe systèmes dinformations communicants, équipe Systèmes dinformation pervasifs –Mots-clés Systèmes pervasifs Adaptation et context-awareness Interfaces utilisateurs Enseignement au département Télécommunications –modélisation objet, java, web, bases de données, systèmes pervasifs

3 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 3 Plan Introduction Architectures des systèmes dinformation distribués et pervasifs Trois niveaux de recherche en systèmes pervasifs –matériel et système –réseau –système dinformation découverte de services gestion de données context-awareness adaptation des données, des interfaces utilisateurs et des services Exemples de projets pervasifs Conclusion

4 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 4 Introduction I-Introduction

5 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 5 I-Introduction Système dinformation Objectif –Production, collection, traitement, enregistrement et diffusion de linformation Composantes –Utilisateurs et administrateurs –Logiciels –Machines et matériels –Réseaux

6 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 6 I-Introduction Exemple de système dinformation Suivi de patients hospitalisés à domicile –Utilisateurs et administrateurs patients, médecins de ville, infirmières, praticiens hospitaliers, pharmacien, association de suivi –Logiciels dossier patient électronique, workflow, rendez-vous, imagerie, mailing, saisie de données au domicile, télésurveillance… –Machines et matériels matériel médical chez le patient (dialyseur, thermomètre électronique), matériel à lhôpital (radiologie, chimiothérapie…), terminal patient, terminaux des acteurs de santé mobiles ou fixes –Réseaux Liaison réseau privé de lhôpital, association de suivi, domicile…

7 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 7 I-Introduction Une nouvelle vision de linformatique Environnement informatique –Avant : environnement virtuel dans lequel nous entrons pour effectuer une tâche et dont nous sortons à la fin de la tâche –Aujourdhui : espace physique amélioré de gestion de linformation Application –Avant : logiciel pour exploiter un matériel –Aujourdhui : moyen pour lutilisateur deffectuer une tâche

8 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 8 © F. Mattern I-Introduction

9 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 9 Les ordinateurs dhier remplissaient les pièces © F. Mattern I-Introduction

10 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 10 Ceux de demain aussi!! © F. Mattern I-Introduction

11 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 11 I-Introduction Motivation Aujourdhui, lInternet connecte tous les ordinateurs Demain, tout objet sera « intelligent » (smart) –Processeurs embarqués Et ils seront tous interconnectés –Communication sans fil

12 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 12 Tout objet du monde réel sera enrichi de capacités de traitement de linformation Processeurs embarqués –Dans chaque objet quotidien –Petit, bon marché, léger Communications sans fil –Réseaux spontanés Capteurs I-Introduction Linformatique embarquée pour la coopération

13 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 13 I-Introduction Les objets intelligents Peuvent se souvenir des événements importants –Mémoire Présentent un comportement dépendant du contexte –Capteurs Ils sont interactifs –Communiquent avec leur environnement –En réseau avec les autres objets intelligents

14 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 14 Ces objets sont-ils vraiment smart?? © F. Mattern I-Introduction

15 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 15 I-Introduction Systèmes dinformation pervasifs – la genèse « Calm technology » [Mark Weiser, 1991] –« A new way of thinking about computers in the world, one that takes into account the natural human environment and allows the computers themselves to vanish in the background » –« The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it »

16 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 16 I-Introduction Systèmes dinformation pervasifs – la référence [M. Satyanarayanan, 2001] –Étape suivante, après systèmes distribués et systèmes mobiles –4 challenges Utilisation effective des espaces intelligents (smart spaces) Invisibilité Scalabilité Transparence des inégalités denvironnements –Pervasive computing environment = « one saturated with computing and communication capability, yet so gracefully integrated with users that it becomes a technology that disappears »

17 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 17 I-Introduction Définitions Ubiquitaire –Accessible de nimporte où Mobile –Qui intègre les terminaux mobiles Context-aware –Qui prend en compte le contexte dexécution Pervasif –Qui associe ubiquité, mobilité et context-awareness Ambiant –Qui est intégré dans les objets quotidiens

18 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 18 Système distribué Gestion de la mobilité Gestion de lubiquité Système mobile Système pervasif Gestion du contexte I-Introduction Vue « système » dun système pervasif Adapté de [Saha & Mukherjee, 2003]

19 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 19 © S. Frénot I-Introduction Devoirs des SI distribués Persistance des données Échange de données entre applications hétérogènes Répartition des données sur des sites distants Gestion de la cohérence permanente des données Interopérabilité des plates-formes Portabilité des applications Gestion des accès concurrents Intégration des systèmes legacy Ouverture Sécurité

20 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 20 I-Introduction Devoir des SI pervasifs Ceux des SI distribués ET Scalabilité Invisibilité Context-awareness Intelligence (« smartness ») Pro-action « all the time everywhere »

21 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 21 I-Introduction Scalabilité Passage à léchelle Gérer des volumes de plus en plus grands de –utilisateurs –applications –appareils connectés Développer des applications dont le cœur est indépendant du volume, des utilisateurs et des appareils Utiliser des techniques dadaptation pour pouvoir répondre à chaque cas

22 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 22 I-Introduction Invisibilité Nécessiter un minimum dintervention humaine Sadapter seul aux changements Auto-apprentissage Par exemple, –reconfiguration dynamique des caractéristiques réseau dun appareil –Accès aux ressources dun « espace » en fonction de lappartenance à la zone géographique de cet espace. Sortie de lespace = définition des limites de lespace!

23 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 23 I-Introduction Context-awareness Perception de lenvironnement pour interagir plus « naturellement » avec lutilisateur Capteurs de lenvironnement physique Matériels auto-descriptifs Description des personnes Méta-données sur les applications

24 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 24 I-Introduction « Smartness » Smart = intelligent, à lesprit vif, malin, débrouillard Percevoir le contexte dexécution ne suffit pas Il faut utiliser efficacement les informations du contexte –Exemple : maison intelligente

25 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 25 I-Introduction Pro-action Suggérer, proposer des actions correctives à lutilisateur en fonction du contexte présent ou prédit –Par exemple se déplacer de 100 mètres pour atteindre un réseau plus performant et ainsi accomplir une tâche dans un temps « correct » Attention à balancer avec linvisibilité! Sous-entend de savoir –Prévoir un événement, une situation, –Évaluer une situation courante ou possible, –Comparer deux situations et juger de la meilleure –Que « ça vaut le coup » de transgresser linvisibilité

26 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 26 References bibliographiques Introduction M. Weiser « The computer for the twenty-first century », Scientific American, sept 1991: M. Satyanarayanan « Pervasive computing : Visions and challenges », IEEE Personal Communications, aug. 2001:10-17 D. Saha & A. Mukherjee « Pervasive computing : a paradigm for the 21st century », IEEE Computer journal, march 2003:25-31 F. Mattern. « Ubiquitous & Pervasive Computing: A Technology-driven Motivation », Summer school on ubiquitous and pervasive computing, 2002 S. Frénot « Cours Middleware », Dpt Télécommunications, INSA de Lyon, 2004 I-Introduction

27 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 27 Architecture des systèmes dinformation distribués et pervasifs 1- ancêtres 2- middleware 3- systèmes mobiles 4- grilles de calcul 5- peer-to-peer Nos remerciements à Stéphane Frénot pour ses précieux transparents! II-Architecture

28 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 28 II-1 Ancêtres Les ancêtres : le PC A démocratisé linformatique A permis une croissance gigantesque en matière de composants matériels A permis le développement des interfaces utilisateurs graphiques Na pas fourni le potentiel attendu en matière de traitement de linformation

29 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 29 II-1 Ancêtres Les ancêtres : le Web Pionnier dinfrastructure de communication et dinformation ubiquitaire A lorigine, na pas été pensé comme une infrastructure pour systèmes distribués A créé une culture qui a permis dimaginer les systèmes pervasifs

30 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 30 © S. Frénot II-1 Ancêtres Les ancêtres : le Client/Serveur C/S de présentation –Client : gestion de la présentation –Serveur : réalisation de l'ensemble des traitements C/S de traitement –C : Gestion de la présentation + traitements applicatifs –S : Gestion de l'accès aux BD C/S multi-tiers –C : Gestion de la présentation –Serveur applicatif : Connaissance des traitements métiers –Serveur de données : gestion des accès aux BD

31 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 31 II-1 Ancêtres IH M TD Client-serveur de présentation –Déporter l'affichage sur un réseau telnet Xwindows NTTerminal Serveur –Le développement est « presque » centralisé –Architecture dénommée « client léger » –Avantages : Déploiement facile Maintenance facile Client à faibles ressources –Inconvénients Goulot détranglement serveur Sous-exploitation du client

32 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 32 IH M TD © S. Frénot II-1 Ancêtres Client-serveur de traitement –Le poste de travail héberge lensemble de la gestion dinterface homme-machine et le traitement, –Le serveur est un serveur de base de données –Architecture dénommée « client obèse » –Avantage : Mise en œuvre efficace pour un nombre réduit de clients –Inconvénients Coûts de déploiement ? Coûts de MAJ ? Accès concurrents ? Hétérogénéité sur BD ?

33 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 33 IH M TDT © S. Frénot II-1 Ancêtres Client-serveur 3 niveaux (3-tier) –Le poste de travail héberge la gestion de linterface homme-machine et une partie des traitements, –Le serveur dapplications gère lautre partie des traitements –Le serveur de données gère les accès aux données Architecture dénommée « traitements coopératifs »

34 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 34 IHM- D TD IHM-P © S. Frénot II-1 Ancêtres Client-serveur 4 ou n niveaux (4-tier, n-tier) –Le poste de travail héberge un navigateur standard, –Le serveur (HTTP) gère la partie présentation de linterface homme-machine –Le serveur dapplications gère les traitements –Le serveur de données gère les accès aux données Architecture de collaboration

35 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 35 © S. Frénot II-1 Ancêtres Le Client / Serveur Avantages Première infrastructure informatique pour un travail coopératif Centralisation des traitements au niveau du serveur Pas de duplication des données (état global observable, gestion plus simple de la cohérence et de l'intégrité des données) Maîtrise globale des processus Inconvénients Relation directe C/S Pas de transparence sur la localisation Augmentation de l'hétérogénéité Modèle rigide ! Ni portable ni inter-opérable

36 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 36 BD de copie ClientProxy App Service AService B BD Principale © S. Frénot II-1 Ancêtres Exemple : application Web Mozilla + Squid + Apache + PHP/Perl/Python + MySQL (Architecture « LAMP ») Client-serveur : la distribution à "l'ancienne"

37 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 37 © S. Frénot II-1 Ancêtres Client-serveur : la distribution à "l'ancienne" Elle nécessite des compétences humaines précises Systèmes propriétaires Gestion de transactions Définition de queues de messages Réplication et Synchronisation de BD Gestion des pannes Sécurité des communications Développement de clients Elle pose des problèmes techniques Nécessite de nombreux serveurs pour l'équilibrage de charge Nécessite une programmation complexe pour pouvoir évoluer

38 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 38 © S. Frénot II-2 Middleware Du C/S au middleware explicite C/S –Le client et le serveur sont développés en collaboration Objet distant –Client et serveur sont liés par une interface –La couche réseau est masquée au client et au serveur ==> Notion de code applicatif/code non applicatif

39 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 39 II-2 Middleware Middleware : architectures Environnements et plates-formes dexécution pour développer des services métiers Architecture middleware à objets distribués –Services dinfrastructure Serveur middleware de composants de base –Services standardisés dinfrastructure Serveur middleware de composants intégrés –Infrastructure de gestion des composants

40 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 40 Middleware : architecture générale Application 1 Application 2 Middleware : Code non applicatif Services métier : Code applicatif Composants, services

41 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 41 Architectures middleware à objets distribués Application 1 Application 2 MiddleWare Services Métiers Services d'infrastructure Exemples : DCOM, CORBA © S. Frénot II-2 Middleware

42 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 42 Architectures middleware à objets distribués Services métier –objets distribués sur différents serveurs –API des objets conforme à un standard Rôle du middleware –Services dinfrastructure Transparence de la localisation, de lhétérogénéité (langages, OS, machine), de la couche transport réseau

43 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 43 II-2 Middleware DCOM (Microsoft) Distributed Component Object Model –Spécifications des interfaces au niveau binaire Indépendance / Langage de programmation : Assembleur, C, C++, Pascal, Visual Basic, Visual J++ –Interfaces et composants ont un identifiant unique GUID (Globally Unique Identifier) Interface non modifiable, à refaire –RPC (Remote Procedure Call) –Multithread Appels synchrones, asynchrones, concurrence, interblocage –Sécurisé Droits utilisateurs –Durée de vie des objets Références sur un objet

44 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 44 CORBA (OMG) Common Object Request Broker Architecture –IDL (Interface Definition Language) Indépendance / Langage de programmation. Mappé sur C, C++, Java, COBOL, Smalltalk, Ada, Lisp, Python et IDLscript. –ORB (Object Request Broker) Bus de communication –IIOP (Internet Interoperable Protocol) –Naming Service, Trader Service, etc. –http://www2.lifl.fr/~merle/corba/cours/ II-2 Middleware IIOP Impléms : Orbix, Visibroker, JBroker, Voyager ORB, etc.

45 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 45.NET (Microsoft) –Plateforme de développement, de déploiement, dexécution –API :.NET Framework Assembly, WebServices Indépendance / Langage : beaucoup ! –Common Language Infrastructure (CLI) Common Intermediate Language (CIL) : Microsoft Intermediate Language (MSIL) Common Language Runtime (CLR) –SOAP (HTTP, XML/RPC), DCOM –Active Server Pages (ASP.NET), ActiveX Data Objects (ADO) –Impléms : MS.net, Mono, DotGNU II-2 Middleware

46 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 46 Serveur middleware de composants de base Application 1 Application 2 Services Métiers Services standards d'infrastructure jdbc jts version cycle vie Exemple : OrbixWeb © S. Frénot II-2 Middleware

47 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 47 Serveur middleware de composants intégré Application 1 Application 2 container jdbcjtsversioncycle vie Composants Métiers infrastructure Logique métier Services d'infrastructure de base Gestion automatisée Exemples : Tomcat (J2EE), Felix (OSGi) © S. Frénot II-2 Middleware

48 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 48 © S. Frénot II-2 Middleware Services du container d'objets métiers Services internes –Gestion de la charge du serveur (cycle de vie, accès client, passivation...) –Service de nommage –Gestion des accès aux objets métiers Services externes –Gestion du mapping sur BD relationnelle –Gestion des transactions –Gestion des échanges de messages

49 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 49 II-2 Middleware J2EE (Sun) Java 2 Platform, Enterprise Edition –Multi-tier, multi-architecture plateforme –API Java Composants et conteneurs : Enterprise Java Beans (EJB) (javax.ejb.*), Servlets (javax.servlet), WebServices Publications : JavaServer Pages (JSP) (javax.servlet.jsp), Java Naming and Directory Interface (JNDI) (javax.naming) Base de données et transactions : Java Database Connectivity (JDBC) (java.sql, javax.sql), Java Transaction API (JTA) (java.transaction.*), etc. –RMI (Remote Method Invocation), RPC, CORBA –Nombreux serveurs dapplications : JBoss, JRun, JOnAS, Weblogic, Websphere, Java System Application Server, etc.

50 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 50 II-2 Middleware OSGi (OSGi Alliance) Open Services Gateway Initiative (anciennement) –Plateforme de développement, de déploiement, dexécution –API Java : bundle Environnement dexécution (JVM), Modules, Gestion du cycle de vie, Service dannuaire Différents niveaux dexécution –Services standardisés Niveau système : Log Service, Configuration Admin Service, Device Access Service, User Admin Service, IO Connector Service, etc. Niveau protocole : HTTP Service, UPnP Service, Jini Service, etc. –Impléms : oscar, Knopflerfish, felix…

51 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 51 Avantages –Interopérabilité API de développement Implantation de services standardisés –Transparence, extensibilité Modifications au niveau middleware sans modification de l application Inconvénients –Performance Un niveau de redirection en plus Difficile à évaluer –Maintenance –Sécurité II-2 Middleware Suivi continuel du middleware en plus de lappli Conclusion Middleware

52 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 52 II-3 Mobiles Systèmes mobiles Début des années 90 Essor des ordinateurs portables et des réseaux sans fil –Assistant personnel (Personal Digital Assistant) (Palm, Pocket PC), ordinateur de poche (Handheld Computer) (Psion), ordinateur portable (Notebook, Laptops) –Réseau à point daccès (GSM, GPRS, WiFi : a/b/g/n), réseau non centralisé, ad hoc (MANET: Mobile Ad-hoc Networks), (IRDa, Bluetooth) Mobilité –non permanence du terminal portable ou de la connexion réseau Diapos 1 à 10

53 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 53 II-3 Mobiles Systèmes mobiles Avantages –« Everything, every time, everywhere » Services, données tout le temps disponibles avec soi Inconvénients –Contraintes physiques Variations impromptues de la qualité du réseau Déconnexions Faibles confiance et robustesse des éléments mobiles Limitations des ressources locales (poids, taille => écran) Autonomie (batterie) –Contraintes environnementales Disponibilité dune connexion réseau

54 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 54 II-3 Mobiles Systèmes mobiles Résultats actuels Domaine de recherche actif Systèmes pervasifs –Techniques déconomie dénergie (gestion de mémoire, rapidité processeur… en fonction de lénergie disponible) –Accès aux informations (opérations déconnectées, contrôle de la cohérence des données…) –Support dapplications adaptatives (proxies, gestion adaptative des ressources système) –Calcul et gestion de la localisation –Systèmes dinformation Wap et imode (C/S et téléchargement)

55 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 55 II-3 Mobiles Systèmes mobiles précurseurs : Coda Système de fichier –Hoarding (fortement connecté) Chargement Préchargement –Emulating (déconnecté) Travail en local Historique –Write disconnected (faiblement connecté) Chargement Réintégration

56 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 56 II-3 Mobiles Systèmes mobiles précurseurs : Odyssey Accès données depuis mobile –Politiques de négociation qualité/données selon les ressources Fidélité / données originales Agilité / capacité à changer

57 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 57 II-4 Grilles Grilles de calcul Système distribué qui permet le partage, la sélection et lagrégation de ressources géographiquement distribuées pour la résolution de problèmes à grande échelle –Système distribué = ensemble de machines (eg. Grid5000 en France=5000 CPU hétérogènes sur 9 sites)

58 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 58 II-4 Grilles Grilles de calcul Avantages –Passage à léchelle –Résolution de problèmes complexes (en terme de calcul, comme le décryptage de clef à X-bits, etc.) –Mise à profit de toutes les ressources selon disponibilité: Ordinateurs : PC, clusters, (éléments mobiles)… Logiciels Données et bases de données Matériels spécifiques –Tolérance aux fautes

59 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 59 II-4 Grilles Grilles de calcul Inconvénients –Logiciels, middlewares, systèmes, standards en plein évolution –Interactions difficiles entre systèmes de grille différents –Applications statiques Précompilées pour un système de grille donné Non-interactives Grille pervasive : grille intégrant des terminaux mobiles et donc toutes les problématiques des systèmes pervasifs. –Les terminaux mobiles pouvant être vus comme de simples clients ou comme des nœuds à part entière de la grille. pour en savoir plus : cours de recherche Grilles de données

60 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 60 II-4 Grilles : Search for Extraterrestrial Intelligence University of California at Berkeley Application de traitement de données radiotéléscopiques –40G / jour –Recherche de fluctuations des signaux Client : –Économiseur décran pré compilé pour système donné Voir aussi dautres applications : distributed.net (cryptage), etc.

61 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 61 II-4 Grilles Globus toolkit The Globus Alliance Middleware pour la grille –Basic Grid Services Implementation –Web Grid Services Core (Java et C/C++) –API de développement Voir aussi dautres middlewares : JXTA, Legion, etc.

62 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 62 II-4 P2P Peer-to-peer Peer = « partenaire » –…an entity with capabilities similar to other entities in the system. Les applications sont réparties sur lensemble des peers –Pas de machine « maître », pas de serveur central Client/serveur vs. Peer-to-peer –Client / Serveur Certains éléments sont fournisseurs de services (serveurs) Dautres sont consommateurs (clients) –Peer-to-peer Chaque élément est à la fois client et serveur

63 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 63 Architecture peer-to-peer Les ressources dun peer sont similaires à celles des autres participants Les peers communiquent directement les uns avec les autres et partagent des ressources II-4 P2P

64 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 64 II-4 P2P Challenges Peer to Peer Découverte de peers et gestion de groupes Localisation et positionnement des ressources Temps de recherche dune ressource Etat de chaque noeud Utilisation de la bande passante Sécurité, fiabilité Tolérance aux fautes

65 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 65 BobAlice Jane Judy II-4 P2P P2P Centralisé, pseudo-P2P Passage obligé par un point central Intérêts –Recherche efficace –Bande passante utile faible Inconvénients –point central pro- blématique –Convient à faible échelle seulement

66 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 66 Bob Alice Jane Judy Carl II-4 P2P Flooding P2P Une demande est envoyée dans toutes les directions Intérêts –Pas de point central Inconvénients –Recherches lentes –Utilisation intensive de la bande passante

67 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs ? II-4 P2P Document Routing P2P Le peer demandeur prévoit le routage pour atteindre le peer cible –il a donc une connaissance de la topologie du réseau Intérêts –Bande passante utile faible Inconvénients –Tolérance aux fautes limitée => redondance

68 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 68 Systèmes P2P Calcul distribué BOINC Partage de fichiers Gnutella Collaboration Jabber Plates-formes JXTA II-4 P2P Taxonomie dapplications P2P

69 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 69 II-4 P2P BOINC – grille ou pseudo-P2P?? Berkeley Open Infrastructure for Network Computing plate-forme logicielle pour le calcul distribué utilisant les ressources matérielles de volontaires –pour des applications dont la tâche peut être décomposée en étapes indépendantes, et dont le temps de calcul local reste important par rapport au transfert des données locales sur Internet –exemples : climateprediction.net… –chaque projet a un ou n serveurs –chaque volontaire installe un client, et sabonne à 1 ou n projets. Il définit les ressources associées à chaque projet –de nombreuses problématiques similaires aux réseaux mobiles : inclusion/exclusion de volontaires, déconnexions, faible puissance des clients… –http://boinc.berkeley.edu/

70 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 70 II-4 P2P Gnutella Partage de fichiers en P2P –Installation dun logiciel dit « client » qui sert à la fois de serveur et de client. –Choix de la partie du disque local qui sera partagée sur le réseau Recherche dune ressource par son nom –en local –demandée à un noeud connu –sil ne la connaît pas, le nœud la propage à 4 « alliés » –etc… jusquà 7 hops max. –le nœud qui a la ressource la retourne à lappelant et fait désormais partie des nœuds connus par lappelant –http://www.gnutella.com/

71 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 71 II-4 P2P Jabber Face émergée de liceberg –alternative Linux de messagerie instantanée comme ICQ Face immergée : protocoles de streaming fondés sur XML – permet à 2 entités sur Internet déchanger des messages et toute sorte dinformation structurée en temps presque réel. –Standard (Internet Engineering Task Force IETF) –Décentralisé : toute machine peut être serveur et/ou client –Sécurisé avec SASL et TLS –Ouvert, extensible grâce à XML –Flexible : outils de collaboration, syndication de contenu, partage de fichiers, gestion de systèmes à distance… –http://www.jabber.com

72 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 72 II-4 P2P JXTA (juxtapose) Ensemble de protocoles permettant à tout type de terminal de participer à un réseau P2P –fournit aussi une implantation ouverte JXTA standardise la façon dont les peers –se découvrent les uns les autres –sorganisent en groupes –communiquent entre eux de façon sécurisée –annoncent et découvrent des services –se supervisent –http://www.jxta.org

73 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 73 II-Architecture Synthèse : framework de système pervasif 4 clés: dispositifs, réseau, middleware, applications [Saha Mukherjee 2003] « pervasive computing framework. Middleware mediates interactions with the networking kernel on the users behalf and keeps users immersed in the pervasive computing space »

74 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 74 Références bibliographiques architecture S. Frénot « Cours Middleware », Dpt Télécommunications, INSA de Lyon, 2004 G. Gardarin et O. Gardarin « le client-serveur », Eyrolles, 1996 E. Aarts & S. Marzano « The new everyday. Views on ambiant intelligence ». Koninklijke Philips Electronics N.V., 010 publishers, Rotterdam D. Saha & A. Mukherjee. « Pervasive computing: a paradigm for the 21st century » IEEE Computer journal, march 2003:25-31 B. Yang & H. Garcia-Molina « Comparing Hybrid Peer-to-peer systems » 27th VLDB Conference, Roma, Italy, 2001 L. B. Mummert, M. Ebling et M. Satyanaranan « Exploiting Weak Connectivity for Mobile File Access », Proceedings of the 15th ACM Symposium on Operating System Principles (SOSP'95), p , Copper Mountain Resort, Colorado, USA, décembre 1995 B. Noble, M. Satyanaranan, J. E. Tilton, J. Flinn et K. R. Walker, « Agile Application-Aware Adaptation for Mobility », Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP'16), Saint-Malo, France, octobre 1997 II Architecture

75 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 75 Trois niveaux de recherche en systèmes pervasifs 1- niveau matériel et système (survol) 2- niveau réseau (survol) 3- niveau système dinformation 4- synthèse : relations entre les niveaux III-Niveaux

76 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 76 III-1 Matériel et système Niveau matériel et système (survol) Limitations des ressources disponibles sur les terminaux légers –Critères primordiaux : poids et taille des terminaux –Contraintes sur tous les composants matériels –Le plus limitant : lénergie (batteries) –Juste après : gestion de la chaleur Ces contraintes ont des répercussions sur –Le système dexploitation –Les logiciels (voir niveau système dinformation)

77 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 77 Évolution des capacités matérielles © T. Starner, 2002 III-1 Matériel et système

78 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 78 (Kymissis98 ISWC Parasitic Power Harvesting in Shoes) III-1 Matériel et système Recherches au niveau matériel et système Exemples pour la gestion de lénergie –Adaptation dépendante de lénergie –Ordonnancement du processeur à vitesse variable –Gestion mémoire dépendante de lénergie –Energies alternatives

79 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 79 Capteurs Les technologies de capteurs existent depuis longtemps, mais –Capteurs sans intelligence ni stockage –Capteurs avec transmission filaire locale des données brutes capturées Travaux actuels –Capteurs intelligents : processeurs intégrés pour le traitement local des données produites –Capteurs communicants : intégration de composants de communication RF ou autre => réseaux de capteurs sans fil (wireless sensor networks) III-1 Matériel et système

80 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 80 III-1 Matériel et système Réseaux de capteurs sans fil Collaboration dun grand nombre de nœuds dans un réseau dense –chaque nœud a des capacités de traitement local et des capacités de communication Exemples de domaines dapplication –militaire : gestion des forces armées, surveillance de champs de bataille, reconnaissance de terrain, ciblage, évaluation des dommages, détection et reconnaissance dattaques chimiques, biologiques... –environnement : détection de feux de forêts, cartographie de biodiversité, détection de crues, impact des pesticides… –santé : telemonitoring, localisation... –autres : domotique, musées interactifs, vols de voitures...

81 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 81 Réseaux de capteurs sans fil (2) Caractérisation, différenciation vs réseau ad hoc –nombre de nœuds bien plus grand que dans un réseau ad hoc « classique » –déploiement dense –capteurs peu fiables –fréquents changements dans la topologie du réseau On parle de capteurs agiles (à déplacements discrets) –communications broadcast (vs. point à point) –goulot détranglement = énergie consommée (vs.QoS) III-1 Matériel et système

82 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 82 III-1 Matériel et système The MediaCup project Une tasse de café augmentée de capacités de capture (température, mouvement), traitement et communication, et avec un ID réseau IrDA exemple dutilisation : –la smartDoorPlate indique les personnes présentes –la HotClock indique la température et sonne si le café est trop chaud mediaCup smartDoorPlate hotClock

83 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 83 III-1 Matériel et système SmartDust Micro-machines avec réseau sans fil et capteur (température, lumière...). Sorganisent automatiquement en réseau lorsque proches les unes des autres TinyOS : système dexploitation open-source conçu pour les réseaux de capteurs sans fil Une société commercialise le produit depuis ~pister/SmartDust/ Prototype de 2001

84 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 84 References bibliographiques matériel et système G.J. Pottie. Wireless Sensor Networks ITW 1998, Killamey, Ireland, june 98. p S. Meyer & A. Rakotonirainy. A survey of research on context-aware homes. Workshop on Wearable, inisible, context-aware, ambiant, pervasive and ubiquitous computing. Feb 2003, Adelaide, Australia. 10 p. D. Estrin, L. Girod, G. Pottie, M. Srivastava. Instrumenting the world with wireless sensor networks. Int. Conf. Acoustics, speech and signal processing. May Autonomous Networks Research Group. A Wireless Sensor Networks Bibliography T. Starner « Power and heat in ubiquitous computing », Summer school on ubiquitous and pervasive computing, 2002 I.F. Akyildiz et al. Wireless sensor networks : a survey. Computer networks 38 (2002) III-1 Matériel et système

85 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 85 III-2 Réseau Niveau réseau (survol) Organisation des nœuds du réseau –Réseaux ad hoc mobiles Routage –Routage proactif –Routage réactif Multicast dans des réseaux mobiles

86 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 86 III-2 Réseau Réseaux ad hoc mobiles Pour former rapidement et simplement des liaisons entre appareils mobiles sans lintermédiaire de structures fixes –Gestion du réseau répartie –Réseaux dynamiques (un nœud peut le rejoindre ou le quitter à tout moment) sans erreurs ou dysfonctionnements Nœud entrant = broadcast sur son rayon daction Communication avec un autre nœud –Si dans le rayon daction, comm directe (single-hop) –Sinon, routage (multi-hop)

87 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 87 Broadcast à lentrée dans le réseau Communication multi-hop Communication single-hop III-2 Réseau Exemples illustratifs

88 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 88 III-2 Réseau Routage Routage proactif –Apprend continuellement la cartographie du réseau en échangeant des informations sur la topologie –Gourmand en bande passante Routage réactif –Route calculée sur besoin par inondation de requêtes de chemins – choix de la route optimale parmi les réponses obtenues –Cache contenant les routes les plus récentes –Pb si réseau chargé Routage hybride –proactif en local et réactif à distance

89 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 89 III-2 Réseau Cas du multicast Pour atteindre plusieurs cibles en même temps –Exemple : téléconférence à plus de 2 Pb : pas de routeurs => les nœuds sont routeurs

90 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 90 III-2 Réseau TMTP (tree-based multicast transport protocol) –Découpage topologique du réseau en domaines Un nœud par domaine se déclare gestionnaire de domaine (il crée le domaine – et le détruit lorsquil quitte le réseau) Les nœuds les plus proches intègrent son domaine (par broadcast) –Léchange de données inter-domaines se fait via les gestionnaires de domaine Dissémination dun message : dans un arbre dont la racine est lémetteur, les nœuds internes sont des gestionnaires de domaine, les feuilles sont des membres des domaines.

91 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 91 Exemple DoDWAN (plate-forme de communication pour réseaux ad hoc dynamiques) Diapos 11 à 20

92 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 92 III-3 SI Niveau système dinformation De très nombreuses recherches en cours Sur des domaines très divers Synthèse difficile => survol de certains points => approfondissement dautres Plan de cette partie: –découverte de services –gestion de données –context-awareness –adaptation des données, des interfaces utilisateurs et des services

93 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 93 III-3-1 Découverte de services Découverte de services Un échange de données sous-entend de connaître la localisation des services fournissant les données Les questions –Comment faire connaître les services que lon propose? –Comment trouver un service dont on a besoin? –Doit-on répartir ou centraliser la connaissances sur les services? Approches –Annuaires de services –Inondation –Routage sémantique

94 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 94 III-3-1 Découverte de services Découverte par annuaires de services Ensemble organisé de descriptions de services disponibles Certaines machines du réseau fournissent un service dannuaire Exemples –SLP –Jini –Salutation –Bluetooth SDP

95 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 95 III-3-1 Découverte de services Annuaire de services SLP (Service Location Protocol) Service Agent –Représentant dun service Directory Agent –Enregistre les SA dans un annuaire LDAP –Publicité multicast pour se faire connaître des UA et des SA –Intermédiaire entre SA et UA pour la découverte User Agent –Représentant du client pour la découverte dun service –Émet une requête multicast avec URI du service recherché

96 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 96 III-3-1 Découverte de services Annuaire de services Jini Jini –Promu par Sun, technologie Java Arrivée dun nœud fournisseur de services –Le nœud broadcast son identité et son groupe –Lannuaire Jini lui répond avec une interface RMI –Le nœud envoie sur cette interface la déclaration de ses services –Lannuaire enregistre les services du nœud avec une durée de vie, ainsi quun proxy daccès pour chaque service –Le nœud doit renouveler la déclaration de ses services avant la fin de durée de vie

97 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 97 III-3-1 Découverte de services Annuaire de services Jini Accéder à un service –Le nœud demandeur envoie une demande en multicast –Les annuaires recevant la demande répondent le cas échéant en fournissant la localisation et le proxy daccès –Le nœud demandeur accède au service par lintermédiaire du proxy –Les informations sur le service peuvent être mises en cache dans le nœud demandeur pour un accès ultérieur Technique de recherche par lookup –Les nœuds possédant linformation sont connus

98 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 98 III-3-1 Découverte de services Annuaire de services Salutation Annuaire plus réparti que Jini –Chaque nœud contient un agent annuaire qui enregistre un sous-ensemble des services disponibles –Ajout dun service inscription dans lagent annuaire local Et inscription dans les agents annuaires des nœuds voisins –Recherche dun service Recherche dabord auprès de lagent local Puis recherche par broadcast le cas échéant Technique de recherche par découverte –Les nœuds possédant linformation ne sont pas connus

99 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 99 III-3-1 Découverte de services Bluetooth service discovery protocol Permet à un système Bluetooth de découvrir les services de son environnement fournisseur de service = sdp server –chaque service est décrit par un service record (liste de description des attributs du service) –les services sont regroupés en classes, une classe a un attribut identifiant universel (UUID) 2 modes : –recherche dun service par UUID –navigation dans lensemble des services dun serveur via la liste des UUID offerts

100 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 100 III-3-1 Découverte de services Découverte par inondation Chaque noeud enregistre sa liste de services disponibles Exemple : uPnP (consortium industriel) –ajout de noeuds avec zero configuration, communication, découverte automatique de services –Arrivée dun nouveau nœud Il demande une adresse IP (DHCP par exemple) Il envoie par multicast un message XML fournissant la déclaration de son arrivée (ANNOUNCE) et la description des services quil fournit (OPTIONS). Les réceptionnaires répondent au nouveau nœud pour quil ait connaissance de leur existence –http://www.upnp.org

101 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 101 III-3-1 Découverte de services Découverte par routage sémantique Choisir « intelligemment » les nœuds qui permettent d atteindre le service requis. Encore du domaine de la recherche Deux exemples –Allia –Clusters multi-couche

102 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 102 III-3-1 Découverte de services Allia : Alliance-based service discovery Chaque peer –fournit un annuaire des services locaux –annonce les services quil fournit à ses voisins (multicast) –sélectionne parmi les annonces reçues celles quil gère dans son cache (avec une politique personnelle) les peers dont des services sont mis en cache font partie de lalliance du peer gérant le cache un peer retire de son alliance tout peer qui « disparaît » Recherche dun service –dans son annuaire local, puis dans son cache –puis demande à ses voisins (le voisin cherche en local ou transmet la demande si sa politique personnelle ly autorise)

103 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 103 III-3-1 Découverte de services Clusters multi-couche Regroupement des peers en fonction de la proximité –géographique : en liaison directe (single hop) –sémantique : fournissent des services similaires fondée sur une ontologie arborescente de termes

104 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 104 III-3-1 Découverte de services Clusters niveau 1 Clusters niveau 2 Clusters multi-couche –deux peers sont dans le même cluster feuille (niveau 1) sils appartiennent au même terme et sils sont en liaison directe –cluster niveau 2 : même terme de niveau 2 et géographiquement « atteignables » atteignables : 2 nœuds des 2 clusters sont en relation directe –3 hop max entre 2 nœuds du même cluster de niveau 2

105 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 105 III-3-1 Découverte de services Objets mobiles Les objets se déplacent durant le fonctionnement –e.g. équilibrage de charge serveur ou réseau Comment les atteindre? 3 façons –serveur de localisation –poste restante –répéteurs

106 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 106 III-3-1 Découverte de services Serveur de localisation dobjets mobiles Un serveur stocke les couples objet/localisation Chaque objet informe lui-même le serveur de sa migration Un client ayant besoin dun accès à un objet mobile –demande la localisation au serveur –accède ensuite directement à lobjet

107 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 107 Poste restante pour objets mobiles Un intermédiaire fixe sert de poste restante Lobjet mobile interroge régulièrement lintermédiaire pour prendre les messages Un client qui veut accéder à lobjet envoie un message à lintermédiaire fixe –communication asynchrone III-3-1 Découverte de services

108 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 108 Répéteurs pour objets mobiles Un objet quittant un site laisse derrière lui un répéteur connaissant la localisation suivante Le répéteur fait suivre les messages jusquà la position suivante Un client envoie sa demande à la dernière localisation connue, le répéteur transmet le cas échéant. –Plusieurs migrations => une chaîne de répéteurs III-3-1 Découverte de services

109 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 109 Références bibliographiques Découverte –O. Ratsimor, et al. Allia: Alliance-based Service Discovery for Ad-Hoc Environments, ACM Mobile Commerce Workshop, Sept 2002 –M. Klein, B. König-Ries: Multi-Layer Clusters in Ad-hoc Networks - An Approach to Service Discovery. In: Proc. International Workshop on Peer-to- Peer Computing, Pisa, Italy, –R. Yavatkar, J. Griffioen reliable dissemination for large-scale wide area information systems. Department of computer science University of Kentucky, 2001 –E. Beau et al. Synthèse bibliographique gestion de données en milieu pervasif, Dept Informatique INSA Lyon, octobre 2003 –Upnp, Jini and Salutation - a look at some popular coordination frameworks for future networked devices California Software Labs, 2002 –B. Siverajan et al. a service discovery model for wireless and mobile terminals in IPv6 Tempere University of technology (Finland), 2003 –C. Lee, S. Helal, Protocols for Service Discovery in Dynamic and Mobile Networks International Journal of Computer Research, v.11, n.1, 2002 III-3-1 Découverte de services

110 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 110 III-3-2 Gestion de données Gestion de données en environnement pervasif [Franklin 2001] Challenges pervasifs et besoins induits Adaptabilité et interaction utilisateur –Interaction temps-réel avec les données distantes –Flexibilité Mobilité –Délivrer et recevoir des données pendant le déplacement –Tolérer les déconnexions sans interrompre le service Préparation des données qui seront utiles => prédiction des besoins –Location-awareness Sélectionner les données en fonction de la localisation Structures de données spécifiques à la localisation

111 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 111 III-3-2 Gestion de données Gestion de données en environnement pervasif Context-awareness –Analyser des flux de données provenant de capteurs temps réel –Passer dune information brute denvironnement à une donnée de contexte qui a du sens pour lapplication : interpréter les analyses Collaboration –Gestion de groupes de personnes dynamiques / ad hoc –Gestion de synchronisation et cohérence –Actions collaboratives de création, accès, modification de données partagées par le groupe

112 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 112 III-3-2 Gestion de données Gestion de données en environnement pervasif Exemples de projets –Projet Data Recharging [Franklin 2001] Data charge (plug on the net) battery charge –Plus on est connecté, plus on reçoit de données Exploiter le profil de lutilisateur pour délivrer automatiquement des mises à jour de données et nouvelles données pertinentes Profil utilisateur = description des données pertinentes + priorités –Projet Telegraph [Shah 2001] Architecture adaptative de traitement de flux de données dans des environnements très dynamiques Le plan de traitement du flux est dynamique (adaptation aux fluctuations telles que énergie et bande passante)

113 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 113 III-3-2 Gestion de données Gestion de données en environnement pervasif Exemples détaillés ci-après –JavAne –Gestion de réplicas –MoGATU

114 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 114 III-3-2 Gestion de données JavAne Agents mobiles pour le partage et la recherche de documents en environnement peer-to-peer Rôle serveur –Publier, gérer et partager des documents Rôle client –Rechercher et récupérer des documents –Stocker des informations sur les serveurs quil connaît –Naviguer de site en site Des agents mobiles qui interrogent la base de chaque site Basé sur JavAct : plate-forme de gestion dagents mobiles adaptables

115 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 115 III-3-2 Gestion de données JavAne – code simplifié dun agent chercheur public class SearchBehavior extends JavAneBehavior implements Searcher, javact.util.StandAlone { public SearchBehavior(client, clientInfo, energy, queryStamp, Params) {...} public void run() { if (energy <= 0) {suicide();return;} // Has the current place been already visited ? if (! markedPlace(myPlace(), queryStamp, client)) energy -= E_VISITED; else { // Database interrogation and sending of results to the client localResults = LocalDB.fileSelect(Params); if (localResults != null && localResults.length > 0) { send(new JAMprocessResults(place, localResults), client); energy -= E_FOUND; } else energy -= E_NOT_FOUND; }../…

116 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 116 III-3-2 Gestion de données JavAne – code simplifié dun agent chercheur if (energy > 0) {// Random moving (if it remains energy) String[] places = getPlaces(myPlace()); String nextPlace = places[random.nextInt(places.length)]; go(nextPlace); } else suicide(); // Collection of meta-information String[] placesInfos = getPlacesInfos(myPlace()); send(new JAMaddPlacesInfos(placesInfos), clientInfo); }

117 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 117 III-3-2 Gestion de données Gestion de caches sur le web Proxy-caches collaboratifs –une donnée est dupliquée sur le proxy qui la demande –gourmand et non « optimisé » Content Delivery Network –gestion de données avec distribution à très grande échelle –architecture fixe tentaculaire très coûteuse Push-caching –les serveurs « poussent » les réplicas vers les proxy de leur choix en fonction dune politique qui leur est propre –le client sadresse au fournisseur qui redirige vers le cache le plus adéquat

118 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 118 III-3-2 Gestion de données (Dé)placement de réplicas en environnement pervasif basé sur la théorie des small worlds (groupes dintérêt) –un réplica doit se rapprocher des small worlds qui s intéressent à lui A chaque demande dune donnée, les réplicas se déplacent vers le foyer de demande SW1SW2 R R SW1SW2 R R

119 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 119 III-3-2 Gestion de données (Dé)placement de réplicas en environnement pervasif Apparition dun nouveau groupe dintérêt –si autorisé, duplication du réplica et déplacement du nouveau réplica vers le nouveau groupe –sinon, déplacement des réplicas existants jusquà équilibre entre les 2 groupes dintérêt Disparition du groupe dintérêt –déplacement ou suppression du réplica SW1SW2 R SW3 SW1SW2 R R SW3 R Duplication autorisée Duplication interdite R

120 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 120 III-3-2 Gestion de données (Dé)placement de réplicas en environnement pervasif Le (dé)placement ne se fait quavec une connaissance partielle du réseau –chaque peer ne connaît que les nœuds les plus proches! –Notion de vecteur dattraction dun réplica sur chaque lien sortant du cache sur lequel il est hébergé augmenté à chaque demande provenant de ce lien Diminué avec le temps –Déplacement effectif ou duplication lorsque le vecteur dattraction dépasse la distance entre le proxy hébergeant le réplica et le nœud contenant le proxy destination –Destruction du réplica quand le vecteur dattraction reste nul pendant une durée seuil

121 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 121 III-3-2 Gestion de données MoGATU Plate-forme de gestion de données en P2P pur –une couche de gestion des données –une couche de communication Sur chaque peer, 3 types dentités –Information provider : source de données –Information consumer : entités qui interrogent et mettent à jour les données –Information manager : informations sur les peers voisins, intermédiaire entre provider et consumer, gestion de cache en fonction dun profil

122 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 122 III-3-2 Gestion de données MoGATU – information provider Gère et fournit une interface daccès à une sous- partie locale des données Décrit son service à laide dune ontologie Communique uniquement avec linformation manager local, qui « route » les messages entre ce provider et les autres peers Se déclare régulièrement auprès de linformation manager local, qui lui-même transmet la déclaration aux peers de lentourage

123 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 123 III-3-2 Gestion de données MoGATU – information consumer Utilisateurs finaux ou autres agents Senregistrent auprès de linformation manager local (pas dannonce aux peers de lentourage) Envoie ses requêtes à linformation manager local Linformation manager transmet la demande aux information providers locaux ou distants correspondants, et récupère les réponses

124 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 124 III-3-2 Gestion de données MoGATU – information manager Communication réseau –Analyse des messages –Découverte et routage des messages en multi-hop –Requêtes proactives sur les autres peers –Broadcast des annonces des providers (locaux et/ou voisins) des requêtes des consumers locaux Maintenance dinformations –Informations sur providers et consumers locaux Durée de vie, services, restrictions sur les requêtes –Informations sur peers de lentourage Id, services fournis, types dinformations fournies (leurs annonces)

125 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 125 III-3-2 Gestion de données MoGATU – information manager –Profil utilisateur Préférences et besoins –Cache réponses aux requêtes passées fournies par les peers de lentourage Choix de mettre en cache en fonction du profil utilisateur et des capacités du peer –4 niveaux dinformation manager selon capacité 1 : aucun cache 2 : cache les annonces distantes 3 : cache les annonces et les réponses aux requêtes passées 4 : cache annonces et réponses et les rend accessibles aux autres peers

126 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 126 III-3-2 Gestion de données Généralisation aux caches en général Systèmes distribués de proxy-caches –ensemble de services interposées entre le « client » et le « fournisseur » d un service effectuant un travail à la place du fournisseur ou à la place du client –adaptation de contenu, –délestage des serveurs, –optimisation de la sécurité, –traductions inter-protocoles, –stockage de copies de données (réplicas)…

127 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 127 Références bibliographiques Gestion de données M. Franklin « Challenges in ubiquitous data management », Informatics : 10 years back, 10 years ahead. LNCS 2000, R. Wilhelm (ed.), Springer Verlag, 2001 JPArcangeli & al. Development of flexible peer-to-peer information systems using adaptable mobile agents, DEXA 04 Workshop GLOBe (Grid an dPeer-to-peer computing impacts on large scale heterogeneous distributed database systems) DEA de J. Gossa, encadré par JMPierson et LBrunie, LIRIS, 2004 F. Perish et al. On data management in pervasive computing environments IEEE transactions on knowledge and data engineering, vol 16 n°5 may 2004 Mehul A. Shah, Samuel Madden, Michael J. Franklin, Joseph M. Hellerstein. Java Support for Data-Intensive Systems: Experiences Building the Telegraph Dataflow System, SIGMOD Record,Vol 30 nb 4 dec 2001:

128 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 128 III-3-3 Context-awareness Context-awareness M. Weiser –«The most profound technologies are those that disappear» Informatique context-aware –Prise en compte de lenvironnement dans lequel se trouve lutilisateur –Capture et accès automatique –Délivrer linformation pertinente Quand? Où? Comment?

129 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 129 III-3-3 Context-awareness Définition du contexte [Salber,Dey,Abowd 99] « Environmental information or context covers information that is part of an applications operating environment and that can be sensed by the application. This typically includes the location, identity, activity and state of people, groups and objects. »

130 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 130 Définition du contexte [Winograd 01] Something is context because of the way it is used in interpretation, not due to its inherent properties. The voltage on the power lines is a context if there is some action by the user and/or computer whose interpretation is dependant on it, but otherwise is just part of the environment." III-3-3 Context-awareness

131 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 131 III-3-3 Context-awareness Définition du contexte Ce qui est intéressant –Le concepteur de lapplication décide quelles informations contextuelles sont intéressantes Dépend de lapplication Le contexte –est souvent constitué dun ensemble dinformations implicites auxquelles lapplication na pas accès –rend les applications plus « smart »

132 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 132 Contenu du contexte Classiquement, 4 axes –Utilisateur Profil et préférences, localisation… –Terminaux et matériels Taille de lécran, résolution, couleurs, mémoire, API… –Réseau Bande passante, connectivité, Qos –Méta-données de lapplication Codage, langue, versions De plus en plus souvent un 5 ème –Activité Tâche en cours III-3-3 Context-awareness

133 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 133 Modélisation du contexte Très souvent dépendante de lapplication, encore peu de travaux « génériques » sur cette modélisation 3 approches principales –Couples attribut/valeur –Extension de CC/PP –Modélisation par ontologies Très en vogue – de très nombreux travaux en cours III-3-3 Context-awareness

134 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 134 Modélisation du contexte par attribut/valeur Contexte = paires (attribut, valeur) –userName=flaforest –userLocation = courseRoom Les paires sont indépendantes + Facilité dimplantation - Cohérence de lensemble - Sémantiquement pauvre III-3-3 Context-awareness

135 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 135 Modélisation du contexte avec CC/PP Composite Capabilities / Preferences Profile (W3C) –description des terminaux et des préférences utilisateur –Document RDF pour décrire les attributs –Modéliser le contexte = faire des extensions + standard - extensions => complexité, lecture ardue III-3-3 Context-awareness

136 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 136 Exemple de document XML CC/PP 320x200 16Mb III-3-3 Context-awareness

137 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 137 Modélisation du contexte par ontologies Une ontologie est un ensemble structuré de concepts. Les concepts sont organisés dans un graphe dont les relations peuvent être : –des relations sémantiques –des relations de composition et d'héritage (au sens objet) Intérêt des ontologies pour modéliser le contexte –Utilisables dans des environnements denvergure –Sémantiquement riches III-3-3 Context-awareness

138 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 138 Modélisation du contexte par ontologies Exemple CoOL [Strang & al. 03] m 90 III-3-3 Context-awareness

139 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 139 Modélisation du contexte par ontologies Exemple Gco [Chaari et al. 06] Descripteurs de contexte génériques / de base –User context, device context, network context, activity context, service context, location context and resource context Descripteurs de contextes spécifiques à lapplication Basic context

140 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 140 …Suite Gco Context element=(Subject, Predicate, Value, Time, Certainty) –Subject = propriétaire de lélément de contexte –Predicate = propriété –Value = valeur de lélément –Time = date du relevé de la valeur –Certainty = confiance dans la valeur Exemple : (VideoService, runsOn, PDA-01, , 0.8)

141 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 141 …suite Gco Exemple de graphe de contexte Gco Contexte de base: les éléments reliés à la racine

142 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 142 Synthèse des modélisations de contextes +-++ Ontologies -++ Extension de CC/PP -+- Paires Attribut / valeur Gestion des conflits Facilité d'implantation Expressivité et richesse sémantique III-3-3 Context-awareness

143 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 143 III-3-3 Context-awareness Application context-aware « Context-aware applications sense context information and modify their behavior accordingly without explicit user intervention » 3 types de comportement –Afficher le contexte –Automatiquement exécuter ou adapter des services –Enregistrer et « indexer » linformation de contexte pour la retrouver au besoin

144 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 144 III-3-3 Context-awareness Afficher le contexte Exemples –Tableau des entrées et sorties du personnel –Cartes de localisation –Écrans détat (météo, activité…)

145 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 145 III-3-3 Context-awareness Exécuter / adapter des services Sélectionner et exécuter le service pertinent parmi un ensemble de services Modifier le comportement dun service ou son exécution Exemple : imprimer sur limprimante la plus proche, afficher de la documentation…

146 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 146 III-3-3 Context-awareness Enregistrer et « indexer » le contexte Utiliser le contexte dans le cas de recherches fondées sur le contexte Exemples –Forget-me-not –Assistant de conférence –Guides touristiques –Historique (revoir des informations « cochées » lors de la réunion, lors de la visite)

147 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 147 III-3-3 Context-awareness Conception dune application context-aware Sans support –Spécifications –Acquisition et représentation –Diffusion –Réception et stockage –Action Avec support

148 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 148 III-3-3 Context-awareness Conception sans support Spécifications –Quel contexte utiliser –Quels comportements Acquisition et représentation –Installer les capteurs utiles –Créer ou apprendre les API des capteurs –Créer les modules dacquisition des données de capteurs ou les modules de transmission des modifications de valeurs des capteurs –Stocker le contexte –Interpréter / abstraire le contexte

149 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 149 III-3-3 Context-awareness Conception sans support Diffusion –Mécanisme de transport de linformation des capteurs vers les services –Capteurs sources dinformation nombreux et hétérogènes –Distribution à des services nombreux et hétérogènes Réception et stockage –Requêtes ou notifications? –Stocker tout le contexte? Durée de vie du contexte? –Interprétation des données brutes Action –Combiner le contexte reçu avec les anciennes valeurs –Effectuer une action en fonction des résultats de lanalyse

150 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 150 III-3-3 Context-awareness Exemple de conception sans support Visite guidée mobile Application –Afficher la liste des démos non vues –Surligner les démos pertinentes –Afficher une carte centrée sur la localisation de lutilisateur –Afficher de linformation sur la démo la plus proche –Application mono-utilisateur

151 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 151 III-3-3 Context-awareness Visite guidée mobile

152 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 152 III-3-3 Context-awareness Visite guidée mobile Spécifications –Contexte Liste des démos faites Localisation de lutilisateur Orientation de lutilisateur –Comportement de lapplication Cf. transparent précédent

153 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 153 III-3-3 Context-awareness Visite guidée mobile Acquisition –Capteurs Orientation : compas électronique Localisation : badge actif Liste des démos : badge actif + application –API à construire pour orientation et liste de démos À apprendre pour badge actif –Stockage des données dans un fichier local –Interprétation de la localisation pour savoir si près dune démo

154 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 154 III-3-3 Context-awareness Visite guidée mobile Diffusion –Seul le badge actif est sans fil –Écrire la couche transport (RPC par exemple) pour acquérir les données Réception –Notification des changements –Interprétation pour recevoir la liste des démos –Ensemble de capteurs fini

155 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 155 III-3-3 Context-awareness Visite guidée mobile Action –Modification dorientation Modification de la carte –Modification de la localisation Modification de la carte Mise à jour de la liste des démos non vues Surligner les démos pertinentes

156 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 156 III-3-3 Context-awareness Conception dune application context-aware Sans support vs. avec support Nécessité dun support pour: –Spécifications : Spécifier le contexte nécessaire –Découverte : localiser les composants qui peuvent acquérir du contexte et agir en fonction du contexte –Séparation des problèmes : séparer lacquisition du contexte de son utilisation –Stockage : importance des historiques de contexte –Interprétation : pour des informations de plus haut niveau –Communications transparentes –Disponibilité permanente du contexte

157 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 157 III-3-3 Context-awareness Briques de base de la plate-forme de Dey Context Widgets –Par analogie avec les widgets des interfaces graphiques Encapsulation, abstraction –But Acquérir et abstraire les données des capteurs Séparer les problématiques Stockage

158 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 158 Context widgets III-3-3 Context-awareness

159 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 159 III-3-3 Context-awareness Interpretors Les données des capteurs sont rarement fournies au bon niveau dabstraction Convertissent ou interprètent le contexte pour obtenir une information de plus haut niveau

160 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 160 III-3-3 Context-awareness Agrégators Rassemble des données de contexte pour les rendre pertinentes pour certaines entités Simplifie la conception de lapplication

161 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 161 III-3-3 Context-awareness Services Effectue les traitements sur les données de contexte

162 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 162 III-3-3 Context-awareness Discoverer Répertorie lensemble des composants de gestion du contexte

163 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 163 III-3-3 Context-awareness Synthèse de la plate-forme de Dey

164 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 164 III-3-3 Context-awareness Autres challenges en context-awareness Killer application –Besoin de quelque chose pour orienter les recherches –Besoin de quelque chose de concret à mettre entre les mains des futurs utilisateurs Taxonomie –Quel contexte est important? –Comment représenter le contexte? –Standards pour partager les composants entre groupes de recherche

165 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 165 III-3-3 Context-awareness Autres challenges en context-awareness Connaissances sur le monde réel –Comment le monde fonctionne Protection de la personne –Capture et collecte dinformations sur les gens, les lieux, les terminaux –Réponses sociales et technologiques à apporter Qualité de service : méta données –Cohérence, Confiance, Fréquence… « Smartness » –Quand le système doit-il décider, quand lutilisateur doit-il décider?

166 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 166 III-3-3 Context-awareness Autres challenges en context-awareness Ambiguité –Limitations des capteurs : vue réduite de la réalité –Comment réagir à une mauvaise interprétation automatique Modèle de lenvironnement –Relations entre les localisations : granularité de la distance, hiérarchie de composition (batiment/piece…) –Relations entre les gens : famille, collègues –Relations entre les équipements?

167 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 167 Références bibliographiques Context awareness M. Weiser « The computer for the twenty-first century », Scientific American, sept 1991: A.K. Dey « Building context-aware applications », presentation at Dagstuhl summer school, august 2003 D. Salber, A.K.Dey, G.D. Abowd « The context Toolkit : aiding the development of context-enabled applications » ACM CHI 99 Strang & al. « Service interopérability on context level in ubiquitous computing environments » Int conf. On Advances in infrastructure for electronic business, education, science, medicine and mobile technologies on the internet, LAquila, Italy, jan T. Chaari, D. Ejigu, F. Laforest and V.-M. Scuturici «Modeling and Using Context in Adapting Applications to Pervasive Environments.» IEEE Int. Conf. Pervasive Services, Lyon, France, June 2006 T. Winograd, Architectures for Context, Human-Computer Interaction, Vol. 16, No. 2, 3 & 4, Pages , III-3-3 Context-awareness

168 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 168 III-3-4 Adaptation Adaptation Principes génériques dadaptation –Statique –Dynamique 3 domaines principaux –Adaptation des interfaces utilisateurs –Adaptation du contenu –Adaptation des services

169 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 169 III Principes dadaptation Adaptation statique Préparer plusieurs versions dune ressource avant son exploitation En fonctionnement, adaptation = choix de la version correspondant au contexte Beaucoup utilisée dans les débuts des applications multi-terminaux –Version existante pour terminaux standards –Nouvelles versions pour autres terminaux + simplicité et efficacité de fonctionnement - pb déchelle, lourdeur de prise en compte dune nouvelle version

170 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 170 III Principes dadaptation Références de projets dadaptation statique Eric D. Larson, Wireless Java Application Saves Women's Cancer Center $500,000 per Year, J2ME case studies, september V. Massé, « La société MobilePlanet Europe fournit des terminaux mobiles à la Brigade des Sapeurs Pompiers de Paris (BSPP) pour léquipement de ses véhicules dintervention », Mobile Planet, juin /2002_brigade.asp S. Benjaminsen, A. Djora « JetRek: How organisational identities slowed down speedy requisitions », BSA medical sociology conference, september 2002, York. Siri-york02-09.pdf

171 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 171 III Principes dadaptation Adaptation dynamique Transformations sur la ressource en cours de fonctionnement Exemples –CSS : transformations à la volée de la forme dun document XML=>HTML –transformation de format de données + gain de temps pour prendre en compte une nouvelle version - complexité de loutil (choix dun « chemin dadaptation » + adaptation) - temps de réponse

172 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 172 III Principes dadaptation Références de projets dadaptation dynamique TeraCom Soluphone santé T. Lemlouma, N. Layaïda, « A Framework for Media Resource Manipulation in an Adaptation and Negotiation Architecture », OPERA project, under submission, INRIA Rhône-Alpes, august 2001 G. Menkhaus « Adaptive User Interface Generation in a Mobile Computing Environment », PhD Thesis, Salzburg University, 2002.

173 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 173 III Domaines dadaptation Trois domaines principaux dadaptation Adaptation des interfaces utilisateurs Adaptation du contenu Adaptation des services

174 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 174 III-3-4-3a Adaptation des IU Adaptation des interfaces utilisateur Approches cognitives –Modèles utilisateur/tâche/dialogue –Généralement instrumentés par des plates-formes de génération automatique ou semi-automatique Approches dingénierie –Outils de conception et développement des IHM –Question : passer dune problématique de visualisation/mise à jour à une solution concrète (code) –Généralement basé sur des modèles À la XML : UIML, AUIML, SunML, XIML, Plastic ML, USIXML, XUL, XAML… À la UML : UMLi

175 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 175 III-3-4-3a Adaptation des IU Modèle UMLi [Pinheiro da Silva et Paton, 2000 ] Extension de UML: aspect interaction Diagrammes complexes et fastidieux

176 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 176 Objets graphiques III-3-4-3a Adaptation des IU Exemple UMLi

177 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 177 III-3-4-3a Adaptation des IU Modèle UiML [Abrams, Phanouriou 1999 ] Spécification de la présentation –Avec des balises à la XML –Dépendante de la plate-forme cible –Long et fastidieux! –Exemple …/…

178 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 178 III-3-4-3a Adaptation des IU Exemple UiML: pour chaque plate-forme, un ensemble de composants daffichage

179 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 179 III-3-4-3a Adaptation des IU Exemple UiML: pour chaque plate-forme, une logique de fonctionnement

180 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 180 III-3-4-3a Adaptation des IU Exemple UiML: structure de linterface utilisateur, utilisation de template réutilisable Credit Card Entry Form Accept

181 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 181 III-3-4-3a Adaptation des IU Exemple UiML: rendu de lIU et comportement Dialog TextField Button InputEvent SendCredit Définis dans présentation Définis dans structure et template Défini dans logic

182 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 182 III-3-4-3a Adaptation des IU Plates-formes de génération de code dIU Fondées sur plus ou moins de modèles, parmi: –Domaine : description des services de lapplication, modèle de BD… –Tâches : graphes dactivités –Utilisateur : préférences –Dialogue : partie interactive de linterface –Présentation : partie visuelle de linterface Une génération plus ou moins automatique du code Des modèles inter-reliés, long, complexes et fastidieux… il est souvent plus rapide de coder soi- même linterface!

183 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 183 Le projet SEFAGI [Chaari 2004] Cadre applicatif –projet Système dInformation COMmunicant pour la santé –Adaptation des interfaces utilisateurs au terminal Interface graphique du Projet SICOM –Une partie générique –Des parties spécifiques dédiées à une pathologie dédiées à un type dutilisateurs ==>Nombre de fenêtres différentes élevé ==> Temps de développement important III-3-4-3a Adaptation des IU

184 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 184 Objectifs Génération automatique des fenêtres spécifiques – pour des terminaux de types divers PC (J2SE) Terminaux très légers (MIDP- CLDC) Terminaux légers (CDC) Génération automatique et complète des : –Affichages et leurs inter-relations –Interactions avec les traitements –Et de lenvironnement dexécution sur les terminaux III-3-4-3a Adaptation des IU

185 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 185 Architecture logique III-3-4-3a Adaptation des IU

186 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 186 Environnement d exécution sur PC III-3-4-3a Adaptation des IU

187 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 187 Description des fenêtres à générer fenêtre = liste de panneaux panneau = –Une représentation graphique dépendant du type de terminal –Des services associés (getData / setData) Types de panneaux –6 pour linstant, extensible –Chaque type de panneau correspond à une classe dans une bibliothèque de composants graphiques III-3-4-3a Adaptation des IU

188 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 188 Panneau de type texte Grande zone texte (commentaires,texte multiligne) Panneau de type graphique Présentation de courbes 2D ou de graphiques bâtonnet Panneaux tableau, texte, graphique Panneau de type tableau Saisie et consultation des données Une case = un widget de base (zone de saisie, liste énumérée, cases à cocher…) Contraintes associées à chaque case PC standard PC de poche III-3-4-3a Adaptation des IU

189 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 189 Panneau de type image, vidéo et commande Panneaux image ou vidéo –Liste des images/vidéos –Image/vidéo sélectionnée –Texte descriptif associé Panneau commande –Boutons pour lancer lappel des services associés aux panneaux de la fenêtre PC standard PC de poche PC standard PC de poche III-3-4-3a Adaptation des IU

190 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 190 Assistant de SEFAGI III-3-4-3a Adaptation des IU

191 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 191 Structure XML de description abstraite des fenêtres (aucune référence aux plates-formes cibles) III-3-4-3a Adaptation des IU

192 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 192 Environnement de génération Interface principale permettant de –Choisir une description abstraite de fenêtre –Générer pour un type de terminal donné le code source de la fenêtre correspondante et de son gestionnaire dévènements –Compiler le code source généré III-3-4-3a Adaptation des IU

193 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 193 Diagramme de classes de l'environnement de génération Méthodes dinitialisation Entête Méthodes de traitements Constructeur Attributs Définition de classe Structure dune fenêtre java Gestionnaire d événements Définitions des événements Appel des méthodes III-3-4-3a Adaptation des IU

194 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 194 III-3-4-3a Adaptation des IU Menu de navigation Exemple complet sur PC et mobile

195 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 195 Architecture technique de SEFAGI III-3-4-3a Adaptation des IU

196 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 196 Synthèse : types dadaptation dans Sefagi Au cours de la génération (statiques) –Transformations de laffichage (présentation) Correspondance entre les composants du modèle et ceux des cibles –Transformations de disposition (présentation) Disposition des composants dans les panneaux et des panneaux sur lécran –Transformations de navigation (présentation) Facilités de navigation pour lutilisateur Au cours de lexécution (dynamiques) –Transformations de cohérence (données) Groupage ou dissociation de données, Gestion des points de reprise –Transformations de contenu (données) Modification ou substitution dune ressource par une autre –Transformations de transmission (traitements) Protocole de transmission standard Typage standard des données III-3-4-3a Adaptation des IU

197 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 197 Conclusion SEFAGI Simplicité –Avoir des interfaces graphiques spécifiques sans toucher à la programmation –Un fichier XML par fenêtre très court par rapport aux autres modèles existants Évolutivité –Enrichissement de la liste des panneaux Portabilité –Entièrement développée en JAVA III-3-4-3a Adaptation des IU

198 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 198 III-3-4-3a Adaptation des IU Références bibliographiques Adaptation des IU P. Pinheiro da Silva and N. W. Paton. UMLi: The Unifed Modeling Language for Interactive Applications. In Proceedings of UML2000, volume 1939 of LNCS, pages , York, UK, October Springer M. Abrams, C. Phanouriou, UIML: an XML language for building device independent user interfaces, XML99, Philadelphia, December 1999 T. Chaari, F. Laforest, A. Flory Génération automatique dinterfaces graphiques pour la saisie et la consultation de données : Application au domaine médical. Int. Conf. on Sciences of Electronic, Technology of Information and Telecommunications SETIT 2004, Sousse, Tunisie, mars 2004 T. Chaari, F. Laforest Génération et adaptation automatiques des interfaces utilisateurs pour des environnements multi-terminaux Le projet SEFAGI : Simple Environment For Adaptable Graphical Interfaces Revue Ingénierie des systèmes dInformation, n° spécial systèmes dinformation pervasifs,volume 9 - n°2/2004:11-38 P. Sukaviriya, J. Foley, T. Griffith: A Second Generation User Interface Design Environment. In: S. Ashlund, et.al. (eds.): Bridges between Worlds. Proceedings InterCHI'93 (Amsterdam, April 1993). New York: ACM Press, 1993,

199 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 199 Références bibliographiques Adaptation des IU C. Märtin: Software Life Cycle Automation for Interactive Applications: The AME Design Environment. In: J. Vanderdonckt (ed.): Computer-Aided Design of User Interfaces. Namur: Namur University Press, 1996, H. Balzert, F. Hofmann, V. Kruschinski, C. Niemann: The Janus Application Development Environment Generating More than the User Interface. In: J. Vanderdonckt (ed.): Computer- Aided Design of User Interfaces. Namur: Namur University Press, 1996, F. Bodart, A.-M. Hennebert, J.-M. Leheureux, I. Provot, B. Sacre, J. Vanderdonckt: Towards a Systematic Building of Software Architectures: the TRIDENT Methodological Guide. In P. Palanque, R. Bastide (eds.): Design, Specification and Verification of Interactive Systems. Wien: Springer, 1995, C. Janssen, A. Weisbecker, J. Ziegler: Generating User Interfaces from Data Models and Dialogue Net Specifications. In: S. Ashlund, et.al. (eds.): Bridges between Worlds. Proceedings InterCHI'93 (Amsterdam, April 1993). New York: ACM Press, 1993, Guido Menkhaus, Wolfgang Pree: User interface tailoring for multi-platform service access. IUI 2002: III-3-4-3a Adaptation des IU

200 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 200 III-3-4-3a Adaptation des IU Références bibliographiques Adaptation des IU T. Elwert, E. Schlungbaum: Modelling and Generation of Graphical User Interfaces in the TADEUS Approach. In: P. Palanque, R. Bastide (eds.): Designing, Specification, and Verification of Interactive Systems. Wien: Springer, 1995, P. Johnson: Human-Computer Interaction. London: McGraw-Hill, A. Puerta: The Mecano Project: Comprehensive and Integrated Support for Model-Based Interface Development. In: J. Vanderdonckt (ed.): Computer-Aided Design of User Interfaces. Namur: Namur University Press, 1996, A. Puerta: Issues in Automatic Generation of User Interfaces in Model- Based Systems. In: J. Vanderdonckt (ed.): Computer-Aided Design of User Interfaces. Namur: Namur University Press, 1996, F. Lonczewski, S. Schreiber: The FUSE-System: An Integrated User Interface Design Environment. In: J. Vanderdonckt (ed.): Computer-Aided Design of User Interfaces. Namur: Namur University Press, 1996, P. Szekely, P. Sukaviriya, P. Castells, J. Muthukumarasamy, E. Salcher: Declarative interface models for user interface construction tools: the MASTERMIND approach. In: L. Bass, C. Unger (eds.): Engineering for Human-Computer Interaction. Proceedings of the IFIP TC2/WG2.7 working conference on engineering for humancomputer interaction (Yellowstone Park, August 1995). London: Chapman & Hall, 1996,

201 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 201 III-3-4-3b Adaptation du contenu Adaptation du contenu Adaptation des données : modifier une donnée pour –Quelle soit exploitable par le terminal cible –Quelle soit conforme aux règles de protection des données –… Adaptation dynamique (à la demande) ou statique (plusieurs versions stockées) Localisation de ladaptation –sur le client : ne convient pas aux terminaux légers –sur le serveur : si tient la charge –Sur un proxy entre le client et le serveur –Distribué

202 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 202 III-3-4-3b Adaptation du contenu Adaptation selon le type de la donnée source Source texte –Conversion de format (html -> txt, doc -> pdf…) –Résumé –Traduction –Compression/décompression –Synthèse vocale Source image –Conversion de format (jpeg -> png) –Modification de résolution, nombre de couleurs… –Compression / décompression (e.g. sémantique jpeg ou brute zip)

203 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 203 III-3-4-3b Adaptation du contenu Adaptation selon le type de la donnée source Source sonore –Conversion de format –Synthèse textuelle et reconnaissance vocale –Compression / décompression (e.g. sémantique MP3 ou brute zip) Source vidéo –Conversion de format (résolution, nb images/sec) –Décomposition / recomposition spatiale (zoom…) –Compression / décompression (e.g. sémantique MPEG4 ou brute zip)

204 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 204 III-3-4-3b Adaptation du contenu Opérateurs pour ladaptation de contenu Codage –transcodage de média (réduction nb couleurs) –transformation de modalité (texte -> audio) –compression (jpeg) Format (Wav->MP3) Structure (HTML ->WML) Remplacement (image par texte descriptif) Sélection (sélection dimages moins volumineuses) Intégration (données multi-serveurs)

205 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 205 III-3-4-3b Adaptation du contenu Adaptation de contenu - RTP Mixer [Mory et al 2004] Adaptation dynamique par un proxy avec cache –transparente à lapplication : effectuée par un intermédiaire durant le transport des données –utilisation dun profil CC/PP –2 services dadaptation redimensionnement automatique et recadrage dimages traitement de vidéos : conversion de format, distillation

206 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 206 III-3-4-3b Adaptation du contenu Adaptation de contenu - DCAF Distributed Content Adaptation Framework [Berhe 2006] Content Servers User Adaptation Services Local Proxies Content Proxies Adaptation Services Registry Context Profile Repository Internet

207 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 207 Adaptation de contenu - DCAF Description des services dadaptation –Services dadaptation = services Web –WSDL insuffisant Pas de coût, sémantique, temps dexécution… –Utilisation dune ontologie III-3-4-3b Adaptation du contenu Adaptation System Context Profile (e.g format, size, network) Adaptation Services Ontology Content Metadata & Data (e.g. format, size) Adapted Data Collects Processes Delivers

208 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 208 III-3-4-3b Adaptation du contenu Adaptation de contenu - DCAF Local Proxy

209 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 209 III-3-4-3b Adaptation du contenu Adaptation de contenu - DCAF AD : décision dadaptation –Calcule le type et le nombre dadaptations nécessaires –Résultat : transformation prescript A R C F Z Image (JPEG, Color) Image (GIF, BW) Resizing Format-Conversion Color Reduction

210 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 210 Adaptation de contenu - DCAF AP : planification dadaptation : Algo MAGG –Sélectionne les services dadaptation appropriés pour implanter le transformation prescript Notion de graphe de services dadaptation –MAGG = choix du chemin optimal dans le graphe –Notre exemple: choisir limplantation pour chaque étape R={ R 1, R 2 } C={ C 1, C 2, C 3 } F={ F 1, F 2, F 3 } III-3-4-3b Adaptation du contenu

211 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 211 Adaptation de contenu - DCAF Graphe de services A R1R1 R2R2 JPEG C1C1 C2C2 C3C3 BMP JPEG F1F1 F2F2 Z GIF JPEG BMP FnFn JPEG F3F3 GIF TIF III-3-4-3b Adaptation du contenu

212 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 212 Adaptation de contenu - DCAF MAGG A R1R1 R2R2 JPEG C1C1 C2C2 C3C3 BMP JPEG F1F1 F2F2 Z GIF JPEG BMP FnFn JPEG F3F3 GIF TIF III-3-4-3b Adaptation du contenu

213 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 213 Références bibliographiques Adaptation contenu E. Mory et al. Adaptation de contenu multimédia aux terminaux mobiles. RTSI - ISI n° spécial systèmes d information pervasifs n°9, 2004, Hermès: G. Behre Accès et adaptation de contenus multimédia pour les systèmes pervasifs" Thèse de doctorat soutenue de 25 septembre 2006, LIRIS, INSA de Lyon G. Behre, L. Brunie, J.M. Pierson "Content adaptation in distributed multimedia systems" Journal of Digital Information Management, special issue on Distributed Data Management. Volume 3, No 2, June 2005 III-3-4-3b Adaptation du contenu

214 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 214 III-3-4-3c Adaptation des services Adaptation des services Les systèmes à services adaptables ont généralement trois parties [Cremene 04] –partie modifiable : le service adaptable –partie monitoring : évaluation en continu du service et de son contexte –partie contrôle : définit les ordres de reconfiguration en fonction dune logique qui lui est propre Deux techniques dadaptation habituelles –Adaptation par entités externes (exemple SECAS) –Adaptation par réflexivité (exemple Dynamic TAO) –Adaptation mixte (exemple AeDEN)

215 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 215 III-3-4-3c Adaptation des services SECAS [Chaari 2006] Encapsuler une application existante avec une couche dadaptation –sans modification de lapplication dorigine Pour pouvoir intégrer toute applications existante –à laide de services web Adaptation en fonction du contexte 1.des services 2.des contenus 3.de linterface utilisateur

216 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 216 III-3-4-3c Adaptation des services SECAS : architecture

217 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 217 SECAS : graphe de dépendances entre entités Nœuds = entités adaptables –Service, avec ses données et son interface utilisateur dentrée/sortie Liens = dépendances dappel III-3-4-3c Adaptation des services

218 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 218 Adaptation des entités Adaptation des arcs et des services –Règles dadaptation Adaptation du contenu transitant vers lutilisateur –Avec les principes définis par [Behre 2006] Adaptation de la présentation du contenu –Avec les principes définis par [Chaari 2004] III-3-4-3c Adaptation des services

219 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 219 SECAS : règles dadaptation –Conditions : sur les valeurs du contexte et les caractéristiques des services –Actions : opérateurs dadaptation à appliquer sur le graphe Evaluées –À la connexion de lutilisateur –À chaque modification de la situation contextuelle Appliquées sur le graphe –Par un adaptateur instancié pour chaque nœud concerné –Par ladaptation manager pour les arcs du graphe => un graphe pour chaque session en cours, qui évolue avec le contexte III-3-4-3c Adaptation des services

220 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 220 SECAS : opérateurs dadaptation Operateurs sur la sortie des services (modifications des transitions du graphe) projectOutput: projection (retire des colonnes du vecteur de données) selectOutput: sélection (retire des lignes du vecteur de données) joinOutput: effectue une jointure entre plusieurs vecteurs de données addOutput: ajoute des lignes à la sortie du service III-3-4-3c Adaptation des services

221 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 221 SECAS : opérateurs dadaptation Opérateurs sur les instances dun service (modifications des nœuds du graphe) selectVersion: sélectionne une version addVersion: ajoute une version Opérateurs globaux sur le modèle fonctionnel de lapplication lockService: retire le chemin daccès au service addService: ajoute un service en feuille insertService: ajoute un service comme nœud interne III-3-4-3c Adaptation des services

222 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 222 SECAS : adaptation par les DP strategy+proxy Un adapter applique les règles dadaptation –DP Strategy –DP Proxy III-3-4-3c Adaptation des services

223 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 223 III-3-4-3c Adaptation des services Adaptation dans les systèmes réflexifs Réflexivité –Capacité d'un système à se représenter, s'observer et agir sur lui-même (reflet dans un miroir) –niveau méta décrivant les composants du système Introspection –donne la possibilité au système de connaître son état interne (analyse psychologique) Intercession –permet au système d'adapter son fonctionnement en modifiant son propre comportement

224 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 224 III-3-4-3c Adaptation des services Adaptation dans les systèmes réflexifs Sujets d'adaptation –entités : méthodes, objets, composants –liaisons entre entités de base ou entre entités de base et entités méta –ensembles d'entités Moment d'adaptation –compilation : génération de code en fonction des méta- entités –chargement : altération du code compilé lors de son chargement ou modification de lensemble dentités –exécution : accès dynamique au niveau méta, par l'intermédiaire de proxies, ou par le support d'exécution

225 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 225 III-3-4-3c Adaptation des services RAM : système réflexif [Bouraqadi et al 01] Reflexion for Adaptable Mobility Mobilité du code = aspect non fonctionnel, donc au niveau méta cluster = unité de mobilité de code, comportant –un ensemble dobjets applicatifs –une méta façade fournissant laccès aux objets de description des politiques du cluster (migration, file dattente de messages…) –références instanciées : références locales ou distantes à dautres clusters (gérées par la méta-façade) –table de références : répertorie tous les objets instanciés, assure lunicité des références au sein du cluster Pour une mobilité forte du code

226 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 226 III-3-4-3c Adaptation des services DynamicTAO : middleware réflexif [Kon et al. 2000] ORB réflexif se basant sur CORBA ensemble de Component Configurators –chaque composant contient un Domain Configurator qui maintient des références entre le middleware et les composants dont il dépend (Servant Configurators) –le middleware contient un TAO Configurator qui maintient les stratégies du middleware (concurrence, scheduling…) contient des points dinterception qui permettent de dériver les appels faits par les composants vers les implantations des stratégies les implantations des stratégies peuvent être changées dynamiquement (chargement dynamique dimplantations) pour la reconfiguration dynamique de composants

227 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 227 III-3-4-3c Adaptation des services Dream : Dynamic REflective Asynchronous Middleware [Leclerc et al. 2005] « component-based framework for constructing, statically or dynamically, resource- aware, configurable message-oriented middleware (MOM) ». Extension du modèle à composant Fractal, basé Java –Assemblage et reconfiguration dynamique de composants Composants primitifs Composants composite : composition de composants –Interfaces de gestion pour chaque composant BindingControler : gestion des dépendances entre composants ContentControler: ajout, retrait de composants LifeCycleControler : démarrage, arrêt des composants.

228 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 228 Comportement dexécution Stratégie dadaptation Système dadaptation Application Environnement Agit sur Changements dans les besoins Spécialise selon les besoins au lancement Prend en compte les caractéristiques Détecte les variations III-3-4-3c Adaptation des services AeDEN - Adaptation dentités logicielles [Le Mouel 2003]

229 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 229 III-3-4-3c Adaptation des services AeDEN - entité Entité = unité logicielle de conception –abstraite et spécialisable –Une fonctionnalité une entité –un service une entité spécialisée 3 aspects –AInteraction (communication avec les autres entités) –AImplementation (métier : traitements attendus) –AState (état courant interne de la partie métier) A chaque aspect correspond un ensemble dimplantations possibles

230 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 230 III-3-4-3c Adaptation des services AeDEN - entité Entité abstraite + spécialisations possibles

231 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 231 III-3-4-3c Adaptation des services AeDEN - entité adaptative Entité + entité dadaptation –adaptations par introspection puis intercession

232 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 232 III-3-4-3c Adaptation des services AeDEN - introspection et intercession Chaque entité et chaque entité adaptative implante les méthodes suivantes –getInteraction(), setInteraction() –getImplementation(), setImplementation() –getState(), setState() Chaque entité adaptative implante les méthodes –getFunctionalInteraction(), setFunctionalInteraction() –getFunctionalImplementation(), setFunctionalImplementation() –getFunctionalState(), setFunctionalState()

233 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 233 III-3-4-3c Adaptation des services AeDEN - exemple dadaptation Adaptation dimplantation class ImplementationAdaptation extends StateAdaptation { // Adaptation d'implantation // protected EntityAdapter entityAdapter; // héritage de la déclaration de variable... // public AState stateTransformation(AState st, String[] args); // héritage de la déclaration de méthode... public AImplementation implementationTransformation(AImplementation im, AState st, String[] args) { AImplementation tim; // transformed implementation... // Création d'une nouvelle instance d'implantation tim = new Implementation(im, st); // Ici, modifications de l'implantation tim // Puis on prévient, par exemple, les entités ayant des dépendances fonctionnelles... return(tim); }

234 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 234 III-3-4-3c Adaptation des services AeDEN - exemple dadaptation public Event applyAdaptation(String[] args) { // méthode d'application de l'adaptation AState cfs; // current functional state AState tfs; // transformed functional state AImplementation cfi; // current functional implementation AImplementation tfi; // transformed functional implementation... // récupèration des éléments de la structure de l'entité fonctionnelle cfs = entityAdapter.getFunctionalState(); cfi = entityAdapter.getFunctionalImplementation();... // transformations de ces éléments tfs = stateTransformation(cfs, args); tfi = implementationTransformation(cfi, tfs, args); // on reprend l état transformé... return(entityAdapter.setFunctionalImplementation(tfi)); }... }

235 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 235 III-3-4-3c Adaptation des services AeDEN - entité adaptative et réactive Entité adaptation + entité de réaction liée à un service de notification

236 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 236 Entité fonctionnelle (In, Im, St) Im : algo de compression GIF Entité fonctionnelle (It, Im, St) Im : algo compression JPEG St : taux qualité 50% Entité fonctionnelle (It, Im, St) Im : algo compression JPEG St : taux qualité 75% Bande passante JPEG75% Bande passante JPEG50% Bande passante >Y adaptation dimplantation JPEG50%->JPEG75% Bande passante >X adaptation dimplantation JPEG75%->GIF III-3-4-3c Adaptation des services AeDEN - exemple de stratégie Stratégie dadaptation pour un service de transmissions dimages compressées

237 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 237 Références bibliographiques Adaptation services M. Cremene et al. « Adaptation dynamique de services », Decor 2004, Grenoble, octobre 2004, pp SECAS : Modeling and Using Context in Adapting Applications to Pervasive Environments. T Chaari, E Dejene, F. Laforest, V. Scuturici. ICPS'06 : IEEE International Conference on Pervasive Services June 2006, Lyon 2006 RAM : N.M.N. Bouraqadi-Saadani et al. « A reflexive infrastructure for coarse grained strong mobility and its tool-based implementation. » Int. Workshop on experiences with reflexive systems. Sept DynamicTAO : F. Kon et al. « Monitoring, security and dynamic configuration with the dynamicTAO reflective ORB » Middleware 2000 AeDEN : F. Le Mouël « Environnement adaptatif dexécution distribuée dapplications dans un contexte mobile » mémoire de thèse de doctorat en informatique, Université Rennes I, 1er décembre 2003 M. Leclercq, V. Quma, J.-B. Stefani, DREAM: A Component Framework for Constructing Resource-Aware, Configurable Middleware, IEEE distributed systems online, vol. 6, no. 9, September 2005 III-3-4-3c Adaptation des services

238 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 238 III Conclusion adaptation Conclusion sur ladaptabilité Des besoins généraux [Le Mouel 2003] –généricité : utilisation par plusieurs types dapplications –modularité : découpage et découplage –prise en compte du contexte –évolutivité : intégrer de nouvelles technologies et de nouvelles fonctionnalités –dynamicité : réaction aux changements sans arrêt du système –efficacité : performance et stabilité

239 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 239 III-4 Synthèse Synthèse : relations entre les niveaux 3 niveaux de recherche : matériel et système, réseaux, système dinformation Pour une adaptation complète et cohérente, –Associer des informations provenant des trois niveaux –Utiliser des techniques dadaptation « traversant » les niveaux => une communication inter-niveaux des informations de contexte et des services dadaptation de chaque niveau => Lutilisation dun découpage en niveaux est-elle toujours intéressante ou apporte-t-elle plus de problèmes quelle nen résout?

240 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 240 Exemples de projets La maison de lan 2000 de Pierre Sarda Aura Oxygen Sentient computing Portolano Endeavour

241 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 241 La maison de lan 2000 Pierre Sarda, 1979, TF1 &from=fulltext&full=pierre+sarda&num_notice=1& total_notices=4http://ina.fr/archivespourtous/index.php?vue=notice &from=fulltext&full=pierre+sarda&num_notice=1& total_notices=4 NB : le lien change régulièrement… aller sur le site de lINA et faire une recherche sur P. Sarda

242 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 242 AURA Distraction-free Ubiquitous Computing M. Satyanarayanan, Carnegie Mellon University –Aura's goal is to provide each user with an invisible halo of computing and information services that persists regardless of location. Meeting this goal will require effort at every level: from the hardware and network layers, through the operating system and middleware, to the user interface and applications. –Project Aura will design, implement, deploy, and evaluate a large-scale system demonstrating the concept of a personal information aura that spans wearable, handheld, desktop and infrastructure computers.

243 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 243 Users Physical Devices OS/Network Services Tasks HCI/Agents/Speech Research Examples Task-driven computing Rapid service configuration Energy-aware adaptation Multi-fidelity computation Nomadic data access Intelligent networking Power/bw-aware devices Wearable computers Aura - Mots-clés

244 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 244 Aura - Démo M. SatyanarayananResearch Challenges in Project Aura Keynote address at the Ninth IEEE International Symposium on High Performance Distributed Computing, Pittsburgh, PA, August 2000

245 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 245 Oxygen MIT –http://www.oxygen.lcs.mit.edu/

246 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 246 Visitor guide Multilingual speech Software proxy Intelligent Meeting Room - collaboration Oxygen - quelques démos

247 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 247 Sentient Computing project AT&T Laboratories Cambridge –http://www.cl.cam.ac.uk/research/dtg/research/wiki/Sentie ntComputing –Sentient Computing : using sensors and resource status data to maintain a model of the world which is shared between users and applications Bats –small (8cm long) devices, with a unique id, an ultrasound transmitter and a radio transceiver, 2 buttons and a beeper –located by a central controller, and the world model stores the correspondence between bats and their owners, applying algorithms to the bat location data to determine the location of the person or object which owns it.

248 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 248 Sentient Computing project Objets CORBA –données de localisation et détat des ressources –tout objet du monde réel (personnes, ordinateurs, téléphones..) Chaque objet fournit état + API de lobjet réel Les objets gèrent eux-mêmes les transactions, les sessions, la distribution des événements...

249 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 249 Sentient - Applications A browser allows a user to see what's going on anywhere in the building Phone someone by pointing at his representation on the 3D model

250 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 250 Sentient - Applications Follow-Me : simply teleport my desktop to another PC using my bat, and then teleport away when I'm finished. Smart Posters : create a `button' anywhere in the environment. a button can be a small space anywhere in a building.To press the button, the user just puts the bat on the label and clicks a button on the bat.

251 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 251 Portolano –an infrastructure based on mobile agents that interact with applications and users. Data-centric routing automatically migrates data among applications on the users behalf. Data thus becomes smart, and serves as an interaction mechanism within the environment. User Interfaces, new interaction modes Network Infrastructure Distributed Services

252 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 252 Portolano - Mots-clés Connecting the physical world to the world-wide information fabric –instrument the environment: sensors, locators, actuators –universal plug-and-play at all levels: devices to services –optimize for power: computation partitioning, communications optimization –intermittent communication: new networking strategies Get computers out of the way –dont interfere with users tasks –diverse task-specific devices with optimized form-factors –wide range of input/output modalities Robust, trustworthy services –high-productivity software development –self-organizing, active middleware, maintenance, monitoring –higher-level, meaningful services

253 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 253 Endeavour The Endeavour Expedition: Charting the Fluid Information Utility specification, design, and prototype implementation of a planet- scale, self-organizing, and adaptive Information Utility. ability of processing, storage, and data management functionality to arbitrarily and automatically distribute itself among Information Devices and along paths through scalable computing platforms integrated with the network infrastructure, compose itself from pre-existing hardware and software components, satisfy its needs for services while advertising the services it can provide to others, while negotiating interfaces with service providers while adapting its own interfaces to meet "contractual" interfaces with components it services. –http://endeavour.cs.berkeley.edu/

254 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 254 Conclusion

255 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 255 Conclusion Trois niveaux de recherche très actifs –Évolution rapide des matériels et systèmes : RFID, capteurs –Déploiement de réseaux : IPv6, réseaux ad hoc –Systèmes dinformation : middleware adaptatifs contenu et services Efforts de standardisation Approches transversales pour ces trois niveaux Effort en terme de cadre de conception et de développement

256 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 256 Perspectives Autres domaines intéressés par les systèmes pervasifs –Interactions homme-machine (interactions multimodales entre autres) –Agents logiciels (pro-action) –Intelligence artificielle (décision et prévision) Linformatique pervasive va avoir un grand impact sur notre vie de tous les jours et sur la société –Conséquence économiques, sociales et culturelles?

257 F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 257 Perspectives Améliorations –Context-awareness et adaptabilité –Architectures P2P, grilles dynamiques Lacunes –Outils de test – simulation – validation –Pro-action


Télécharger ppt "F. Laforest, master Informatique de Lyon M2R spécialité TIWe - Systèmes d'information pervasifs 1 Systèmes dinformation pervasifs Unité denseignement de."

Présentations similaires


Annonces Google