Un servicio es una funcin que est bien definida, en s misma, y no depende del contexto o el estado de otros servicios. La tecnologa de servicios Web es la tecnologa de conexin ms usada de arquitecturas orientadas a servicios.
Como un modelo de software distribuido, una SOA por lo general consta de tres partes principales: Productor (de servicios), consumidor (de servicios), directorio (de servicios). El modelo de la Arquitectura Orientada a Servicios segn IBM, est compuesto por tres participantes y tres operaciones fundamentales.
IBM defini ocho situaciones cuyos patrones y caractersticas hacen que el uso de SOA sea til.
Los puntos de entrada son conducidos tanto por necesidades de negocios como de IT y se clasifican basados en: Gente, Procesos, Informacin, Conectividad y Reuso.
Los escenarios, caen en una de estas dos categoras: funcional o de soporte. Los primeros mapean directamente con uno o ms de los puntos de entrada a SOA. Los de soporte, por su parte, hacen un corte a travs de todos ellos.
a. Escenarios funcionales: Creacin de un servicio. Conectividad de un servicio. Servicios de interaccin y colaboracin. Business Process Management. La informacin como un servicio.
b. Escenarios de soporte: Diseo SOA. Gobernancia SOA. Seguridad y administracin SOA.
Se toma inters del equipo ejecutivo y, de los responsables de desarrollo, en la arquitectura SOA: a) La arquitectura SOA ayuda a mejorar la agilidad y flexibilidad de las organizaciones:
Las empresas deben ser capaces de crear y producir nuevos productos y servicios para unos clientes y ciudadanos que son cada vez ms exigentes. Se necesita medios necesarios para interpretar los cambios del mercado de una forma ms precisa y rpida, lo que necesitan es conseguir que sus procesos de negocio sean capaces de ser adaptados al menos al mismo ritmo. El pensamiento tecnolgico tradicional, que normalmente intentaba crear una aplicacin nueva para cada proceso nuevo, nunca ha sido capaz de generar tal agilidad.
La arquitectura SOA se centra en las capacidades, no en las aplicaciones. El alto nivel de desacoplamiento e interoperabilidad proporcionado por la arquitectura SOA permite un alto grado de reutilizacin. Permite mayor facilidad y flexibilidad para adaptar y mejorar los procesos de las organizaciones segn los cambios de prioridad del negocio.
b) La arquitectura SOA permite una personalizacin masiva de las tecnologas de la informacin.
La informacin necesaria para desarrollar nuevos servicios o productos ya existe dentro de los sistemas de la organizacin, y la arquitectura SOA crea una forma ms fcil y rpida, menos costosa, de acceder a ella que en el pasado, y de utilizarla en la unidad que gestiona los clientes.
c) La arquitectura SOA permite la simplificacin del desarrollo de soluciones mediante la utilizacin de estndares de la industria y capacidades comunes de industrializacin.
La arquitectura SOA desacopla los tres componentes de una aplicacin: Presentacin, orquestacin de procesos y lgica de negocio. Estandariza la comunicacin entre cada una de las capas, favoreciendo a que el proceso de construccin se pueda dividir y por lo tanto industrializar ms fcilmente.
d. La arquitectura SOA permite aislar mejor a los sistemas frente a los cambios generados por otras partes de la organizacin (proteccin de las inversiones realizadas).
Los sistemas se organizan en mdulos. Creacin de un modelo flexible que pueda reconfigurarse en funcin de las necesidades del negocio, la arquitectura SOA reutiliza, de un modo efectivo. e. La arquitectura SOA permite alinear y acercar las reas de tecnologa y negocio.
SOA cubre la brecha entre la visin del negocio y la de sistemas, estableciendo un marco de dilogo con un lenguaje comn: los procesos de negocio. Las reas de negocio se centran en la definicin de los procesos de acuerdo a la estrategia y el modelo de negocio de la compaa. El rea de tecnologa implementa los procesos a partir de la utilizacin de servicios existentes y la creacin de nuevos cuando es necesario.
f. Mejorar la productividad de los empleados.
El acceso ptimo a los sistemas y la informacin y la posibilidad de mejorar los procesos permiten a las empresas aumentar la productividad individual de los empleados.
g) Potenciar las relaciones con clientes y proveedores.
Los procesos de fusin y compra de empresas se hacen ms rentables al ser ms sencilla la integracin de sistemas y aplicaciones diferentes.
La velocidad de intercambio de informacin entre sistemas es ms lenta.
Crear congestionamiento Perdida de alguna informacin importante.
Aunque el SOA aporta grandes beneficios, no implica que sea til para todas las empresas que deseen aplicar SOA en su arquitectura.
El proceso de migracin e adaptacin a la arquitectura SOA suele ser lento, esto es debido a que se tiene que tener en cuenta el alcance, saber dnde y cmo aplicarla en los sistemas que presente la empresa.
MULE ESB es un marco de mensajera ligera basada en Java que permite la rpida conexin e intercambio de datos entre aplicaciones. MULE utiliza una arquitectura orientada a servicios, permitiendo una fcil integracin de los sistemas existentes. Independientemente de las diferentes tecnologas, incluyendo JMS, Web Services, JDBC, HTTP y ms. Mule maneja todas las interacciones entre aplicaciones y componentes de manera transparente, sin importar si es que ellas se encuentran en la misma mquina virtual o en Internet, y sin importar el protocolo de transporte usado.
Mule se basa en ideas de las arquitecturas Enterprise Service Bus (ESB). La principal ventaja de un ESB es que permite que diferentes aplicaciones se comuniquen entre s, actuando como un sistema de trnsito para transportar datos entre las aplicaciones dentro de su intranet o a travs de Internet. En este ejemplo se utiliza dos servicios para crear un "hola mundo". Cuando se inicia la aplicacin, se le pedir que escriba su nombre, que es recibido por el primer servicio. El componente de servicio agrega un poco de texto a la cadena antes de pasarlo al segundo servicio, el cual aade el texto antes de escribir los resultados de vuelta a la consola