Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2110147.2110167acmotherconferencesArticle/Chapter ViewAbstractPublication PagesvamosConference Proceedingsconference-collections
research-article

Cool features and tough decisions: a comparison of variability modeling approaches

Published: 25 January 2012 Publication History

Abstract

Variability modeling is essential for defining and managing the commonalities and variabilities in software product lines. Numerous variability modeling approaches exist today to support domain and application engineering activities. Most are based on feature modeling (FM) or decision modeling (DM), but so far no systematic comparison exists between these two classes of approaches. Over the last two decades many new features have been added to both FM and DM and it is tough to decide which approach to use for what purpose. This paper clarifies the relation between FM and DM. We aim to systematize the research field of variability modeling and to explore potential synergies. We compare multiple aspects of FM and DM ranging from historical origins and rationale, through syntactic and semantic richness, to tool support, identifying commonalities and differences. We hope that this effort will improve the understanding of the range of approaches to variability modeling by discussing the possible variations. This will provide insights to users considering adopting variability modeling in practice and to designers of new languages, such as the new OMG Common Variability Language.

References

[1]
Common variability language (CVL). OMG Initial Submission. Available on request., 2010.
[2]
S. Apel and C. Kästner. An Overview of Feature-Oriented Software Development. Journal of Object Technology, 8(5):49--84, 2009.
[3]
S. Apel, C. Kästner, A. Größlinger, and C. Lengauer. Type safety for feature-oriented product lines. Automated Software Engineering, 17(3):251--300, 2010.
[4]
S. Apel, C. Kästner, and C. Lengauer. FEATUREHOUSE: Language-independent, automated software composition. In Proc. of the 31st International Conference on Software Engineering, pages 221--231. IEEE, 2009.
[5]
T. Asikainen, T. Mannisto, and T. Soininen. A Unified Conceptual Foundation for Feature Modelling. In Proc. of the 10th International Software Product Line Conference, pages 31--40. IEEE, 2006.
[6]
C. Atkinson, J. Bayer, C. Bunse, E. Kamsties, O. Laitenberger, R. Laqua, D. Muthig, B. Paech, J. Wüst, and J. Zettel. Component-Based Product Line Engineering with UML. Addison-Wesley, 2002.
[7]
K. Bąk, K. Czarnecki, and A. Wąsowski. Feature and meta-models in Clafer: Mixed, specialized, and coupled. In Proc. of the 3rd International Conference on Software Language Engineering, pages 102--122. Springer, 2010.
[8]
D. S. Batory. Feature-Oriented Programming and the AHEAD Tool Suite. In Proc. of the 26th International Conference on Software Engineering, pages 702--703. IEEE, 2004.
[9]
D. S. Batory. Feature Models, Grammars, and Propositional Formulas. In Proc. of the 9th International Software Product Line Conference, pages 7--20. Springer, 2005.
[10]
D. S. Batory, J. R. Barnett, J. F. Garza, K. P. Smith, K. Tsukuda, B. C. Twichell, and T. E. Wise. GENESIS: An Extensible Database Management System. IEEE TSE, 14(11):1711--1730, 1988.
[11]
D. S. Batory, D. Benavides, and A. R. Cortés. Automated analysis of feature models: challenges ahead. Communications of the ACM, 49(12):45--47, 2006.
[12]
D. Benavides, S. Segura, and A. R. Cortés. Automated analysis of feature models 20 years later: A literature review. Information Systems, 35(6):615--636, 2010.
[13]
T. Berger, S. She, R. Lotufo, A. Wasowski, and K. Czarnecki. Variability Modeling in the Real: A Perspective from the Operating Systems Domain. In Proc. of the 25th IEEE/ACM Conference on Automated Software Engineering, pages 73--82. ACM, 2010.
[14]
T. J. Biggerstaff. Design Recovery for Maintenance and Reuse. IEEE Computer, 22(7):36--49, 1989.
[15]
S. Bühne, K. Lauenroth, and K. Pohl. Why is it not Sufficient to Model Requirements Variability with Feature Models? In Proc. of the Workshop on Automotive Requirements Engineering (AURE04). Nanzan University, Nagoya, Japan, pages 5--12, 2004.
[16]
K. Chen, W. Zhang, H. Zhao, and H. Mei. An Approach to Constructing Feature Models Based on Requirements Clustering. In Proc. of the 13th IEEE International Conference on Requirements Engineering, pages 31--40. IEEE, 2005.
[17]
L. Chen and M. Babar. A systematic review of evaluation of variability management approaches in software product lines. Information and Software Technology, 53:344--362, 2011.
[18]
A. Classen, Q. Boucher, and P. Heymans. A Text-based Approach to Feature Modelling: Syntax and Semantics of TVL. Science of Computer Programming, 76(12):1130--1143, 2010.
[19]
A. Classen, P. Heymans, and P.-Y. Schobbens. What's in a Feature: A Requirements Engineering Perspective. In Proc. of the 11th International Conference on Fundamental Approaches to Software Engineering, LNCS 4961/200, pages 16--30. Springer, 2008.
[20]
A. Classen, P. Heymans, P.-Y. Schobbens, A. Legay, and J.-F. Raskin. Model checking lots of systems: efficient verification of temporal properties in software product lines. In Proc. of the 32nd ACM/IEEE International Conference on Software Engineering, pages 335--344. ACM, 2010.
[21]
K. Czarnecki and M. Antkiewicz. Mapping Features to Models: A Template Approach Based on Superimposed Variants. In Proc. of the 4th International Conference on Generative Programming and Component Engineering, pages 422--437. ACM, 2005.
[22]
K. Czarnecki, T. Bednasch, P. Unger, and U. W. Eisenecker. Generative Programming for Embedded Software: An Industrial Experience Report. In Proc. of the ACM SIGPLAN/SIGSOFT Conference on Generative Programming and Component Engineering, pages 156--172. ACM, 2002.
[23]
K. Czarnecki and U. W. Eisenecker. Generative Programming: Methods, Techniques, and Applications. Addison-Wesley, 2000.
[24]
K. Czarnecki and S. Helsen. Feature-based survey of model transformation approaches. IBM Systems Journal, 45(3):621--646, 2006.
[25]
K. Czarnecki, S. Helsen, and U. Eisenecker. Formalizing cardinality-based feature models and their specialization. Software Process: Improvement and Practice, 10:7--29, 2005.
[26]
K. Czarnecki, S. Helsen, and U. Eisenecker. Staged configuration through specialization and multilevel configuration of feature models. Software Process: Improvement and Practice, 10:143--169, 2005.
[27]
K. Czarnecki and K. Pietroszek. Verifying feature-based model templates against well-formedness OCL constraints. In Proc. of the 5th International Conference on Generative Programming and Component Engineering, pages 211--220. ACM, 2006.
[28]
D. Dhungana, P. Grünbacher, and R. Rabiser. The DOPLER Meta-Tool for Decision-Oriented Variability Modeling: A Multiple Case Study. Automated Software Engineering, 18(1):77--114, 2011.
[29]
D. Dhungana, P. Grünbacher, R. Rabiser, and T. Neumayer. Structuring the Modeling Space and Supporting Evolution in Software Product Line Engineering. Journal of Systems and Software, 83(7):1108--1122, 2010.
[30]
E. Dolstra, G. Florijn, M. de Jonge, and E. Visser. Capturing timeline variability with transparent configuration environments. In International Workshop on Software Variability Management. ICSE Workshop, 2003.
[31]
European Software Institute Spain and IKV++ Technologies AG Germany. MASTER: Model-driven Architecture inSTrumentation, Enhancement and Refinement, 2002.
[32]
H. Gomaa. Designing Software Product Lines with UML. Addison-Wesley, 2005.
[33]
I. Groher and M. Völter. Aspect-Oriented Model-Driven Software Product Line Engineering. Transactions on Aspect-Oriented Software Development, 6:111--152, 2009.
[34]
P. Grünbacher, D. Dhungana, N. Seyff, M. Quintus, R. Clotet, X. Franch, L. Lopez, and J. Marco. Goal and Variability Modeling for Service-oriented System: Integrating i* with Decision Models. In Proc. of the Workshop on Software and Services Variability Management, pages 99--104. Helsinki Unversity of Technology, 2007.
[35]
O. Haugen, B. Moller-Pedersen, J. Oldevik, G. Olsen, and A. Svendsen. Adding Standardized Variability to Domain Specific Languages. In Proc. of the 12th International Software Product Line Conference, pages 139--148, Limerick, Ireland, 2008. IEEE.
[36]
F. Heidenreich, J. Kopcsek, and C. Wende. FeatureMapper: mapping features to models. In Proc. of the 30th International Conference on Software Engineering, ICSE Companion, pages 943--944. ACM, 2008.
[37]
P. Heymans, P.-Y. Schobbens, J.-C. Trigaux, Y. Bontemps, R. Matulevicius, and A. Classen. Evaluating formal properties of feature diagram languages. IET Software, 2(3):281--302, 2008.
[38]
A. Hubaux, A. Classen, and P. Heymans. Formal modelling of feature configuration workflows. In Proc. of the 13th International Software Product Line Conference, pages 221--230. ACM, 2009.
[39]
A. Hubaux, A. Classen, M. Mendonça, and P. Heymans. A Preliminary Review on the Application of Feature Diagrams in Practice. In Proc. of the 4th International Workshop on Variability Modelling of Software-Intensive Systems, pages 53--59. University Duisburg-Essen, 2010.
[40]
A. Hubaux, T. T. Tun, and P. Heymans. Separation of concerns in feature diagram languages: A systematic survey. 2011. Under review.
[41]
M. Janota and G. Botterweck. Formal Approach to Integrating Feature and Architecture Models. In Proc. of the 11th International Conference on Fundamental Approaches to Software Engineering, pages 31--45. Springer, 2008.
[42]
K. Kang, S. Cohen, J. Hess, W. Nowak, and S. Peterson. Feature-oriented domain analysis (FODA) feasibility study. Technical report, CMU/SEI-90TR-21, 1990.
[43]
K. Kang, J. Lee, and P. Donohoe. Feature-Oriented Product Line Engineering. IEEE Software, 19(4):58--65, 2002.
[44]
C. Kästner. CIDE: Decomposing Legacy Applications into Features. In Proc. of the 11th International Software Product Line Conference, vol 2., pages 149--150. IEEE, 2007.
[45]
M. D. Lubars. Wide-Spectrum Support for Software Reusability. In Proc. of the Workshop on Software Reusability and Maintainability. National Institute of Software Quality and Productivity, 1987.
[46]
J. Mansell and D. Sellier. Decision Model and Flexible Component Definition Based on XML Technology. In Proc. of the 5th International Workshop on Software Product Family Engineering, pages 466--472. Springer, 2003.
[47]
S. Maoz, J. O. Ringert, and B. Rumpe. Semantically Configurable Consistency Analysis for Class and Object Diagrams. In Proc. of the 14th International Conference on Model Driven Engineering Languages and Systems, pages 153--167. Springer, 2011.
[48]
M. Mendonca and D. Cowan. Decision-making coordination and efficient reasoning techniques for feature-based configuration. Science of Computer Programming, 75(5):311--332, 2009.
[49]
J. M. Moore and S. C. Bailin. The KAPTUR Environment: An Operations Concept. Technical report, CTA Incorporated, 1989.
[50]
J. M. Neighbors. The Draco approach to constructing software from reusable components. IEEE TSE, 10(5):564--574, 1984.
[51]
K. Pohl, G. Böckle, and F. van der Linden. Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, 2005.
[52]
R. Rabiser, P. Grünbacher, and D. Dhungana. Supporting Product Derivation by Adapting and Augmenting Variability Models. In Proc. of the 11th International Software Product Line Conference, pages 141--150. IEEE, 2007.
[53]
R. Rabiser, R. Wolfinger, and P. Grünbacher. Three-level Customization of Software Products Using a Product Line Approach. In Proc. of the 42nd Annual Hawaii International Conference on System Sciences, pages 1--10. IEEE, 2009.
[54]
M.-O. Reiser and M. Weber. Managing Highly Complex Product Families with Multi-Level Feature Trees. In Proc. of the 14th IEEE International Conference on Requirements Engineering, pages 149--158, Minneapolis, USA, 2006. IEEE.
[55]
M. Riebisch, K. Böllert, D. Streitferdt, and I. Philippow. Extending Feature Diagrams with UML Multiplicities. In Proc. of the 6th World Conference on Integrated Design & Process Technology, 2002.
[56]
H. Schirmeier and O. Spinczyk. Challenges in Software Product Line Composition. In Proc. of the 42nd Annual Hawaii International Conference on System Sciences, page 7. IEEE, 2009.
[57]
K. Schmid and H. Eichelberger. From Static to Dynamic Software Product Lines. In Proc. of the Workshop on Dynamic Software Product Lines (DSPL) at SPLC 2008, volume 2, pages 33--38. Lero Tech Report, 2008.
[58]
K. Schmid and H. Eichelberger. Model-Based Implementation of Meta-Variability Constructs: A Case Study using Aspects. In Proc. of the Second International Workshop on Variability Modelling of Software-Intensive Systems, number 22 in ICB-Research Report, pages 63--71. University Duisburg-Essen, 2008.
[59]
K. Schmid and I. John. A Customizable Approach to Full-Life Cycle Variability Management. Science of Computer Programming, 53(3):259--284, 2004.
[60]
K. Schmid, R. Rabiser, and P. Grünbacher. A Comparison of Decision Modeling Approaches in Product Lines. In Proc. of the Fifth International Workshop on Variability Modelling of Software-Intensive Systems, pages 119--126. ACM, 2011.
[61]
P.-Y. Schobbens, P. Heymans, J.-C. Trigaux, and Y. Bontemps. Feature Diagrams: A Survey and a Formal Semantics. In Proc. of the 14th IEEE International Conference on Requirements Engineering, pages 139--148, Minneapolis, USA, 2006. IEEE.
[62]
J. Sincero and W. Schröder-Preikschat. The Linux Kernel Configurator as a Feature Modeling Tool. In Proc. of the 1st Workshop on Analyses of Software Product Lines (ASPL'08) at SPLC 2008, pages 257--260, Limerick, Ireland, 2008. Lero.
[63]
M. Sinnema and S. Deelstra. Classifying variability modeling techniques. Information and Software Technology, 49(7):717--739, 2006.
[64]
Software Productivity Consortium Services Corporation, Technical Report SPC-92019-CMC. Reuse-Driven Software Processes Guidebook, Version 02.00.03, 1993.
[65]
R. Stoiber and M. Glinz. Supporting Stepwise, Incremental Product Derivation in Product Line Requirements Engineering. In Proc. of the 4th International Workshop on Variability Modelling of Software-Intensive Systems, ICB-Research Report, pages 77--84. University Duisburg-Essen, 2010.
[66]
R. Tartler, D. Lohmann, J. Sincero, and W. Schröder-Preikschat. Feature consistency in compile-time-configurable system software: facing the Linux 10000 feature problem. In EuroSys'11, pages 47--60. ACM, 2011.
[67]
A. van der Hoek. Design-Time Product Line Architectures for Any-Time Variability. Science of Computer Programming, 53(30):285--304, 2004.
[68]
B. Veer and J. Dallaway. The eCos Component Writer's Guide. Seen Mar. 2010 at ecos.sourceware.org/ecos/docs-latest/cdl-guide/cdl-guide.html.
[69]
D. Weiss and C. Lai. Software Product-Line Eng.: A Family-Based Software Development Process. Addison-Wesley, 1999.
[70]
D. Weiss, J. Li, H. Slye, and H. Sun. Decision-Model-Based Code Generation for SPLE. In Proc. of the 12th International Software Product Line Conference, pages 129--138. IEEE, 2008.
[71]
R. Zippel and contributors. kconfig-language.txt. seen in the kernel tree at kernel.org, 2011-05/01.

Cited By

View all
  • (2024)Industry Adoption of UVL: What We Will NeedProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676597(46-49)Online publication date: 2-Sep-2024
  • (2024)Towards a Product Configuration Representation for the Universal Variability LanguageProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676544(50-54)Online publication date: 2-Sep-2024
  • (2024)Towards a Flexible Approach for Variability MiningProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676543(75-81)Online publication date: 2-Sep-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
VaMoS '12: Proceedings of the 6th International Workshop on Variability Modeling of Software-Intensive Systems
January 2012
193 pages
ISBN:9781450310581
DOI:10.1145/2110147
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 25 January 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. decision modeling
  2. feature modeling
  3. product lines
  4. variability modeling

Qualifiers

  • Research-article

Funding Sources

Conference

VaMoS '12

Acceptance Rates

Overall Acceptance Rate 66 of 147 submissions, 45%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)102
  • Downloads (Last 6 weeks)6
