CADeComp : plate-forme de déploiement sensible au contexte des applications à base de composants Dhouha Ayed, Chantal Taconet et Guy Bernard Ma pre porte.

Slides:



Advertisements
Présentations similaires
Module 5 : Implémentation de l'impression
Advertisements

Projet de Virtualisation dans le cadre d’un PCA/PRA
SOA et Services Web Dr. Rim Samia Kaabi 26 mars 2017.
A NETWORK-AWARE DISTRIBUTED STORAGE CACHE FOR DATA INTENSIVE ENVIRONMENTS Brian L. TIERNEY, Jason LEE, Brian CROWLEY, Mason HOLDING Computing Sciences.
Réflexivité et réseaux d’ information
CARISM Composants Adaptables et Reconfigurables pour Intergiciels et Services Mobiles.
Microsoft Office Groove Le contexte Une utilisation des postes de travail en très grande évolution chez les professionnels. Des lieux de travail.
Chantal Taconet, Erik Putrycz, Guy Bernard
BISSOL Cédric DAVID Grégory MAURY Henrick RIGOBERT Julien Version 1.5 Prototype de plate-forme de Tribus Instantanées : Projet encadré par : Audrey Occello.
Virtualisation dorchestration de services TER Master 1 Infomatique 4 Avril 2008 Encadrant : Philippe Collet.
DUDIN Aymeric MARINO Andrès
ISP/ASP ISP ASP Conclusion DESS Réseaux 2000/2001
DIAS PEREIRA Maxime & AIMEUR Amar vous présentent
Module 10 : Gestion et analyse de l'accès réseau
Module 7 : Résolution de noms NetBIOS à l'aide du service WINS
51 Les technologies XML Cours 7 : Utilisations dXML Janvier Version 1.0 -
Localisation de services techniques dans un modèle à composants H. GRINE, C. Hérault, S. Lecomte, T. Delot Journées Composants, le Croisic 7 avril 2005.
1 Placement automatique des composants lors du déploiement dapplications à base de composants Abdelkrim Beloued Chantal Taconet, Dhouha Ayed, Guy Bernard.
Journées Composants 2005 Gestion de la qualité de service de la conception à l’exécution dans les applications distribuées multimédias Sophie Laplace.
UML : GENERALITES Rappel Diagrammes Niveaux de visions
Module 1 : Préparation de l'administration d'un serveur
Citrix® Presentation Server 4.0 : Administration
le profil UML en temps réel MARTE
JAVASERVER FACES Un framework Java pour le développement Web.
Architecture logicielle pour la gestion de la qualité de service en environnement contraint Equipe-projet ALCooL Christine Louberry, Marc Dalmau, Philippe.
Déploiement d’applications Java ME
Sommaire Objectif de Peakup Principes de fonctionnement
COOPERTEL SYNEFORM Suivi des stagiaires et formations dispensées dans le cadre de marchés (ANAEM…)
Applications Chapitre B17 et C18
Rennes, le 18 septembre 2006 Support du paradigme maître-travailleur dans les applications à base de composants Tâche 2.2 Hinde Bouziane Réunion LEGO.
Développement d’IHM* et d’applicatifs spécifiques
Quel serveur pour vous?.
Développement d’IHM* et d’applicatifs spécifiques
Cloud Computing et mesures de performances
Citrix® Presentation Server 4.0 : Administration
Environnements de travail Schéma directeur des. SDET : un méta projet du S3IT S3IT : Une démarche globale Une démarche structurante Une démarche de projet.
Présentation du mémoire
ADAMOS Une plate-forme pour concevoir et évaluer des services proactifs Système proactif ? qui évolue en fonction des paramètres de lenvironnement physique.
Architecture du projet. ANR CONTINT - WP3 2 CONTINT : WP3 Positionnement dans le projet : Conception dapplications mobiles Configurations dapplications.
Notre Accompagnement pour Votre Offre de Cloud
Séminaire 10 Juin 2008 Pervasive Learning Network : P-LearNet Institut TELECOM.
Supports de formation au SQ Unifié
Plan Définitions et exemples Composants de cluster
CAS COMPTOIR (TD1 / SI3) TRANSFORMATION D’UN SI EXISTANT 1.
La disparition des applications
Mise en place d’une plate-forme d’expérimentation d’applications adaptables à partir de composants Encadreurs : Mireille Blay-Fornarino Anne-Marie Dery-Pinna.
PROJET AssetFrame IT ASSET MANAGEMENT Demo.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Introduction à la plateforme .NET
Le web service
Nicolas DEWEZ Cyrille JOSSELIN Tuteur: Thierry DELOT Conception d’une application de partage de fichiers Projet IUP3 GMI - Valenciennes Jeudi, 23 mars.
Étude d’un protocole de partage de travail entre systèmes Pair à Pair
AFPA CRETEIL 14-1 Windows NT Environnement des utilisateurs Chapitre 14.
Contrôles automatiques et paramètrables de flux
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
Architecture logicielle
Citrix ® Presentation Server 4.0 : Administration Module 1 : Généralités sur le cours et présentation des participants.
Réalisé par : Grégory CORDIER Promotion : RIE03 UE : Management Social & Humain Réalisé par : Grégory CORDIER Promotion : RIE03 UE : Management Social.
PaCO++ André Ribes Réunion Hydrogrid Rennes 15/09/03.
Citrix ® Presentation Server 4.0 : Administration Module 9 : Déploiement d'applications.
Bruno Traverson (EDF R&D, pilote de ACCORD)
29-30 Novembre 2007 Françoise André IRISA/Université Rennes1 Responsables du contrat : Jean-Marie Gilliot, Maria -Teresa Segarra GET / ENST-Bretagne/ Département.
La recherche pour l’ingénierie de l’agriculture et de l’environnement SSI : Service des Systèmes d’Information Arcintel Administration des postes de travail.
GDRI Nancy GT 4.3 Mobilité et Ubiquité 1 Le Contexteur : une Abstraction Logicielle pour la Réalisation de Systèmes Interactifs Sensibles au Contexte.
Architecture Client/Serveur
Prénom : Olivier Nom : LEROUX Matricule : M Soutenance de Projet
Citrix ® Presentation Server 4.0 : Administration Module 8 : Configuration de la gestion de charge.
9 février 2010 Enrique Ruiz Mateos Architecte avant-vente Microsoft
Chapitre 12 Surveillance des ressources et des performances Module S41.
Année Universitaire : 2013/2014 Réalisée par: Rahma DAIKHI Encadrants : M. Jean-Yves TIGLI M. Stéphane LAVIROTTE Au sein de : Laboratoire I3S, Equipe RAINBOW.
Transcription de la présentation:

