On the Usage of Concrete Syntax in Model Transformation Rules

  • Thomas Baar
  • Jon Whittle
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4378)


Graph transformations are one of the best known approaches for defining transformations in model-based software development. They are defined over the abstract syntax of source and target languages, described by metamodels. Since graph transformations are defined on the abstract syntax level, they can be hard to read and require an in-depth knowledge of the source and target metamodels. In this paper we investigate how graph transformations can be made much more compact and easier to read by using the concrete syntax of the source and target languages. We illustrate our approach by defining model refactorings.


Metamodeling Model Transformation Refactoring UML 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Kent, S.: Model driven engineering. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 286–298. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  2. 2.
    Mens, T., Tourwé, T.: A survey of software refactoring. IEEE Trans. Software Eng. 30(2), 126–139 (2004)CrossRefGoogle Scholar
  3. 3.
    Fowler, M.: Refactoring: Improving the Design of Existing Programs. Addison-Wesley, Reading (1999)Google Scholar
  4. 4.
    Czarnecki, K., Helsen, S.: Classification of model transformation approaches. In: Proc. OOPSLA’03 Workshop on Generative Techniques in the Context of Model-Driven Architecture (2003)Google Scholar
  5. 5.
    Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformations, vol. 1: Foundations. World Scientific, Singapore (1997)zbMATHGoogle Scholar
  6. 6.
    OMG: MOF QVT Final Adopted Specification. OMG Adopted Specification ptc/05-11-01 (Nov. 2005)Google Scholar
  7. 7.
    Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide, 2nd edn. Object Technology Series. Addison-Wesley, Reading (2005)Google Scholar
  8. 8.
    Baresi, L., Heckel, R.: Tutorial introduction to graph transformation: A software engineering perspective. In: Corradini, A., et al. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 402–429. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  9. 9.
    Guerra, E., de Lara, J.: Event-driven grammars: Towards the integration of meta-modelling and graph transformation. In: Ehrig, H., et al. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 54–69. Springer, Heidelberg (2004)Google Scholar
  10. 10.
    OMG: UML 2.0 OCL Specification – OMG Final Adopted Specification. OMG Document ptc/03-10-14 (Oct. 2003)Google Scholar
  11. 11.
    Costagliola, G., et al.: A classification framework to support the design of visual languages. Journal of Visual Languages and Computing 13(6), 573–600 (2002)CrossRefGoogle Scholar
  12. 12.
    OMG: Unified Modeling Language: Diagram interchange version 2.0. Convenience Document ptc/05-06-04 (June 2005)Google Scholar
  13. 13.
    Fondement, F., Baar, T.: Making metamodels aware of concrete syntax. In: Hartman, A., Kreische, D. (eds.) ECMDA-FA 2005. LNCS, vol. 3748, pp. 190–204. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  14. 14.
    Baar, T.: Correctly defined concrete syntax for visual models. In: Nierstrasz, O., et al. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 111–125. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Marković, S., Baar, T.: Refactoring OCL annotated UML class diagrams. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 280–294. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  16. 16.
    Stein, D., Hanenberg, S., Unland, R.: Query models. In: Baar, T., et al. (eds.) UML 2004. LNCS, vol. 3273, pp. 98–112. Springer, Heidelberg (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Thomas Baar
    • 1
  • Jon Whittle
    • 2
  1. 1.École Polytechnique Fédérale de Lausanne (EPFL), School of Computer and Communication Sciences, CH-1015 LausanneSwitzerland
  2. 2.Department of Information and Software Engineering, George Mason University, Fairfax VA 22030USA

Personalised recommendations