Skip to main content

A Hybrid Approach to Feature-Oriented Programming in XVCL

  • Conference paper
Software Product Lines: Going Beyond (SPLC 2010)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6287))

Included in the following conference series:

Abstract

Feature-Oriented Programming (FOP) is a programming paradigm for developing programs by composing features. It is especially useful for software product line development, as each product line member implements some combinations of features. FOP attempts to modularize features and to enable their flexible composition into programs. Recent studies have shown that it is not practical to modularize and then compose features that have fine-grained impact on base programs. In this paper, we present a hybrid approach to feature modularization/composition problem. We modularize only separable features that can be well contained in dedicated files. We handle inseparable features by annotating base programs using preprocessing-like directives. We show how the hybrid approach can be achieved in XVCL, a generative technique to manage variabilities in software product lines.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Apel, S., Leich, T., Saake, G.: Aspectual Feature Modules. IEEE Trans. Software Eng. 34(2), 162–180 (2008)

    Article  Google Scholar 

  2. Batory, D., Sarvela, J., Rauschmayer, A.: Scaling Step-Wise Refinement. IEEE Trans. Software Eng. 30(6), 355–371 (2004)

    Article  Google Scholar 

  3. Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, MA (2000)

    Google Scholar 

  4. Jarzabek, S.: Effective Software Maintenance and Evolution: Reuse-based Approach. CRC Press, Taylor & Francis (2007)

    Google Scholar 

  5. Jarzabek, S., Zhang, H.: XML-based method and tool for handling variant requirements in domain models. In: Proc. Int’l. Symp. on Requirements Engineering (RE 2001), Toronto, Canada (2001)

    Google Scholar 

  6. Jarzabek, S., Zhang, H., Lee, Y., Xue, Y., Shaikh, N.: Increasing Usability of Preprocessing for Feature Management in Product Lines with Queries. In: Proc. ICSE 2009, Vancouver, Canada, May 2009, pp. 215–218 (2009)

    Google Scholar 

  7. Kästner, C., Apel, S., Batory, D.: A Case Study Implementing Features Using AspectJ. In: Proc. Int. Software Product Line Conference (SPLC 2007), Kyoto, Japan, September 2007, pp. 223–232 (2007)

    Google Scholar 

  8. Kästner, C., Apel, S., Kuhlemann, M.: Granularity in Software Product Lines. In: Proc. ICSE 2008, Leipzig, Germany, May 2008, pp. 311–320 (2008)

    Google Scholar 

  9. Lopez-Herrejon, R.E., Batory, D.: A standard problem for evaluating product-line methodologies. In: Bosch, J. (ed.) GCSE 2001. LNCS, vol. 2186, pp. 10–24. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  10. Mezini, M., Ostermann, K.: Variability Management with Feature-Oriented Programming and Aspects. In: Proc. SIGSOFT FSE 2004, Newport Beach, CA, pp. 127–136 (2004)

    Google Scholar 

  11. Prehofer, C.: Feature-oriented programming: A new way of object composition. Concurrency and Computation: Practice and Experience 13(6), 465–501 (2001)

    Article  MATH  Google Scholar 

  12. Sun, J., Zhang, H., Li, Y., Wang, H.: Formal Semantics and Verification for Feature Modeling. In: Proc. 10th Int. Conf. on Engineering of Complex Computer Systems (ICECCS 2005), Shanghai, June 2005, pp. 303–312 (2005)

    Google Scholar 

  13. Tarr, P., Ossher, H., Harrison, W., Sutton Jr., S.M.: N Degrees of Separation: Multi-Dimensional Separation of Concerns. In: Proc. ICSE 1999, Los Angeles, CA, USA (May 1999)

    Google Scholar 

  14. Zhang, H., Jarzabek, S.: XVCL: A Mechanism for Handling Variants in Software Product Lines. Science of Computer Programming 53(3), 381–407 (2004)

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Zhang, H., Jarzabek, S. (2010). A Hybrid Approach to Feature-Oriented Programming in XVCL. In: Bosch, J., Lee, J. (eds) Software Product Lines: Going Beyond. SPLC 2010. Lecture Notes in Computer Science, vol 6287. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15579-6_33

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-15579-6_33

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-15578-9

  • Online ISBN: 978-3-642-15579-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics