Relating Feature Models to Other Models of a Software Product Line

A Comparative Study of FeatureMapper and VML*
  • Florian Heidenreich
  • Pablo Sánchez
  • João Santos
  • Steffen Zschaler
  • Mauricio Alférez
  • João Araújo
  • Lidia Fuentes
  • Uirá Kulesza
  • Ana Moreira
  • Awais Rashid
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6210)

Abstract

Software product lines using feature models often require the relation between feature models in problem space and the models used to describe the details of the product line to be expressed explicitly. This is particularly important, where automatic product derivation is required. Different approaches for modelling this mapping have been proposed in the literature. However, a discussion of their relative benefits and drawbacks is currently missing. As a first step towards a better understanding of this field, this paper applies two of these approaches—FeatureMapper as a representative of declarative approaches and VML* as a representative of operational approaches—to the case study. We show in detail how the case study can be expressed using these approaches and discuss strengths and weaknesses of the two approaches with regard to the case study.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Kienzle, J., Guelfi, N., Mustafiz, S.: Crisis management systems: A case study for aspect-oriented modeling. Transactions on Aspect-Oriented Software Development 7, 1–22 (2010)Google Scholar
  2. 2.
    Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading (2002)Google Scholar
  3. 3.
    Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Heidelberg (September 2005)MATHGoogle Scholar
  4. 4.
    American Heritage: The American Heritage Dictionary. Houghton Mifflin, Boston, MA (1985)Google Scholar
  5. 5.
    Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-0211990, Software Engineering Institute (1990)Google Scholar
  6. 6.
    Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling step-wise refinement. IEEE Transactions on Software Engineering 30(6), 355–371 (2004)CrossRefGoogle Scholar
  7. 7.
    Czarnecki, K., Antkiewicz, M.: Mapping features to models: A template approach based on superimposed variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Haugen, Ø., Møller-Pedersen, B., Oldevik, J., Olsen, G., Svendsen, A.: Adding standardized variability to domain specific languages. In: Proceedings of the 12th International Software Product Line Conference (SPLC 2008), pp. 139–148. IEEE, Los Alamitos (2008)CrossRefGoogle Scholar
  9. 9.
    Heidenreich, F., Kopcsek, J., Wende, C.: FeatureMapper: Mapping Features to Models. In: Companion Proceedings of the 30th International Conference on Software Engineering (ICSE 2008), pp. 943–944. ACM, New York (May 2008)CrossRefGoogle Scholar
  10. 10.
    Morin, B., Perrouin, G., Lahire, P., Barais, O., Vanwormhoudt, G., Jézéquel, J.M.: Weaving variability into domain metamodels. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 690–705. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  11. 11.
    Zschaler, S., Sánchez, P., Santos, J., Alférez, M., Rashid, A., Fuentes, L., Moreira, A., Araújo, J., Kulesza, U.: VML* – a family of languages for variability management in software product lines [52]Google Scholar
  12. 12.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: Eclipse Modeling Framework, 2nd edn. Pearson Education (2008)Google Scholar
  13. 13.
    Heidenreich, F., Johannes, J., Karol, S., Seifert, M., Wende, C.: Derivation and Refinement of Textual Syntax for Models. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 114–129. Springer, Heidelberg (2009)CrossRefGoogle 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.
    Loughran, N., Sánchez, P., Gámez, N., Garcia, A., Fuentes, L., Schwanninger, C., Kovacevic, J.: Survey on State-of-the-Art in Product Line Architecture Design. Technical Report Deliverable D2.1 (March 2007), AMPLE project http://www.ample-project.net
  16. 16.
    Groher, I., Voelter, M.: XWeave: Models and aspects in concert. In: Proceedings of the 10th International Workshop on Aspect-Oriented Modeling (AOM 2007), pp. 35–40. ACM, New York (2007)CrossRefGoogle Scholar
  17. 17.
    Schauerhuber, A., Schwinger, W., Kapsammer, E., Retschitzegger, W., Wimmer, M., Kappel, G.: A survey on aspect-oriented modeling approaches. Technical report, Vienna University of Technology (2007)Google Scholar
  18. 18.
    Heidenreich, F., Henriksson, J., Johannes, J., Zschaler, S.: On language-independent model modularisation [53] pp. 39–82Google Scholar
  19. 19.
    Whittle, J., Jayaraman, P., Elkhodary, A., Moreira, A., Araújo, J. (eds.): MATA: A Unified Approach for Composing UML Aspect Models Based on Graph Transformation [53], pp. 191–237.Google Scholar
  20. 20.
    Fuentes, L., Nebrera, C., Sánchez, P.: Feature-oriented model-driven software product lines: The TENTE approach. In: Yu, E., Eder, J., Rolland, C. (eds.) CAiSE 2009, pp. 67–72 (2009)Google Scholar
  21. 21.
    Greenwood, P., Bartolomei, T.T., Figueiredo, E., Dósea, M., Garcia, A.F., Cacho, N., Sant’Anna, C., Soares, S., Borba, P., Kulesza, U., Rashid, A.: On the impact of aspectual decompositions on design stability: An empirical study. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 176–200. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  22. 22.
    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
  23. 23.
    Beuche, D., Papajewski, H., Schröder-Preikschat, W.: Variability Management with Feature Models. Science of Computer Programming 53(3), 333–352 (2004)MATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Ziadi, T., Jézéquel, J.M.: Software product line engineering with the UML: Deriving products. In: Proceedings of the 10th International Software Product Line Conference (SPLC 2006), pp. 557–588 (2006)Google Scholar
  25. 25.
    Botterweck, G., O’Brien, L., Thiel, S.: Model-driven derivation of product architectures. In: Proceedings of the 22nd International Conference on Automated Software Engineering (ASE 2007), pp. 469–472 (2007)Google Scholar
  26. 26.
    Sánchez, P., Loughran, N., Fuentes, L., Garcia, A.: Engineering languages for specifying product-derivation processes in software product lines. In: Gašević, D., Lämmel, R., Van Wyk, E. (eds.) SLE 2008. LNCS, vol. 5452, pp. 188–207. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  27. 27.
    Krueger, C.W.: Gears white papers (2006), http://www.biglever.com/learn/whitepapers.html
  28. 28.
    Bakal, M., Krueger, C.W.: The rhapsody/gears bridge - spl for mdd. In: Proc. of the 11th Int. Conference on Software Product Lines (SPLC) - Workshops, Kyoto, Japan, pp. 139–140 (September 2007)Google Scholar
  29. 29.
    Groher, I., Voelter, M.: Aspect-Oriented Model-Driven Software Product Line Engineering [53], pp. 111–152Google Scholar
  30. 30.
    Kienzle, J., Abed, W.A., Klein, J.: Aspect-Oriented Multi-View Modelling. In: Proc. of the 8th Int. Conference on Aspect-Oriented Software Development (AOSD), Charlottesville, Virginia, USA, March 2009, pp. 87–98 (2009)Google Scholar
  31. 31.
    Heidenreich, F., Şavga, I., Wende, C.: On Controlled Visualisations in Software Product Line Engineering. In: Proceedings of the 2nd International Workshop on Visualisation in Software Product Line Engineering (ViSPLE 2008), collocated with the 12th International Software Product Line Conference (SPLC 2008) (September 2008)Google Scholar
  32. 32.
    The FeatureMapper Project Team: FeatureMapper (July 2009), http://www.featuremapper.org
  33. 33.
    The Topcased Project Team: TOPCASED (July 2009), http://www.topcased.org
  34. 34.
    Heidenreich, F., Wende, C.: Bridging the gap between features and models. In: 2nd Workshop on Aspect-Oriented Product Line Engineering (AOPLE 2007) co-located with the 6th International Conference on Generative Programming and Component Engineering, GPCE 2007 (2007), http://www.softeng.ox.ac.uk/aople/
  35. 35.
    Object Management Group: UML 2.2 infrastructure specification. OMG Document (February 2009), http://www.omg.org/spec/UML/2.2/
  36. 36.
    Zschaler, S., Kolovos, D.S., Drivalos, N., Paige, R.F., Rashid, A.: Domain-specific metamodelling languages for software language engineering. [52]Google Scholar
  37. 37.
    Alférez, M., Kulesza, U., Weston, N., Araujo, J., Amaral, V., Moreira, A., Rashid, A., Jaeger, M.C.: A metamodel for aspectual requirements modelling and composition. AMPLE Deliverable D1.3 (2007), http://ample.holos.pt/gest_cnt_upload/editor/File/public/AMPLE_WP1_D13.pdf
  38. 38.
    Efftinge, S.: openArchitectureWare 4.1 Xtend language reference (August 2006), http://www.openarchitectureware.org/pub/documentation/4.1/r25_extendReference.pdf
  39. 39.
    Anquetil, N., Kulesza, U., Mitschke, R., Moreira, A., Royer, J.C., Rummler, A., Sousa, A.: A model-driven traceability framework for software product lines. Journal Software and Systems Modeling (2009) (Published on-line first, June 29, 2009)Google Scholar
  40. 40.
    Loughran, N., Sánchez, P., Garcia, A., Fuentes, L.: Language support for managing variability in architectural models. In: Pautasso, C., Tanter, É. (eds.) SC 2008. LNCS, vol. 4954, pp. 36–51. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  41. 41.
    Fleurey, F., Baudry, B., Ghosh, S., France, R.: A generic approach for automatic model composition. In: Aspect Oriented Modeling (AOM) Workshop colocated with MoDELS 2007 (2007)Google Scholar
  42. 42.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Staged configuration using feature models. In: Nord, R.L. (ed.) SPLC 2004. LNCS, vol. 3154, pp. 266–283. Springer, Heidelberg (2004)Google Scholar
  43. 43.
    Janota, M., Botterweck, G.: Formal approach to integrating feature and architecture models. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 31–45. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  44. 44.
    Thaker, S., Batory, D., Kitchin, D., Cook, W.: Safe composition of product lines. In: Proc. 6th Int’l Conf. Generative Programming and Component Engineering (GPCE 2007), pp. 95–104 (2007)Google Scholar
  45. 45.
    Apel, S., Kästner, C.: An overview of feature-oriented software development. Journal of Object Technology (JOT) 8(5), 49–84 (2009)Google Scholar
  46. 46.
    France, R.B., Ghosh, S., Dinh-Trong, T.T., Solberg, A.: Model-Driven Development Using UML 2.0: Promises and Pitfalls. IEEE Computer 39(2), 59–66 (2006)Google Scholar
  47. 47.
    Heidenreich, F.: Towards systematic ensuring well-formedness of software product lines. In: Proc. 1st Workshop on Feature-Oriented Software Development. ACM Press, New York (October 2009)Google Scholar
  48. 48.
    Czarnecki, K., Pietroszek, K.: Verifying Feature-Based Model Templates Against Well-Formedness OCL Constraints. In: Jarzabek, S., Schmidt, D.C., Veldhuizen, T.L. (eds.) Proc. 5th Int’l Conf. Generative Programming and Component Engineering (GPCE 2006), pp. 211–220. ACM, New York (2006)CrossRefGoogle Scholar
  49. 49.
    ViSPLE organisers: International Workshop Series on Visualisation in Software Product Line Engineering (ViSPLE) (2008–2009)Google Scholar
  50. 50.
    Heidenreich, F., Johannes, J., Zschaler, S.: Aspect orientation for your language of choice. In: Proceedings of the 11th International Workshop on Aspect-Oriented Modeling (AOM at MoDELS 2007) co-located with the 10th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2007) (October 2007)Google Scholar
  51. 51.
    Şavga, I., Heidenreich, F.: Refactoring in feature-oriented programming: Open issues. In: Proc. Workshop on Modularization, Composition, and Generative Techniques for Product Line Engineering, Department of Informatics and Mathematics, University of Passau, pp. 41–46 Technical Report MIP-0802 (October 2008)Google Scholar
  52. 52.
    Gray, J., van den Brand, M. (eds.): Proc. 2nd Int’l Conf. on Software Language Engineering (SLE 2009). Springer, Heidelberg (2009)Google Scholar
  53. 53.
    Katz, S., Ossher, H. (eds.): Transactions on Aspect-Oriented Software Development VI. LNCS, vol. 5560. Springer, Heidelberg (2009)MATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Florian Heidenreich
    • 1
  • Pablo Sánchez
    • 2
  • João Santos
    • 3
  • Steffen Zschaler
    • 4
  • Mauricio Alférez
    • 3
  • João Araújo
    • 3
  • Lidia Fuentes
    • 5
  • Uirá Kulesza
    • 3
  • Ana Moreira
    • 3
  • Awais Rashid
    • 4
  1. 1.Technische Universität DresdenGermany
  2. 2.Universidad de Cantabria, SantanderSpain
  3. 3.Universidade Nova de LisboaPortugal
  4. 4.Lancaster UniversityUK
  5. 5.University of MalagaSpain

Personalised recommendations