Reflects downloads up to 17 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Industry Adoption of UVL: What We Will NeedProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676597(46-49)Online publication date: 2-Sep-2024
  • (2024)Towards a Product Configuration Representation for the Universal Variability LanguageProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676544(50-54)Online publication date: 2-Sep-2024
  • (2024)Towards a Flexible Approach for Variability MiningProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676543(75-81)Online publication date: 2-Sep-2024
  • (2024)Not Quite There Yet: Remaining Challenges in Systems and Software Product Line Engineering as Perceived by Industry PractitionersProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3672587(179-190)Online publication date: 2-Sep-2024
  • (2024)On Configuration Sequences in Feature ModelsProceedings of the 18th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3634713.3634730(146-148)Online publication date: 7-Feb-2024
  • (2024)Vulnerably (Mis)Configured? Exploring 10 Years of Developers' Q&As on Stack OverflowProceedings of the 18th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3634713.3634729(112-122)Online publication date: 7-Feb-2024
  • (2024)Towards Feature-based Versioning for Musicological ResearchProceedings of the 18th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3634713.3634723(77-82)Online publication date: 7-Feb-2024
  • (2024)Leveraging Software Product Lines for Testing Autonomous VehiclesProceedings of the 18th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3634713.3634720(56-60)Online publication date: 7-Feb-2024
  • (2024)From Decision Models To User-Guiding Configurators Using SMTProceedings of the 18th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3634713.3634718(11-16)Online publication date: 7-Feb-2024
  • (2024)Visualization of object-oriented software in a city metaphor: Comprehending the implemented variability and its technical debtJournal of Systems and Software10.1016/j.jss.2023.111876208(111876)Online publication date: Feb-2024
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media