Instantiation of meta-models constrained with OCL: A CSP approach

The automated generation of models that conform to a given meta-model is an important challenge in Model Driven Engineering, as well for model transformation testing, as for designing and exploring new meta-models. Amongst the main issues, we are mainly concerned by scalability, flexibility and a reasonable computing time. This paper presents an approach for model generation, which relies on Constraint Programming. After the translation of a meta-model into a CSP, our software generates models that conform to this meta-model, using a Constraint Solver. Our model also includes the most frequent types of OCL constraints. Since we are concerned by the relevance of the produced models, we describe a first attempt to improve them. We outperform the existing approaches from the mentioned point of view, and propose a configurable, easy-to-use and free-access tool, together with an on-line demonstrator.

[1]  Yves Le Traon,et al.  Barriers to systematic model transformation testing , 2010, Commun. ACM.

[2]  Jordi Cabot,et al.  EMFtoCSP: A tool for the lightweight verification of EMF models , 2012, 2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA).

[3]  Jordi Cabot,et al.  Verification of UML/OCL Class Diagrams using Constraint Programming , 1899, 2008 IEEE International Conference on Software Testing Verification and Validation Workshop.

[4]  Ra'Fat Ahmad Al-Msie'Deen,et al.  Reverse Engineering Feature Models From Software Variants to Build Software Product LinesREVPLINE Approach , 2014 .

[5]  Olivier Roussel,et al.  XML Representation of Constraint Networks: Format XCSP 2.1 , 2009, ArXiv.

[6]  Ra'Fat Al-Msie'deen Reverse Engineering Feature Models From Software Variants to Build Software Product Lines: REVPLINE Approach. (Construction de lignes de produits logiciels par rétro-ingénierie de modèles de caractéristiques à partir de variantes de logiciels: l'approche REVPLINE) , 2014 .

[7]  Benoit Baudry,et al.  Automatic Model Generation Strategies for Model Transformation Testing , 2009, ICMT@TOOLS.

[8]  Alan K. Mackworth Consistency in Networks of Relations , 1977, Artif. Intell..

[9]  Gabriele Taentzer,et al.  Generating instance models from meta models , 2006, Software & Systems Modeling.

[10]  Alexis Darrasse,et al.  Uniform Random Generation of Huge Metamodel Instances , 2009, ECMDA-FA.

[11]  Toby Walsh,et al.  Handbook of Constraint Programming , 2006, Handbook of Constraint Programming.

[12]  Gabriele Taentzer,et al.  Generating Instance Models from Meta Models , 2006, FMOODS.

[13]  Christophe Lecoutre,et al.  AbsCon: A Prototype to Solve CSPs with Abstraction , 2001, CP.

[14]  Adel Ferdjoukh,et al.  A CSP Approach for Metamodel Instantiation , 2013, 2013 IEEE 25th International Conference on Tools with Artificial Intelligence.

[15]  Hao Wu,et al.  Exploiting Attributed Type Graphs to Generate Metamodel Instances Using an SMT Solver , 2013, 2013 International Symposium on Theoretical Aspects of Software Engineering.

[16]  Toby Walsh,et al.  Handbook of Constraint Programming (Foundations of Artificial Intelligence) , 2006 .