cilia, un framework de médiation ouvert, léger, multi-personnalités partie 4 : cas d'usage

Post on 03-Jan-2016

20 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

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 - PowerPoint PPT Presentation

TRANSCRIPT

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

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 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é

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 3

Cas d'usage

Système d'InformationUC1 : Décomposition de messages et agrégation de messages

Application PervasiveUC2 : Système de remonté de données RFID

Description et analyse

Spécification de l’architecture

Spécification des instances

Déploiement

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 4

UC2 : descriptionL’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

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 étiquetes lues par de differents lecteurs3) Ajouter l’identifiant de l’event cycle EC

6) Filtrage des etiquetes (en utilisant des expressions)

4) Eliminatation des doublons

1) Lecture périodique (poll) des étiquètes

7) Generation du rapport

4) Ordonnance des messages5) Calcul de l’ensemble (CURRENT, ADDITION, DELETION)

1. Logical Reader

2. Aggregate

(EC)

3. Duplicate

4. ReportSet

5. Filtrage

6. Génération

7) 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<?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>

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 8

Cas d'usage

Système d'InformationUC1 : Décomposition de messages et agrégation de messages

Application PervasiveUC2 : Système de remonté de données RFID

Description et analyse

Spécification de l’architecture

Spécification des instances

Déploiement

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 9

Architecture

Catégories de médiateurs identifiésDuplicate, 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 = synchronisationBut : transmettre sans délai le message à la partie "traitement métier"

Handler “periodic-scheduler" de la bibliothèque Cilia

Processor = traitement métierBut : agrégation des étiquètes qui proviennent de différents lecteurs

POJO "EventCycle"

Dispatcher = routageBut : router un message vers le composant destinataire

Handler "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 Filter

<mediator-component category="Aggregator" name="aspire-event-cycle">

     <processor name="EventCycle"/> <scheduler name="periodic-scheduler" /> <dispatcher name="multicast-dispatcher" />

</mediator-component>

Cilia compendium : Aspire-Filter

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 12

Filter

Scheduler = synchronisationBut : transmettre sans délai le message à la partie "traitement métier"

Handler "immediate-scheduler" de la bibliothèque Cilia

Processor = traitement métierBut : filtrage des étiquètes en utilisant des expressions réguliers

POJO "Filter"

Dispatcher = routageBut : router un message vers le composant destinataire

Handler "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

<mediator-component category="Filter" name="aspire-filter">

     <processor name="Filter"/> <scheduler name="inmediate-scheduler" /> <dispatcher name="multicast-dispatcher" />

</mediator-component>

Cilia compendium : Aspire-Filter

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 14

Cas d'usage

Système d'InformationUC1 : Décomposition de messages et agrégation de messages

Application PervasiveUC2 : Système de remonté de données RFID

Description et analyse

Spécification de l’architecture

Spécification des instances

Déploiement

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 15

InstancesChaî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…

<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>

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…

<mediator-instance type="aspire-event-cycle" id="event-cycle">

<scheduler>

<property name="delay" value="500" />

<property name="period" value="5000" />

</scheduler>

</mediator-instance>

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 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>

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 19

Spécification des liaisonsLes 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" />

<binding from="filter:end" to="xml-generator:begin" />

<binding from="xml-generator:end" to="notifier:begin" />

</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

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 21

Cas d'usage

Système d'InformationUC1 : Décomposition de messages et aggrégation de messages

Application PervasiveUC2 : Système de remonté de données RFID

Description et analyse

Spécification de l’architecture

Spécification des instances

Déploiement

Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 22

Annexe

top related