skip to main content
10.1145/2884781.2884823acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Feature-model interfaces: the highway to compositional analyses of highly-configurable systems

Published: 14 May 2016 Publication History

Abstract

Today's software systems are often customizable by means of load-time or compile-time configuration options. These options are typically not independent and their dependencies can be specified by means of feature models. As many industrial systems contain thousands of options, the maintenance and utilization of feature models is a challenge for all stakeholders. In the last two decades, numerous approaches have been presented to support stakeholders in analyzing feature models. Such analyses are commonly reduced to satisfiability problems, which suffer from the growing number of options. While first attempts have been made to decompose feature models into smaller parts, they still require to compose all parts for analysis. We propose the concept of a feature-model interface that only consists of a subset of features, typically selected by experts, and hides all other features and dependencies. Based on a formalization of feature-model interfaces, we prove compositionality properties. We evaluate feature-model interfaces using a three-month history of an industrial feature model from the automotive domain with 18,616 features. Our results indicate performance benefits especially under evolution as often only parts of the feature model need to be analyzed again.

References

[1]
A. Abele, Y. Papadopoulos, D. Servat, M. Törngren, and M. Weber. The CVM Framework - A Prototype Tool for Compositional Variability Management. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 101--105. Universität Duisburg-Essen, 2010.
[2]
M. Acher, A. Cleve, P. Collet, P. Merle, L. Duchien, and P. Lahire. Extraction and Evolution of Architectural Variability Models in Plugin-Based Systems. Software and System Modeling (SoSyM), 13(4):1367--1394, 2014.
[3]
M. Acher, P. Collet, P. Lahire, and R. B. France. Comparing Approaches to Implement Feature Model Composition. In Proc. Europ. Conf. Modelling Foundations and Applications (ECMFA), pages 3--19. Springer, 2010.
[4]
M. Acher, P. Collet, P. Lahire, and R. B. France. Slicing Feature Models. In Proc. Int'l Conf. Automated Software Engineering (ASE), pages 424--427. IEEE, 2011.
[5]
M. Acher, P. Collet, P. Lahire, and R. B. France. FAMILIAR: A Domain-Specific Language for Large Scale Management of Feature Models. Science of Computer Programming (SCP), 78(6):657--681, 2013.
[6]
M. Acher, B. Combemale, P. Collet, O. Barais, P. Lahire, and R. B. France. Composing Your Compositions of Variability Models. In Proc. Int'l Conf. Model Driven Engineering Languages and Systems (MODELS), pages 352--369. Springer, 2013.
[7]
S. Apel, D. Batory, C. Kästner, and G. Saake. Feature-Oriented Software Product Lines: Concepts and Implementation. Springer, 2013.
[8]
D. Batory. Feature Models, Grammars, and Propositional Formulas. In Proc. Int'l Software Product Line Conf. (SPLC), pages 7--20. Springer, 2005.
[9]
D. Benavides, S. Segura, and A. Ruiz-Cortés. Automated Analysis of Feature Models 20 Years Later: A Literature Review. Information Systems, 35(6):615--708, 2010.
[10]
D. Benavides, S. Segura, P. Trinidad, and A. Ruiz-Cortés. FAMA: Tooling a Framework for the Automated Analysis of Feature Models. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 129--134. Technical Report 2007-01, Lero, 2007.
[11]
T. Berger, R. Rublack, D. Nair, J. M. Atlee, M. Becker, K. Czarnecki, and A. Wąsowski. A Survey of Variability Modeling in Industrial Practice. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 7:1--7:8. ACM, 2013.
[12]
M. Bošković, G. Mussbacher, E. Bagheri, D. Amyot, D. Gašević, and M. Hatala. Aspect-Oriented Feature Models. In Proc. Int'l Conf. Models in Software Engineering (MODELSWARD), pages 110--124. Springer, 2011.
[13]
A. Classen, Q. Boucher, and P. Heymans. A Text-based Approach to Feature Modelling: Syntax and Semantics of TVL. Science of Computer Programming (SCP), 76(12):1130--1143, 2011.
[14]
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. Int'l Conf. Software Engineering (ICSE), pages 335--344. ACM, 2010.
[15]
E. F. Codd. A Relational Model of Data for Large Shared Data Banks. Communications of the ACM, 13(6):377--387, 1970.
[16]
K. Czarnecki and K. Pietroszek. Verifying Feature-Based Model Templates Against Well-Formedness OCL Constraints. In Proc. Int'l Conf. Generative Programming and Component Engineering (GPCE), pages 211--220. ACM, 2006.
[17]
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 (JSS), 83(7):1108--1122, 2010.
[18]
A. Durán, D. Benavides, S. Segura, P. Trinidad, and A. Ruiz-Cortés. FLAME: A Formal Framework for the Automated Analysis of Software Product Lines Validated by Automated Specification Testing. Software and System Modeling (SoSyM), pages 1--34, 2015. In Press.
[19]
H. Eichelberger and K. Schmid. A Systematic Analysis of Textual Variability Modeling Languages. In Proc. Int'l Software Product Line Conf. (SPLC), pages 12--21. ACM, 2013.
[20]
FeatureIDE Development Team. FeatureIDE GitHub, 2015. https://github.com/FeatureIDE/FeatureIDE.
[21]
A. Hemakumar. Finding Contradictions in Feature Models. In Proc. Int'l Workshop on Analyses of Software Product Lines (ASPL), pages 183--190. Lero Int. Science Centre, University of Limerick, Ireland, 2008.
[22]
G. Holl, P. Grünbacher, and R. Rabiser. A Systematic Review and an Expert Survey on Capabilities Supporting Multi Product Lines. J. Information and Software Technology (IST), 54(8):828--852, 2012.
[23]
A. Hubaux, P. Heymans, P.-Y. Schobbens, and D. Deridder. Towards Multi-View Feature-Based Configuration. In Proc. Int'l Working Conf. Requirements Engineering: Foundation for Software Quality (REFSQ), pages 106--112. Springer, 2010.
[24]
K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, 1990.
[25]
C. Kästner, K. Ostermann, and S. Erdweg. A Variability-Aware Module System. In Proc. Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), pages 773--792. ACM, 2012.
[26]
S. Krieter, R. Schröter, T. Thüm, and G. Saake. An Efficient Algorithm for Feature-Model Slicing. Technical Report FIN-001-2016, University of Magdeburg, Germany, 2016.
[27]
C. W. Krueger. New Methods in Software Product Line Development. In Proc. Int'l Software Product Line Conf. (SPLC), pages 95--102. IEEE, 2006.
[28]
K. Lauenroth, K. Pohl, and S. Toehning. Model Checking of Domain Artifacts in Product Line Engineering. In Proc. Int'l Conf. Automated Software Engineering (ASE), pages 269--280. IEEE, 2009.
[29]
H. Li, S. Krishnamurthi, and K. Fisler. Interfaces for Modular Feature Verification. In Proc. Int'l Conf. Automated Software Engineering (ASE), pages 195--204. IEEE, 2002.
[30]
R. Lotufo, S. She, T. Berger, K. Czarnecki, and A. Wąsowski. Evolution of the Linux Kernel Variability Model. In Proc. Int'l Software Product Line Conf. (SPLC), pages 136--150. Springer, 2010.
[31]
M. Mannion, J. Savolainen, and T. Asikainen. Viewpoint-Oriented Variability Modeling. In Proc. Computer Software and Applications Conf. (COMPSAC), pages 67--72. IEEE, 2009.
[32]
M. Mendonça, M. Branco, and D. Cowan. S.P.L.O.T.: Software Product Lines Online Tools. In Proc. Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), pages 761--762. ACM, 2009.
[33]
M. Mendonça, A. Wąsowski, and K. Czarnecki. SAT-Based Analysis of Feature Models is Easy. In Proc. Int'l Software Product Line Conf. (SPLC), pages 231--240. Software Engineering Institute, 2009.
[34]
M. Rosenmüller and N. Siegmund. Automating the Configuration of Multi Software Product Lines. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 123--130. Universität Duisburg-Essen, 2010.
[35]
M. Rosenmüller, N. Siegmund, T. Thüm, and G. Saake. Multi-Dimensional Variability Modeling. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 11--22. ACM, 2011.
[36]
M. Rosenmüller, N. Siegmund, S. S. ur Rahman, and C. Kästner. Modeling Dependent Software Product Lines. In Proc. Workshop on Modularization, Composition and Generative Techniques for Product Line Engineering (McGPLE), pages 13--18. Department of Informatics and Mathematics, University of Passau, 2008.
[37]
J. Schroeter, M. Lochau, and T. Winkelmann. Multi-Perspectives on Feature Models. In Proc. Int'l Conf. Model Driven Engineering Languages and Systems (MODELS), pages 252--268. Springer, 2012.
[38]
R. Schröter, S. Krieter, T. Thüm, F. Benduhn, and G. Saake. Feature-Model Interfaces for Compositional Analyses. Technical Report FIN-001-2015, University of Magdeburg, Germany, 2015.
[39]
R. Schröter, N. Siegmund, and T. Thüm. Towards Modular Analysis of Multi Product Lines. In Proc. Int'l Software Product Line Conference co-located Workshops, pages 96--99. ACM, 2013.
[40]
R. Schröter, N. Siegmund, T. Thüm, and G. Saake. Feature-Context Interfaces: Tailored Programming Interfaces for Software Product Lines. In Proc. Int'l Software Product Line Conf. (SPLC), pages 102--111. ACM, 2014.
[41]
R. Schröter, T. Thüm, N. Siegmund, and G. Saake. Automated Analysis of Dependent Feature Models. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 9:1--9:5. ACM, 2013.
[42]
S. Segura. Automated Analysis of Feature Models Using Atomic Sets. In Proc. Int'l Workshop on Analyses of Software Product Lines (ASPL), pages 201--207. Lero Int. Science Centre, University of Limerick, Ireland, 2008.
[43]
S. Segura, J. A. Galindo, D. Benavides, J. A. Parejo, and A. Ruiz-Cortés. BeTTy: Benchmarking and Testing on the Automated Analysis of Feature Models. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 63--71. ACM, 2012.
[44]
R. Tartler, D. Lohmann, C. Dietrich, C. Egger, and J. Sincero. Configuration Coverage in the Analysis of Large-Scale System Software. ACM SIGOPS Operating Systems Review, 45(3):10--14, 2012.
[45]
S. Thaker, D. Batory, D. Kitchin, and W. Cook. Safe Composition of Product Lines. In Proc. Int'l Conf. Generative Programming and Component Engineering (GPCE), pages 95--104. ACM, 2007.
[46]
T. Thüm, S. Apel, C. Kästner, I. Schaefer, and G. Saake. A Classification and Survey of Analysis Strategies for Software Product Lines. ACM Computing Surveys, 47(1):6:1--6:45, 2014.
[47]
T. Thüm, C. Kästner, F. Benduhn, J. Meinicke, G. Saake, and T. Leich. FeatureIDE: An Extensible Framework for Feature-Oriented Software Development. Science of Computer Programming (SCP), 79(0):70--85, 2014.
[48]
T. Thüm, C. Kästner, S. Erdweg, and N. Siegmund. Abstract Features in Feature Modeling. In Proc. Int'l Software Product Line Conf. (SPLC), pages 191--200. IEEE, 2011.
[49]
T. Thüm, T. Winkelmann, R. Schröter, M. Hentschel, and S. Krüger. Variability Hiding in Contracts for Dependent Software Product Lines. In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 97--104. ACM, 2016.
[50]
P. Trinidad, D. Benavides, A. Durán, A. Ruiz-Cortés, and M. Toro. Automated Error Analysis for the Agilization of Feature Modeling. Journal of Systems and Software (JSS), 81(6):883--896, 2008.
[51]
P. Trinidad, D. Benavides, and A. Ruiz-Cortés. Improving decision making in software product lines product plan management. In Proc. Workshop on Decision Support in Software Engineering (ADIS), pages 1--8. RWTH Aachen, 2004.
[52]
P. Trinidad and A. Ruiz-Cortés. Abductive Reasoning and Automated Analysis of Feature Models: How are They Connected? In Proc. Int'l Workshop Variability Modelling of Software-intensive Systems (VaMoS), pages 145--153. Universität Duisburg-Essen, 2009.
[53]
W. Zhang, H. Zhao, and H. Mei. A Propositional Logic-Based Method for Verification of Feature Models. In Proc. Int'l Conf. Formal Methods and Software Engineering (ICFEM), pages 115--130. Springer, 2004.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '16: Proceedings of the 38th International Conference on Software Engineering
May 2016
1235 pages
ISBN:9781450339001
DOI:10.1145/2884781
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 May 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. compositionality
  2. configurable software
  3. feature model
  4. modularity
  5. software product line
  6. variability modeling

Qualifiers

  • Research-article

Funding Sources

  • European Commission
  • DFG
  • BMBF

Conference

ICSE '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)32
  • Downloads (Last 6 weeks)3
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

Cited By

View all

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