Elfuturodelos serviciosweb

20
El Futuro de los Servicios Web Mesa Redonda en JSWEB 2005 Granada, Septiembre 2005 Antonio Vallecillo – Universidad de Málaga

Transcript of Elfuturodelos serviciosweb

El Futuro de los Servicios Web

Mesa Redonda en JSWEB 2005Granada, Septiembre 2005

Antonio Vallecillo – Universidad de Málaga

Antes del Futuro, el Presente

• ¿Sabemos qué son los servicios web?• ¿Entendemos para qué sirven?• ¿Quién los usa?• ¿Para qué se están usando?

Fuentes:• Revistas especializadas (cientificas y divulgativas) • Pags web de los principales desarrolladores de software• Listas de distribución (nacional e internacionales)

(Ultimos 3-5 meses)

1) ¿Sabemos qué son los Servicios Web?• Aun se discute sobre su verdadera identidad

– ¿Cuál es su definición exacta?– ¿Cuál es su relación con otros conceptos como objeto,

componente software, o servicio?– ¿Es necesario usar SOAP? ¿Y si uso ASN.1? ¿e IIOP?

• Hasta el W3C cambió el año pasado su definición"A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards." http://www.w3.org/TR/2004/NOTE-ws-gloss-20040211/

• Otros vendedores proponen definiciones alternativas!

2) ¿Entendemos para qué sirven?

• En teoría, los Servicios Web proporcionan una tecnología para “soportar las interacciones entre máquinas en una red” (definición de W3C)

• Otros opinan que sirven fundamentalmente para implementar SOA

• Otros opinan que sirven para desarrollar aplicaciones distribuidas en general, mejorando y reemplazando a las tecnologías anteriores (CORBA)

2) ¿Entendemos para qué sirven? (II)• Sí, los Servicios proporcionan una tecnología muy

válida para describir servicios e invocarlos a través de Internet, logrando ubicuidad e interoperabilidad.

• Pero... – Es que no son seguros...– Es que no tienen estado...– Es que no tienen resueltos temas básicos como los attachments o

las transacciones... – Es que sólo describen la signatura de sus operaciones, pero no su

semántica (coreografía, significado, ...)– Es que son ineficientes en cuanto a prestaciones (no puedo hacer

computación científica distribuida!)– Es que no puedo aplicarles fácilmente “aspectos” (login, ...) – ....– Es que no me dejan la ropa muy blanca– Es que no me llevan los niños al colegio

¿Realmente entendemos para qué sirven y para qué no?

3) ¿Quién los usa?

• Las compañias de desarrollo software – IBM, Sun, Microsoft, Oracle, ...todas hacen ahora

Servicios Web– Es muy curioso ver ahora sus paginas web sobre estos

temas

• Las organizaciones de estandarización (W3C,...)• Los grupos de investigación

– Revistas especializadas, Listas de Distribución, Charlas, Congresos ;-), …

• Las compañías de negocio– Financial (VISA, AMEX), – Travel agencies (TerminalA), – E-shops (Amazon), – Document handling (Adobe)

4) ¿Para qué se usan?

• Las compañias de desarrollo software (IBM, Sun, MS, ...)– Ahora todo son Servicios Web!

• Los grupos de investigación– Vuelven a atacar los problemas difíciles “de siempre”: la

semántica, la QoS, context-awareness, adaptación dinámica,...

– Incluso tienen que volver a resolver otros ya resueltos: transacciones, mensajería fiable, trading, addressing, ...

– “WS+aspectos”, “Modelado de WS”... – ¿Veremos pronto ”Genetic WS”? ¿Y que tal ”Fuzzy WS”? :-)

• Las organizaciones de estandarización (ISO, W3C,...)– Tienen más cosas que estandarizar, en un nuevo contexto

4) ¿Para qué se usan? (II)

• Las compañías de negocio– Posiblemente, los mayores beneficiados de esta historia!– Pueden vender “servicios”, algo que no habian logrado con la

programación estructurada, los objetos, los componentes,…

• Sin embargo...– Las cifras de uso de Internet no acompañan todavía – Ojo con la “guerra de estándares”, que puede dañar

mucho las inversiones e ilusiones de muchas empresas privadas

• WS-CDL vs. BPEL4WS (una vez que WSCI ha muerto) • WS-Coordination y WS-Transaction vs. WS-CF y WS-CAF• WS-Reliability vs. WS-ReliableMessaging• OWL-S vs. WSMO vs. SWSL• SOAP vs. ASN.1 vs. IIOP vs. RSS/Atom vs. ....

• ...

Algunos comentarios que se han hecho• “Los servicios Web no hacen más que reinventar la rueda,

pero esta vez usando XML”• “No aportan nada nuevo que no tuvieramos ya en CORBA”• “Los Servicios Web proporcionan las facilidades del Nivel

4 por encima del Nivel 7, dando un paso atrás tanto en eficiencia como en funcionalidad (seguridad, mensajería fiable, etc.)”

• “Los servicios Web no permiten resolver ninguno de los problemas realmente difíciles de los sistemas distribuidos, como la interoperabilidad semántica, los repartos de cargas, la fiabilidad, o la escalabilidad”

