John Hagel y John Seely Brown (2001) hacen referencia a la arquitectura basada en servicios Web (Web Services) como la “nueva arquitectura”, señalando incluso el inicio del final de los sistemas de información propietarios y el “amanecer” de los servicios compartidos. W3C define un Web Service como un sistema de software diseñado para soportar la interacción e interoperabilidad máquina a máquina sobre una red. Por lo tanto, los servicios Web tiene como principal objetivo proporcionar una forma estándar de interoperabilidad entre diferentes aplicaciones de software que se ejecuta en una variedad de plataformas. Desde mi parecer, a continuación indico cuáles han sido las principales arquitecturas relacionadas con los Web Services.
Service Oriented Architecture (SOA)
El objetivo de SOA es básicamente la colaboración a través de servicios, los cuales se publican y están disponibles para la invocación en el Service Bus. La adopción de SOA es fundamental para mejorar la agilidad de negocios y la flexibilidad TI prometida por los Web Services. Estos beneficios son entregados por la arquitectura de servicios desde una perspectiva tecnológica y la adopción de protocolos de Web Services, además requieren de un entorno orientado a servicios.
Los resultados han sido que muchas empresas los utilicen en sus plataformas comerciales y que muchas aplicaciones se diseñen y desarrollan bajo una arquitectura orientada a servicios. Además, SOA representa también una oportunidad para el desarrollo incremental, despliegue, mantenimiento y extensión de las aplicaciones de negocios (Natis, 2003).
Representational State Transfer (REST)
Según Tyagi (2006), en el mundo de los Web Services, REST es un “idioma” clave de diseño que abarca una arquitectura cliente-servidor sin estado en el que los servicios web son vistos como recursos y pueden ser identificados por sus direcciones URL. Los servicios web REST se construyen usando HTTP, URIs, XML, JSON, Atom, etc. Los clientes de que utilizan estos recursos acceden a una representación particular mediante la transferencia de contenido de la aplicación usando métodos remotos que describen la acción que debe realizarse en el recurso. REST es una descripción analítica de la arquitectura Web existentes, y por lo tanto la interacción entre el estilo y el protocolo HTTP parece perfecta. REST tiene como principales principios u objetivos la utilización de los estándares Web, tales como HTTP y URI, y aprovechar la arquitectura de la Web para su beneficio.
Los resultados de REST es que actualmente existen una gran cantidad de aplicaciones basadas en REST, que prácticamente cualquier servicio es accesible desde una petición GET en HTTP, en contraposición a SOA que es más restrictiva. De acuerdo con Wikipedia, algunas de las aplicaciones las encontramos en blogosfera, Amazon.com, eBay, Bloglines, Yahoo, Microsoft, Twitter, Google Apps, SalesForce, etc.
Software as a Service (SaaS)
“Software como servicio (del inglés: Software as a Service, SaaS) es un modelo de distribución de software en donde la compañía de tecnologías de información y comunicación (IT) provee el servicio de mantenimiento, operación diaria, y soporte del software usado por el cliente” (Wikipedia, 2010). Por lo tanto, SaaS es una aplicación “hospedada” en un servidor remoto y accedida desde Internet. Muchas de estas son software de negocios y típicamente son de menor costo para que el negocio pueda tener software especializado y que muchos usuarios lo puedan operar. Las características del software como servicio incluyen: acceso y administración a través de una red, actividades gestionadas desde ubicaciones centrales permitiendo a los clientes el acceso remoto a las aplicaciones mediante la Web, la distribución de la aplicación es más cercana al modelo uno-a-muchos (una instancia, múltiples usuarios) que al modelo uno-a-uno, actualizaciones centralizadas y frecuente integración con una red mayor de software de comunicación.
Los resultados es que es una tecnología emergente, y tienen ventaja sobre SOA de que las aplicaciones de software se comunican entre sí. Gartner espera que para el 2010 el 25% del software de negocio sea entregado en una arquitectura SaaS. SaaS está llamando mucho la atención en estos días, se puede decir que SaaS está marcando la pauta para muchos enfoques de modelos de negocio que van desde las Green TIs, plataformas como servicios, Cloud-computing, Grid-computing, Application Service Provider (ASP), etc. Además, según Singla (2009), SaaS envuelve muchas aplicaciones expuestas en la red como son software para soporte a clientes, sistemas financieros, comercio electrónico, sistemas de pago, inteligencia de negocios, administración de ventas y mercadotecnia, entre otras.
Conclusión
Como se puede apreciar, las tres arquitecturas son tecnologías basadas en Web Services que ha emergido en la última década, destacando precisamente a SOA como una arquitectura para la integración de servicios, REST como una arquitectura simple y ampliamente utilizada por su facilidad de acceso todo desde una petición HTTP sin ser restrictivo como lo es SOA, y por último, Software as a Service, la cual envuelve muchas aplicaciones, que en estos días los departamentos de TIs la están tomando mucho en cuenta por las oportunidades de negocio que esta ofrece.
Fuentes consultadas
Booth, D.; Hass, H.; McCabe, F.; Newcomer, E.; Champion, M.; Ferris, C. & Orchard, D. (2004). Web Services Architecture. W3C Working Group. From http://www.w3.org/TR/ws-arch/
Dahan, U. (2008). Distributed Systems Conceptual Map. The Software Simplist, Enterprise Development Expert & SOA Specialist. From http://www.udidahan.com/2008/08/04/distributed-systems-concept-map/
Hagell, J. & Brown, J. S. (2001) Your Next IT strategy. Harvard Business Publishing Corporation. From http://tailieu.athena.edu.vn/Ky%20Nang%20IT/Kinh%20Doanh%20IT/Your%20Next%20IT%20Strategy%20-%20Harvard%20Business%20Review.pdf
Natis, Y. V. (2003). Service-Oriented Architecture Scenario. Gartner Reseach. (ID: AV-19-6751). From http://www.gartner.com/resources/114300/114358/114358.pdf
Singla, V. (2009). The Overlapping Worlds of SaaS and SOA: How SaaS and SOA will enable “IT as a Service”. Cloud Computing Journal. From http://www.dosideas.com/noticias/java/314-introduccion-a-los-servicios-web-restful.html
Sprott, D. & Wilkes, L. (2004). Understanding Service-Oriented Architecture. Microsoft Architect Journal. From http://msdn.microsoft.com/en-us/library/aa480021.aspx
Tilkov, S. (2007). A Brief Introduction to REST.InfoQ. From http://www.infoq.com/articles/rest-introduction
Tyagi, S. (2006). RESTful Web Services. Oracle. From http://java.sun.com/developer/technicalArticles/WebServices/restful/
WIKIPEDIA. (2010). Representational State Transfer. Wikipedia, the free encyclopedia. From http://en.wikipedia.org/wiki/Representational_State_Transfer








Necesito saber soluciones WEB ORIENTED para SOA, dónde puedo buscar?