Abstract
Feature diagrams have become commonplace in software product line engineering as a means to document variability early in the life cycle. Over the years, their application has also been extended to assist stakeholders in the configuration of software products. However, existing feature-based configuration techniques offer little support for tailoring configuration views to the profiles of the various stakeholders. In this paper, we propose a lightweight, yet formal and flexible, mechanism to leverage multidimensional separation of concerns in feature-based configuration. We propose a technique to specify concerns in feature diagrams and to generate automatically concern-specific configuration views. Three alternative visualisations are proposed. Our contributions are motivated and illustrated through excerpts from a real web-based meeting management application which was also used for a preliminary evaluation. We also report on the progress made in the development of a tool supporting multi-view feature-based configuration.
Similar content being viewed by others
References
Pohl K., Bockle G., van der Linden F.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Berlin (2005)
Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, SEI, Carnegie Mellon University (November 1990)
Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Feature Diagrams: A Survey and A Formal Semantics. In: Proceedings of the 14th International Requirements Engineering Conference (RE’06), pp. 139–148. IEEE Computer Society, Minneapolis (2006)
Benavides, D., Segura, S., Ruiz-Cortes, A.: Automated analysis of feature models 20 years later: A literature reviews. Information Systems 35(6) (2010)
Mendonça, M.: Efficient Reasoning Techniques for Large Scale Feature Models. PhD thesis, University of Waterloo (2009)
Berger, T., She, S., Lotufo, R., Wasowski, A., Czarnecki, K.: Variability modeling in the real: a perspective from the operating systems domain. In: Proceedings of the 25th International Conference on Automated Software Engineering (ASE’10), pp. 73–82. ACM, Antwerp (2010)
Janota, M.: SAT Solving in Interactive Configuration. PhD thesis, University College Dublin (2010)
Czarnecki K., Helsen S., Eisenecker U.W.: Formalizing cardinality-based feature models and their specialization. Softw. Process. Improv. Pract. 10(1), 7–29 (2005)
Czarnecki, K., She, S., Wasowski, A.: Sample spaces and feature models: There and back again. In: Proceedings of the 12th International Software Product Line Conference (SPLC’08), pp. 22–31. IEEE Computer Society, Limerick (2008)
Czarnecki K., Helsen S., Eisenecker U.W.: Staged configuration through specialization and multi-level configuration of feature models. Software Process: Improvement and Practice 10(2), 143–169 (2005)
Classen, A., Hubaux, A., Heymans, P.: A formal semantics for multi-level staged configuration. In: Proceedings of the 3rd International Workshop on Variability Modelling of Software-intensive Systems (VaMoS’09), pp. 51–60. University of Duisburg-Essen, Sevilla (2009)
Hubaux, A., Classen, A., Heymans, P.: Formal modelling of feature configuration workflow. In: Proceedings of the 13th International Software Product Lines Conference (SPLC’09), pp. 221–230. Carnegie Mellon University, San Francisco (2009)
Botterweck, G., Thiel, S., Nestor, D., bin Abid, S., Cawley, C.: Visual tool support for configuring and understanding software product lines. In: Proceedings of the 12th International Software Product Line Conference (SPLC ’08), pp. 77–86. IEEE Computer Society, Limerick (2008)
Cawley, C., Healy, P., Botterweck, G., Thiel, S.: Research tool to support feature configuration in software product lines. In: Proceedings of the 4th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS’10), pp. 179–182. University of Duisburg-Essen, January 2010
Czarnecki, K., Kim, P., Hwan, C., Kalleberg, K.: Feature models are views on ontologies. In: Proceedings of the 10th International on Software Product Line Conference (SPLC’06), pp. 41–51. IEEE Computer Society, Baltimore (2006)
Reiser, M.O., Weber, M.: Managing highly complex product families with multi-level feature trees. In: Proceedings of the 14th International Conference on Requirements Engineering (RE’06), pp. 146–155. IEEE Computer Society, Minneapolis (2006)
Mannion, M., Savolainen, J., Asikainen, T.: Viewpoint-oriented variability modeling. In: Proceedings of the 33rd International Computer Software and Applications Conference (COMPSAC’09), pp. 67–72. IEEE Computer Society, Seattle (2009)
Grünbacher, P., Rabiser, R., Dhungana, D., Lehofer, M.: Structuring the product line modeling space: strategies and examples. In: Proceedings of the 3rd International Workshop on Variability Modelling of Software-intensive Systems (VaMoS’09), pp. 77–82. University of Duisburg-Essen, Sevilla (2009)
Elmasri R., Navathe S.B.: Fundamentals of Database Systems, 5th edn. Addison-Wesley Longman Publishing Co Inc., Boston (2006)
Kästner, C.: Virtual Separation of Concerns: Toward Preprocessors 2.0. PhD thesis, Otto-von-Guericke-Universität Magdeburg, Germany (2010)
Harel, D., Rumpe, B.: Modeling languages: Syntax, semantics and all that stuff - part I: The basic stuff. Technical Report MCS00-16, Faculty of Mathematics and Computer Science, The Weizmann Institute of Science, Israel (September 2000)
Schobbens P.Y., Heymans P., Trigaux J.C., Bontemps Y.: Generic semantics of feature diagrams. Comput. Netw. 51(2), 456–479 (2007)
Classen, A., Boucher, Q., Heymans, P.: A text-based approach to feature modelling: Syntax and semantics of tvl. Science of Computer Programming (2010, In Press, Corrected Proof)
Antkiewicz, M., Czarnecki, K.: FeaturePlugin: feature modeling plug-in for Eclipse. In: Proceedings of the 2004 OOPSLA workshop on eclipse technology eXchange, pp. 67–72. ACM, Vancouver (2004)
Pure-systems GmbH: Variant management with pure::variants. http://www.pure-systems.com/fileadmin/downloads/pv-whitepaper-en-04.pdf (2006) Technical White Paper
Mendonça, M.: SPLOT. http://www.splot-research.org/ (May 2010)
Krueger, C.: BigLever Software, Inc. http://www.biglever.com/index.html (May 2010)
Mendonça M., Cowan D.D, Malyk W., de Oliveira T.C.: Collaborative product configuration: formalization and efficient algorithms for dependency analysis. J. Softw. 3(2), 69–82 (2008)
Mendonça, M., Bartolomei, T.T., Cowan, D.: Decision-making coordination in collaborative product configuration. In: Proceedings of the 23rd Symposium on Applied computing (SAC’08), pp. 108–113. ACM, Fortaleza (2008)
Delannay, G., Mens, K., Heymans, P., Schobbens, P.Y., Zeippen, J.M.: PloneGov as an Open Source Product Line. In: OSSPL’07, collocated with SPLC’07 (2007)
Hubaux, A., Heymans, P., Benavides, D.: Variability modelling challenges from the trenches of an open source product line re-engineering project. In: Proceedings of the 12th International Software Product Line Conference (SPLC’08), pp. 55–64. IEEE Computer Society, Limerick (2008)
Unphon, H., Dittrich, Y., Hubaux, A.: Taking care of cooperation when evolving socially embedded systems: The plonemeeting case. In: Proceedings of the Workshop on Cooperative and Human Aspects of Software Engineering (CHASE’09), collocated with ICSE’09, pp. 96–103. IEEE Computer Society, Vancouver (2009)
Lang J., Marquis P.: On propositional definability. Artif. Intell. 172(8-9), 991–1017 (2008)
Mendonnça, M., Wasowski, A., Czarnecki, K.: Sat-based analysis of feature models is easy. In: Proceedings of the 13th International Software Product Line Conference (SPLC’09), pp. 231–240. Carnegie Mellon University, San Francisco (2009)
Zhao H., Zhang W., Mei H.: Multi-view based customization of feature models. J. Front. Comput. Sci. Technol. 2(3), 260–273 (2008)
eCos: eCos User Guide. http://ecos.sourceware.org/docs-latest/user-guide/ecos-user-guide.html (March 2011)
Mendonnça, M., Branco, M., Cowan, D.: S.P.L.O.T. software product lines online tools. In: Proceeding of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications (OOPSLA’09), pp. 761–762. ACM, New York (2009)
Finkelstein, A., Kramer, J., Nuseibeh, B., Finkelstein, L., Goedicke, M.: Viewpoints: a framework for integrating multiple perspectives in system development. Int. J. Softw. Eng. Knowl. Eng. 2, 31–58 (1992)
Nuseibeh, B., Kramer, J., Finkelstein, A.: Viewpoints: meaningful relationships are difficult! In: Proceedings of the 25th International Conference on Software Engineering (ICSE’03), Portland, Oregon, USA, IEEE Computer Society, 676–681 (2003)
Glinz M., Wieringa R.J.: Guest editors’ introduction: stakeholders in requirements engineering. IEEE Softw. 24, 18–20 (2007)
Gotel, O., Finkelstein, A.: Contribution structures. In: Proceedings of the 2nd International Conference on Requirements Engineering (RE’95), Paris, France, IEEE Computer Society, 100–107 (1995)
Bidian, C.: From stakeholder goals to product features: towards a role-based variability framework with decision boundary. In: Proceedings of the 4th International Conference on Privacy, Security and Trust (PST ’06), pp. 1–5. ACM, Markham (2006)
Kang K.C., Kim S., Lee J., Kim K., Shin E., Huh M.: Form: a feature-oriented reuse method with domain-specific reference architectures. Ann. Softw. Eng. 5, 143–168 (1998)
Thompson J.M., Heimdahl M.P.: Structuring product family requirements for n-dimensional and hierarchical product lines. Requir. Eng. J. 8(1), 42–54 (2003)
Clarke, D., Proenca, J.: Towards a theory of views for feature models. In: Proceedings of the 1st International Workshop on Formal Methods in Software Product Line Engineering (FMSPLE’10). Jeju Island (2010)
Batory, D., Liu, J., Sarvela, J.N.: Refinements and multi-dimensional separation of concerns. In: Proceedings of the 9th European Software Engineering Conference (ESEC’03) held jointly with FSE’03, pp. 48–57. ACM, Helsinki (2003)
Metzger, A., Heymans, P., Pohl, K., Schobbens, P.Y., Saval, G.: Disambiguating the documentation of variability in software product lines: A separation of concerns, formalization and automated analysis. In: Proceedings of 15th International Conference on Requirements Engineering (RE’07), pp. 243–253. IEEE Computer Society, Delhi (2007)
Tun, T.T., Boucher, Q., Classen, A., Hubaux, A., Heymans, P.: Relating requirements and feature configurations: a systematic approach. In: Proceedings of the 13th International Software Product Lines Conference (SPLC’09), pp. 201–210. Carnegie Mellon University, San Francisco (2009)
Tarr, P., Ossher, H., Harrison, W., Sutton, S.M.J.: N degrees of separation: multi-dimensional separation of concerns. In: Proceedings of the 21st International Conference on Software Engineering (ICSE’99), pp. 107–119. IEEE Computer Societym, Los Angeles (1999)
Pleuss, A., Botterweck, G., Dhungana, D.: Integrating Automated Product Derivation and Individual User Interface Design. In: Proceedings of the 4th International Workshop on Variability Modelling of Software-Intensive Systems (VaMoS’10), pp. 69–76. University of Duisburg-Essen, Linz (2010)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Robyn Lutz.
Rights and permissions
About this article
Cite this article
Hubaux, A., Heymans, P., Schobbens, PY. et al. Supporting multiple perspectives in feature-based configuration. Softw Syst Model 12, 641–663 (2013). https://doi.org/10.1007/s10270-011-0220-1
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-011-0220-1