3. En una empresa pueden coexistir varias aplicaciones, esto lleva a una serie de inconvenientes que aumentan el esfuerzo y el tiempo en que se responde a un requerimiento determinado. Uno de los inconvenientes es por ejemplo, ante aplicaciones diferentes probablemente desarrolladas en lenguajes diferentes, no poder acceder desde una de las aplicaciones hacia la otra para consultar algún dato. Mediante la aplicación de la Arquitectura SOA se pretende solucionar los inconvenientes antes mencionados. Dentro de la arquitectura SOA la funcionalidad se implementa en pequeños componentes autónomos reutilizables denominados servicios. SOA obtiene una integración de aplicaciones o componentes, uniendo la tecnología de información con las necesidades del negocio, logrando una respuesta rápida con un bajo acoplamiento, además de alcanzar un ambiente operativo integrado que provee servicios para integrar personas, procesos e información. INTRODUCCIÓN
4. SOA es una arquitectura que permite organizar mejor los sistemas de TI de una compañía. Define la utilización de diferentes servicios para obtener estructuras del negocio que permitan la agilidad de los procesos, y obtener una red de información dinámica que lleve al negocio a conseguir mayor eficiencia a menor costo. Además, está arquitectura está altamente desacoplada lo que la hace independiente del lenguaje de programación o de la plataforma en la que se use, también permite la interacción de terceros para incluir nuevos servicios, o mejorar los ya existentes. Entre las ventajas más evidentes e inmediatas, se encuentra la de ofrecer mayor flexibilidad y la de reutilizar procesos para acomodarlos en el nuevo sistema de información de la empresa, consiguiendo así la adaptación al cambio con el menor costo y tiempo posible. DEFINICIÓN
5. La Arquitectura SOA establece un marco de diseño para la integración de aplicaciones independientes de manera que desde la red pueda accederse a sus funcionalidades, las cuales se ofrecen como servicios . La forma más habitual de implementarla es mediante Servicios Web. ¿Qué es un servicio exactamente? Un servicio es una funcionalidad concreta que puede ser descubierta en la red y que describe tanto lo que puede hacer como el modo de interactuar con ella. Desde la perspectiva de la empresa, un servicio realiza una tarea concreta, es decir puede corresponder a un proceso de negocio tan sencillo como introducir o extraer un dato como “Código del Cliente”; pero también los servicios pueden acoplarse dentro de una aplicación completa que proporcione servicios de alto nivel, con un grado de complejidad muy superior. Por ejemplo: “introducir datos de un pedido”-, un proceso que, desde que comienza hasta que termina, puede involucrar varias aplicaciones de negocio. DEFINICIÓN
6.
7. En estos tiempos lo más importante para las organizaciones es la información, pero esta debe ser una información adecuada que esté disponible en el momento adecuado y con las personas adecuadas. Existen muchas organizaciones que presentan problemas derivadas de inconsistencias y arquitecturas con información defectuosa. Este problema debe ser solucionado, porque de lo contrario las empresas que se apoyan en la arquitectura SOA solo conseguirán gestionar información errónea de una manera eficaz. Esto quiere decir que SOA no puede solucionar problemas causados por una arquitectura organizacional defectuosa. Por otro lado es necesario tener claro que SOA depende de una vinculación flexible y no estricta de los servicios, con el fin de garantizar que la modificación de un servicio no afecte a los demás. Para lograr lo mencionado anteriormente sin cometer tantos errores es necesario actuar en todos los frentes: organización, metodología, herramientas y procedimientos. ASPECTOS A TENER EN CUENTA PARA UNA BUENA IMPLEMENTACIÓN DEL SOA:
9. SERVICIO WEB Los servicios Web son la forma más habitual de implementar SOA. Los servicios Web son aplicaciones que utilizan estándares para el transporte, codificación y protocolo de intercambio de información. Los servicios Web permiten la intercomunicación entre sistemas de cualquier plataforma y se utilizan en una gran variedad de escenarios de integración, tanto dentro de las organizaciones como con partners de negocios. Los servicios Web se basan en un conjunto de estándares de Comunicación, como son XML para la representación de datos, SOAP ( Simple Object Access Protocol ) para el intercambio de datos y el lenguaje WSDL ( Web Services Description Language ) para describir las funcionalidades de un servicio Web. Existen más especificaciones, a las que se denomina genéricamente como la arquitectura WS-*, que definen distintas funcionalidades para el descubrimiento de servicios Web, gestión de eventos, archivos adjuntos, seguridad, gestión y fiabilidad en el intercambio de mensajes y transacciones.
10. SOAP – PROTOCOLO SIMPLE DE ACCESO A OBJETOS Es un protocolo de mensajes entre computadores. SOAP especifica el formato de mensaje que accede e invoca a los objetos, más que un objeto en particular. SOAP no es más que un protocolo estándar que permite la comunicación y la interoperabilidad entre diversas aplicaciones Web desarrolladas bajo tecnologías diferentes. SOAP es un protocolo ligero para el intercambio de información en un entorno distribuido y descentralizado. Esta basado en el protocolo XML y consiste en tres partes: una envoltura que define una estructura para describir que contiene el mensaje y como procesarlo, un conjunto de reglas de codificación para expresar instancias de tipos de datos definidos para la aplicación y un convenio para representar las llamadas a procedimientos remotos y las respuestas. Web Services y SOAP hoy en día están siendo altamente utilizados en las grandes empresas del mundo pues le permiten a estas la cooperación e integridad entre ellas cuando trabajan en un proyecto en común, debido a que permite la interoperabilidad entre sus tecnologías.
11. XML– XML es un Lenguaje de Marca Extensible muy simple, pero estricto que juega un papel fundamental en el intercambio de una gran variedad de datos, es un lenguaje muy similar a HTML pero su función principal es describir datos y no mostrarlos como es el caso de HTML. XML es un formato que permite la lectura de datos a través de diferentes aplicaciones. XML será el lenguaje que nos garantizará el intercambio de cualquier tipo de información, sin que ocasione problemas de tipo "contenido" o de tipo "presentación". XML fue diseño para guardar, mantener y transportar la información y no para mostrarla a diferencia del HTML que muestra la información enfocándose en como se ve una pagina web,
12. ESB – Enterprise Service Bus uno de los componentes más importantes de una arquitectura orientada a servicios es el Enterprise Service Bus - ESB . Es una infraestructura de software que simplifica la integración y la reutilización flexible de componentes de negocios usando para ello una arquitectura SOA. La necesidad de un ESB surge de la complejidad de las organizaciones que deben coordinar e integrar sus procesos de negocio, sistemas operacionales y datos sin renunciar a la innovación tecnológica imprescindible para ser competitivos. Un ESB es la implementación de SOA, una arquitectura que permite mantener integrados los sistemas, nuevos y legados, en un estilo completamente distribuido e interoperable uno de los componentes más importantes de una arquitectura orientada a servicios es el Enterprise Service Bus - ESB .
13. RESUMEN Las soluciones SOA de Microsoft permiten a organizaciones de todos los tamaños integrar sus recursos de TI actuales y acceder a ellos, ensamblarlos dentro de procesos de negocio de gran complejidad y poner los resultados a disposición de los usuarios para lograr que la organización funcione de manera más eficiente. Esta estrategia “del mundo real” para la implementación de SOA que parte de una correcta comprensión de los problemas y condicionantes del negocio, permite a las organizaciones alinear sus recursos de TI con las necesidades de negocio en situaciones de cambio y evolución, y responder a los nuevos objetivos empresariales conforme se van presentando..