5 Conclusion and Future Work
This paper advocates the need for more semantic consideration in MDE. We then
present several approaches for the integration of these points which are derived from
previous work from the programming languages community. We focus on the definition
of executable models for a very small subset of the SPEM development process mod-
eling language. This work was based on the use of the Kermeta tool which weaves the
model semantics with the metamodel. Further work will detail the other approaches in
order to gather engineering knowledge around the semantic MDE. For instance, we are
studying the possibility to define denotational semantics. In the programming languages
scope, this semantics describes instructions as mathematical objects (i.e., function, in-
teger, tuples, truth value etc.). The main idea of denotational semantics is to associate
each phrase of the language with the appropriate mathematical object and thus, to map
syntactic domain to a well-defined semantic domain. Mathematical objects are called
the denotation of syntactic phrases, which are themselves said to denote objects. We
can say that this denotation is a kind of translation to the mathematics world.
We are foreseeing a similar approach to provide a rigorous definition of DSL se-
mantics. The idea is to target a well-known and well-defined formal language instead
of mathematical objects. The challenge is to define transformation from DSL to another
language owned by a different technological space and that has a rigorous semantics.
This is often called translational semantics [6]. Those technological bridges allow to
profit from simulation, checking and execution tools provided by the targeted techno-
logical spaces. We are considering to us ATL to define transformations from our DSL
to semantics models such as Petri nets, timed automata or transition systems.
We are also expecting to use model transformations to describe rewriting rules over
models. Thus, we will be able to express operational semantics in a closer way to for-
mer Structural Operational Semantics defined for programming languages by Plotkin
[17]. The main profit of this method is that semantics of a language is expressed in
its own terms, i.e., there is no need of additional concepts except those related to the
transformation language.
This work puts forward the fact that many different metamodels need to be defined
in order to manage the various aspects of a system. All these models are differents
but related. These relations must be managed in order to reduce the amount of work
required for the definition of their semantics.
References
1. Farail, P., Gaufillet, P., Canals, A., Camus, C.L., Sciamma, D., Michel, P., Cr
´
egut, X., Pantel,
M.: the TOPCASED project: a toolkit in open source for critical aeronautic systems design.
In: Embedded Real Time Software (ERTS), Toulouse (2006)
2. Object Management Group, Inc.: Meta Object Facility (MOF) 2.0 Core Specification. (2003)
3. Budinsky, F., Steinberg, D., Ellersick, R.: Eclipse Modeling Framework : A Developer’s
Guide. Addison-Wesley Professional (2003)
4. Ledeczi, A., Maroti, M., Bakay, A., Karsai, G., Garrett, J., IV, C.T., Nordstrom, G., Sprinkle,
J., Volgyesi, P.: The generic modeling environment. In: Workshop on Intelligent Signal
Processing, Budapest, Hungary (2001)
13