Staged Configuration Using Feature Models

  • Krzysztof Czarnecki
  • Simon Helsen
  • Ulrich Eisenecker
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3154)

Abstract

Feature modeling is an important approach to capturing commonalities and variabilities in system families and product lines. In this paper, we propose a cardinality-based notation for feature modeling, which integrates a number of existing extensions of previous approaches. We then introduce and motivate the novel concept of staged configuration. Staged configuration can be achieved by the stepwise specialization of feature models. This is important because in a realistic development process, different groups and different people eliminate product variability in different stages. We also indicate how cardinality-based feature models and their specialization can be given a precise formal semantics.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    DeBaud, J.M., Schmid, K.: A systematic approach to derive the scope of software product lines. In: Proceedings of the 21st International Conference on Software Engineering (ICSE), pp. 34–43. IEEE Computer Society Press, Los Alamitos (1999)CrossRefGoogle Scholar
  2. 2.
    Czarnecki, K., Eisenecker, U.W.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Reading (2000)Google Scholar
  3. 3.
    Bosch, J.: Design and Use of Software Architecture: Adopting and evolving a product-line approach. Addison-Wesley, Reading (2000)Google Scholar
  4. 4.
    David, M., Weiss, D.M., Lai, C.T.R.: Software Product-Line Engineering: A Family- Based Software Development Process. Addison-Wesley, Reading (1999)Google Scholar
  5. 5.
    Cleaveland, C.: Program Generators with XML and Java. Prentice-Hall, Englewood Cliffs (2001)Google Scholar
  6. 6.
    Batory, D., Johnson, C., MacDonald, B., von Heeder, D.: Achieving extensibility through product-lines and domain-specific languages: A case study. ACM Transactions on Software Engineering and Methodology (TOSEM) 11, 191–214 (2002)CrossRefGoogle Scholar
  7. 7.
    Greenfield, J., Short, K.: Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. Wiley, Chichester (2004) (to be published)Google Scholar
  8. 8.
    van Deursen, A., Klint, P.: Domain-specific language design requires feature descriptions. Journal of Computing and Information Technology 10, 1–17 (2002)MATHCrossRefGoogle Scholar
  9. 9.
    Kang, K., Cohen, S., Hess, J., Nowak, W., Peterson, S.: Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90TR-21, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA (1990)Google Scholar
  10. 10.
    Griss, M., Favaro, J., d’Alessandro, M.: Integrating feature modeling with the RSEB. In: Proceedings of the Fifth International Conference on Software Reuse (ICSR), pp. 76–85. IEEE Computer Society Press, Los Alamitos (1998)CrossRefGoogle Scholar
  11. 11.
    Lee, K., Kang, K.C., Lee, J.: Concepts and guidelines of feature modeling for product line software engineering. In: Gacek, C. (ed.) ICSR 2002. LNCS, vol. 2319, pp. 62–77. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  12. 12.
    Barbeau, M., Bordeleau, F.: A protocol stack development tool using generative programming. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol. 2487, pp. 93–109. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  13. 13.
    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)CrossRefGoogle Scholar
  14. 14.
    Czarnecki, K.: Generative Programming: Principles and Techniques of Software Engineering Based on Automated Configuration and Fragment-Based Component Models, PhThesis, Technical University of Ilmenau, Ilmanau, Germany (1998), Available from http://www.prakinf.tu-ilmenau.de/~czarn/diss
  15. 15.
    Hein, A., Schlick, M., Vinga-Martins, R.: Applying feature models in industrial settings. In: Donohoe, P. (ed.) Proceedings of the Software Product Line Conference (SPLC1), pp. 47–70. Kluwer Academic Publishers, Dordrecht (2000)Google Scholar
  16. 16.
    Svahnberg, M., van Gurp, J., Bosch, J.: On the notion of variability in software product lines. In: Proceedings of The Working IEEE/IFIP Conference on Software Architecture (WICSA), pp. 45–55 (2001)Google Scholar
  17. 17.
    Riebisch, M., Böllert, K., Streitferdt, D., Philippow, I.: Extending feature diagrams with UML multiplicities. In: 6th Conference on Integrated Design & Process Technology (IDPT 2002), Pasadena, California, USA (2002)Google Scholar
  18. 18.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their staged configuration. Technical Report 04-11, Departement of Electrical and Computer Engineering, University of Waterloo, Canada (2004), http://www.ece.uwaterloo.ca/~kczarnec/TR04-11.pdf
  19. 19.
    Bednasch, T.: Konzept und Implementierung eines konfigurierbaren Metamodells für die Merkmalmodellierung, Diplomarbeit, Fachbereich Informatik, Fachhochschule Kaiserslautern,Standort Zweibrücken, Germany (2002), Available from http://www.informatik.fh-kl.de/~eisenecker/studentwork/dt_bednasch.pdf
  20. 20.
    Bednasch, T., Endler, C., Lang, M.: CaptainFeature (2002–2004), Tool available on SourceForge at https://sourceforge.net/projects/captainfeature/
  21. 21.
    Selbig, M.: A feature diagram editor — Analysis, design, and implementation of its core functionality, Diplomarbeit, Fachbereich Informatik, Fachhochschule Kaiserslautern, Standort Zweibrücken, Germany (2000)Google Scholar
  22. 22.
    Selbig, M.: AmiEddi (2000–2004), Tool available at http://www.generative-programming.org
  23. 23.
    Krueger, C.W.: Software mass customization. White paper (2001), Available from http://www.biglever.com/papers/BigLeverMassCustomization.pdf
  24. 24.
    pure-systems GmbH: Variant management with pure:consul. Technical White Paper (2003), Available from http://web.pure-systems.com
  25. 25.
    Beuche, D.: Composition and Construction of Embedded Software Families, PhD thesis, Otto-von-Guericke-Universität Magdeburg, Germany (2003), Available from http://www-ivs.cs.uni-magdeburg.de/~danilo

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Krzysztof Czarnecki
    • 1
  • Simon Helsen
    • 1
  • Ulrich Eisenecker
    • 2
  1. 1.University of WaterlooCanada
  2. 2.University of Applied Sciences KaiserslauternZweibrückenGermany

Personalised recommendations