T2: "Composición de Servicios Web"

Turno Tarde (14 a 17 horas)

Hernán Melgratti. Instituto para Estudios Avanzados, Lucca, Italia

Hernán Melgratti recibió su titulo de Doctor en Informática (Dottore di Ricerca in Informatica) en el Departamento de Informática de la Universidad de Pisa en junio 2005. Actualmente, se desempeña como Investigador (Post-doc Researcher) en el Instituto para Estudios Avanzados IMT, Lucca. Fue becario de la Scuola Galileo Galilei de Pisa, becario Fomec del Departamento de Computación-FCEN-UBA y Research Intern Student de Microsoft Research Cambridge. Su trabajo de investigación, desarrollado en el marco de varios proyectos europeos y publicado en ámbitos internacionales, se centra en el desarrollo de modelos y lenguajes formales para el estudio de la composición de servicios, y en particular, en los aspectos transaccionales de la integración.

http://www.di.unipi.it/~melgratt/


Objetivos del Curso:

Los servicios web brindan medios estándares que posibilitan la interacción de componentes heterogéneas distribuidas geográficamente, hecho que los convierte en una de las tecnologías actuales más apropiadas para el desarrollo de aplicaciones, no sólo al interno de una empresa sino también, donde participan varias organizaciones. De este modo, el desarrollo de aplicaciones consiste principalmente en describir la manera en que deben interactuar los servicios provistos por cada organización. El objetivo principal de este curso es presentar los lenguajes existentes para describir la composición de servicios. En particular, analizaremos propuestas provenientes tanto de la industria (estándares tales como BPEL, WS-CD) como del sector académico (lenguajes y modelos formales). Asimismo, analizaremos algunos aspectos de la composición de servicios que están siendo objeto de investigación académica e industrial, como lo son la composición dinámica de servicios y la compensación de ejecuciones parciales.


Programa:

  • Introducción de SOA (Service Oriented Architecture)
  • Servicios Web. Introducción a las principales tecnologías
    1. WSDL (Web Service Definition Language)
    2. SOAP (Simple Object Access Protocol)
    3. UDDI (Universal Description, Discovery and Integration)
    4. XML (Extensible Markup Language)
  • Estilos de Composición:
    1. Orchestration: Coordinación centralizada. Workflows.
    2. Choreography: Coordinación distribuida. Protocolos.
    3. Descripción Global
    4. Descripción Local, Interfaces
  • Orchestration Languages: WS-BPEL (Procesos ejecutables), WSFL, XLANG.
  • Choreography Languages:
    1. Descripción Global: WS-CDL
    2. Interfaces: Procesos abstractos de WS-BPEL, WSCI.
  • Modelos y lenguajes formales para la composición de servicios, como por ejemplo redes de Petri y cálculos de procesos.
  • Manejo de fallas en la ejecución de servicios compuestos: Excepciones vs. Compensaciones.
  • Modelos formales de Compensación en lenguajes de composición.
  • Relación entre modelos de Orchestration y Choreography:
    1. Nociones de correspondencia y técnicas de verificación.
  • Composición dinámica de servicios


Bibliografía:

  • W. van der Aalst. Ter Hofstede, B. Kiepuszewski, A. Barros: Workflow Patterns. Distributed and Parallel Databases 14(1): 5-51 (2003)
  • S. Brydon, G. Murray, V. Ramachandran, I. Singh, B. Stearns, T. Violleau, Designing Web Services with the J2EE 1.4 Platform: JAX-RPC, SOAP, and XML Technologies. Sun Microsystems. 2004
  • L. Bocchi, C. Laneve, G. Zavattaro: A Calculus for Long-Running Transactions. FMOODS 2003: 124-138
  • A. Brogi, R. Popescu: Towards Semi-automated Workflow-Based Aggregation of Web Services. ICSOC 2005: 214-227
  • A. Brogi, S. Corfini, R. Popescu: Composition-Oriented Service Discovery. Software Composition 2005: 15-30
  • R. Bruni, M. Butler, C. Ferreira, C. A. R. Hoare, H. Melgratti, U. Montanari: Comparing Two Approaches to Compensable Flow Composition. CONCUR 2005: 383-397
  • R. Bruni, H. Melgratti, U. Montanari: Theoretical foundations for compensations in flow composition languages. POPL 2005: 209-220
  • R. Bruni , H. Melgratti, U. Montanari: Nested Commits for Mobile Calculi: Extending Join. IFIP TCS 2004: 563-576
  • M. Butler, C.A.R. Hoare, C. Ferreira: A Trace Semantics for Long-Running Transactions. 25 Years Communicating Sequential Processes 2004
  • H. Foster, S. Uchitel, J. Magee, J. Kramer: Compatibility Verification for Web Service Choreography. ICWS 2004: 738-741
  • R. Gorrieri, C. Guidi, R. Lucchi: Reasoning About Interaction Patterns in Choreography. EPEW/WS-FM 2005: 333-348
  • M. Papazoglou, D. Georgakopoulos: Introduction . Commun. ACM 46(10): 24-28 (2003)
  • Web Services Business Process Execution Language Version 2.0 Committee Draft. 2006
  • Web Services Choreography Description Language Version 1.0. April 2004
  • B. Srivastava, J. Koehler. Web Service Composition Current Solutions and Open Problems. ICAPS 2003


Pre-requisito:

Son deseables pero no imprescindibles conocimientos de definicion formal de lenguajes de programación y cálculos de procesos.