{"title":"评估QVT关系中双向转换的案例研究","authors":"B. Westfechtel","doi":"10.5220/0005466801410155","DOIUrl":null,"url":null,"abstract":"In model-driven software engineering, high-level models of a software system are eventually transformed into executable code. Model transformations constitute a key technology for model-driven software engineering. QVT Relations (QVT-R) is a language for the declarative specification of model transformations which was defined in an OMG (Object Management Group) standard. In addition to unidirectional transformations, QVT-R supports bidirectional transformations: Rather than writing two unidirectional transformations separately, the user may provide a single relational specification which may be executed in both directions. In this way, the specification of a bidirectional transformation may be simplified considerably - which is crucial e.g. for round-trip engineering. This paper investigates a case study for evaluating QVT-R's capabilities for specifying bidirectional transformations. Even in this rather simple case study, development of a bidirectional transformation turns out to be more complex than expected. Motivated by the case study, we propose extensions to QVT-R which facilitate the specification of bidirectional transformations considerably.","PeriodicalId":319854,"journal":{"name":"2015 International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE)","volume":"34 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-04-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":"{\"title\":\"A case study for evaluating bidirectional transformations in QVT relations\",\"authors\":\"B. Westfechtel\",\"doi\":\"10.5220/0005466801410155\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"In model-driven software engineering, high-level models of a software system are eventually transformed into executable code. Model transformations constitute a key technology for model-driven software engineering. QVT Relations (QVT-R) is a language for the declarative specification of model transformations which was defined in an OMG (Object Management Group) standard. In addition to unidirectional transformations, QVT-R supports bidirectional transformations: Rather than writing two unidirectional transformations separately, the user may provide a single relational specification which may be executed in both directions. In this way, the specification of a bidirectional transformation may be simplified considerably - which is crucial e.g. for round-trip engineering. This paper investigates a case study for evaluating QVT-R's capabilities for specifying bidirectional transformations. Even in this rather simple case study, development of a bidirectional transformation turns out to be more complex than expected. Motivated by the case study, we propose extensions to QVT-R which facilitate the specification of bidirectional transformations considerably.\",\"PeriodicalId\":319854,\"journal\":{\"name\":\"2015 International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE)\",\"volume\":\"34 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2015-04-29\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"9\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2015 International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.5220/0005466801410155\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5220/0005466801410155","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
A case study for evaluating bidirectional transformations in QVT relations
In model-driven software engineering, high-level models of a software system are eventually transformed into executable code. Model transformations constitute a key technology for model-driven software engineering. QVT Relations (QVT-R) is a language for the declarative specification of model transformations which was defined in an OMG (Object Management Group) standard. In addition to unidirectional transformations, QVT-R supports bidirectional transformations: Rather than writing two unidirectional transformations separately, the user may provide a single relational specification which may be executed in both directions. In this way, the specification of a bidirectional transformation may be simplified considerably - which is crucial e.g. for round-trip engineering. This paper investigates a case study for evaluating QVT-R's capabilities for specifying bidirectional transformations. Even in this rather simple case study, development of a bidirectional transformation turns out to be more complex than expected. Motivated by the case study, we propose extensions to QVT-R which facilitate the specification of bidirectional transformations considerably.