Software & Systems Modeling

, Volume 8, Issue 3, pp 325–345 | Cite as

Modularization of model transformations through a phasing mechanism

  • Jesús Sánchez Cuadrado
  • Jesús García Molina
Special Section Paper

Abstract

In recent years a great effort has been devoted to understanding the nature of model transformations. As a result, several mechanisms to improve model transformation languages have been proposed. Phasing has been mentioned in some works as a rule scheduling or organization mechanism, but without any detail. In this paper, we present a phasing mechanism in the context of rule-based transformation languages. We explain the structure and the behavior of the mechanism, and how it can be integrated in a language. We also analyze how the mechanism promotes modularity, internal transformation composition and helps to solve usual transformation problems. Besides, we show several examples of application to illustrate the usefulness of the mechanism.

Keywords

Model transformation Transformation languages Phasing mechanism Modularity Internal transformation composition 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Belaunde, M.: Transformation Composition in QVT. In: Proceedings of the First European Workshop on Composition of Model Transformations, pp. 45–52 (2006)Google Scholar
  2. 2.
    Cleenewerck, T., Kurtev, I.: Separation of concerns in translational semantics for dsls in model engineering. In: SAC ’07: Proceedings of the 2007 ACM Symposium on Applied Computing, pp. 985–992. ACM Press, New York (2007)Google Scholar
  3. 3.
    Compuware Optimal J.: Available online: http://www.compuware.com (2005)
  4. 4.
    Czarnecki K., Helsen S (2006) Feature-based survey of model transformation approaches. IBM Syst. J. 45(3): 621–645CrossRefGoogle Scholar
  5. 5.
    de Lara, J, Vangheluwe, H.: Atom3: A tool for multi-formalism and meta-modelling. In: European Joint Conference on Theory and Practice of Software (FASE), pp. 174–188 (2002)Google Scholar
  6. 6.
    Filman R.E., Elrad T., Clarke S., Aksit M. (2004) Aspect-Oriented Software Development. Addison-Wesley, ReadingGoogle Scholar
  7. 7.
    Goran, J.O., Olsen, K., Jan Aagedal.: Aspects of reusable model transformations. In: Proceedings of the First European Workshop on Composition of Model Transformations, pp. 27–32 (2006)Google Scholar
  8. 8.
    Jouault, F., Kurtev, I.: Transforming models with ATL. In: Proceedings of the Model Transformations in Practice Workshop at MoDELS 2005, Montego Bay, Jamaica (2005)Google Scholar
  9. 9.
    Kleppe, A.: MCC: A model transformation environment. In: 2nd European Conference on Model Driven Architecture. Lecture Notes in Computer Science, pp. 173–187 (2006)Google Scholar
  10. 10.
    Kurtev, I.: Adaptability of model transformations. PhD Thesis, University of Twente, ISBN 90-365-2184-X (2005)Google Scholar
  11. 11.
    Kurtev, I., van den Berg, K., Jouault, F.: Rule-based modularization in model transformation languages illustrated with ATL. In: Proceedings of the 2006 ACM Symposium on Applied Computing (SAC’06), pp. 1202–1209. ACM Press, Dijon (2006)Google Scholar
  12. 12.
    Lawley, M., Duddy, K., Gerber, A., Raymond, K.: Language features for re-use and maintainability of MDA transformations. In: OOPSLA Workshop on Best Practices for Model-Driven Software Development, Vancouver, Canada (2004)Google Scholar
  13. 13.
    Lawley, M., Steel, J.: Practical declarative model transformation with Tefkat. In: Model Transformations in Practice Workshop, Montego Bay, Jamaica (2005)Google Scholar
  14. 14.
    Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (MEY b 88:1 2.P-Ex) (1997)Google Scholar
  15. 15.
    Object Management Group: MDA Guide version 1.0.1. omg/2003-06-01, OMG document (2003)Google Scholar
  16. 16.
    OMG. Final adopted specification for MOF 2.0 Query/View/Transformation. http://www.omg.org/docs/ptc/05-11-01.pdf (2005)
  17. 17.
    Sánchez, J.: García, J. A plugin-based language to experiment with model transformations. In 9th International Conference on Model Driven Engineering Languages and Systems. Lecture Notes in Computer Science, vol. 4199, pp. 336–350 (2006)Google Scholar
  18. 18.
    Sánchez, J., García, J. Menarguez, M., Ruby, T.L.: A practical, extensible transformation language. In: 2nd European Conference on Model Driven Architecture. Lecture Notes in Computer Science, vol. 4066, pp. 158–172 (2006)Google Scholar
  19. 19.
    Taentzer, G. Agg: a graph transformation environment for modeling and validation of software. In: Applications of Graph Transformations with Industrial Relevance (AGTIVE), pp. 446–453 (2003)Google Scholar
  20. 20.
    Tarr, P., Ossher, H., Harrison, W., Sutton, S.M.: N degrees of separation: multi-dimensional separation of concerns. In: ICSE ’99: Proceedings of the 21st international conference on Software Engineering, pp. 107–119. IEEE Computer Society Press Los Alamitos, CA (1999)Google Scholar
  21. 21.
    van Wijngaardeen, J.v.: Visser, E.: Program transformation mechanics: a classification of mechanisms for program transformation with a survey of existing transformation systems. Technical Report, Utrecht University (2003)Google Scholar
  22. 22.
    Varró D, Balogh A (2007) The model transformation language of the viatra2 framework. Sci Comput Program 68(3): 187–207CrossRefGoogle Scholar
  23. 23.
    Wageelar, D.: Blackbox composition of model transformations using domain-specic modelling languages. In: Proceedings of the First European Workshop on Composition of Model Transformations, pp. 21–26 (2006)Google Scholar
  24. 24.
    Warmer, J.: Octel, a template language for generating structures instead of textstreams. In: Proceedings of the First European Workshop on Composition of Model Transformations, pp. 47–50 (2006)Google Scholar

Copyright information

© Springer-Verlag 2008

Authors and Affiliations

  • Jesús Sánchez Cuadrado
    • 1
  • Jesús García Molina
    • 1
  1. 1.University of MurciaMurciaSpain

Personalised recommendations