CADeComp : plate-forme de déploiement sensible au contexte des applications à base de composants Dhouha Ayed, Chantal Taconet et Guy Bernard Ma pre porte

Plan Introduction Déploiement des applications à base de composants Architecture de CADeComp Modèle de données CADeComp Conclusion et perspectives Ensuite j ’exposerai quelques généralités sur lrs de déploi des applis à base de compos sur lrs problématiques déploiement ...

Constat (1) Les terminaux mobiles sont devenus capables d’héberger une large gamme d’applications Ressources limitées Changement de contexte fréquent: localisation, connexion réseau, environnement physique, etc. L ’utilisation d ’application dans un environnement mobile pose deux problèmes. Non seulement puisqu ’ils changent constamment de

Constat (2) Tâches de déploiement répétitives: installation, configuration, désinstallation, réinstallation, reconfiguration, etc. Ces 2 blèmes amènent l ’utilisateur à effectuer des tâches répétitives En plus des çs comme le contexte de l ’utilisateur est en constant changement l ’utilisateur se trouve obligé de reconfig les applis déployées

Besoins des utilisateurs mobiles Automatisation du déploiement Adaptation de déploiement au contexte Déploiement à la volée Ce constat nous amène à dégager les besoins suivants Pour épargner donc l ’user de ces tâches répétitives le processus de déploiement soit être automatisé, cad que l ’tililisateur ne doit pas intervenir manuellement, lui ile doit que choisirl ’applicatio à déployer, et les étapes d ’installation et de conf doivent être effectué d ’une manière transparente doit pouvoir prendre en compte le contexte d ’utilisation à savoir ….pour pouvoir répondre aux besoins de l ’utilisateur. Enfin id doit être exécuté à la volée, c à dire juste à la demande de l ’utilisateur, et déinstallé dès son activation

Plan de déploiement L’architecture de l’application L’emplacement des composants La version d'implémentation de chaque composant Les valeurs des propriétés des composants Le déploiement des applis à base de composants nécessite la description de ce qu ’on appelle un plan de déploiement. Un plan de déploiement représente des méta données qui décrivent les paramètres de déploiement suivants, qui sont en spécifiant les nœuds sur lequels ces compos doivent être placés, Ce principe de plan de déplo est utilisé par plusieurs outils de dépl telsque CCM, OMG Alors, le pb dans l ’utilisation de ce genre de… c qu ’il est statique, l ’archi est fixée une foàis pour tte qq soit le contexte d ’usation, les nœuds doivent être ou bien choisi manuellement au moment du déploiement ou bien fixé à l ’avance sans étudier l ’états des nœuds specifié. Ce que nous proposons nous donc comme solution pour L ’adaptation du déploiement des applis à base de composants consiste à varier ces 4 params de déploiement en fonction du contexte.

