190 likes | 327 Views
Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 1 : Médiation Auteurs : LIG/Adèle – Orange Labs/MAPS/MEP. Workshop Cilia : 21 juin 2010. Plan. Médiation Historique Technologies de médiation Cilia : génération OSGi et multi-personnalités Framework Cilia
E N D
Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 1 : Médiation Auteurs:LIG/Adèle – Orange Labs/MAPS/MEP Workshop Cilia : 21 juin 2010
Plan • Médiation • Historique • Technologies de médiation • Cilia : génération OSGi et multi-personnalités • Framework Cilia • Modèle d'implantation • Modèle de conception • Médiation de données et de service • Processus logiciel • Vue d’ensemble • Spécification d’architecture • Spécification d’instances • Déploiement • Cas d'usage • Interopérabilité dans un Système d’Information • Remontée de données dans un Système Embarqué
Médiation Historique Technologies de médiation : grands et petits systèmes Cilia : génération OSGi et multi-personnalités Equipe projetR&D et road-map
Médiation: remontée de données • Gio Wiederhold, 1992 (Université de Stanford) • Problématique de remontée de données à partir de sources hétérogènes = comment passer progressivement de données à l'état brut à des données pouvant être consommées par différentes applications clientes ? • Définit une architecture de médiation modulaire s'insérant entre les sources de données et les applications clientes consommant les données • Domaines d'application • Supervision de la sécurité sur les réseaux, facturation, vérification de SLA, sélection dynamique de services, gestion d’équipements intelligents, etc. • Middlewares de médiation de données • Débit important. Focus sur les problématiques de corrélation et d’interrogation • Débit faible à moyen. Focus sur la modularité et la distribution de l’architecture
Médiation: interopérabilité • IBM, 2005 • Problématique d'appels à services (WS) impliquant des services hétérogènes • Définit un ensemble d'opérations pour faire inter-opérer des services = médiation fonctionnelle • Transformation de messages, enrichissement, découpage, etc. • Met sur le marché une offre middleware de médiation (WebSphere ESB) • Lanceensuite une famille de solutions hardware (datapower) visant un ensemble restreint d’opérations de médiation fonctionnelle (+ gestion QoS) • Domaines d’application • Interopérabilité entre des services hétérogènesdans les grands systèmes : SI, PFS, Cloud, etc. • Middlewares : Enterprise Service Bus (ESB)
Remontée de données et interopérabilité • UJF/LIG/Adèle, 2008 • Conception et développement d'un framework de médiation sur iPOJO simple, léger, dynamique et autonomique • Collaboration LIG/Adèle et Orange Labs, 2008-2010 • Cahier des charges DDSI-DPS (programme DIME) • Un framework ouvert, modulaire, extensible pour gérer le code de médiation dans les périmètres projet (interopérabilité) • Framework multi-purposes : remontée de données et interopérabilité • Domaines d’application • Médiation dans les grands systèmes (SI, PFS, Cloud, etc.) et les petits systèmes (applications embarquées) • Framework de médiation Cilia, futur projet OW2 • Médiation de données et médiation de service (interopérabilité) • Actuellement, documentation et code dans LIG Forge
Médiation Historique Technologies de médiation : grands et petits systèmes Cilia : génération OSGi et multi-personnalités Equipe projet et road-map
Enterprise Application Integration (EAI) Enterprise Service Bus (ESB), à partir de 2005 Editeur : ESB G1 (~EAI) Technologie JEE Orchestration de WS Gestion de l'interopérabilité Boîte grise WebSphere ESB Aqualogic ESB Editeur : EAI Open source : ESB G2 Technologie Spring • Gestion de l'interopérabilité • Langage de spécification • (instances) • Boîte grise - modèle “EIP” Camel Spring Integration Technologie propriétaire Gestion de processus métier Gestionde l'interopérabilité MOM et connecteurs Boîte noire /grise WebMethods Open source : ESB G2 Technologie Spring / JBI • Gestion de l'interopérabilité • Langage de spécification • (instances) • Boîte grise - modèle “EIP” PEtALS, ServiceMix Open source : ESB G3+ Technologie OSGi • Gestion de l'interopérabilité • Langage de spécification • (types, instances) • Boîte blanche Cilia Grands Systèmes : interopérabilité
Tendances et prévisions • Les grandes entreprises • ESB G1 (~EAI standardisées) : pas de percée car peu de réelle plus-value vis-à-vis des EAI • ESB G2 : utilisationéparse de ServiceMix, Camel, Spring Integration • Solutions d'intégration ad-hoc : une option privilégiée pour des cas simples • Les PME • Solutions d'intégration ad-hoc : courantes • ESB G2 (PME = "early adopters"): utilisationplus large de ServiceMix, Fuse • ESB G3+ • Rupture technologique : OSGi • Perspectives • Gestion dynamique du cycle de vie, autonomie • Domaine majeur de diffusion : informatique ambiante • "early adopters"
Grands Systèmes : médiation de données • Généralement, des solutions de médiation ad-hoc enfouies dans des outils complets • Outils de supervision et de suivi de la qualité de service • HP, IBM, Oracle, Amberpoint, etc. • Offres de médiation rares • Open source : Esper (Codehaus), CompositeProbe (OW2) lié au domaine de l’injection de charge • Offre MediationSuite de ScalAgent D.T.
Petit Système : exemple Service à l’habitat : santé Proxies capteurs Capteurs de température Médiation Collecte, synchronisation, agrégation, routage, etc. Station de base Communication Médiation Capteurs de mouvement, touch pad, etc. iTouch / iPhone Surveillance de l'état des capteurs Applications embarquées sur des passerelles intelligentes (box, SmartPhone, tablette, etc.) et communicant avec des réseaux de capteurs et d’équipements : divertissement, santé, énergie électrique,… Habitat
Petits Systèmes : quelle médiation ? • Interopérabilité restreinte • Une application échange des données avec des équipements (ex., UpNp, DPWS) • Aucune interopérabilité entre les applications embarquées • Exemple : applications dans le domaine du confort domestiqueet applications dans le domaine de la santé • Problème : prolifération d’applications à faible valeur ajoutée accompagnées de leurs capteurs et équipements • Médiation de données • Solutions propriétaires et ad-hoc sur OSGi
Médiation Historique • Technologies de médiation : grands et petits systèmes • Cilia : génération OSGi et multi-personnalités Equipe projetR&D et road-map
Cilia : génération OSGi et multi-personnalités • Premier framework de médiation 100% OSGi • Réellement "light" en terme d'empreinte mémoire • Permet de cibler petits et grands systèmes • Permet de gérer la dynamicité • Premier framework de médiation simple et homogène • Simple : extension du modèle iPOJO pour la médiation • Homogène et multi-personnalités : médiation de données et médiation de services pour petits et grands systèmes, avec déclinaisons par domaine métier • Premier framework de médiation véritablement ouvert… • Modèle de médiation pour la conception et le développement • Plusieurs niveaux possibles de spécification : • Configuration en iPOJO étendu • Configuration à l'aide d'un DSL XML ou d’une API Java • Choix du framework de communication vers les entités externes • CXF (WS), JORAM (JMS), Rose (OW2), etc. • … et autonomique
Personnalités Cilia Cilia • - Modèle de médiation : médiateurs et assemblage • - Configuration : DSL xml ou API Java • - Modèle de programmation java - Bibliothèque : schedulers, dispatchers, mediators, liaisons,… Cilia “médiation de service” Cilia “médiation de données” Bibliothèque spécifique Bibliothèque spécifique Proposition MEDICAL (Minalogic) Cilia “entreprise” Cilia “embarqué” Cilia “embarqué” Projet SelfXL (ANR) Cilia “entreprise” DSL xml spécifique,… FT programme DIME Projet OSAMI (ITEA) Projet AspireRFID (IP) Cilia “entreprise FT : SI, PFS”
Cilia “information system project” Cilia “RFID project” Exemple : Exemple : Run-time : Felix Cilia + bibliothèque SI Communication avec entités externes : jms, cxf Run-time : Equinox • Cilia + bibliothèque RFID + DSL EPCSpec Communication avec entités externes : event-admin, Rose, Zigbee, Bluetooth Cilia “IHM project” Exemple : Run-time : Felix • Cilia + bibliothèque IHM + DSL « multimodal » Communication avec entités externes : event-admin, Rose, Zigbee, Bluetooth Cilia “home and health care project” Cilia “home entertainment project” Exemple : Exemple : Run-time : Felix • Cilia + bibliothèque Santé + DSL santé Communication avec entités externes : jms, Rose, UPnP Run-time : Equinox • Cilia + bibliothèque SI + DSL « multimodal » Communication avec entités externes : Rose, UPnP, Bluetooth, RF Cilia : machines de médiation à la carte génère Templates maven
Médiation Historique Technologies de médiation : grands et petits systèmes Cilia : génération OSGi et multi-personnalités Equipe projetR&D et road-map
Contributeurs • Equipe LIG/Adèle • Philippe Lalanda (professeur encadrant) • Bassem Debbabi (thèse),, Issac Noé García Garza(thèse), Gabriel Pedraza Ferreira (post doctorant), Pierre Bourret (ingénieur) • Orange Labs / MAPS/MEP • Catherine Hamon (programme DIME/ Mediation) • Mehdi Damou (M2 GI), Elias Ricken De Medeiros (M2 R), Jérôme Bodineau (M2 GI), Anthony Bozon (M2 GI)
Road-map Cilia core • Framework de médiation • v2 2009 • API java – DSL xml • Début 2S2010 • Processus, outils, bibliothèques • v1 fin 2010 • v2 2011 • Autonomie • v1 fin 2010 • v2 2011