TAO JIANG et al: AN APPROACH FOR AUTOMATICALLY VERIFYING METAMODELS CONSISTENCY
DOI 10.5013/IJSSST.a.17.27.20 20.1 ISSN: 1473-804x online, 1473-8031 print
An Approach for Automatically Verifying Metamodels Consistency
Tao Jiang
*
, Yumei She, Xin Wang
School of Mathematics and Computer Science, Yunnan Minzu University, Kunming, Yunnan, 650031, China
Abstract — Most Domain-Specific Metamodeling Languages (DSMML) use informal method to define their semantics, so it is
difficult to precisely and automatically analyze characteristics of metamodels built based on DSMML. In response, based on
formalization of DSMML called XMML developed by us, the paper proposes an approach for automatically verifying metamodels
consistency by an automatic mapping mechanism to automatically translate metamodels to the corresponding first-order logic
system. Firstly, we briefly present our approach for formalizing XMML and its metamodels, and then, we establish an automatic
mapping mechanism for formalizing metamodels, finally, we develop an automatic mapping tool for formalizing metamodels and
perform relevant experiments to validate our method.
Keywords - metamodel; consistency; structure mapping; semantic mapping
I. INTRODUCTION
DSMML is a metamodeling language used for Domain-
Specific modeling [1] and also a metalanguage used for
creating Domain-Specific Modeling Languages (DSMLs).
As an instance built based on DSMML, DSML
characterizes its concrete syntax and structural semantics
using a metamodel that is the model of the model. From a
semantic point of view, the metamodel represents structural
semantics of the corresponding DSML.
DSMMLs have many problems that are not well
addressed, such as accurate mathematical foundation for
formalizing its semantics, tool-independent formal
descriptions, analysis techniques based on syntax and
semantics of metamodels, automatic mapping rules and its
implementation and so on. There are several examples that
can illustrate this. As a formal metamodelling language,
KM3 [2] cannot perform analysis of specific attributes
because no expressive constraints are added to the language
itself. The Generic Modeling Environment (GME)
developed by Vanderbilt university [3] provide expressive
DSMLs, but all its precise structural semantics completely
depend on implementation of complex modeling tools. As a
modeling and metamodeling standards, UML superstructure
[4] and Meta-Object Facility (MOF) [5] cannot offer
completely strict formal definitions for the DSML process.
In one of my papers published in the Journal of Software,
we formalizes DSMML called XMML based on first-order
logic, mainly discussing formalization of three relationships
of XMML such as refinement and attachment and typed
constraints [6], and another one of my papers published in
Electrical Review proposes an approach for verifying
consistency of XMML and its metamodels by first-order
logic reasoning based on formalization of XMML, focusing
on definition of metamodels consistency and deduction of
consistency verification method [7].
Based on research results of our previously published
papers, this paper proposes an automatic mapping
mechanism for automatically translating metamodels to the
corresponding first-order logic system based on
formalization of XMML to implement automated reasoning
of metamodels consistency. We define two mappings:
structure mapping from one metamodel structure to a group
of first-order predicate statements, and semantic mapping
used to establish a group of necessary constraint formulas
based on predicate statements generated via structure
mapping. And then, taking software architecture metamodel
MSS an example, after finishing automatic mapping of
MSS, we verify its consistency using two methods of
manual reasoning and automatic proving. To show the
application of our formal method, we design the
corresponding formalization automatic mapping tool for
metamodels called MapMMD, and perform many
experiments on automatic mapping of different metamodels
based on MapMMD and analyze the experimental results.
II. ELATED WORKS
In UML domain, there are much typical works for
formalizing and analyzing UML semantics. Lijun Shan and
Hong Zhu define the semantics of metamodels in UML
class diagram based on first-order logic formulas and
implement a UML model translation tool to automatically
reason models [8]. Their method and ours differ in the
following two aspects. First, the main problem we discuss is
formalization of structural semantics of metamodelling
language belonging to meta-metamodel, and Shan’s method
focuses on modelling language belonging to metamodel.
The former is more abstract and general than the latter, so
their different levels of abstraction will lead to different
processing method. Second, as a Domain-Specific
Metamodeling Language developed by ourselves, XMML