Isolating and Reusing Template Instances in UML

  • Matthieu Allon
  • Gilles Vanwormhoudt
  • Bernard Carré
  • Olivier Caron
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9764)


In MBE, design of systems can be improved and accelerated thanks to reusable models which are made available in model repositories or libraries. One answer for designing reusable models is parameterization as offered by UML templates and their binding relationship. The standard aims at embracing under the same constructs two distinct kinds of template usages, namely template instantiation and aspectual binding. Template instantiation is concerned with the capacity of UML templates to model generic components (like C++ templates or Java generics) and produce new models from their binding. Aspectual binding is much more concerned with the capacity of UML templates to specify functionalities to inject into models of systems (contexts) which must conform to a required parameter model. In this paper, we focus on the generative interpretation of UML template binding. On the basis of a deep analysis of the standard, it will be shown that template binding consists in template instantiation plus context merging. This allows to isolate the capacity of instantiating templates (under their generative view) to get reusable models coming from applicative contexts. Then the possibility of partial instantiation inspired by partial binding as promoted by the standard is studied. At a practical level, related functionalities are offered within Eclipse.


UML templates Aspectual templates Template binding Partial binding Template instantiation 



We would like to thank the anonymous reviewers for their work and comments in order to improve the presentation of the results.


  1. 1.
    Allon, M., Vanwormhoudt, G., Carré, B., Caron, O.: Template based MDE. In: 4ème Conférence en Ingénierie du Logiciel (CIEL 2015) (2015).
  2. 2.
    Berg, H., Møller-Pedersen, B.: Type-safe symmetric composition of metamodels using templates. In: Haugen, Ø., Reed, R., Gotzhein, R. (eds.) SAM 2012. LNCS, vol. 7744, pp. 160–178. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  3. 3.
    Bottoni, P., Guerra, E., de Lara, J.: A language-independent and formal approach to pattern-based modelling with support for composition and analysis. Inf. Softw. Technol. 52(8), 821–844 (2010)CrossRefGoogle Scholar
  4. 4.
    Carré, B., Vanwormhoudt, G., Caron, O.: From subsets of model elements to submodels, a characterization of submodels and their properties. Softw. Syst. Model. 14, 861–887 (2015)CrossRefGoogle Scholar
  5. 5.
    Cuccuru, A., Radermacher, A., Gérard, S., Terrier, F.: Constraining type parameters of UML 2 templates with substitutable classifiers. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 644–649. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  6. 6.
    D’Souza, D., Wills, A.: Catalysis: Objects, Components, and Frameworks with UML. Object Technology Series. Addison-Wesley, Boston (1998)Google Scholar
  7. 7.
    Farinha, J., Ramos, P.: Extending UML templates towards computability. In: Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2015), pp. 122–133. SciTePress, February 2015Google Scholar
  8. 8.
    Herrmannsdörfer, M., Hummel, B.: Library concepts for model reuse. Electr. Notes Theoret. Comput. Sci. 253(7), 121–134 (2010)CrossRefGoogle Scholar
  9. 9.
    Klein, J., Kienzle, J.: Reusable aspect models. In: 11th Aspect-Oriented Modeling Workshop, Nashville. Citeseer (2007)Google Scholar
  10. 10.
    Whittle, J., Jayaraman, P., Elkhodary, A., Moreira, A., Araújo, J.: MATA: a unified approach for composing UML aspect models based on graph transformation. In: Katz, S., Ossher, H., France, R., Jézéquel, J.-M. (eds.) Transactions on Aspect-Oriented Software Development VI. LNCS, vol. 5560, pp. 191–237. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  11. 11.
    de Lara, J., Guerra, E.: From types to type requirements: genericity for model-driven engineering. Softw. Syst. Model. 12(3), 453–474 (2013)CrossRefGoogle Scholar
  12. 12.
    Muller, A., Caron, O., Carré, B., Vanwormhoudt, G.: On some properties of parameterized model application. In: Hartman, A., Kreische, D. (eds.) ECMDA-FA 2005. LNCS, vol. 3748, pp. 130–144. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  13. 13.
    OMG: Auxiliary Constructs Templates, Chap. 17. UML 2.4.1 Superstructure Specification (2011)Google Scholar
  14. 14.
    Bigot, J., Pérez, C.: Increasing reuse in component models through genericity. In: Edwards, S.H., Kulczycki, G. (eds.) ICSR 2009. LNCS, vol. 5791, pp. 21–30. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  15. 15.
    Reddy, Y.R., Ghosh, S., France, R.B., Straw, G., Bieman, J.M., McEachen, N., Song, E., Georg, G.: Directives for composing aspect-oriented design class models. In: Rashid, A., Akşit, M. (eds.) Transactions on Aspect-Oriented Software Development I. LNCS, vol. 3880, pp. 75–105. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  16. 16.
    Melnik, S., Bernstein, P.A., Halevy, A., Rahm, E.: A semantics for model management operators. Microsoft Technical report, pp. 1–12 (2004)Google Scholar
  17. 17.
    Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: Eclipse Modeling Framework. Addison-Wesley, Reading (2008)Google Scholar
  18. 18.
    Vanwormhoudt, G., Caron, O., Carré, B.: Aspectual templates in UML. In: Software and Systems Modeling, pp. 1–29 (2015).

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Matthieu Allon
    • 1
  • Gilles Vanwormhoudt
    • 1
    • 2
  • Bernard Carré
    • 1
  • Olivier Caron
    • 1
  1. 1.University of LilleCRIStAL Lab. (UMR CNRS 9189)Villeneuve-d’ascqFrance
  2. 2.Mines-Telecom InstituteVilleneuve-d’ascqFrance

Personalised recommendations