Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 1 Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 4 : Cas d'usage – application pervasive Auteurs : LIG/Adèle – Orange Labs/MAPS/MEP Workshop Cilia : 21 juin 2010
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 2 Plan Partie 1 : Médiation Historique Technologies de médiation Cilia : génération OSGi et multi-personnalités Partie 2 : Framework Cilia Modèle dimplantation Modèle de conception Médiation de données et de service Partie 3 : Processus logiciel Spécification darchitecture Spécification dinstances Déploiement Partie 4 : Cas d'usage Interopérabilité dans un Système dInformation Remontée de données dans un Système Embarqué
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 3 Cas d'usage Application Pervasive UC2 : Système de remonté de données RFID Description et analyse Spécification de larchitecture Spécification des instances
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 4 UC2 : description Lapplication produit de façon périodique un ou plusieurs rapports (documents généralement en XML) qui contiennent les étiquettes qui ont été lues par un ensemble de lecteurs (des dispositifs RFID). Chaque cycle de production des rapports est connu comme Event Cycle (EC). Les étiquettes lues par les lecteurs pendant un EC doivent être traitées avant de produire les rapports. Le traitement consiste en : Agrégation de données de différents lecteurs Eliminitation de doublons Calcul de lensemble Filtrage Génération
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 5 UC2 : description Enorme quantité de données Données traitées
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 6 UC2 : analyse 2) Agréger les étiquettes lues par les différents lecteurs 3) Ajouter lidentifiant de levent cycle EC 7) Filtrage des étiquettes (en utilisant des expressions) 4) Eliminatation des doublons 1) Lecture périodique (poll) des étiquettes 8) Génération du rapport 5) Ordonnancement des messages 6) Calcul de lensemble (CURRENT, ADDITION, DELETION) 1. Logical Reader 2. Aggregate (EC) 3. Duplicate 4. ReportSet 5. Filtrage 6. Génération 9) Notification des rapports aux clients 7. Notification
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 7 Format de rapport 10 urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96: urn:epc:pat:gid-96:
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 8 Cas d'usage Application Pervasive UC2 : Système de remonté de données RFID Description et analyse Spécification de larchitecture Spécification des instances
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 9 Architecture Catégories de médiateurs identifiés Duplicate, Calculate, Filter, InvokeS, Aggregate Types de médiateur identifiés pour le cas d'usage Types spécifiques : - EventCycle, Duplicate, Filter, Notifier - CurrentSet, AdditionSet, DeletionSet Types de la bibliothèque Cilia : … - Dispatchers et scheduler
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 10 Event Cycle Scheduler = synchronisation But : transmettre sans délai le message à la partie "traitement métier" periodic-scheduler" de la bibliothèque Cilia Processor = traitement métier But : agrégation des étiquettes qui proviennent de différents lecteurs POJO "EventCycle" Dispatcher = routage But : router un message vers le composant destinataire "multicast-dispatcher" de la bibliothèque Cilia Aspire RFID compendium : Aspire-EventCycle
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 11 Spécification de EventCycle Aspire RFID compendium : Aspire-EventCycle
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 12 Filter Scheduler = synchronisation But : transmettre sans délai le message à la partie "traitement métier" "immediate-scheduler" de la bibliothèque Cilia Processor = traitement métier But : filtrage des étiquettes en utilisant des expressions régulières POJO "Filter" Dispatcher = routage But : router un message vers le composant destinataire "multicast-dispatcher" de la bibliothèque Cilia Aspire RFID compendium : Filter
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 13 Spécification de Filter Aspire RFID compendium : Aspire-Filter
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 14 Cas d'usage Application Pervasive UC2 : Système de remonté de données RFID Description et analyse Spécification de larchitecture Spécification des instances
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 15 Instances Chaîne ou graphe de médiation Spécification des instances des types identifiés Spécification séparée des liaisons (binding )
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 16 N instances de Logical-Reader Un ensemble de lecteurs sont disponibles…
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 17 Une instance de EventCycle Un aggregator EventCycle qui va grouper les données des differents lecteurs…
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 18 M instance de Filter Une instance de Duplicate
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 19 Spécification des liaisons Les instances sont liées en utilisant de bindings.
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 20 Liaison avec le premier médiateur Utilisation du patron proxy Chaque lecteur RFID doit implementer une interface AbstractAdaptor Logical Reader Mediator Reader Adaptor