Paramètres variables du déploiement L’architecture de l ’application : présence de composants fonctionnels ou non fonctionnels Le choix des implémentations des composants Le choix des machines d’installation des composants Les propriétés de configuration des composants L ’archi peut être variée en additionnant ou supprimant des compos et des conn selon le contexte Par exemple l'utilisateur peut avoir le choix entre afficher les sorties d'un traitement ou les stocker. Dans le premier cas l'application déployée contiendra un composant de visualisation et dans le second cas, elle contiendra plutôt un composant d'archivage comme une base de données. le choix … peut dépendre aussi du contexte. Par exemple, on n ’installera pas la même implémentation d’un composant interface graphique sur un ordinateur portable ou sur un PDA pour alléger le terminal utilisateur, le déploiement a une latitude pour choisir la machine d'installation de certains composants, , il choisira par exemple la machine de proximité la moins chargée. Enfin, par exple la prop qui représente le language de l’utilisateur dépend ...

Adaptation au contexte Trois étapes: Collection des informations de contexte, Analyse Actions d’adaptation au contexte Dans ce qui suit nous allons voir les moyens avec lesquels nous allons adapter ces différents params au contexte dans CADeComp Généralement

CADeComp : architecture générale Context-aware Application Component Middleware Context-aware deployment service DeploymentAdapter Classical deployment tool Deployer Pour pouvoir réaliser ces étapes, l ’architecture de CADeComp ressemble à la suivante: le service de déploiement qui est intégré au niveau middleware composant est placé au dessus d ’un middleware context dans l’idée de séparer entre l’adaptation du déploiement au contexte et la gestion des informations de contexte. CA middleware s’occupe de communiquer avec les sources d’informations du contexte pour leur acquisition, leur transformation afin d’en obtenir des informations de contexte de haut niveau et lesmettre à disposition des applications et de notre service. Cadecomp représente une couche qui se place au-dessus d’un outil de déploiement classique qui implémente les activités de déploiement élémentaire des applications à base de composants à savoir l’instanciation des composants, leur configuration et leurs connexions. Notre service déclenche l’exécution des ces activités d’une manière conditionnée par les informations de contexte. Context-aware Infrastructure

CADeComp: architecture détaillée User Terminal Prestataire du service de déploiement Application Comp Comp Comp Comp Dépositaire méta-données Dépositaire de Paquetages Deployer Component Middleware Serveur d’exécution Serveur d’exécution Deployment Adapter Voici donc l ’archi détaillée, ce qui est représenté en rose est la couche infrastructure de contexte, …., on a donc dit que l ’I se charge de la collecte des infos de contexte. Par contre, L’étape d’analyse des informations de contexte et la décision des activités d’adaptation du déploiement est réalisée grâce à un ensemble de composants dont une partie est placée sur le terminal utilisateur et la seconde est placée au niveau du fournisseur du service de déploiement – Un dépositaire de paquetages contenant les paquetages de composants des applications à déployer. Un paquetage de composant contient les différentes implémentations d’un composant ainsi que son descripteur de propriétés par défaut. Chaque version d’implémentation est dédiée à un environnement d’exécution particulier. – Un dépositaire de méta-données contenant les descripteurs nécessaires au déploiement Le fournisseur du service de déploiement dispose d’un ensemble de serveurs d’exécution qui offrent un environnement d’exécution pour les instances de composants qui n’ont pas pu être Le Gestionnaire de Contexte de déploiement joue le rôle de passerelle entre le service de déploiement sensible au contexte et l’infrastructure sensible au contexte. Le composant Adaptateur de Déploiement analyse les contextes pertinents notifiés par le Gestionnaire de Contexte de déploiement et détermine l’assemblage de l’application à déployer en utilisant le descripteur de déploiement sensible au contexte pour décider les instances de composants qui constitueront l’application, les connexions entre eux, la version d’implémentation, l’emplacement et la configuration de chaque composant et produire ainsi un plan de déploiement final de l’application.; Le terminal utilisateur dispose d’un Client de Déploiement qui lance le processus de déploiement en envoyant une requête vers le composant Pré-Deployeur et d’un composant Deployeur qui représente un outil de déploiement préexistant assurant l’instanciation des composants, leur configuration et connexion. Deployment Client Context-Manager Context-Manager Context-aware Infrastructure

Modèle de données de CADeComp Règles communes à tous les composants d’une application Description des instances de composants Les conditions d’existence dans le plan de déploiement final des composants et leurs connexions Les emplacements possibles selon le contexte Les choix possibles des différentes implémentations selon le contexte Les différentes valeurs possibles des propriétés de configuration selon le contexte Nous décrivons dans cette section le modèle des méta-données utilisées par. Les méta-données sont placées dans des descripteurs qui décrivent les règles d’adaptation devant être appliquées si certains états de contexte sont vérifiés Ce descripteur permet à l’Adaptateur de Déploiement d’agir sur les quatre paramètres de déploiement décrits dans la section 2 afin de déterminer, selon le contexte courant, les composants qui constitueront l’application, leur emplacement et leurs connexions. Les règles communes à ce niveau, peuvent spécifier pour un contexte donné un emplacement général pour tous les compos de l ’appli ou une valeur à une propriété qui est commune à tous les composants de l ’appli. Je peux donner un exple : le langage utilisé par l ’utilisateur. Pour chaque instance on a une description

