La interoperabilidad basada en modelos ( MDI ) es un marco metodológico que proporciona un soporte conceptual y técnico para hacer empresas interoperables utilizando ontologías y anotaciones semánticas, siguiendo los principios del desarrollo basado en modelos (MDD). [1] [2]
Descripción general
La idea inicial de los trabajos en MDI fue la aplicación de métodos y técnicas basados en modelos para resolver problemas de interoperabilidad desde el nivel de negocio hasta el nivel de datos.
Las tres ideas principales del enfoque de interoperabilidad basada en modelos (MDI) son:
La interoperabilidad [3] debe lograrse en diferentes niveles: Negocio, Conocimiento, Aplicación y Datos.
La idea principal es seguir un enfoque de Ingeniería Dirigida por Modelos (MDE) [1] [2] . Por lo tanto, se promueve un uso sistemático de modelos como artefactos de ingeniería primarios a lo largo del ciclo de vida de la ingeniería combinado con lenguajes de modelado específicos del dominio y motores y generadores de transformación.
Se necesita el uso de ontologías y anotaciones semánticas para realizar la transformación del modelo desde el nivel empresarial al nivel de código. [4]
Historia
MDI se inició en 2004 con el inicio de dos importantes proyectos de investigación:
INTEROP NoE (Red de Excelencia en Investigación de Interoperabilidad para Aplicaciones y Software de Empresas en Red, FP6-IST 508011). [5]
ATHENA IP (Proyecto Integrado de Tecnologías Avanzadas para la Interoperabilidad de Redes Empresariales Heterogéneas y sus Aplicaciones) (FP6-IST-507849). [6]
Ambos proyectos cuentan con el apoyo de la Comisión Europea y se han centrado tanto en la definición de un marco metodológico como en la aplicación de MDI en casos concretos.
Temas de MDI
Marco MDI (NoE INTEROP)
El marco MDI [7] [8] dentro de INTEROP se define:
Desde el punto de vista conceptual: proporcionar un Modelo de Referencia en el que se propone un Modelo de Interoperabilidad definido en diferentes niveles de abstracción.
Desde el punto de vista metodológico: proporcionar el Método de Interoperabilidad Dirigida por Modelos (MDI) como un método (principio y estructura) para permitir Aplicaciones de Software Empresariales (ESA) interoperables, comenzando desde el nivel del Modelo Empresarial en lugar de desde el nivel de código y utilizando un enfoque impulsado por modelos, combinado con el uso de ontologías y anotaciones semánticas.
Desde el punto de vista tecnológico: proporcionar soporte semántico vertical y horizontal para realizar transformaciones de modelos.
El modelo de referencia
El modelo de referencia propuesto para el enfoque MDI muestra los diferentes tipos de modelos que es posible realizar en diferentes niveles de abstracción y las transformaciones sucesivas del modelo que se necesitan llevar a cabo.
Los diferentes niveles de abstracción son necesarios para hacer posibles las transformaciones de modelos y reducir la brecha existente entre los modelos empresariales y el nivel de código. La definición de los distintos niveles se basó en la Arquitectura Dirigida por Modelos (MDA) , que define tres niveles de abstracción: CIM, PIM y PSM. Además, introdujimos una partición del nivel CIM en dos subniveles para reducir la brecha entre los niveles CIM y PIM. También se definió un Modelo de Interoperabilidad en los diferentes niveles de abstracción propuestos anteriormente.
Un ejemplo de este Modelo de Referencia para MDI se puede ver en la siguiente figura. En esta imagen se muestran en cada uno de los niveles propuestos los diferentes tipos de modelos que se pueden realizar (GRAI [9] en el nivel CIM superior, y UML en los demás niveles), y el objetivo final de hacer interoperables dos ESA, el ERP del franquiciador y el CRM del franquiciado.
Método de interoperabilidad basado en modelos
El método de interoperabilidad impulsado por modelos (método MDI) es un método impulsado por modelos que se puede utilizar para dos empresas que necesitan interoperar no solo a nivel de código sino también a nivel de modelado empresarial con un soporte ontológico con el objetivo final de mejorar su rendimiento.
Utiliza transformaciones de modelos para lograr la interoperabilidad definiendo modelos y un Modelo de Interoperabilidad en diferentes niveles de abstracción según un enfoque MDA y dividiendo el nivel CIM en dos subniveles, es decir, nivel CIM Superior (TCIM) y nivel CIM Inferior (BCIM).
Utiliza una ontología común para soportar estas transformaciones y resolver problemas de interoperabilidad a nivel semántico.
El método MDI propuesto para resolver problemas de interoperabilidad, como su nombre lo indica, se basa en el enfoque MDA. Además, para la definición de este método se aplicaron los siguientes principios:
El método MDI está organizado como un proceso iterativo como el Proceso Unificado (UP) y otros Procesos Orientados a Objetos.
La siguiente imagen muestra las principales características del Método MDI, en la que las áreas verdes dan el esfuerzo estimado relacionado con cada fase y flujo de trabajo:
Sus fases principales, representadas en las columnas: describen cuatro fases correspondientes al paso de un nivel de abstracción a otro inferior.
Sus principales flujos de trabajo, especialmente los tres flujos de trabajo de procesos relacionados con los tres componentes principales del método MDI: el Modelo de Interoperabilidad, la Ontología Común de Interoperabilidad y la Transformación del Modelo.
Marco MDI (IP ATHENA)
El marco MDI [10] [11] [12] de ATHENA ofrece orientación sobre cómo se debe aplicar la MDD para abordar la interoperabilidad. El marco está estructurado en tres áreas de integración principales:
Integración conceptual, que se centra en conceptos, metamodelos, lenguajes y relaciones entre modelos. Nos proporciona una base para sistematizar diversos aspectos de la interoperabilidad de modelos de software.
Integración técnica, que se centra en los entornos de desarrollo y ejecución de software. Nos proporciona herramientas de desarrollo para desarrollar modelos de software y plataformas de ejecución para ejecutar modelos de software.
Integración aplicativa, que se centra en metodologías, estándares y modelos de dominio. Nos proporciona pautas, principios y patrones que pueden utilizarse para resolver problemas de interoperabilidad de software.
Integración conceptual
El modelo de referencia para la integración conceptual se ha desarrollado desde un punto de vista MDD centrándose en las aplicaciones empresariales y el sistema de software.
Según la MDA, un modelo independiente de la computación (CIM) corresponde a una vista definida desde un punto de vista independiente de la computación. Describe el contexto empresarial y los requisitos empresariales para el sistema o sistemas de software. Un modelo independiente de la plataforma (PIM) corresponde a una vista definida desde un punto de vista independiente de la plataforma. Describe las especificaciones de software independientemente de las plataformas de ejecución. Un modelo específico de la plataforma (PSM) corresponde a una vista definida desde un punto de vista específico de la plataforma. Describe la realización de sistemas de software.
Integración técnica
El modelo de referencia de integración técnica promueve el uso de soluciones orientadas a servicios donde un sistema de software y, más generalmente, un sistema proporcionan un conjunto de servicios requeridos por las empresas y los usuarios de la empresa.
Integración aplicativa
El modelo de referencia para la integración aplicativa se ha desarrollado con el fin de enfatizar las dependencias entre los diferentes modelos y vistas para lograr la interoperabilidad.
Transformaciones de modelos
La transformación de modelos es uno de los enfoques clave que se utilizan para respaldar el método MDI. Este enfoque se utiliza tanto en la dimensión horizontal como en la vertical del modelo de referencia para MDI. Todas las transformaciones de modelos realizadas se basan en la arquitectura de transformación genérica. [13]
Soporte semántico
Los siguientes servicios: verificación de la consistencia de los modelos, soporte para el descubrimiento automático de mapas entre modelos heterogéneos y definición de una transformación que preserve la semántica pueden ayudar a MDI a abordar cuestiones tanto verticales como horizontales.
Cuestiones verticales : apoyo semántico con el objetivo de:
Proporcionar una formalización basada en la lógica de partes de modelos a través de anotaciones semánticas que facilitan la reutilización, la referencia cruzada y la terminología inequívoca.
Seguimiento de los cambios (entre las diferentes capas de transformaciones MDD).
Formalizar el conocimiento delta utilizado en transformaciones de enriquecimiento semántico (es decir, las transformaciones de modelos más abstractos a modelos más detallados).
Cuestiones horizontales : apoyo semántico con el objetivo de:
Realizar análisis de desajustes semánticos entre los modelos de diferentes empresas.
Representar correspondencias de modelos entre empresas mediante anotaciones semánticas.
Creación de reglas de conciliación para realizar la conciliación de datos, servicios y procesos de negocio.
^ ab B. Humm, U. Schreier, J. Siedersleben. Desarrollo impulsado por modelos: puntos críticos en los sistemas de información empresarial, ECMDA-FA 2005, LNCS 3748, págs. 103 – 114, 2005
^ ab P. Mohagheghi, V. Dehlen, Tor Neple. Definiciones y enfoques de la calidad de modelos en el desarrollo de software basado en modelos: una revisión de la literatura, Information and Software Technology, 51 (2009) 1646–1669
^ D. Chen, Guy Doumeingts . Iniciativas europeas para desarrollar la interoperabilidad de las aplicaciones empresariales: conceptos básicos, marco de referencia y mapa de referencia, Annual Reviews in Control, Volumen 27, Número 2, 2003, páginas 153-162
^ Gregory Zacharewicz , Saikou Diallo, Yves Ducq, Carlos Agostinho, Ricardo Jardim-Goncalves, Hassan Bazoun, Zhongjie Wang, Guy Doumeingts . Enfoques basados en modelos para la interoperabilidad de los sistemas de información empresarial de próxima generación: estado del arte y desafíos futuros. Sistemas de información y gestión de comercio electrónico, Springer Verlag, 2016 https://dx.doi.org/10.1007/s10257-016-0317-8
^ INTEROP NoE (Red de excelencia en investigación de interoperabilidad para aplicaciones y software de empresas en red, FP6-IST 508011), http://www.interop-vlab.eu/
^ ATHENA IP (Proyecto integrado de tecnologías avanzadas para la interoperabilidad de redes empresariales heterogéneas y sus aplicaciones) (FP6-IST-507849), http://cordis.europa.eu/fetch?CALLER=PROJ_ICT&ACTION=D&CAT=PROJ&RCN=72762
^ Entregables de INTEROP NoE http://interop-vlab.eu/ei_public_deliverables/interop-noe-deliverables
^ Actas del Primer Taller Internacional sobre Interoperabilidad Basada en Modelos para Sistemas de Información Sostenibles (MDISIS'08) http://ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/Vol-340/
^ D. Chen, Bruno Vallespir , Guy Doumeingts , Metodología integrada GRAI y su aplicación a la arquitectura y metodología de referencia empresarial genérica, Computers in Industry, Volumen 33, números 2 y 3, septiembre de 1997, páginas 387-394
^ Entregables de IP de ATHENA http://interop-vlab.eu/ei_public_deliverables/athena-deliverables
^ Marco de interoperabilidad impulsado por modelos ATHENA http://www.modelbased.net/mdi/index.html
^ B. Elvesæter, A. Hahn, AJ Berre, T. Neple (2006) Hacia un marco de interoperabilidad para el desarrollo basado en modelos de sistemas de software. INTEROPERABILIDAD DE SOFTWARE Y APLICACIONES EMPRESARIALES. DOI: 10.1007/1-84628-152-0_36
^ F. Jouault, F. Allilaire, J. Bézivin, I. Kurtev, ATL: Una herramienta de transformación de modelos, Science of Computer Programming, Volumen 72, Números 1 y 2, 1 de junio de 2008, Páginas 31-39