Higher-order Rewriting of Model-to-Text Templates for Integrating Domain-specific Modeling Languages

Bernhard Hoisl, Stefan Sobernig, Mark Strembeck

Abstract

Domain-specific modeling languages (DSMLs) are commonly used in model-driven development projects. In this context, model-to-text (M2T) transformation templates generate source code from DSML models. When integrating two (or more) DSMLs, the reuse of such templates for the composed DSML would yield a number of benefits, such as, a reduced testing and maintenance effort. However, in order to reuse the original templates for an integrated DSML, potential syntactical mismatches between the templates and the integrated metamodel must be solved. This paper proposes a technology-independent approach to template rewriting based on higher-order model transformations to address such mismatches in an automated manner. By considering M2T generator templates as first-class models and by reusing transformation traces, our approach enables syntactical template rewriting. To demonstrate the feasibility of this rewriting technique, we built a prototype for Eclipse EMF and Epsilon.

References

  1. Amar, B., Leblanc, H., and Coulette, B. (2008). A Traceability Engine Dedicated to Model Transformation for Software Engineering. In Proc. of the 4th ECMDA Traceability Workshop, volume WP09-09 of CTIT Workshop Proceedings, pages 7-16. Centre for Telematics and Information Technology (CTIT), University of Twente.
  2. Bettin, J. (2002). Measuring the Potential of DomainSpecific Modelling Techniques. In Proc. of the 2nd Domain-Specific Modelling Languages Workshop, pages 39-44. Helsinki School of Economics.
  3. Cuadrado, J. S., Guerra, E., and de Lara, J. (2011). Generic Model Transformations: ”Write Once, Reuse Everywhere”. In Theory and Practice of Model Transformations, volume 6707 of LNCS, pages 62-77. Springer.
  4. Czarnecki, K. and Helsen, S. (2006). Feature-based survey of model transformation approaches. IBM Systems Journal, 45(3):621-646.
  5. Diskin, Z., Xiong, Y., and Czarnecki, K. (2011). From State- to Delta-Based Bidirectional Model Transformations: the Asymmetric Case. Journal of Object Technology, 10:6:1-25.
  6. Drivalos, N., Paige, R. F., Fernandes, K. J., and Kolovos, D. S. (2008). Towards Rigorously Defined Model-toModel Traceability. In Proc. of the 4th ECMDA Traceability Workshop, volume WP09-09 of CTIT Workshop Proceedings, pages 17-26. Centre for Telematics and Information Technology (CTIT), University of Twente.
  7. Herrmann, C., Krahn, H., Rumpe, B., Schindler, M., and Völkel, S. (2007). An Algebraic View on the Semantics of Model Composition. In Proc. of the 3rd European Conference on Model Driven ArchitectureFoundations and Applications, volume 4530 of LNCS, pages 99-113. Springer.
  8. Hoisl, B. and Strembeck, M. (2012). A UML Extension for the Model-driven Specification of Audit Rules. In Proc. of the 2nd International Workshop on Information Systems Security Engineering, volume 112 of LNBIP, pages 16-30. Springer.
  9. Hoisl, B., Strembeck, M., and Sobernig, S. (2012). Towards a Systematic Integration of MOF/UML-based Domain-specific Modeling Languages. In Proc. of the 16th IASTED International Conference on Software Engineering and Applications, pages 337-344. ACTA Press.
  10. Kalnina, E., Kalnins, A., Celms, E., and Sostaks, A. (2010). Graphical Template Language for Transformation Synthesis. In Software Language Engineering, volume 5969 of LNCS, pages 244-253. Springer.
  11. Kolovos, D., Rose, L., Paige, R., and García-Domínguez, A. (2012). The Epsilon Book. Available at: http://www.eclipse.org/epsilon/doc/book/. Last accessed: 30.11.2012.
  12. Kolovos, D. S., Paige, R. F., and Polack, F. A. C. (2008). A Framework for Composing Modular and Interoperable Model Management Tasks. In Proc. of the 1st ECMFA Workshop on Model Driven Tool and Process Integration, pages 79-90. Frauenhofer IRB.
  13. Krueger, C. W. (1992). Software Reuse. ACM Computing Surveys, 24(2):131-183.
  14. Morin, B., Perrouin, G., Lahire, P., Barais, O., Vanwormhoudt, G., and Jézéquel, J.-M. (2009). Weaving Variability into Domain Metamodels. In Proc. of the 12th International Conference on Model Driven Engineering Languages and Systems, pages 690-705. Springer.
  15. Object Management Group (2008). MOF Model To Text Transformation Language. Available at: http://www.omg.org/spec/MOFM2T. Version 1.0, formal/2008-01-16. Last accessed: 30.11.2012.
  16. Oldevik, J. and Haugen, Ø. (2007). Higher-Order Transformations for Product Lines. In Proc. of the 11th International Software Product Line Conference, pages 243-254. IEEE Computer Society.
  17. Paige, R., Drivalos, N., Kolovos, D., Fernandes, K., Power, C., Olsen, G., and Zschaler, S. (2011). Rigorous Identification and Encoding of Trace-Links in ModelDriven Engineering. Software and Systems Modeling, 10:469-487.
  18. Rose, L. M., Matragkas, N., Kolovos, D. S., and Paige, R. F. (2012). A Feature Model for Model-to-Text Transformation Languages. In Proc. of the 2012 ICSE Workshop on Modeling in Software Engineering, pages 57- 63. IEEE Computer Society.
  19. Spinellis, D. (2001). Notable Design Patterns for DomainSpecific Languages. Journal of Systems and Software, 56(1):91-99.
  20. Tisi, M., Cabot, J., and Jouault, F. (2010). Improving Higher-Order Transformations Support in ATL. In Proc. of the 3rd International Conference on Theory and Practice of Model Transformations, volume 6142 of LNCS, pages 215-229. Springer.
  21. Tisi, M., Jouault, F., Fraternali, P., Ceri, S., and Bézivin, J. (2009). On the Use of Higher-Order Model Transformations. In Proc. of the 5th European Conference on Model Driven Architecture-Foundations and Applications, volume 5562 of LNCS, pages 18-33. Springer.
  22. Vallecillo, A. (2010). On the Combination of Domain Specific Modeling Languages. In Proc. of the 6th European Conference on Modelling Foundations and Applications, volume 6138 of LNCS, pages 305-320. Springer.
  23. Varró, D. and Pataricza, A. (2004). Generic and Metatransformations for Model Transformation Engineering. In Proc. of the 7th International UML Conference Modelling Languages and Applications, volume 3273 of LNCS, pages 290-304. Springer.
  24. Wei, W. (2012). EpsilonLabs: Epsilon Static Analysis. Available at: http://code.google.com/p/epsilonlabs/ wiki/EpsilonStaticAnalysis. Last accessed: 30.11.2012.
  25. White, J., Hill, J. H., Gray, J., Tambe, S., Gokhale, A. S., and Schmidt, D. C. (2009). Improving DomainSpecific Language Reuse with Software Product Line Techniques. IEEE Software, 26(4):47-53.
  26. Wimmer, M., Kappel, G., Kusel, A., Retschitzegger, W., Schönböck, J., and Schwinger, W. (2010). Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities. In Proc. of the 1st International Workshop on Model-Driven Interoperability, pages 32-41. ACM.
  27. Wimmer, M., Kappel, G., Kusel, A., Retschitzegger, W., Schönböck, J., and Schwinger, W. (2012). Fact or Fiction-Reuse in Rule-Based Model-to-Model Transformation Languages. In Proc. of the 2nd International Conference on Model Transformations, volume 7307 of LNCS, pages 280-295. Springer.
  28. Zdun, U. (2010). A DSL Toolkit for Deferring Architectural Decisions in DSL-based Software Design. Information & Software Technology, 52(7):733-748.
Download


Paper Citation


in Harvard Style

Hoisl B., Sobernig S. and Strembeck M. (2013). Higher-order Rewriting of Model-to-Text Templates for Integrating Domain-specific Modeling Languages . In Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-8565-42-6, pages 49-61. DOI: 10.5220/0004321100490061


in Bibtex Style

@conference{modelsward13,
author={Bernhard Hoisl and Stefan Sobernig and Mark Strembeck},
title={Higher-order Rewriting of Model-to-Text Templates for Integrating Domain-specific Modeling Languages},
booktitle={Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},
year={2013},
pages={49-61},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0004321100490061},
isbn={978-989-8565-42-6},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - Higher-order Rewriting of Model-to-Text Templates for Integrating Domain-specific Modeling Languages
SN - 978-989-8565-42-6
AU - Hoisl B.
AU - Sobernig S.
AU - Strembeck M.
PY - 2013
SP - 49
EP - 61
DO - 10.5220/0004321100490061