et al., 2013; Di Ruscio et al., 2012), while one ap-
proach supports them only in case of copy transfor-
mations, a specific form of a model transformation
(Kruse, 2011). Evolution of the transformation meta-
model or other modeling artifacts is not considered
in the surveyed approaches, with a sole exception of
(Di Ruscio et al., 2012) by providing a framework in-
stead of a concrete approach. The monitoring of arti-
facts is not supported by any of the approaches, just
as transactions and version management.
Regarding change detection, five approaches de-
tect changes in a state-based manner (Gruschko et al.,
2007; Cicchetti et al., 2008; Garc
´
es et al., 2009;
Garc
´
es et al., 2013; Garc
´
ıa et al., 2013), four ap-
proaches employ operation-based change detection
(Herrmannsdoerfer et al., 2009; Wachsmuth, 2007;
Kruse, 2011; Kusel et al., 2015), and two rely on
manual change specifications (Rose et al., 2010b;
Di Ruscio et al., 2012). Almost all approaches sup-
port both atomic and composite changes, a single ap-
proach only does not support composite changes (Gr-
uschko et al., 2007), while another approach con-
siders composite changes as the pure composition of
atomic changes, instead of its own set, thus allowing
for new, self-defined composites (Kusel et al., 2015).
All of the examined approaches consider syntax as the
target of changes, while no approach is capable of tar-
geting semantic changes.
Considering impact analysis, two approaches
provide an explicated analysis of changes on the
conforms-to relationship between models and meta-
models (Gruschko et al., 2007; Kusel et al., 2015),
two approaches the source-domain-conforms-to rela-
tionship (Garc
´
ıa et al., 2013; Kusel et al., 2015), and
a sole approach for the target-domain-conforms-to re-
lationship (Garc
´
ıa et al., 2013). Impact analysis is
performed on type level by seven approaches (Her-
rmannsdoerfer et al., 2009; Gruschko et al., 2007; Ci-
cchetti et al., 2009; Garc
´
es et al., 2013; Garc
´
ıa et al.,
2013; Kruse, 2011; Kusel et al., 2015), while impact
analysis on instance level is supported by none of the
examined approaches. Furthermore, results can not
be used for intervention in any of the examined ap-
proaches. Approaches that support impact analysis on
models provide analysis on feature, class and pack-
age level (Herrmannsdoerfer et al., 2009; Gruschko
et al., 2007; Cicchetti et al., 2008; Kusel et al., 2015),
while in case of transactions, the level of bindings,
rules, and modules is supported by three approaches
(Garc
´
ıa et al., 2013; Kruse, 2011; Kusel et al., 2015),
whereas two approach additionally detect impacts on
OCL level (Garc
´
ıa et al., 2013; Kusel et al., 2015).
None of the examined approaches is capable of detect
run-time effects before the actual execution of arti-
facts, e.g., running a transformation.
Regarding the actual propagation of changes, all
but two approaches (Rose et al., 2010b; Di Ruscio
et al., 2012) support a predefined migration strategy,
which is customizable in all but one approach (Gr-
uschko et al., 2007). Eight approaches allow for
an automatic migration process (Herrmannsdoerfer
et al., 2009; Rose et al., 2010b; Gruschko et al.,
2007; Cicchetti et al., 2008; Garc
´
es et al., 2009;
Wachsmuth, 2007; Di Ruscio et al., 2012; Kusel et al.,
2015), while three approaches targeting transforma-
tion co-evolution are semi-automatic (Garc
´
es et al.,
2013; Garc
´
ıa et al., 2013; Kruse, 2011), meaning
that the user is needed in the co-evolution process.
Intra-artifact consistence is ensured in two approaches
(Garc
´
es et al., 2013; Kusel et al., 2015), while a
sole approach also provides inter-artifact consistency
(Kusel et al., 2015).
A single approach supports the validation of mi-
grated artifacts, both syntactically and semantically
(Kusel et al., 2015). In this context, the approach is
able to validate all instances of all supported kinds
of artifacts, i.e., models and transformations (Kusel
et al., 2015).
In the next section, lessons learned from the eval-
uation of approaches are presented.
4 LESSONS LEARNED
After having evaluated existing co-evolution ap-
proaches with the presented evaluation framework, in
the following paragraphs, lessons learned drawn from
the evaluation are discussed.
Need for Ecosystem-wide Perspective. As one
might see from the evaluation in Section 3.2, most
current co-evolution approaches tackle either mod-
els or transformation as dependent artifacts, but miss
an ecosystem-wide perspective spanning over several
modeling artifacts. Consequently, a systematic and
efficient co-evolution is hindered due to the fact that
diverse tools or approaches have to be employed to
co-evolve a complete modeling ecosystem. This may
lead to an inter-artifact inconsistency, i.e., different
kinds of artifacts are co-evolved differently, thus, the
operability of the modeling ecosystem is broken.
Incorporation of Semantical Changes Needed. As
discussed earlier, changes in a modeling ecosystem
might be of semantical nature, thus, not affecting
the syntax of a metamodel. As an example, a mod-
eler might intrinsically assign the unit centimeter to a
“height” attribute of a Person. Thus, a change of cen-
timeter to millimeter affects all depending artifacts,
since the actual values in the models or potential cal-
On the Evolution of Modeling Ecosystems: An Evaluation of Co-Evolution Approaches
97