Framework for the interoperability of software engineering metamodels
- Publication Type:
- Issue Date:
A model, represented as a concrete artefact, is an abstraction of reality according to a certain conceptualization. A model can support communication and analysis about relevant aspects of the underlying domain. A model must be expressed in some language and such languages are defined using metamodels. Many metamodels have been proposed and used in the software engineering literature. Some define modelling languages that are general in nature but the literature of modelling is dominated by domain-specific modelling languages or metamodels. Most of these metamodels have been developed independently from each other and any shared concepts are only accidental. Widespread adoption of these metamodels is hindered by differences between metamodels' concepts. Using more than one modelling language during software development requires some sort of interoperability between the metamodels of those modelling languages. This interoperability is also required to allow mappings between models developed using different modelling languages. These metamodels are not static in nature and are continuously evolving. This evolution has increased their size and complexity over time. This complexity increases when more than one metamodel is used during software development. Interoperability of a pair of metamodels can reduce their joint size and complexity (elaborated in detail in Chapter 7). The need for interoperability between metamodels is also raised by many research communities. In this thesis, we have developed a framework that can be used for metamodel interoperability. The framework compares metamodel elements based on their syntax, semantics and structure. The semantics of metamodel elements are further investigated for linguistic and ontological semantics. Since terms such as interoperability, bridging, merging and mapping have all been used, often loosely, with reference to metamodel compatibility, we will define these terms under the generic term harmonization. Metamodels share some similarities with other domains, e.g. ontologies and schemas. In this thesis, we have also explored the techniques available in these domains that might be useful for metamodel interoperability. We have applied our framework to different metamodels and have shown how metamodels can be used in an interoperable fashion. The results achieved are analysed and we have shown how interoperability of metamodels can reduce their size and their joint complexity, hence making them easier to understand and use.
Please use this identifier to cite or link to this item: