aproximaciones a la integración de información y aplicaciones

Anuncio
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012, p. 1-10
ISSN 1729-3804
APROXIMACIONES A LA INTEGRACIÓN DE INFORMACIÓN Y
APLICACIONES
1
2
3
Caridad Anías Calderón , Julio Cesar Jerez Camps , Yinett Mazón Fernández , Joan Manuel Granadillo
1
4
Dpto de Telecomunicaciones ISPJAE, 2,3,4DISERTIC, ISPJAE,
[email protected]
RESUMEN
Hoy en día las organizaciones poseen una amplia gama de procesos de negocios automatizados
mediante las Tecnologías de la Información (TI).Los sistemas concebidos a partir de dichos procesos en
su mayoría son completamente independientes unos de otros, complejizando significativamente la tarea
de los usuarios que los consultan. Teniendo en cuenta esta situación y aprovechando los continuos
avances en esta esfera, es posible construir herramientas o sistemas que permitan la integración de los
distintos servicios existentes de un modo sencillo y que a su vez, a partir de la interacción entre ellos,
surjan nuevas prestaciones. En este trabajo, centrándose en una definición del estado del arte de la
integración de aplicaciones e información se valora la viabilidad de definir un modelo de integración
basado en SID (SharedInformationData Model) para los sistemas, con determinado desarrollo
informático, existentes en una organización teniendo en cuenta el grado de automatización de sus
procesos .
PALABRAS CLAVES: integración de información, integración de aplicaciones, modelo de datos común,
SID.
APPROACHES TO INFORMATION AND APPLICATIONS INTEGRATION
ABSTRACT
Corporate entities currently have a wide range of business processes modeled by the Computing
Technology and Communications (ICT). Systems designed from these processes are mostly completely
independent of each other, the task complexity it significantly users who consult. Given this situation
and making continued progress in this area, it is possible to build tools and systems for integrating
various existing in a simple and turn from their interaction, new features arise. The objective of this
work is to do research to define the state of the art in terms of the integration of applications and
information, being of crucial importance to assess the feasibility of defining an integration model based
on SID for existing systems in an organization with a particular software development (taking into
account the degree of automation of their constituent processes).
KEY WORDS: information integration, application integration, common data model, SID.
1
Sitio web: http://revistatelematica.cujae.edu.cu/index.php/tele
APROXIMACIONES A LA INTEGRACIÓN DE INFORMACIÓN Y APLICACIONES
INTRODUCCIÓN
Usualmente en las organizaciones se cuenta con una amplia gama de procesos de negocios
automatizados, mediante las Tecnologías de la Información (TI), que dan lugar a la existencia en estas de
disímiles sistemas informativos siendo difícil para los usuarios correlacionar la información que ofrecen
de forma coherente.
En este artículo, con vistas a resolver la problemática antes planteada, se analiza el estado del arte en la
integración de información y de los conceptos relacionados lo que permite una clasificación de la
metodología usada para integrar datos, aplicaciones o información y definir los enfoques principales a
tener en cuenta para esta integración. Además se justifica la viabilidad de emplear modelos de datos
comunes, en particular de SID (SharedInformationData Model), para la integración de información.
METODOLOGÍAS PARA INTEGRACIÓN
Existen diferentes metodologías para integrar aplicaciones que se concibieron de forma independiente,
estas son:
• Integración de datos
• Integración de Aplicaciones Empresariales (EAI)
• Integración de Información Empresarial (EII)
Integración de datos
La integración de datos es el proceso de combinar información que reside en diferentes fuentes y
proveer a los usuarios de una vista unificada de ella. Un exponente de este concepto son los almacenes
de datos (Data Warehouse). En ellos, datos de distintas fuentes son extraídos, transformados y cargados
(ETL) dentro del almacén compartiendo el mismo esquema. Esta forma de integración se considera
estrechamente acoplada debido a que los datos residen juntos en un mismo repositorio en el momento
de consultarlos. Los principales problemas asociados a este tipo de arquitectura están relacionados con
la actualización de la información, por ejemplo, cuando una fuente original es actualizada, el almacén de
datos contiene todavía la información anterior debiendo ser ejecutado nuevamente el proceso ETL para
que la actualización sea propagada.
Integración de Aplicaciones Empresariales (EAI)
La Integración de Aplicaciones Empresariales (EAI por sus siglas en inglés) se define como el uso de
principios de la arquitectura de software y sistemas informáticos para integrar un conjunto de
informaciones y procesos en una organización.
Las aplicaciones de gestión de información normalmente no se pueden comunicar entre sí para
compartir datos o reglas de negocio. Por esta razón, a estas aplicaciones a veces se les denomina islas de
automatización o silos de información. Esta falta de comunicación conduce a la ineficiencia debido a que
se duplican datos idénticos en lugares diferentes provocando, además, que sea más difícil la
automatización de procesos en apariencia simples.
2
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
Caridad Anías Calderón, Julio Cesar Jerez Camps, Yinett Mazón Fernández, Joan Manuel Granadillo
Empleando EAIse logra la integración de aplicaciones en una única organización, permitiendo simplificar
y automatizar los procesos de negocio evitando, al mismo tiempo, tener que realizar cambios radicales
en las aplicaciones existentes y sus estructuras de datos. De esta forma, EAI representa el intercambio
de datos y procesos de negocios relacionados entre cualquier aplicación u origen de datos en una
organización.[1]
Un gran reto para la EAI es que, los distintos sistemas que deben ser integrados entre sí, a menudo
residen en diferentes sistemas operativos y utilizan diferentes soluciones de bases de datos y diferentes
lenguajes.
Existen múltiples contextos en los cuales EAI puede ser utilizado, algunos de ellos son:
• Integración de Datos (información): Garantiza la consistencia de la información en varios sistemas.
• Integración de Procesos: Vincula los procesos de negocio a través de aplicaciones.
• Independencia de proveedores: Al introducir en el sistema EAI las políticas de negocio o reglas de
las aplicaciones se evita que tengan que ser implementadas nuevamente cuando las aplicaciones se
sustituyen por las de otro proveedor.
• Interfaz común: Provee una única interfaz a un grupo de aplicaciones evitando que los usuarios
interactúen con múltiples paquetes de software.[2, 3]
Existen dos patrones en la aplicación de sistemas EAI:
Mediación: Cuando el sistema EAI actúa como intermediario o interfaz de comunicación entre múltiples
aplicaciones. En este patrón siempre que en una aplicación ocurra un evento dado, por ejemplo una
nueva información generada o una nueva transacción completada, un módulo de integración en el
sistema EAI es notificado, el cual, entonces, propaga los cambios a las demás aplicaciones.
Federación: En este patrón, el sistema EAI actúa como interfaz externa para múltiples aplicaciones.
Todos los accesos desde el 'mundo exterior' a cualquiera de las aplicaciones se gestionan por el sistema
EAI. Este sistema atiende las solicitudes en nombre del solicitante y se configura para exponer sólo la
información pertinente.
Ambos patrones se utilizan a menudo simultáneamente. Un mismo sistema EAI puede mantener
múltiples aplicaciones en sincronización (mediación), mientras que satisface las solicitudes de servicio
que los usuarios externos hacen a estas aplicaciones (federación).
Los sistemas EAI poseen módulos que procesan la integración de múltiples operaciones simultáneas, en
que participan, en un momento determinado. Estos módulos de integración se suscriben a
determinados tipos de eventos y procesos que reciben notificaciones cuando se producen dichos
eventos. Estos módulos pueden ser implementados de diferentes maneras: en sistemas EAI basados en
Java, estos podrían ser aplicaciones Web o JavaBeans Empresariales (EJBs) o incluso Objetos Planos
Antiguos de Java (POJOs) que se ajustan a las especificaciones del sistema EAI.[2]. En sistemas basados
en .Net, pudieran ser igualmente aplicaciones web o controles Web de usuarios que encapsulen
subconjuntos de la lógica de negocio de un sistema EAI.
3
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
APROXIMACIONES A LA INTEGRACIÓN DE INFORMACIÓN Y APLICACIONES
Un sistema EAI podría participar en la integración de múltiples operaciones simultáneas en un momento
determinado, cada tipo de integración está siendo procesado por un módulo de integración. Los
módulos de integración se suscriben a determinados tipos de eventos y procesos, recibiendo
notificaciones cuando se producen dichos eventos. Estos módulos pueden ser implementados de
diferentes maneras: en sistemas EAI basados en Java, estos podrían ser aplicaciones Web o JavaBeans
Empresariales (EJBs) o incluso Objetos Planos Antiguos de Java (POJOs) que se ajustan a las
especificaciones del sistema EAI.[2]. En sistemas basados en .Net, pudieran ser igualmente aplicaciones
web o controles web de usuarios que encapsulen subconjuntos de la lógica de negocio de un sistema
EAI.
Entre las ventajas de los EAI se encuentran:
• Posibilita el intercambio de información entre los sistemas en tiempo real.
• Permite encadenar los procesos de negocio y ayuda a incrementar la eficiencia organizacional.
• Mantiene la integridad de la información entre varios sistemas.
Como desventajas de los EAI se tienen:
• Costos de desarrollo muy altos, especialmente para pequeños y medianos negocios.
• Las implementaciones de EAI consumen mucho tiempo y requieren muchos recursos.*2+
Integración de Información Empresarial (EII)
EII permite la integración de datos procedentes de múltiples sistemas en una representación única,
coherente y orientada hacia la visualización y manipulación de los datos. Los datos son agregados,
reestructurados y renombrados, si es necesario, y luego presentados al usuario.
Proporcionar un enfoque unificado de los datos procedentes de sistemas disímiles conlleva un conjunto
de requisitos y restricciones. En primer lugar, los datos deben ser accesibles en "tiempo real", esto
significa que es necesario acceder a los sistemas directamente en lugar de acceder a datos previamente
capturados que pueden no estar actualizados. En segundo lugar, la consistencia de los datos entre
diferentes sistemas, por ejemplo su semántica y significado, debe resolverse pues diferentes sistemas
pueden representar los mismos datos con diferentes nombres y formatos que son relevantes solo para
sus respectivos usos, pero que requieren algún tipo de relación para el usuario final a fin de serles útil.
EII, teniendo en cuenta los datos involucrados, elimina las duplicaciones, comprueba la validez, adapta
los nombres, reformatea los valores, etc. Sin EII todo esto, por lo general, es realizado manualmente
por el usuario de los sistemas [4].
Para lograr la integración real de información es necesaria la implementación de una Arquitectura
Orientada a Servicios (SOA). Esto proporciona un mecanismo de acceso universal a todos los sistemas a
través de servicios Web y una representación de datos universal a través de XML. Una arquitectura SOA
apoya la integración y el desarrollo de la estructuración de la información, los sistemas transaccionales y
los sistemas basados en contenido.[4]
4
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
Caridad Anías Calderón, Julio Cesar Jerez Camps, Yinett Mazón Fernández, Joan Manuel Granadillo
EII utiliza las consultas para recoger e integrar datos desde múltiples orígenes. Una consulta EII es una
consulta federada, formulada contra una vista integrada de los orígenes de datos. Para ejecutar una
consulta federada, un servidor EII encuesta los orígenes de datos y en ellos obtiene los datos relevantes,
procesándolos en el contexto de la vista de aplicación. Un enfoque simplista que algunos de los
primeros proveedores de EII utilizaron, era extraer los datos de todos los orígenes en un procesador de
consultas y procesarlos centralmente.
Para entender por qué el enfoque simplista no puede proporcionar resultados aceptables, sólo hay que
considerar el ejemplo de una consulta de unión en la que se unen dos tablas muy grandes, de dos
orígenes de datos diferentes. Cada tabla se convertirá a XML, aumentando su tamaño en
aproximadamente tres veces, se trasladará a través de la red y luego se realizará la operación de unión.
Esto provoca dos grandes problemas de rendimiento: una enorme cantidad de datos se mueve a través
de la red y la operación de unión no podrá ser optimizada.
Dado que las fuentes de datos a integrar se encuentran en diferentes hardwares, sistemas operativos y
sistemas de bases de datos, una única consulta a un motor EII se descompone en varias consultas
componentes que se distribuyen a las fuentes de datos, y los resultados de las componentes deben ser
unidos en un punto de ensamblaje. El punto de ensamblaje puede ser un centro único o puede ser uno
de los orígenes de datos.
Esta breve descripción del procesamiento de consultas en un motor de EII indica claramente que los
factores de rendimiento crítico en la EII se referirán a la arquitectura distribuida del motor de EII y su
capacidad para:
• Maximizar el paralelismo en el procesamiento de las consultas.
• Reducir al mínimo la cantidad de datos enviados para su ensamblaje mediante la utilización de
reducciones locales y la selección de los mejores puntos de ensamblaje.
Estos problemas han sido tratados en profundidad por los diseñadores de servidores de bases de datos
en paralelo, por lo tanto técnicas similares a estas son utilizadas por los arquitectos de EII.[4, 5]
ENFOQUES DE INTEGRACIÓN
En un proceso de integración es extremadamente importante tener en cuenta el enfoque a adoptar.
Existen varios puntos de vista en dependencia del tipo de sistema que se construya. A continuación se
exponen dos de los enfoques más utilizados, así como una comparación entre los mismos.
Enfoque de integración Global As View (GAV)
En el enfoque Global As View (GAV), o esquema mediado, se construye en un repositorio cuyo esquema
(global) está constituido por la suma de los esquemas particulares de las fuentes de datos que participen
en el sistema. En este caso resulta compleja la adición de nuevas fuentes de datos al repositorio, debido
a que es necesario redefinir el esquema global. Debido a lo anterior, este enfoque es más adecuado
cuando se plantea la integración en entornos donde las fuentes de información no cambian
regularmente.[7]
5
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
APROXIMACIONES A LA INTEGRACIÓN DE INFORMACIÓN Y APLICACIONES
Local As View (LAV)
En el enfoque Local As View (LAV), o esquemas fuentes, se define una vista para cada origen de datos
participante que describe cuáles datos pueden ser encontrados. En este caso la tarea de determinar
cómo se recuperará la información y qué parte de ésta se mostrará recae en el procesador de consultas
(adaptador). Este enfoque es más adecuado cuando se plantea la integración en entornos donde las
fuentes de información son propensas al cambio.[7]
LAV vs. GAV
GAV tiene como ventaja la ejecución de las consultas globales de forma eficiente, mientras que LAV
permite agregar o eliminar fuentes de información de forma simple.
En la tabla 1 se brinda una comparación resumida entre ambos enfoques. [7]
Tabla 1: Comparación entre los enfoques LAV y GAV.
MODELO DE DATOS COMÚN
Un Modelo de Datos Común (MDC), también conocido como modelo de datos canónico o modelo
común, es un modelo de datos independiente de las aplicaciones que describe la estructura y la
semántica de los procesos de una entidad. De manera general, un modelo de datos común puede
contener la descripción de toda la información relativa a una organización. Estos modelos pueden ser
muy extensos por lo que en la obtención del MDC los resultados del análisis costo beneficio pudieran ser
cuestionables y, por ello, a menudo solo incluyen la información que va a ser integrada por las
aplicaciones. Una práctica común es usar el modelo de información de la fuente de datos dominante en
la entidad, como base del modelo de datos común. Algunas organizaciones se asocian entre ellas para
desarrollar un modelo de datos para la información que se maneja en su esfera, estos modelos tienen
gran probabilidad de ser aceptados como estándares en la esfera en cuestión. Las organizaciones que
los usan adoptan solo la parte que describe su modelo de negocio.[8, 9]
Integración a partir de un modelo de datos común
Al utilizar un modelo de datos común para la integración se está estableciendo una capa para el
intercambio de información. Esta forma de integración tiene múltiples ventajas, entre las cuales
podemos nombrar:
6
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
Caridad Anías Calderón, Julio Cesar Jerez Camps, Yinett Mazón Fernández, Joan Manuel Granadillo
• La eliminación de la llamada “Integración Espagueti” donde cada aplicación se comunica con el resto
punto a punto.
• Reducción del número de transformaciones requeridas para la comunicación entre las aplicaciones,
solo es necesaria la transformación hacia el modelo de datos común.
• Se logra llevar las fuentes de datos de la entidad a una estructura común de información.
• La implementación de los cambios que puedan surgir se hace más sencilla, teniendo en cuenta que
en algunos de los casos pueden ser ejecutados al nivel del modelo de datos común mediante simples
transformaciones.[8]
Los modelos comunes de información se traducen a un conjunto de modelos de datos. Cada modelo de
datos está optimizado para una combinación específica de protocolo de acceso / repositorio, que se
utiliza para manejar tipos de datos particulares. Esto es necesario porque la gestión de los datos es
diversa en naturaleza, y no es posible que un protocolo de acceso / repositorio pueda manejar la gestión
de todos los datos simultáneamente. Precisamente por lo anterior es necesario disponer de un único
modelo común de información pues si existen varios modelos de información la consistencia de una
determinada entidad no se podrá garantizar a través de diferentes aplicaciones en diferentes
repositorios.
Modelo de datos e información compartida (SID)
El Modelo de Datos e Información Compartida (SID)[10] se emplea por el TMF (TeleManagementForum)
para la gestión de las redes y servicios de telecomunicaciones y está formado por un conjunto de
modelos de datos, cada uno de los cuales abarca uno o más dominios de gestión. El SID es un modelo de
información [11] independiente del tipo de repositorio, protocolo de acceso a datos, software de
aplicación y plataforma. Su propósito es definir una estructura común de información, características,
comportamiento y relaciones entre las partes componentes de una entidad de gestión de
telecomunicaciones.
El SID no necesariamente tiene que ser utilizado por completo al diseñar un modelo de datos e
información compartida, o sea, pueden solo tomarse del mismo los elementos que son aplicables al
problema que se quiere resolver en la organización.
El SID ofrece uno o más modelos de datos para usar y compartir información que cumpla con sus
estándares, los cuales están presentes en los componentes NGOSS (New Generation Operation Software
System) del TMF.[12]
¿Por qué se valora definir un modelo de integración basado en SID para los sistemas de gestión de
información existentes en una organización?
Un modelo de datos e información compartida como SID va más allá de otros enfoques más limitados
pues se extiende por las aplicaciones y sus respectivos orígenes de datos. En otras palabras, con este
tipo de modelos es posible definir todas las relaciones de información, datos y significados que existen
dentro de la organización. Como es de esperarse, esto no es tan sencillo de implementar por lo cual los
modelos compartidos no son frecuentemente utilizados. Sin embargo, su importancia es cada vez más
reconocida y es el sector de las telecomunicaciones quien está liderando el camino con SID
7
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
APROXIMACIONES A LA INTEGRACIÓN DE INFORMACIÓN Y APLICACIONES
Uno de los principales objetivos de SID no es la interconexión de los sistemas, sino lograr un alto grado
de compatibilidad a la hora de definir una entidad. No basta con que los datos se almacenen utilizando
la misma tecnología de bases de datos, si las entidades en cada sistema están definidas de manera
distinta, resulta muy difícil lograr la integración entre estos sistemas. Es aquí donde SID juega su papel al
definir entidades comunes con lo cual se realiza un aporte fundamental para la estandarización de la
información.
El análisis realizado por los autores del estado del arte de la integración de aplicaciones e información y
de SID, desde un punto de vista conceptual, los lleva a considerar que es posible asignar las definiciones
de entidades existentes en los sistemas de gestión de información al modelo de datos e información
común, idea en la que trabajan.
8
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
Caridad Anías Calderón, Julio Cesar Jerez Camps, Yinett Mazón Fernández, Joan Manuel Granadillo
CONCLUSIONES
A partir del análisis del estado del arte de la integración de información y de los conceptos relacionados
se tiene que es posible agrupar las diferentes metodologías existentes para este propósito en tres
grandes grupos: “Integración de datos”, “Integración de Aplicaciones Empresariales” e “Integración de
Información Empresarial”. Teniendo en cuenta que EAI tiende a centrarse en aplicaciones arbitrarias,
mientras que EII se centra en los datos y en la consulta a los mismos.
Al escoger cualquiera de ellas, es necesario, además, tener en cuenta la existencia de los dos enfoques
principales de integración, “Local As View” y “Global As View”. Además, es posible mezclar
metodologías y enfoques a la hora de abordar un proyecto de integración sin perder de vista a quién va
dirigido dicho proyecto y quiénes serán sus clientes siendo necesario involucrarlos tempranamente en la
concepción e implementación de la integración.
El análisis realizado permitió valorar la viabilidad de definir un modelo de integración, basado en el
modelo común de información SID, para los sistemas que existen en una organización que pueden tener
diferentes grado de automatización, que no fueron concebidos para ser integrados y que poseen un
determinado desarrollo informático. En la actualidad los autores trabajan en esta dirección.
9
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
APROXIMACIONES A LA INTEGRACIÓN DE INFORMACIÓN Y APLICACIONES
Referencias Bibliográficas
1. Gable, J., Enterprise application integration. Information Management Journal. , 2002 March/April
2009(1).
2.Enterprise
application
integration.
[cited
http://en.wikipedia.org/wiki/Enterprise_application_integration.
2009
1];
Available
from:
3. Lam, W., Information Systems Integration and Enterprise Application Integration (EAI) Adoption: A
Case from Financial Services. Journal of Information Systems Education, 2007.
4. Taylor, J. Enterprise Information Integration: A New Definition. 2004 [cited 2009 2]; Available from:
http://www.information-management.com/news/1009669-1.html.
5. Halevy, A.Y. (2005) Enterprise information integration: successes, challenges and controversies.
Volume,
6. Imhoff, C., Understanding the Three E's of Integration EAI, EII and ETL. Information Management
Magazine, 2005.
7. LiXu, D.W.E. Combining the Best of Global-as-View and Local-as-View for Data Integration [cited 2009
2]; Available from: http://www.deg.byu.edu/papers/PODS.integration.pdf
8. Džmuráň, M. Introduction to Data Integration Driven by a Common Data Model. *cited 2009 23-1];
Available
from:
http://www.progress.com/progress_software/worldwide_sites/cz/docs/uvod_do_datove_integrace_br.
pdf.
9. Linthicum, D. Build a Common Data Model. I dare you. 2009 20/2/2009 [cited; Available from:
http://www.ebizq.net/blogs/linthicum/2009/02/build_a_common_data_model_i_da.php.
10.
Hartley, C., SID GB922. Addendum 0: SID Primer, H. Hepburn, Editor. 2004, TeleManagement
Forum.
11.
Lee, Y.T., Information modelling from design to implementation in National Institute of
Standards and Technology. 1999.
12.
Faurer, C.C., TMF 053. The NGOSS Technology Neutral Architecture, in T. Richardson, Editor.
2005, TeleManagement Forum.
10
Revista Telem@tica. Vol. 11. No. 3, septiembre-diciembre, 2012. ISSN 1729-3804
Descargar