Journée INTECH SOPHIA: Les services Web - 22 mars 2002 Didier.Parigot@inria.fr Première...

Preview:

Citation preview

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Première expérience d’utilisation des Web Services dans SmartTools

Didier ParigotProjet OASIS INRIA Sophia

www-sop.inria.fr/oasis/SmartToolsJournée InTech ’Sophia : les Services Web

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Première expérience d’utilisation des Web Services dans SmartTools

Un générateur d’atelier de développement basé sur les

technologiesObjets et XML

Le futur sera modèle : MDA(OMG)

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Plate-forme ouverte : SmartTools

Atelier de développement

SmartTools

manipulation deprogrammes

.NetC# Client

?

NavigateurWeb

AGL

Composants

Web Services

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Plan

Historique de notre démarche connexion à .Net

Présentation rapide de l’outil SmartTools Utilisation des technologies du W3C

Utilisation des Web Services pour SmartTools

connexion entre SmartTools et VisualStudio.Net

Perpectives d'évolution MDA (Model-Driven Architecture) de l’OMG

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Introduction: Web Services

Application répartie, Architecture par composant

Application, Plate-forme, ComposantXML: Internet et Intranet

SOAP = HTTP + XML

la «Pile» des Web Services HTTP protocoleXML structure des donnéesXSD classes SOAP appelWSDL méthodesUDDI annuairesXlang processus métier

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Historique et Contexte : SmartTools

Contrat Microsoft 1999-2001 passerelle entre les IDEs et SmartTools

SmartTools 100% JavaSmartTools utilise fortement les technologies

XML

99: Utilisation des technologies COM et DCOM ?

00: Sortie de la plate-forme .NET

SOAP, Web Services, WSDL Architecture de SmartTools

échange de message, bus logiciel les données sont décrites en XML : Modèles DTD

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Aujourd'hui : 2002

Projet européen avec W3C : QUESTION-HOW

piloté par Daniel Dardailler

Démonstrateur des technologies XML

SmartTools est un très bel exemple langages métiers

Rendre accessibles les services de SmartTools

Vue graphiques Traitements sémantiques

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Plan

Historique de notre démarche connexion à .Net

Présentation de l’outil SmartTools Utilisation des technologies du W3C

Utilisation des Web Services pour SmartTools

connexion entre SmartTools et VisualStudio.Net

Perpectives d'évolution MDA (Model-Driven Architecture) de l’OMG

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Aperçu rapide de SmartTools

Dtd

Specifications

XSLT

visitor

Composant Outils

XML

langages

SmartTools

Générateur d’atelier de développement pour les langages métiers

XMLXML

But : Réduire le coût de développement

TOUT XML

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Aperçu de l’architecture de SmartTools

SmartTools

Document

Base de

ressources

bus

VueGraphique

VueGraphique

VueGraphique

Gestion des

parseurs

Document

GUIGestion

desdocuments

Document

Echange de messages asynchronesStructure des données en XML

Modèles (DTD)

DTDDTDDTD

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Echange de messages

Document(arbre)DOM

Vue 1(arbre)

Vue 2(arbre)

Vue 3(arbre)

XML Chemin

Opérations d’édition

Les données sous format XML

Ensemble de messages typés

Struture des messages à la SOAP

Opérations sémantiques

enveloppe

le type du message

Les données

Sous-arbre

attributs

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Liens entre le document et la vue

if a then

b

else

c

if

ElseThenCond

a b c

Java beanComposant graphique

Tree (DOM) Composant document

CheminXpath

DTD

Conforme au modèle

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Plan

Historique de notre démarche connexion à .Net

Présentation rapide de l’outil SmartTools Utilisation des technologies du W3C

Utilisation des Web Services pour SmartTools

connexion entre SmartTools et VisualStudio.Net

Perpectives d'évolution MDA (Model-Driven Architecture) de l’OMG

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Connexion entre SmartTools et .Net

SmartTools

Serveur ApacheTomCat

.NetC# ClientSOAP

WSDL

filtre

bus

Connexion du serveur TomCat à SmartTools

Transformation des messages SmartTools

en messages SOAP

Création d’un client C# utilisant ces services

Déclaration d’un WSLD pour SmartTools

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Premier retour d’expérience !

Très simple et neutre (format XML)

SmartTools tout XML : OUI A l'extérieur comme à l'intérieur;

.Net tout XML ? A l'intérieur NON Description des langages avec un format BNF

XML plus qu’un format d'échangeun Modèle

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

TOUT XML: 4 technologies de connexion

SmartTools

ServeurWeb

.NetC# Client

SOAPDTD

ServeurWeb http

navigateur Web

VueGraphiquejava

VueGraphique

VueGraphique

RMISmartTools

VueGraphique

Objet Java

ApplicationCode Java

Plate-forme

DTDDTD

Modèles

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Générateur de composant et container

Génération de container

Modèles Composants

DTD

Modèle DTDModèle

DTD

Modèle

Composant

Composant

Composant

Composant

Composant

Composant

EJB

Web services

Composant container

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Plan

Historique de notre démarche connexion à .Net

Présentation de l’outil SmartTools Utilisation des technologies du W3C

Utilisation des Web Services pour SmartTools

connexion entre SmartTools et VisualStudio.Net

Perpectives d'évolution MDA (Model-Driven Architecture) de l’OMG

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Le futur ?

Web Services ? SOAP : XML protocol Services (UDDI), processus métiers (Xlang)

Les métiers de l’entreprise Maintenance et Réutilisation

Indépendance vis-à-vis des technologies langages plate-formes composants protocoles

XML s’est imposé comme Solution

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

MDA : Model-Driven ArchitectureNouvelle stratégie de OMG

Indépendance vis-à-vis des technologies

Abstraction par transformation de modèle

XML: langage UML: modèle

Programmation par génération et transformation

Démonstrateurs de cette démarche SmartTools est un premier exemple

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

XML: Rapprochement des disciplines

documents

langage de programmation

base de données (semi-structurée)

UML, modèle

système réparti

meta-computing, GRID

etc...

Journée INTECH ’SOPHIA: Les services Web - 22 mars 2002Didier.Parigot@inria.fr

Conclusion

Tournant en terme de technologie: MDA

Web Services : format des données neutre

XML : syntaxe abstraite (indépendant d’un langage)

Modèle (indépendant d’une technologie)

Pour des démonstrations de SmartTools voir le site

http://www-sop.inria.fr/oasis/SmartTools/ email : Didier.Parigot@inria.fr

Recommended