Mapping Features to Models: A Template Approach Based on Superimposed Variants

  • Krzysztof Czarnecki
  • Michał Antkiewicz
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3676)


Although a feature model can represent commonalities and variabilities in a very concise taxonomic form, features in a feature model are merely symbols. Mapping features to other models, such as behavioral or data specifications, gives them semantics. In this paper, we propose a general template-based approach for mapping feature models to concise representations of variability in different kinds of other models. We show how the approach can be applied to UML 2.0 activity and class models and describe a prototype implementation.


Activity Diagram Software Product Line Boolean Formula Decision Node Disjunctive Normal Form 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Czarnecki, K., Eisenecker, U.W.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Reading (2000)Google Scholar
  2. 2.
    Czarnecki, K.: Overview of Generative Software Development. In: Proceedings of the European Commission and US National Science Foundation Strategic Research Workshop on Unconventional Programming Paradigms, September 15-17, 2004, Mont Saint-Michel, France (2004),
  3. 3.
    Batory, D.: Feature Models, Grammars, and Propositional Formulas. Technical Report TR-05-14, University of Texas at Austin, Texas (2005)Google Scholar
  4. 4.
    Object Management Group: Meta-Object Facility (2002),
  5. 5.
    Kang, K., Cohen, S., Hess, J., Nowak, W., Peterson, S.: Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA (1990)Google Scholar
  6. 6.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Staged configuration through specialization and multi-level configuration of feature models. Software Process Improvement and Practice 10, 143–169 (2005), CrossRefGoogle Scholar
  7. 7.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their specialization. Software Process Improvement and Practice 10, 7–29 (2005)CrossRefGoogle Scholar
  8. 8.
    Antkiewicz, M., Czarnecki, K.: FeaturePlugin: Feature modeling plug-in for Eclipse. In: OOPSLA 2004 Eclipse Technology eXchange (ETX) Workshop (2004), Paper available from: Software available from:
  9. 9.
    World Wide Web Consortium: XML Path Language (XPath) 2.0 (2005),
  10. 10.
    Object Management Group: Unified Modeling Language 2.0 (2004),
  11. 11.
    Schnieders, A., Puhlmann, F.: Activity diagram inheritance. In: Abramowicz, W. (ed.) Proceedings of 8th International Conference on BIS 2005 - Business Information Systems, Poznan, Poland (2005)Google Scholar
  12. 12.
    Lee, J., Xue, N.L., Kuei, T.L.: A note on state modeling through inheritance. SIGSOFT Softw. Eng. Notes 23, 104–110 (1998)CrossRefGoogle Scholar
  13. 13.
    Simons, A.J.H., Stannett, M.P., Holcombe, K.E.B.: Plug and play safely: Rules for behavioural compatibility. In: Proc. 6th IASTED Int. Conf. Software Engineering and Applications, pp. 263–268 (2002)Google Scholar
  14. 14.
    Ziadi, T., Hélouët, L., Jézéquel, J.M.: Towards a uml profile for software product lines. In: van der Linden, F.J. (ed.) PFE 2003. LNCS, vol. 3014, pp. 129–139. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  15. 15.
    Wasowski, A.: Automatic generation of program families by model restrictions. In: Nord, R.L. (ed.) SPLC 2004. LNCS, vol. 3154, pp. 73–89. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. 16.
    Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling step-wise refinement. In: Proceedings of the 25th International Conference on Software Engineering (ICSE), Portland, Oregon, pp. 187–197. IEEE Computer Society, Los Alamitos (2003)CrossRefGoogle Scholar
  17. 17.
    Tarr, P., Ossher, H., Harrison, W., Stanley, M., Sutton, J.: N degrees of separation: multi-dimensional separation of concerns. In: ICSE 1999: Proceedings of the 21st international conference on Software engineering, pp. 107–119. IEEE Computer Society Press, Los Alamitos (1999)CrossRefGoogle Scholar
  18. 18.
    Philippow, I., Riebisch, M., Boellert, K.: The hyper/UML approach for feature based software design. In: Akkawi, F., Aldawud, O., Booch, G., Clarke, S., Gray, J., Harrison, B., Kandé, M., Stein, D., Tarr, P., Zakaria, A. (eds.) The 4th AOSD Modeling With UML Workshop (2003)Google Scholar
  19. 19.
    McNeile, A.T., Simons, N.: State machines as mixins. Journal of Object Technology 2, 85–101 (2003)CrossRefGoogle Scholar
  20. 20.
    Prehofer, C.: Plug-and-play composition of features and feature interactions with statechart diagrams. In: FIW, pp. 43–58 (2003)Google Scholar
  21. 21.
    Straw, G., Georg, G., Song, E., Ghosh, S., France, R., Bieman, J.M.: Model composition directives. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, pp. 84–97. Springer, Heidelberg (2004)Google Scholar
  22. 22.
    Jarzabek, S., Zhang, H.: Xml-based method and tool for handling variant requirements in domain models. In: RE, pp. 166–173 (2001)Google Scholar
  23. 23.
    Czarnecki, K., Bednasch, T., Unger, P., Eisenecker, U.W.: Generative programming for embedded software: An industrial experience report. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol. 2487, pp. 156–172. Springer, Heidelberg (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Krzysztof Czarnecki
    • 1
  • Michał Antkiewicz
    • 1
  1. 1.University of WaterlooCanada

Personalised recommendations