dc.contributor
University of York
dc.contributor
Universitat Oberta de Catalunya. Estudis d'Informàtica, Multimèdia i Telecomunicació
dc.contributor
University of Hull
dc.contributor.author
Zolotas, Athanasios
dc.contributor.author
Clarisó Viladrosa, Robert
dc.contributor.author
Matragkas, Nicholas
dc.contributor.author
Kolovos, Dimitrios S.
dc.contributor.author
Paige, Richard F.
dc.date
2018-05-14T08:27:21Z
dc.date
2018-05-14T08:27:21Z
dc.identifier.citation
Zolotas, A., Clarisó, R., Matragkas, N., Kolovos, D. & Paige, R. (2017). Constraint programming for type inference in flexible model-driven engineering. Computer Languages, Systems and Structures, 49, 216-230. doi: 10.1016/j.cl.2016.12.002
dc.identifier.citation
1477-8424
dc.identifier.citation
10.1016/j.cl.2016.12.002
dc.identifier.uri
http://hdl.handle.net/10609/77965
dc.description.abstract
Domain experts typically have detailed knowledge of the concepts that are used in their domain; however they often lack the technical skills needed to translate that knowledge into model-driven engineering (MDE) idioms and technologies. Flexible or bottom-up modelling has been introduced to assist with the involvement of domain experts by promoting the use of simple drawing tools. In traditional MDE the engineering process starts with the definition of a metamodel which is used for the instantiation of models. In bottom-up MDE example models are defined at the beginning, letting the domain experts and language engineers focus on expressing the concepts rather than spending time on technical details of the metamodelling infrastructure. The metamodel is then created manually or inferred automatically. The flexibility that bottom-up MDE offers comes with the cost of having nodes in the example models left untyped. As a result, concepts that might be important for the definition of the domain will be ignored while the example models cannot be adequately re-used in future iterations of the language definition process. In this paper, we propose a novel approach that assists in the inference of the types of untyped model elements using Constraint Programming. We evaluate the proposed approach in a number of example models to identify the performance of the prediction mechanism and the benefits it offers. The reduction in the effort needed to complete the missing types reaches up to 91.45% compared to the scenario where the language engineers had to identify and complete the types without guidance.
dc.format
application/pdf
dc.publisher
Computer Languages, Systems and Structures
dc.relation
Computer Languages, Systems and Structures, 2017, 49
dc.relation
https://doi.org/10.1016/j.cl.2016.12.002
dc.relation
info:eu-repo/grantAgreement/#611125
dc.rights
info:eu-repo/semantics/openAccess
dc.rights
<a href="http://creativecommons.org/licenses/by-nc-nd/3.0/es/">http://creativecommons.org/licenses/by-nc-nd/3.0/es/</a>
dc.subject
flexible modelling
dc.subject
bottom-up modelling
dc.subject
type inference
dc.subject
constraint programming
dc.subject
example-driven modelling
dc.subject
disseny flexible
dc.subject
disseny bottom-up
dc.subject
inferència de tipus
dc.subject
programació amb restriccions
dc.subject
disseny a partir d'exemples
dc.subject
diseño flexible
dc.subject
diseño bottom-up
dc.subject
inferencia de tipos
dc.subject
programación con restricciones
dc.subject
diseño a partir de ejemplos
dc.subject
Systems programming (Computer science)
dc.subject
Programació de sistemes (Informàtica)
dc.subject
Programación de sistemas (Informática)
dc.title
Constraint programming for type inference in flexible model-driven engineering
dc.type
info:eu-repo/semantics/article
dc.type
info:eu-repo/semantics/submittedVersion