Achieving Practical Genericity in Model Weaving through Extensibility

  • Max E. Kramer
  • Jacques Klein
  • Jim R. H. Steel
  • Brice Morin
  • Jörg Kienzle
  • Olivier Barais
  • Jean-Marc Jézéquel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7909)

Abstract

Many tasks in Model-Driven Engineering (MDE) involve cross-cutting model modifications that are bound to certain conditions. These transformation tasks may affect numerous model elements and appear in different forms, such as refactoring, model completions or aspect-oriented model weaving. Although the operations at the heart of these tasks are domain-independent, generic solutions that can easily be used and customized are rare. General-purpose model transformation languages as well as existing model weavers exhibit metamodel-specific restrictions and introduce accidental complexity. In this paper, we present a model weaver that addresses these problems using an extensible approach that is defined for metamodelling languages and therefore generic. Through examples of different formalisms we illustrate how our weaver manages homogeneous in-place model transformations that may involve the duplication, merge, and removal of model elements in a generic way. Possibilities to extend and customize our weaver are exemplified for the non-software domain of Building Information Modelling (BIM).

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ali, S., Briand, L., Hemmati, H.: Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems. Software and Systems Modeling,1–38 (2011)Google Scholar
  2. 2.
    AMW Use Case: Aspect Oriented Modeling, http://www.eclipse.org/gmt/amw/usecases/AOM/
  3. 3.
    Becker, S., Koziolek, H., Reussner, R.: The Palladio component model for model-driven performance prediction. Journal of Systems and Software 82, 3–22 (2009)CrossRefGoogle Scholar
  4. 4.
    Cottenier, T., van den Berg, A., Elrad, T.: The motorola WEAVR: Model weaving in a large industrial context. In: Proceedings of the 5th International Conference on Aspect-Oriented Software Development (AOSD 2006). ACM (2006)Google Scholar
  5. 5.
  6. 6.
    Didonet Del Fabro, M., Valduriez, P.: Towards the efficient development of model transformations using model weaving and matching transformations. Software and Systems Modeling 8, 305–324 (2009)CrossRefGoogle Scholar
  7. 7.
    Eastman, C., Teicholz, P., Sacks, R., Liston, K.: BIM Handbook. Wiley (2011)Google Scholar
  8. 8.
    Forgy, C.L.: Rete: A fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence 19(1), 17–37 (1982)CrossRefGoogle Scholar
  9. 9.
    Heidenreich, F., Henriksson, J., Johannes, J., Zschaler, S.: On language-independent model modularisation. In: Katz, S., Ossher, H., France, R., Jézéquel, J.-M. (eds.) Transactions on AOSD VI. LNCS, vol. 5560, pp. 39–82. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  10. 10.
    Howard, R., Björk, B.C.: Building information modelling - experts’ views on standardisation and industry deployment. Advanced Engineering Informatics 22(2), 271–280 (2008)CrossRefGoogle Scholar
  11. 11.
    Industry Foundation Classes (IFC2x Platform), ISO/PAS Standard 16739:2005Google Scholar
  12. 12.
    Jouault, F., Bézivin, J.: KM3: A DSL for metamodel specification. In: Gorrieri, R., Wehrheim, H. (eds.) FMOODS 2006. LNCS, vol. 4037, pp. 171–185. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  13. 13.
    Kapova, L., Reussner, R.: Application of advanced model-driven techniques in performance engineering. In: Aldini, A., Bernardo, M., Bononi, L., Cortellessa, V. (eds.) EPEW 2010. LNCS, vol. 6342, pp. 17–36. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  14. 14.
    Klein, J., Hélouet, L., Jézéquel, J.M.: Semantic-based weaving of scenarios. In: Proceedings of the 5th International Conference on Aspect-Oriented Software Development (AOSD 2006). ACM (2006)Google Scholar
  15. 15.
    Klein, J., Kramer, M.E., Steel, J.R.H., Morin, B., Kienzle, J., Barais, O., Jézéquel, J.M.: On the formalisation of geko: a generic aspect models weaver. Technical Report (2012)Google Scholar
  16. 16.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Merging models with the epsilon merging language (EML). In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 215–229. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  17. 17.
    Kramer, M.E., Klein, J., Steel, J.R.: Building specifications as a domain-specific aspect language. In: Proceedings of the Seventh Workshop on Domain-Specific Aspect Languages, DSAL 2012, pp. 29–32. ACM (2012)Google Scholar
  18. 18.
    Lahire, P., Morin, B., Vanwormhoudt, G., Gaignard, A., Barais, O., Jézéquel, J.M.: Introducing variability into aspect-oriented modeling approaches. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 498–513. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  19. 19.
    Lahire, P., Quintian, L.: New perspective to improve reusability in object-oriented languages. Journal of Object Technology (ETH Zurich) 5(1), 117–138 (2006)CrossRefGoogle Scholar
  20. 20.
    Mehner, K., Monga, M., Taentzer, G.: Analysis of aspect-oriented model weaving. In: Rashid, A., Ossher, H. (eds.) Transactions on AOSD V. LNCS, vol. 5490, pp. 235–263. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  21. 21.
    Morin, B., Barais, O., Jézéquel, J.M., Ramos, R.: Towards a generic aspect-oriented modeling framework. In: Models and Aspects Workshop, ECOOP 2007 (2007)Google Scholar
  22. 22.
    Morin, B., Klein, J., Barais, O., Jézéquel, J.M.: A generic weaver for supporting product lines. In: Proc. of the 13th International Workshop on Early Aspects at ICSE 2008, EA 2008, pp. 11–18. ACM (2008)Google Scholar
  23. 23.
    Morin, B., Klein, J., Kienzle, J., Jézéquel, J.M.: Flexible model element introduction policies for aspect-oriented modeling. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010, Part II. LNCS, vol. 6395, pp. 63–77. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  24. 24.
    Ramos, R., Barais, O., Jézéquel, J.M.: Matching model-snippets. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 121–135. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  25. 25.
    Sánchez, P., Fuentes, L., Stein, D., Hanenberg, S., Unland, R.: Aspect-oriented model weaving beyond model composition and model transformation. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 766–781. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  26. 26.
    Sánchez Cuadrado, J., Guerra, E., de Lara, J.: Generic model transformations: write once, reuse everywhere. In: Cabot, J., Visser, E. (eds.) ICMT 2011. LNCS, vol. 6707, pp. 62–77. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  27. 27.
    Steel, J., Duddy, K., Drogemuller, R.: A transformation workbench for building information models. In: Cabot, J., Visser, E. (eds.) ICMT 2011. LNCS, vol. 6707, pp. 93–107. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  28. 28.
    Whittle, J., Jayaraman, P.: Mata: A tool for aspect-oriented modeling based on graph transformation. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 16–27. Springer, Heidelberg (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Max E. Kramer
    • 1
  • Jacques Klein
    • 2
  • Jim R. H. Steel
    • 3
  • Brice Morin
    • 4
  • Jörg Kienzle
    • 5
  • Olivier Barais
    • 6
  • Jean-Marc Jézéquel
    • 6
  1. 1.Karlsruhe Institute of TechnologyKarlsruheGermany
  2. 2.University of LuxembourgLuxembourg
  3. 3.The University of QueenslandBrisbaneAustralia
  4. 4.SINTEF ICTOsloNorway
  5. 5.McGill UniversityMontréalCanada
  6. 6.IRISA-INRIA, TriskellRennesFrance

Personalised recommendations