
| SOA |
|
|
|
|
LA NUEVA ETAPA EN LA EVOLUCIÓN DEL SOFTWARE
Las Arquitecturas Orientadas a Servicios (SOA, Service-Oriented Architecture) representan el último paso en la evolución de la arquitectura del software. SOA no es ni un producto ni una plataforma: es un enfoque constructivo, una filosofía que permitirá a las aplicaciones colaborar para resolver conjuntamente una gran variedad de problemas de negocio. El enfoque SOA implica un cambio significativo respecto al modelo tradicional de TI ya que, en lugar de estructurar las aplicaciones a base de funciones, componentes y objetos, pasa a estructurarlas alrededor del concepto de servicios, unos servicios que pueden ser expuestos tanto interna como externamente mediante un conjunto de tecnologías estándar para su uso por otras aplicaciones propias y de terceros. Las ventajas de la filosofía SOA son múltiples y la mayoría de ellas deriva de dos factores. En primer lugar, este enfoque hace posible la reutilización a gran escala del software, con lo que ello implica sobre la calidad, los costes y la facilidad de despliegue. En segundo, SOA independiza las aplicaciones de la infraestructura y la plataforma tecnológica. Los estudios realizados en el mercado de EE.UU. por las firmas más prestigiosas de analistas muestran un desigual grado de adopción de la filosofía SOA en empresas y organizaciones. Un 70% de las grandes corporaciones están aplicando este enfoque actualmente, frente al 22% de las medianas y pequeñas empresas. En todos los segmentos, SOA se ha adoptado principalmente a un nivel táctico para resolver problemas de integración interna, siendo la integración externa y las aplicaciones multicanal las siguientes en importancia. En todo caso, los analistas parecen coincidir en que en 2005 vamos a ser testigos de la generalización del enfoque SOA en la informática corporativa. Esta aceleración en la adopción de SOA no es ajena al hecho de que algunas tecnologías enfocadas en sustentar un modelo estándar para arquitecturas orientadas a servicios están alcanzando gran madurez y estabilidad. Nos estamos refiriendo entre otras a J2EE (Java 2 Enterprise Edition) y sobre todo a Web Services. Los Web Services se basan en un conjunto de protocolos mediante los cuales es posible publicar, descubrir y usar servicios de una manera estándar y tecnológicamente neutra. Un Web Service expone una interfaz estándar mediante la cual una aplicación, con independencia de la tecnología o la plataforma que la sustenta, puede solicitar al Servicio Web que realice su funcionalidad en nombre de la aplicación. Aun a pesar de cierta falta de madurez en algunas áreas de los estándares para Web Services (notablemente, la seguridad), estos se han convertido en la base para implantar Arquitecturas Orientadas a Servicios, especialmente en entornos multiplataforma. Barreras para SOA desde el punto de vista de integración de la información Una de los principales habilitadores y a la vez ventajas del enfoque SOA es la posibilidad de proporcionar un acceso consistente a toda la información relevante para la empresa como un servicio, de modo que pueda ser utilizada por cualquier aplicación. Esta posibilidad eliminaría los inconvenientes que crean los datos encerrados en los típicos “silos” de aplicación, y permitiría incorporar una mayor inteligencia a cualquier proceso de negocio. Sin embargo, existen algunas barreras que dificultan la creación de un servicio abstracto sobre las múltiples fuentes de información de la empresa. Fuentes heterogéneas Lamentablemente, sólo una parte de la información relevante para la empresa se encuentra en bases de datos relacionales. Mucha está contenida en ficheros de todo tipo, en la mayoría de los casos como texto libre sin una estructura definida. Otra gran proporción proviene de sistemas legados, sistemas propietarios que no es realista reemplazar pero que hacen difícil la explotación de su información por sistemas externos. Finalmente, el auge de la Web ha aportado información almacenada en sitios web, documentos XML e incluso Web Services. En resumen, podemos hablar de información almacenada en diferentes formatos y con diferentes grados de estructuración, desde lo totalmente estructurado hasta el contenido de estructura libre. Por ello, la posibilidad de tratar información heterogénea es un requisito indispensable para definir una capa unificada de acceso a la información. Fuentes dispersas A la heterogeneidad de las fuentes se añade su dispersión: las bases de datos, ficheros, etc. que la empresa necesita no sólo están generadas por las distintas aplicaciones y sistemas responsabilidad de la empresa y ubicadas dentro de su red. Cada vez más esta información es proporcionada por proveedores externos (p.ej., vía Web Services) o reside detrás de páginas y formularios de sitios web ajenos. En definitiva, la empresa en tiempo real necesita información dispersa por múltiples fuentes a la que hay acceder en tiempo real. Por ello, la capacidad de ir a buscar la información más actualizada, allí donde resida, y de manera óptima e inmediata es imprescindible a la hora de crear un servicio de acceso unificado a la información. En resumen, son necesarias nuevas herramientas capaces de definir una verdadera arquitectura de información de la empresa, que facilite el acceso a en tiempo real a todo tipo de fuentes heterogéneas, tanto internas como externas. EII, la solución a la integración de información Durante los últimos años han ido apareciendo en el mercado proveedores de productos EII (Enterprise Information Integration) diseñados para dar solución a los problemas descritos anteriormente. EII es una de las últimas herramientas aparecidas enfocadas en la integración de sistemas, y se diferencia de otras soluciones en su énfasis en la integración de información multifuente en tiempo real. Una herramienta EII proporciona una capa abstracta de acceso unificado a información heterogénea y dispersa, ocultando los detalles técnicos del acceso a cada fuente y permitiendo la definición de un modelo único de información. EII ofrece una interfaz estándar basada en el paradigma de las bases de datos y accesible como un Web Service que permite la creación de vistas particulares para diferentes usuarios y la realización de consultas precisas sobre el modelo de información. En resumen EII permite acceder a toda la información relevante para la empresa como si se tratara de una única base de datos virtual. EII aplica un mecanismo “pull” (frente al modelo “push”) en el que las consultas se distribuyen entre las distintas fuentes y los resultados son combinados. Además, al tratarse de un enfoque basado en el modelado de información y en consultas, es inherentemente declarativo (no procedimental) y por lo tanto mucho más sencillo y menos caro de diseñar y mantener. Así se consigue que la información de diversas fuentes esté disponible en tiempo real para múltiples aplicaciones, simplificando y acelerando el desarrollo y evitando que cada aplicación deba incorporar la lógica necesaria de acceso a cada fuente. En definitiva, independizando a las aplicaciones de las fuentes de información que necesitan usar. En este sentido EII complementa a otras herramientas de integración (como, por ejemplo, ETL y EAI) superándolas allí donde se requiere una integración de información multifuente y un acceso en tiempo real y donde la arquitectura de datos está sujeta a cambios o en transición. Este diferente enfoque requiere que los productos EII incorporen tecnologías especializadas como, entre otras, navegación y estructuración automáticas, optimización de consultas distribuidas, caching, navegación y estructuración automáticas, indexación y búsqueda en contenidos no estructurados, conectores con paquetes de aplicación y sistemas legados, y repositorios de metadatos. El papel de EII en las Arquitecturas Orientadas a Servicios Las herramientas EII pueden participar en la evolución hacia Arquitecturas Orientadas a Servicios en dos vertientes: enriqueciendo los datos internos con fuentes externas de información (especialmente, las provenientes de la Web) y creando servicios virtuales de datos corporativos. Combinación de fuentes externas e información interna Actualmente la Web es una herramienta de trabajo imprescindible para las empresas. Mediante un simple browser y últimamente accediendo a Web Services públicos, una empresa puede recabar información detallada sobre su mercado, competidores, clientes, socios, tecnologías, legislación, financiación, entorno económico, etc. Sin embargo, el potencial de esta información se multiplica cuando, gracias al EII, se la combina automáticamente con la que se obtiene de las fuentes internas. Esto proporciona a los usuarios algo que hasta ahora no habían tenido: una vista unificada de todos los datos dispersos que necesitan para realizar su trabajo. Un escenario típico es el de una aplicación de vista unificada de los clientes que integra información interna proveniente del CRM, el ERP, los sistemas de facturación, de incidencias, etc. con la información sobre crédito que ofrecen en sus sitios web las empresas especializadas, tanto vía páginas web (para su consulta por usuarios humanos) como vía Web Services. La herramienta EII permite definir una realidad única del cliente a partir de toda esa información y realizar consultas del tipo “Necesito la lista de todos los clientes que mantengan una deuda con nosotros superior a 3.000 € y que además tengan una mala calificación crediticia”, consultas que la herramienta EII distribuye de manera óptima entre las diversas fuentes internas y externas y cuyos resultados combina para presentárselos al usuario. Para hacer frente a este escenario las herramientas EII son capaces de incorporar los Web Services como un tipo más de fuente a integrar. Para aquellos casos en que la información no está disponible como un Web Service, sino como una página web accesible mediante browser, las herramientas EII más sofisticadas incorporan conectores inteligentes con sitios web capaces de realizar la navegación automática emulando el browser de un usuario humano, ejecutar las consultas sobre la página web, recopilar y estructurar la información e incorporarla al modelo unificado como si se tratara de una tabla de una base de datos. Creación de servicios virtuales de datos La mayoría de las grandes organizaciones poseen centenares de bases de datos de todo tipo (relacionales, jerárquicas, de objetos), además de información almacenada en ficheros, documentos, etc. A menudo, cuando dos empresas se fusionan, sus respectivas fuentes de datos perviven. Como resultado, los datos que necesitan las aplicaciones están distribuidos a lo largo de múltiples fuentes con diferentes lenguajes de consultas. Migrar o replicar los datos no resulta factible y el coste de la integración es habitualmente mayor que el valor de la información integrada. A la hora de unificar la arquitectura de las aplicaciones utilizando SOA es imprescindible una capa abstracta de acceso unificado a la información que oculte la complejidad y diversidad de la infraestructura subyacente. Las herramientas EII permiten crear un servicio virtual de datos, una capa accesible como un Web Service, de la que se servirán las aplicaciones cuando requieran información proveniente de una combinación de fuentes. Las aplicaciones consultarán al servicio utilizando los protocolos Web Services y la herramienta EII se ocupará de distribuir la consulta entre los diferentes sistemas (bases de datos, ficheros, Web Services) y de traducir, ensamblar y entregar los resultados. EII permite presentar el acceso a toda la información de la empresa como un servicio. Conclusiones
La definición de una arquitectura corporativa de información es clave para facilitar la evolución hacia Arquitecturas Orientadas a Servicios (SOA). Las herramientas EII (Enterprise Information Integration), por su capacidad para integrar en tiempo real fuentes de información heterogéneas y dispersas, ofreciendo un modelo unificado que combina toda esa información, son imprescindibles para crear servicios unificados de datos y para otras iniciativas de integración de información tales como las vistas unificadas de clientes, los cuadros de mando en tiempo real, la inteligencia competitiva y la gestión de datos maestros. La arquitectura de información que se define utilizando EII hace que SOA sea más inteligente y manejable.
VLADIMIR POSAVAC G. Gerente Comercial |
Servicios
Divisiones
Tecnologías
Patrocinadores

Av. Los Libertadores 6545, Huechuraba, Santiago de Chile fono:(562)4846400
Potenciado por Joomla! .
SOA


