Model-driven interoperability
Model-driven interoperability is a methodological framework, which provides a conceptual and technical support to make interoperable enterprises using ontologies and semantic annotations, following model driven development principles.
Overview
The initial idea of works on MDI, was the application of model-driven methods and techniques for solving interoperability problems from business level down to data level.The three main ideas of model driven interoperability approach are:
- Interoperability should be achieved at different levels: Business, knowledge, application and data.
- The main idea is to follow a model driven engineering approach. Therefore, it is promoted a systematic use of models as primary engineering artefacts throughout the engineering life cycle combined with both domain-specific modelling languages and transformation engines and generators.
- The use of ontologies and semantic annotations is needed in order to perform model transformation from enterprise level to code level.
History
MDI was initiated in 2004 with the beginning of two important research projects:- INTEROP NoE.
- ATHENA IP .
MDI Topics
MDI Framework (INTEROP NoE)
MDI Framework within INTEROP is defined:- From conceptual point of view: providing a reference model in which is proposed an interoperability model defined at different levels of abstraction.
- From methodological point of view: providing the model driven interoperability method as a method to enable interoperable enterprise software applications, starting from the level of the enterprise model rather than from the code level and using a model-driven approach, combined with use of ontologies and semantic annotations.
- From technological point of view: providing vertical and horizontal semantic support in order to perform model transformations.
Model-driven interoperability method
Model driven interoperability method is a model-driven method that can be used for two enterprises that need to interoperate not only at the code level but also at enterprise modelling level with an ontological support with the final aim of improving their performances.- It uses model transformations to achieve interoperability defining models and an Interoperability Model at different levels of abstraction according to an MDA approach and dividing the computation independent model level into two sub-levels, that is to say, Top computation independent model level and bottom computation independent model level.
- It uses a common ontology to support these transformations and to solve interoperability problems at the semantic level.
- The MDI method is organised as an iterative process like unified process and other object-oriented processes.
- The MDI method also proposes semantic support like semantic of business vocabulary and business rules (SBVR).
- Its main phases, represented on the columns: they describe four phases corresponding to the passage from one level of abstraction to a lower one.
- Its main workflows, especially the three process workflows related to the three main components of the MDI method: the interoperability model, the common interoperability ontology and the model transformation.
MDI framework (ATHENA IP)
The MDI framework from ATHENA provides guidance on how MDD should be applied to address interoperability. The framework is structured in three main integration areas:- Conceptual integration, which focuses on concepts, metamodels, languages and model relationships. It provides us with a foundation for systematising various aspects of software model interoperability.
- Technical integration, which focuses on the software development and execution environments. It provides us with development tools for developing software models and execution platforms for executing software models.
- Applicative integration, which focuses on methodologies, standards and domain models. It provides us with guidelines, principles and patterns that can be used to solve software interoperability issues.
Conceptual integration
The reference model for conceptual integration has been developed from a MDD point of view focusing on the enterprise applications and software system.According to model-driven architecture, a computation independent model corresponds to a view defined by a computation independent viewpoint. It describes the business context and business requirements for the software system. A platform independent model corresponds to a view defined by a platform independent viewpoint. It describes software specifications independent of execution platforms. A platform specific model corresponds to a view defined by a platform specific viewpoint. It describes the realisation of software systems.
Technical integration
Technical Integration reference model promotes the use of service-oriented solutions where a software system and more generally a system provide a set of services required by the businesses and users of the enterprise.Applicative integration
The reference model for applicative integration has been developed in order to emphasise the dependencies between the different models and views to achieve interoperability.Model Transformations
Model transformation is one of the key approaches used to support the MDI Method. This approach is used in both horizontal and vertical dimension of the reference model for MDI. All model transformations performed are based on to the generic transformation architecture.Semantic Support
The following services: verification of the consistency of models, support to automatic mapping discovery among heterogeneous models, and definition of semantic preserving transformation can support MDI to tackle both vertical and horizontal issues.Vertical issues: semantic support aiming at:
- Giving a logic-based formalization of portions of models via semantic annotations easing reuse, cross-reference, and unambiguous terminology.
- Tracing the changes.
- Formalizing the delta-knowledge used in semantic enriching transformations.
- Performing semantic mismatches analysis among the models of different enterprises.
- Representing model correspondences across enterprises through semantic annotations.
- Creating reconciliation rules for performing data, service and business process reconciliation.