Model Driven Interoperability (MDI) is a methodological framework, which provides a conceptual and technical support to make interoperable enterprises using ontologies and semantic annotations, following model driven development (MDD) principles. [1] [2]
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 (MDI) approach are:
MDI was initiated in 2004 with the beginning of two important research projects:
Both projects supported by the European Commission. These two projects worked on both the definition of a methodological framework and the application of MDI on concrete cases.
MDI Framework [7] [8] within INTEROP is defined:
The Reference Model proposed for the MDI approach shows the different kinds of models that it is possible to perform at different levels of abstraction, and the successive model transformations that are needed to carry out.
The different levels of abstraction are needed in order to make possible model transformations reducing the gap existing between enterprise models and code level. The definition of the several levels was based on the Model Driven Architecture (MDA) that defines three levels of abstraction: CIM, PIM and PSM. Moreover, we introduced a partition of the CIM level into two sub-levels in order to reduce the gap between the CIM and PIM levels. An Interoperability Model has been also defined at the different levels of abstraction proposed above.
One example of this Reference Model for MDI can be see in the next figure. This picture shows in each of the proposed levels the different kind of models that can be performed (GRAI [9] at Top CIM level, and UML in the other levels), and the final objective of making interoperable two ESA, the franchisor's ERP and the franchisee's CRM.
Model Driven Interoperability Method (MDI 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.
The MDI Method proposed to solve interoperability problems, like its name indicates, is based on the MDA approach. Also, the following principles were applied to the definition of this method:
Next picture show the main features of the MDI Method, in which the green areas give the estimated effort related to each phase and workflow:
The MDI Framework [10] [11] [12] from ATHENA provides guidance on how MDD should be applied to address interoperability. The framework is structured in three main integration areas:
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 MDA, a Computation Independent Model (CIM) corresponds to a view defined by a computation independent viewpoint. It describes the business context and business requirements for the software system(s). A Platform Independent Model (PIM) corresponds to a view defined by a platform independent viewpoint. It describes software specifications independent of execution platforms. A Platform Specific Model (PSM) corresponds to a view defined by a platform specific viewpoint. It describes the realisation of software systems.
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.
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 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. [13]
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:
Horizontal issues: semantic support aiming at:
In computer science and information science, an ontology encompasses a representation, formal naming, and definition of the categories, properties, and relations between the concepts, data, and entities that substantiate one, many, or all domains of discourse. More simply, an ontology is a way of showing the properties of a subject area and how they are related, by defining a set of concepts and categories that represent the subject.
A modeling language is any artificial language that can be used to express information or knowledge or systems in a structure that is defined by a consistent set of rules. The rules are used for interpretation of the meaning of components in the structure.
Model Driven Architecture (MDA) is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model Driven Architecture is a kind of domain engineering, and supports model-driven engineering of software systems. It was launched by the Object Management Group (OMG) in 2001.
A metamodel or surrogate model is a model of a model, and metamodeling is the process of generating such metamodels. Thus metamodeling or meta-modeling is the analysis, construction and development of the frames, rules, constraints, models and theories applicable and useful for modeling a predefined class of problems. As its name implies, this concept applies the notions of meta- and modeling in software engineering and systems engineering. Metamodels are of many types and have diverse applications.
Extended Enterprise Modeling Language (EEML) in software engineering is a modelling language used for Enterprise modelling across a number of layers.
The Common Information Model (CIM) is an electric power transmission and distribution standard developed by the electric power industry. It aims to allow application software to exchange information about an electrical network. It has been officially adopted by the International Electrotechnical Commission (IEC).
The ultimate goal of semantic technology is to help machines understand data. To enable the encoding of semantics with the data, well-known technologies are RDF and OWL. These technologies formally represent the meaning involved in information. For example, ontology can describe concepts, relationships between things, and categories of things. These embedded semantics with the data offer significant advantages such as reasoning over data and dealing with heterogeneous data sources.
Model-driven engineering (MDE) is a software development methodology that focuses on creating and exploiting domain models, which are conceptual models of all the topics related to a specific problem. Hence, it highlights and aims at abstract representations of the knowledge and activities that govern a particular application domain, rather than the computing concepts.
Enterprise modelling is the abstract representation, description and definition of the structure, processes, information and resources of an identifiable business, government body, or other large organization.
Knowledge Discovery Metamodel (KDM) is a publicly available specification from the Object Management Group (OMG). KDM is a common intermediate representation for existing software systems and their operating environments, that defines common metadata required for deep semantic integration of Application Lifecycle Management tools. KDM was designed as the OMG's foundation for software modernization, IT portfolio management and software assurance. KDM uses OMG's Meta-Object Facility to define an XMI interchange format between tools that work with existing software as well as an abstract interface (API) for the next-generation assurance and modernization tools. KDM standardizes existing approaches to knowledge discovery in software engineering artifacts, also known as software mining.
The concept of the Social Semantic Web subsumes developments in which social interactions on the Web lead to the creation of explicit and semantically rich knowledge representations. The Social Semantic Web can be seen as a Web of collective knowledge systems, which are able to provide useful information based on human contributions and which get better as more people participate. The Social Semantic Web combines technologies, strategies and methodologies from the Semantic Web, social software and the Web 2.0.
BORO is an approach to developing ontological or semantic models for large complex operational applications that consists of a top ontology as well as a process for constructing the ontology. It was originally developed as a method for mining ontologies from multiple legacy systems – as the first stage in an architectural transformation or software modernization. It has also been used to enable semantic interoperability between legacy systems. It is described in detail in. It is the analysis method used in the development and maintenance of the U.S. Department of Defense Architecture Framework (DoDAF) Meta Model (DM2), where a data modeling working group of over 350 members was able to systematically resolve a broad spectrum of knowledge representation issues.
Enterprise interoperability is the ability of an enterprise—a company or other large organization—to functionally link activities, such as product design, supply chains, manufacturing, in an efficient and competitive way.
Praxeme is a methodology for enterprise architecture which provides a structured approach to the design and implementation of an enterprise information architecture.
Knowledge extraction is the creation of knowledge from structured and unstructured sources. The resulting knowledge needs to be in a machine-readable and machine-interpretable format and must represent knowledge in a manner that facilitates inferencing. Although it is methodically similar to information extraction (NLP) and ETL, the main criterion is that the extraction result goes beyond the creation of structured information or the transformation into a relational schema. It requires either the reuse of existing formal knowledge or the generation of a schema based on the source data.
The enterprise interoperability framework is used as a guideline for collecting and structuring knowledge/solution for enterprise interoperability. The framework defines the domains and sub-domains for interoperability research and development in order to identify a set of pieces of knowledge for solving enterprise interoperability problems by removing barriers to interoperability.
The Open Semantic Framework (OSF) is an integrated software stack using semantic technologies for knowledge management. It has a layered architecture that combines existing open source software with additional open source components developed specifically to provide a complete Web application framework. OSF is made available under the Apache 2 license.
Guy Doumeingts is a French engineer, Emeritus professor at the University of Bordeaux 1 and former Director of "Laboratoire d’Automatique, Productique Signal et Image" control theory, known for the development of the GRAI method and his contributions to the field of Enterprise modelling.
The INTEROP V-Lab is a network of organizations, which links scientists, research centers, representatives of industry, and small and medium-sized enterprises. The members come from several European countries as well as China and represent 250 scientists and 70 organizations.
Bruno Vallespir is a French engineer, and Professor of Enterprise Modelling at the University of Bordeaux, working in the fields of production management, performance evaluation and enterprise modeling.