Des Orchestrations de Services Web aux Aspects



Documents pareils
Créer et partager des fichiers

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

Patrons de Conception (Design Patterns)

La sécurité dans les grilles

Chapitre 1 Windows Server

Synergies entre Artisan Studio et outils PLM

Évaluation et implémentation des langages

Cours Bases de données

Semarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire

WEA Un Gérant d'objets Persistants pour des environnements distribués

La messagerie électronique avec La Poste

Les BRMS Business Rules Management System. Groupe GENITECH

Internet Information Services (versions 7 et 7.5) Installation, configuration et maintenance du serveur Web de Microsoft

Shibboleth. David Verdin - JOSY "Authentification centralisée pour les applications web" - Paris - 4 février mai

Mettre en place un accès sécurisé à travers Internet

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES

CHARTE INFORMATIQUE LGL

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

FORMATION CN01a CITRIX NETSCALER

Evidian IAM Suite 8.0 Identity Management

Informations sur l utilisation du webmail du CNRS. Webmail du CNRS. Manuel Utilisateur

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Communiqué de lancement

Vérifica(on et Valida(on de Business Process. Ang Chen et Levi Lúcio

Catalogue de Pattern pour le CSCW

Données Réparties. Thibault BERNARD.

Table des matières. Partie I CobiT et la gouvernance TI

Politique de Certification Pour les Certificats de classe 0 et 4 émis par l autorité de certification Notaires PUBLIÉ

Analyse,, Conception des Systèmes Informatiques

Un environnement de déploiement automatique pour les applications à base de composants

Utilisation de l ingénierie des modèles pour la conception collaborative de produits mécaniques

Back-Office Partagé Réduisez vos coûts fixes en déléguant votre gestion administrative!

Cours en ligne Développement Java pour le web

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Messagerie asynchrone et Services Web

MASTER SIS PRO : logique et sécurité DÉTECTION D INTRUSIONS. Odile PAPINI, LSIS. Université de Toulon et du Var. papini@univ-tln.

APIs de table pour SQL Server

Le Product Owner Clé de voute d un projet agile réussi

Installation et configuration de base de l active Directory

COMMENT EFFECTUER UNE ANALYSE VIRALE EN LIGNE

Oracle Database 11g: Administration Workshop I Release 2

Composition semi-automatique de Services Web

Université de Bangui. Modélisons en UML

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Information utiles. webpage : Google+ : digiusto/

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

SECTION 5 BANQUE DE PROJETS

Business Process Execution Language

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers

Certificats X509 & Infrastructure de Gestion de Clés. Claude Gross CNRS/UREC

Une Architecture de Bureaux Graphiques Distants Sécurisée et Distribuée

L Edition Pilotée XL

Exchange Server 2013 Préparation à la certification MCSE Messaging - Examen

Exécution de processus

Exécution de processus

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Rapport d activité. Mathieu Souchaud Juin 2007

FORMATION WS1205 INSTALLATION ET GESTION DE L'ENVIRONNEMENT APPLICATIF DES POSTES DE TRAVAIL AVEC WINDOWS SERVER 2012

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Pilotez, ajustez et optimisez votre portefeuille de projets

Développement d une application partagée pour la gestion du système de qualité (ISO 9001/2008) dans la sucrerie

B.I. «maison»: sexy or not? Expérience de la CMSE

Notes de cours : bases de données distribuées et repliquées

Gestion répartie de données - 1

TP3 Intégration de pratiques agiles. 1. User Stories (1) Scénario d intégration agile. En direct-live du château

Problématiques de recherche. Figure Research Agenda for service-oriented computing

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Citrix XenApp 7.5 Concepts et mise en oeuvre de la virtualisation d'applications

Data Tier Application avec SQL Server 2008 R2

Cahier des charges (CDC)

LES IMPACTS SUR VOTRE SYSTEME DE FACTURATION DE LA SIGNATURE ELECTRONIQUE COMME OUTIL DE SECURISATION DE VOS ECHANGES DEMATERIALISES

Les différents types de relation entre les tables

Le "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique

Devenez : Administrateur Exchange Server 2010 certifié MCTS

Mineure Architectures Orientées Services SOA Exécution de processus. Mineure SOA. Exécution de processus

Formula Negator, Outil de négation de formule.

Présentation du module Base de données spatio-temporelles

Serveur Appliance IPAM et Services Réseaux

ABIDJAN YOPOUGON RESIDENTIEL Immeuble EDUFOR

Génie logiciel (Un aperçu)

LOG4430 : Architecture logicielle et conception avancée

L'open source peut-il démocratiser la Gestion d'identité?

Langage SQL : créer et interroger une base

Gouvernance des mesures de sécurité avec DCM-Manager. Présentation du 22 mai 2014

EJBCA PKI Open Source

NFS Maestro 8.0. Nouvelles fonctionnalités

Introduction aux bases de données Cours 1 : Généralités sur les bases de données

Journée Mondiale de la Normalisation

Utilisation du plugin AppliDis SLB (Smart Load Balancing)

Au sommaire. Sommaire. Lettre d information. Calendrier télé-déclaratif & Actualités. L équipe du portail ASPOne.fr

BPEL Orchestration de Web Services

JOnAS 5. Serveur d application d

Pilote KIP certifié pour AutoCAD. Guide de l utilisateur État de l imprimante KIP

Introduction à LDAP et à Active Directory Étude de cas... 37

Cours 10219A: Configuration, Gestion Et Résolution Des Problèmes De Microsoft Exchange Server 2010

Transcription:

Cédric Joffroy Sébastien Mosser Mireille Blay-Fornarino Clémentine Nemo JFDLPA 07 26/03/2007 CNRS Laboratoire I3S Équipe Rainbow

Plan 1 Contexte : Services Web & Orchestrations 2 Des Aspects sur Service Web 3 Composition d Aspects sur Service Web 4 Conflits de composition 5 Conclusion : Bilan & Perspectives 2

Plan 1 Contexte : Services Web & Orchestrations 2 Des Aspects sur Service Web 3 Composition d Aspects sur Service Web 4 Conflits de composition 5 Conclusion : Bilan & Perspectives 3

Contexte technologique : Services Web & Entreprises

Contexte technologique : Orchestrations de Services Web

Contexte technologique : Évolution des WSOA

Orchestration de Service Web : Récapitulatif Une Orchestration...... Est un support à l ajout de nouveaux services Mais manipulation directe du code de l orchestration!... Centralise la coordination des services Réécriture de toutes les orchestrations à chaque introduction d un service commun!... Est une solution a un problème donné Réutilisation des codes existant difficile!... Se comporte comme une boite noire Composition difficilement optimisable, tissage impossible! 7

Une orchestration par l exemple Contexte : Système d Information Bancaire Scénario Trois Services Web disponibles : AccountManager : Transfert de fond Historic : Journalisation d actions effectuées sur le SI Policy : Vérificateur de la politique interne du SI Journaliser le début et la fin du transfert de fond Informer le gestionnaire de politique d un transfert Publication d une orchestration 8

Transfert de fond journalisé & politiquement correct

Problématique Et si...... on souhaitait journaliser d autres opérations?... on souhaitait au contraire désactiver la journalisation?... on travaillait de manière colaborative sur le système?... tout simplement, on voulait faire évoluer le système? 10

Plan 1 Contexte : Services Web & Orchestrations 2 Des Aspects sur Service Web 3 Composition d Aspects sur Service Web 4 Conflits de composition 5 Conclusion : Bilan & Perspectives 11

Et si... on utilisait des aspects? A restricted definition of AOP [Douence,2004] 1 AOP supports incremental (unanticipated) programming 2 AOP supports code scattering 3 AOP structures (un)scattered code 4 AOP supports pointcut to bind aspects 5 AOP supports aspects composition 12

Et si... on utilisait des aspects? A restricted definition of AOP [Douence,2004] 1 AOP supports incremental (unanticipated) programming Évolution non anticipée des WSOA 2 AOP supports code scattering Modularisation des modifications (ajout/retrait) 3 AOP structures (un)scattered code Structuration des codes ajoutés 4 AOP supports pointcut to bind aspects Réutilisation de codes orthogonaux 5 AOP supports aspects composition Composition automatique des codes ajoutés 12

Un formalisme à deux niveaux Approches actuelles : des aspects sur orchestrations Trois formalismes différents : Implémentation, Orchestration, Aspect Intégration des aspects au sein des moteurs d exécution Notre approche : des aspects sur Service Web Utiliser les langages d orchestrations pour définir les aspects : Implémentation, Orchestration Indépendance du moteur d exécution 13

Des aspects sur Service Web Définition des aspects sur Services Web : Aspect = (Sélecteur, Greffon) Sélecteur = (Service Web, Operation) Greffon = (Activités, Pivots, Ordre, Conditions) Activité = (Type, Entrées, Sorties) Démarche Extension du langage d orchestration BPEL Existant : sequence, flow, invoke, assign,... Ajout : Pivots de compositions : proceed, deleguate Notion de sélecteur : target, operation 14

Expression de l aspect de journalisation

Formalisation de l aspect de journalisation

Vers une évolution non anticipée incrémentale...

Plan 1 Contexte : Services Web & Orchestrations 2 Des Aspects sur Service Web 3 Composition d Aspects sur Service Web 4 Conflits de composition 5 Conclusion : Bilan & Perspectives 18

Composition d aspects sur Services Web Le problème : Les aspects A 1 et A 2 sont déployés sur le SI A 1 et A 2 agissent sur des entités communes Calcul de A 12 merge(a 1, A 2 ) Composition des aspects : 1 Composition des aspects existants. 2 Analyse de l aspect résultant : Aucun conflit détecté : Aller en 3 Détection d un conflit : Résolution du conflit (connaissance), aller en 1 3 Déployer l aspect résultant sur le système 19

Composition d aspect : Processus de composition Processus de composition Unification autour des pivots de composition Conjonctions des conditions Propagation des modifications sur la relation d ordre Vérification des conflits engendrés par la composition Base de connaissances Connaissances sur la sémantique de l application Alimentée par les développeurs Utilisée pour résoudre les conflits 20

Formalisation des aspects Historic & Policy

Unification des pivots et de la relation d ordre

Résultat de la composition automatique

Plan 1 Contexte : Services Web & Orchestrations 2 Des Aspects sur Service Web 3 Composition d Aspects sur Service Web 4 Conflits de composition 5 Conclusion : Bilan & Perspectives 24

Conflits de composition Un travail collaboratif... 2 aspects de Service Web peuvent interagir (conflit) Nécessité d un mécanisme de résolution des conflits Conflits identifiés dans notre implémentation 1 Délégations différentes 2 Accès concurrents en lecture / écriture à une variable 3 Deux retours différents 4 Deux levées d exception différentes 25

Un conflit par l exemple Contexte : Système d Information bancaire Trois services métiers disponibles : AccountManager : Gestion des comptes clients AccoutChecker : Certification électronique des comptes BankingFraud : Gestion des interdits bancaires Scénario : Respecter la Loi 1 Compte source interdit bancaire Toute Opération interdite! 2 Compte destinataire non certifié Transfert interdit! 26

Définition d un aspect par préocupation

La composition conduit à un conflit

Capitalisation des connaissances Composition OK!

Plan 1 Contexte : Services Web & Orchestrations 2 Des Aspects sur Service Web 3 Composition d Aspects sur Service Web 4 Conflits de composition 5 Conclusion : Bilan & Perspectives 30

Récapitulatif Points forts de l approche Évolution non anticipée des WSOA Ajout incrémental de nouvelles fonctionnalités Mécanismes de composition automatique Mécanismes de résolution de conflits 31

A l heure actuelle,...... nous disposons... D un moteur de composition implémenté en PROLOG D une base de connaissances (résolution de conflits) D une architecture WSOA supportant les aspects : ajout/retrait dynamique,... D outils de traitement des documents ODML... nous devons encore... Intégrer le moteur de composition à l architecture Étendre le processus de composition pour l enrichir Enrichir l expressivité de la base de connaissances 32

Merci de votre attention! Avez vous des questions?