200 likes | 356 Views
El Futuro de los Servicios Web. Mesa Redonda en JSWEB 2005 Granada, 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 :
E N D
El Futuro de los Servicios Web Mesa Redonda en JSWEB 2005 Granada, 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?
Las compañías de negocio • Financial (VISA, AMEX), • Travel agencies (TerminalA), • E-shops (Amazon), • Document handling (Adobe) 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 ;-), …
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 2005 Granada, Septiembre 2005 Antonio Vallecillo – Universidad de Málaga
DSWEB 1005 Destornilladores El Futuro de los Servicios Web Mesa Redonda en DSWEB 1005 Granada, Septiembre 1005 Antonio Vallecillo – Universidad de Málaga
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...¿?
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?