Description de contextes pertinents J’ai dit donc que ces règles sont appliquées dans un état contexte bien déterminé on dira que cet état représsente un contexte paertinant pour … et on le décrira de la manière suivante Pour chaque application: descripteurs de Pertinence de contexte pour le déploiement qui lescrit les états de contexte qui affecteront le déploiement de l’application parmi les infos collectés. +++Un contexte pertinenseat est associé à un contexte donné et il est définit par une valeur pertinente de ce contexte et un opérateur Exple état r ce contexte pertinent est vérifié lorsque ce contexte est égal à la valeur ... <relevantcontext id= ”NearNonCoveredZone" contextref= "UserConnectionZone" > <operator value="equal"> <relevantvalue>nonCoveredZone</ relevantvalue > </operator> </relevantcontext >

Modification de l’architecture de l’application Variation du nombre de composants déployés selon le contexte Notion de composant obligatoire/optionnel Connexion optionnelle/ obligatoire Pour chaque composant optionnel : le contexte pertinent qui conditionne son déploiement Je vais passer maintenant au descripteur sensible au contexte. Parmi les choses que permet de faire ce descripteur c … ***La Modification de l’architecture de l’application nécessite la description de tous les assemblages possibles pour toutes les combinaisons de contextes Pour éviter l ’explosion du nombre d ’assemblages décrits nous introduisons la notion de compo obl et Nous supposons que l ’application comporte des composants obligatoire dont l ’existence dans l ’assemblage final à déployer ne dépends pas du contexte. Et d ’autres Exple le composant panier

Modification de l’architecture de l’application (règles) L’établissement d’une connexion est conditionné par : la vérification du contexte pertinent qui lui est associé l’existence des composants optionnels à connecter. L’établissement de connexion entre deux composants obligatoires ne nécessite aucune vérification de contexte par contre, la connexion de deux composants optionnels ou d’un composant obligatoire et un composant optionnel n’est possible que si les contextes pertinents représentant le contexte d’existence des composants optionnels sont vérifiés. Cela veut dire que

Configuration des propriétés selon le contexte Ça permet de modifier la valeur des propriétés des composants au moment du déploiement Nous avons 2 types de props : des propriétés de configuration et des propriétés non fonctionnelles. Une propriété de configuration représente une propriété fonctionnelle (un attribut) contrôlant le comportement du composant, par contre une propriété non fonctionnelle décrit une propriété de qualité de service tels que sa persistance, son cycle de vie, ses transactions, etc. Les deux types de propriétés ont un type et une valeur conditionnée par un contexte pertinent donné. Il est possible de faire correspondre une valeur de propriété à une valeur de contexte.

CADeComp : Modèle de données Comme pour chaque instance, on a un ensemble de nœuds, de connexions, etc possibles selon le contexte, on ne va pas décrire le plan de déploiement en tant que vrac d ’implemems, puis vrac de moeuds associés à ces implems, etc. Mais plutt sous forme d ’instances et pour chaque instance on a ..

Description d’une instance de composant <componentinstance idref=  "GUIinstance"> <componentfileref idref="fileref"/> <ExistenceContextCondition> < relevantcontextref idref= "noStorage"/> </ExistenceContextCondition > <componentimplementation> <implem implemref= "PDA" relevantcontextref= "PDAref"/> <implem implemref="NormalScreen"relevantcontextref="Nor"/> </componentimplementation> <componentproperties> <property name="UserLanguage" type="string"> <contextmapping contextref="UserLanguage"/> </property> </componentproperties> <destination> <destinationname value="UserTeminal"> </destination> </componentinstance> (peut être enlevé) Comme un descripteur d ’ass classique, ce descripteur mais pour les différentes instances, il spécifie les différents contextes pertinets pour lesquels cette instance est absente ou présnte. Sd Les différents contextes pour lesquels on choisira une implementation donnée ce contexte pertinaent est décrit dans un descripteur … comme j ’ai dit, il n ’est que référencé ici.

Evaluation

Conclusion Nouvelle architecture pour le déploiement adaptatif Prise en compte du contexte transparente par rapport à l’utilisateur déploiement à la volée Pour conclure je peux die que

Perspectives Reconfiguration dynamique de l’assemblage de l’application. Reprise sur erreurs de déploiement. Outils de vérification de la cohérence des règles d ’adaptation Comme prochaines étapes, nous voulons travailler plus sur la reconfiguration dynamiquement l'architecture de l'application déployée en cours d'exécution