A satisficing bi-directional model transformation engine using mixed integer linear programming
The use of model transformation in software engineering has increased significantly during the past decade, with the ability to rapidly transform models and ensure consistency between those models being a key property of Model Driven Architecture. However, these approaches can be applied to a wide variety of different model types and some of these models and associated transformations require different semantics than those popularised by current model transformation tools. Specifically, current relational model transformation languages typically prioritise matching relation patterns in the source model over creating a target model that is compliant with its meta-model. In this paper we describe a relational model transformation engine implemented as a series of Mixed Integer Linear Programs (MILP). This engine has a key novel feature; it prioritises target model compliance with its meta-model by considering multiple interpretations of applying the transformation specification in order to ensure a correct target model is generated. In this paper the MILP transformation engine and the representations it uses are described, followed by the results of applying it to examples of varying complexity. © JOT 2011.
History
School
- Mechanical, Electrical and Manufacturing Engineering
Citation
CALLOW, G. and KALAWSKY, R., 2013. A satisficing bi-directional model transformation engine using mixed integer linear programming. Journal of Object Technology, 12 (1), pp. 1-43.Publisher
AITO — Association Internationale pour les Technologies Objets © JOTVersion
- VoR (Version of Record)
Publication date
2013Notes
This article was published in the Journal of Object Technology [© JOT] and the definitive version is available at: http://dx.doi.org/10.5381/10.5381/jot.2013.12.1.a1ISSN
1660-1769Publisher version
Language
- en
Administrator link
Usage metrics
Categories
Keywords
Licence
Exports
RefWorksRefWorks
BibTeXBibTeX
Ref. managerRef. manager
EndnoteEndnote
DataCiteDataCite
NLMNLM
DCDC