• “Cómo RSS/Atom va a reemplazar a los Servicios Web”• “Los servicios Web van a suponer un cambio radical en la

forma en la que construimos aplicaciones distribuidas hoy en día”

• “Managing IT with Web Services” (ACMqueue, Jul/Ago 2005)

El Futuro de los Servicios Web

Mesa Redonda en JSWEB 2005Granada, Septiembre 2005

Antonio Vallecillo – Universidad de Málaga

El Futuro de los Servicios Web

Mesa Redonda en DSWEB 1005Granada, Septiembre 1005

Antonio Vallecillo – Universidad de Málaga

Destornilladores

Algunos comentarios que se han hecho• “Los servicios Web no hacen más que reinventar la rueda,

pero esta vez usando XML”– “Los destornilladores no hacen más que reinventar la

rueda, pero esta vez usando tornillos en vez de clavos”

• “No aportan nada nuevo que no tuvieramos ya en CORBA”– “No aportan nada nuevo que no tuvieramos ya con los

martillos y las puntas”

• “Los Servicios Web proporcionan las facilidades del Nivel 4 por encima del Nivel 7, dando un paso atrás tanto en eficiencia como en funcionalidad (seguridad, mensajería fiable, etc.)”– A la hora de clavar puntas, los destornilladores

suponen un paso atrás tanto en eficiencia como en funcionalidad

Más comentarios que se han hecho• “Los servicios Web no permiten resolver ninguno de los

problemas realmente difíciles de los sistemas distribuidos, como la interoperabilidad semántica, los repartos de cargas, la fiabilidad, o la escalabilidad”– Los destornilladores no permiten resolver

ninguno de los problemas realmente difíciles de las catedrales, como la seguridad, estabilidad, cimentación, …

• “Cómo RSS/Atom va a reemplazar a los Servicios Web”– Cómo los alicates van a reemplazar a los

destornilladores

Más comentarios que se han hecho• “Los servicios Web van a suponer un cambio radical en

la forma en la que construimos aplicaciones distribuidas hoy en día” – Los destornilladores van a suponer un cambio

radical en la forma en la que construimos catedrales hoy en día.

• “Managing IT with Web Services”– La gestión de las Catedrales con

destornilladores

Conclusiones

• Los Servicios Web están aquí...– Y han venido para quedarse!

• Aunque no van a arreglar todos los problemas de las aplicaciones distribuidas– Pero aportan soluciones válidas a ciertos problemas importantes,

como la ubicuidad (pervasiveness) y la interoperabilidad – Posibilitan las arquitecturas SOA y P2P

• Su objetivo no es sustituir a las tecnologías existentes, sino complementarlas– “Note, however, that all this does not mean that your CORBA

objects and EJBs have suddenly become superfluous. On the contrary: they supply the implementations for your web services. Without them, you have no web services” [Steve Vinoski]

– “A robust public marketplace for components hasn’t emerged. Web Services represent a new revenue stream essential for the future health of the [hardware and software] business” [Grady Booch]

Algunos trabajos que hacer

• A corto plazo– Terminar de definir su identidad– Perfilar su campo de aplicación (encontrar su

“nicho”)– Completar los “flecos” que aun presentan (y que

tiene sentido solucionar en un tiempo razonable!)– Aclarar el campo al inversor, tratando de eliminar la

“guerra de estandares” que tanto daño hace a los inversores

• Futuro...¿?

Gracias!

Algunos “flecos” todavía sueltos

• Mensajería fiable• Seguridad• Acuerdos en cuanto a estándares para transacciones y

coreografía• Asincronía, latencia, fragmentación, transparencia frente a

fallos en nodos y comunicaciones, degradación de prestaciones, poca escalabilidad (cuellos de botella)... Vamos, los problemas propios de los sistemas distribuidos

• ¿Interoperabilidad semántica? • ¿Contratos?• ¿Calidad de servicio? (definición, monitorización,...)• ¿Métricas de calidad?• ¿Negociación automática? • ¿Tarificación? (licencias, acuerdos de uso, re-venta, etc.)• ¿Legislación?• Marketing: ¿Es el software un producto, o un servicio?

Cifras uso de Internet (Agosto 2005)

% Empresas...España

Europa

...que compran a través de Internet

9% 32%

...que venden a través de Internet

2% 11%

Objetos, Componentes y Servicios Web

Objetos Componentes Servicios Web

Perspectiva arquitectónica

Elementos internos de un componente

Elementos internos de un sistema

Elementos que se ven desde fuera del sistema

Modelo de despliegue

Junto con la aplicación o el componente

Despliegue “físico”(install-and-use)

El software “existe” en algún lado (connect-and-use)

Niveles de intercambio de información

Mayoritariamente dentro de un componente software

Mayoritariamente dentro de la empresa

Mayoritariamente entre varias empresas

Niveles de acoplamiento

Fuerte Débil Muy débil

Comunicación

Directa Middleware (eg. IIOP)

Web-based (SOAP/XML sobre http)

Granularidad

Pequeña Media-grande Media-grande