1 / 22

Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 4 : Cas d'usage

Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 4 : Cas d'usage Auteurs : LIG/Adèle – Orange Labs/MAPS/MEP. Workshop Cilia : 21 juin 2010. Plan. Partie 1 : Médiation Historique Technologies de médiation Cilia : génération OSGi et multi-personnalités

Download Presentation

Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 4 : Cas d'usage

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 4 : Cas d'usage Auteurs:LIG/Adèle – Orange Labs/MAPS/MEP Workshop Cilia : 21 juin 2010

  2. Plan • Partie 1 : Médiation • Historique • Technologies de médiation • Cilia : génération OSGi et multi-personnalités • Partie 2 : Framework Cilia • Core • Médiation de données • Médiation de service • Partie 3 : Processus logiciel • Spécification d’architecture • Spécification d’instances • Déploiement • Partie 4 : Cas d'usage • Interopérabilité dans un Système d’Information • Remontée de données dans un Système Embarqué

  3. Cas d'usage Système d'Information UC1 : Décomposition de messages et agrégation de messages • Application Pervasive • UC2 : Système de remonté de données RFID • Description et analyse • Spécification de l’architecture • Spécification des instances • Déploiement

  4. UC2 : description • L’application produit de façon périodique un ou plusieurs rapports (documents généralement en XML) qui contiennent les étiquètes 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 étiquètes 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 lectuers • Eliminitation de doublons • Calcul de l’ensemble • Filtrage • Génération

  5. UC2 : description Enorme quantité de données Données traitées

  6. UC2 : analyse 1. Logical Reader 1) Lecture périodique (poll) des étiquètes 2) Agréger les étiquetes lues par de differents lecteurs 3) Ajouter l’identifiant de l’event cycle EC 2. Aggregate (EC) 4) Eliminatation des doublons 3. Duplicate 4) Ordonnance des messages 5) Calcul de l’ensemble (CURRENT, ADDITION, DELETION) 4. ReportSet 6) Filtrage des etiquetes (en utilisant des expressions) 5. Filtrage 7) Generation du rapport 6. Génération 7) Notification des rapports aux clients 7. Notification

  7. Format de rapport • <?xml version="1.0" encoding="UTF-8"?> • <tag-list round="5"> • <count>10</count> • <tag>urn:epc:pat:gid-96:145.56.99</tag> • <tag>urn:epc:pat:gid-96:145.56.100</tag> • <tag>urn:epc:pat:gid-96:145.56.101</tag> • <tag>urn:epc:pat:gid-96:145.56.102</tag> • <tag>urn:epc:pat:gid-96:145.56.103</tag> • <tag>urn:epc:pat:gid-96:145.56.104</tag> • <tag>urn:epc:pat:gid-96:145.56.105</tag> • <tag>urn:epc:pat:gid-96:145.56.106</tag> • <tag>urn:epc:pat:gid-96:145.56.107</tag> • <tag>urn:epc:pat:gid-96:145.56.91</tag> • </tag-list>

  8. Cas d'usage Système d'Information UC1 : Décomposition de messages et agrégation de messages • Application Pervasive • UC2 : Système de remonté de données RFID • Description et analyse • Spécification de l’architecture Spécification des instances Déploiement

  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

  10. Event Cycle Aspire RFID compendium : Aspire-EventCycle Scheduler = synchronisation But : transmettre sans délai le message à la partie "traitement métier" Handler “periodic-scheduler" de la bibliothèque Cilia Processor = traitement métier • But : agrégation des étiquètes qui proviennent de différents lecteurs POJO "EventCycle" Dispatcher = routage But : router un message vers le composant destinataire Handler "multicast-dispatcher" de la bibliothèque Cilia

  11. Spécification de Filter Cilia compendium : Aspire-Filter <mediator-component category="Aggregator" name="aspire-event-cycle">      <processor name="EventCycle"/> <scheduler name="periodic-scheduler" /> <dispatcher name="multicast-dispatcher" /> </mediator-component>

  12. Filter Aspire RFID compendium : Filter Scheduler = synchronisation But : transmettre sans délai le message à la partie "traitement métier" Handler "immediate-scheduler" de la bibliothèque Cilia Processor = traitement métier But : filtrage des étiquètes en utilisant des expressions réguliers POJO "Filter" Dispatcher = routage But : router un message vers le composant destinataire Handler "multicast-dispatcher" de la bibliothèque Cilia

  13. Spécification de Filter Cilia compendium : Aspire-Filter <mediator-component category="Filter" name="aspire-filter">      <processor name="Filter"/> <scheduler name="inmediate-scheduler" /> <dispatcher name="multicast-dispatcher" /> </mediator-component>

  14. Cas d'usage Système d'Information UC1 : Décomposition de messages et agrégation de messages • Application Pervasive • UC2 : Système de remonté de données RFID • Description et analyse • Spécification de l’architecture Spécification des instances Déploiement

  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)

  16. N instances de Logical-Reader Un ensemble de lecteurs sont disponibles… • <mediator-instance type=“aspire-logical-reader" id="logical-reader-1"> • <scheduler> • <property name="period" value="2000" /> • </scheduler> • <property name="requires.from"> • <item key="reader-id" value="simulator-reader-1" /> • </property> • </mediator-instance>

  17. Une instance de EventCycle • Un aggregator EventCycle qui va grouper les données des differents lecteurs… • <mediator-instance type="aspire-event-cycle" id="event-cycle"> • <scheduler> • <property name="delay" value="500" /> • <property name="period" value="5000" /> • </scheduler> • </mediator-instance>

  18. M instance de Filter • <mediator-instance type="aspire-filter" id="filter"> • <property name="includeList" value="urn:epc:pat:gid-96:145.56.*" /> • </mediator-instance> Une instance de Duplicate <mediator-instance type= "aspire-duplicate" id="duplicate"> </mediator-instance>

  19. Spécification des liaisons • Les instances sont liées en utilisant de bindings. • <bindings> • <binding from="logical-reader-1:end" to="event-cycle:begin1" /> • <binding from="logical-reader-2:end" to="event-cycle:begin2" /> • <binding from="event-cycle:end" to="duplicate:begin" /> • <binding from="duplicate:end" to="filter:begin" /> • <bindingfrom="filter:end" to="xml-generator:begin" /> • <binding from="xml-generator:end" to="notifier:begin" /> • </bindings>

  20. Liaison avec le premier médiateur • Utilisation du patron proxy • Chaque lecteur RFID doit implementer une interface AbstractAdaptor Logical Reader Mediator Reader Adaptor

  21. Cas d'usage Système d'Information UC1 : Décomposition de messages et aggrégation de messages • Application Pervasive • UC2 : Système de remonté de données RFID • Description et analyse • Spécification de l’architecture Spécification des instances • Déploiement

  22. Annexe

More Related