![](bga.png)
OCL constraints are translated into a CSP and a de-
dicated solver allows producing a valid instance. Ba-
sed on similar principles, Ferdjoukh et al. (Ferdjoukh
et al., 2013) have proposed an approach for model ge-
neration while dealing with performance.
In the limited scope of the presented use case,
we have experimented the use of model generation
techniques to perform the transformation scenario.
The idea was to express the source models informa-
tion, the way to construct the target model and the ex-
pert requirements, as OCL constraints. Hence, a mo-
del generation support (we chose Grimm (Ferdjoukh
et al., 2013)) can be used to deal with the generation
of the expected objective scenario. However, the tool
failed because it does not support some essential OCL
operations.
6 CONCLUSION
In this paper, we have presented a practical approach
for constraint solving in model transformations. The
base principle is to consider pattern matching problem
as a high level specification of CSP. Furthermore, the
pattern structure is decoupled from the validation con-
straints so as to allow associating multiple constraints
to a same pattern and specifying shared transforma-
tion rules for all validation logics.
This proposal also includes a transformation infra-
structure. This latter is generated in a semi-automatic
manner and it provides support for pattern specifica-
tion, match model search, and transformation into va-
lid target models. A use case has been selected to
illustrate these tasks.
We are currently exploring the definition of pa-
rameterized patterns essentially for avoiding the pro-
blem of fixed roles numbers. Hence, the same pattern
definition can be used in various transformation sce-
narios even if involving slightly different match mo-
dels. Besides, we intend to integrate this proposal in a
co-design and validation framework for the presented
serious game.
In this case, we have to deal with two issues. First,
the regeneration of the transformation infrastructure
must consider the extent of the variation expressed
by the expert (e.g. adding a constraint must imply
changing the validation resource without impacting
the transformation and operations resources). Second,
we found that even if several solutions are possible,
the same scenario is always generated for different
executions. This confuses the validation task and pre-
vents the experts from considering several illustrati-
ons. Currently, we can set the transformation infra-
structure in an iterative mode to allow the generation
of all possible targets. Moreover, we are planning to
implement a solution to address random generation.
REFERENCES
Bettini, L. (2016). Implementing domain-specific languages
with Xtext and Xtend. Packt Publishing Ltd.
Cabot, J., Claris, R., Riera, D., et al. (2008). Verification of
uml/ocl class diagrams using constraint programming.
In First International Conference on Software Testing
Verification and Validation, ICST 2008., pages 73–80.
IEEE.
Degueule, T., Combemale, B., Blouin, A., Barais, O., and
J
´
ez
´
equel, J.-M. (2015). Melange: A meta-language
for modular and reusable development of dsls. In
Proceedings of the 2015 ACM SIGPLAN Internatio-
nal Conference on Software Language Engineering,
pages 25–36. ACM.
Ehrig, H., Ehrig, K., Habel, A., and Pennemann, K.-H.
(2004). Constraints and application conditions: From
graphs to high-level structures. In International Con-
ference on Graph Transformation, pages 287–303.
Springer.
Ferdjoukh, A., Baert, A.-E., Chateau, A., Coletta, R., and
Nebut, C. (2013). A csp approach for metamodel
instantiation. In 2013 IEEE 25th International Con-
ference on Tools with Artificial Intelligence, pages
1044–1051. IEEE.
Jouault, F. and Kurtev, I. (2005). Transforming models
with atl. In International Conference on Model Driven
Engineering Languages and Systems, pages 128–138.
Springer.
Kleiner, M., Del Fabro, M. D., and Albert, P. (2010). Model
search: Formalizing and automating constraint sol-
ving in mde platforms. In European Conference on
Modelling Foundations and Applications, pages 173–
188. Springer.
Kolovos, D., Rose, L., Garcia-Dominguez, A., and Paige,
R. (2017). The epsilon book (2017).
Kolovos, D. S. and Paige, R. F. (2017). The epsilon pattern
language. In 9th IEEE/ACM International Workshop
on Modelling in Software Engineering, MiSE@ICSE
2017, pages 54–60. IEEE.
Kolovos, D. S., Paige, R. F., and Polack, F. A. (2006). The
epsilon object language (eol). In European Confe-
rence on Model Driven Architecture-Foundations and
Applications, pages 128–142. Springer.
Kolovos, D. S., Paige, R. F., and Polack, F. A. (2008).
The epsilon transformation language. In International
Conference on Theory and Practice of Model Trans-
formations, pages 46–60. Springer.
Laforcade, P., Loiseau, E., and Kacem, R. (2018). A model-
driven engineering process to support the adaptive ge-
neration of learning game scenarios. In Proceedings of
the 10th International Conference on Computer Sup-
ported Education.
Larrosa, J. and Valiente, G. (2002). Constraint satisfaction
algorithms for graph pattern matching. Mathematical
Structures in Computer Science, 12(4):403–422.
ICSOFT 2018 - 13th International Conference on Software Technologies
88