Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3579027.3608981acmconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
research-article

Elimination of constraints for parallel analysis of feature models

Published: 28 August 2023 Publication History

Abstract

Cross-tree constraints give feature models maximal expressive power since any interdependency between features can be captured through arbitrary propositional logic formulas. However, the existence of these constraints increases the complexity of reasoning about feature models, both for using SAT solvers or compiling the model to a binary decision diagram for efficient analyses. Although some works have tried to refactor constraints to eliminate them, they deal only with simple constraints (i.e., requires and excludes) or require the introduction of an additional set of features, increasing the complexity of the resulting feature model. This paper presents an approach that eliminates all the cross-tree constraints present in regular boolean feature models, including arbitrary constraints, in propositional logic formulas. Our approach for removing constraints consists of splitting the semantics of feature models into orthogonal disjoint feature subtrees, which are then analyzed in parallel to alleviate the exponential blow-up in memory of the resulting feature tree.

References

[1]
Jonas Åkesson, Sebastian Nilsson, Jacob Krüger, and Thorsten Berger. 2019. Migrating the Android Apo-Games into an annotation-based software product line. In 23rd International Systems and Software Product Line Conference (SPLC), Vol. A. ACM, Paris, France, 19:1--19:5. https://doi.org/10.1145/3336294.3342362
[2]
Sven Apel, Don S. Batory, Christian Kästner, and Gunter Saake. 2013. Feature-Oriented Software Product Lines - Concepts and Implementation. Springer. https://doi.org/10.1007/978-3-642-37521-7
[3]
Gilles Audemard and Laurent Simon. 2018. On the Glucose SAT Solver. Int. J. Artif. Intell. Tools 27, 1 (2018). https://doi.org/10.1142/S0218213018400018
[4]
Don S. Batory. 2005. Feature Models, Grammars, and Propositional Formulas. In 9th International Conference on Software Product Lines (SPLC) (LNCS, Vol. 3714). Springer, Rennes, France, 7--20. https://doi.org/10.1007/11554844_3
[5]
David Benavides, Sergio Segura, and Antonio Ruiz Cortés. 2010. Automated analysis of feature models 20 years later: A literature review. Inf. Syst. 35, 6 (2010), 615--636. https://doi.org/10.1016/j.is.2010.01.001
[6]
Thorsten Berger, Rolf-Helge Pfeiffer, Reinhard Tartler, Steffen Dienst, Krzysztof Czarnecki, Andrzej Wasowski, and Steven She. 2014. Variability mechanisms in software ecosystems. Inf. Softw. Technol. 56, 11 (2014), 1520--1535. https://doi.org/10.1016/j.infsof.2014.05.005
[7]
Danilo Beuche. 2019. Industrial variant management with pure: variants. In 23rd International Systems and Software Product Line Conference (SPLC), Vol. B. ACM, Paris, France, 64:1--64:3. https://doi.org/10.1145/3307630.3342391
[8]
Miguel Camelo, Marco Gramaglia, Paola Soto, Lidia Fuentes, Joaquín Ballesteros, Antonio Bazco Nogueras, Gines Garcia-Aviles, Steven Latré, Andres Garcia-Saavedra, and Marco Fiore. 2022. DAEMON: A Network Intelligence Plane for 6G Networks. In IEEE Globecom 2022 Workshops. IEEE, 1341--1346. https://doi.org/10.1109/GCWkshps56602.2022.10008662
[9]
Krzysztof Czarnecki, Simon Helsen, and Ulrich W. Eisenecker. 2005. Formalizing cardinality-based feature models and their specialization. Softw. Process. Improv. Pract. 10, 1 (2005), 7--29. https://doi.org/10.1002/spip.213
[10]
Krzysztof Czarnecki and Andrzej Wasowski. 2007. Feature Diagrams and Logics: There and Back Again. In 11th International Software Product Lines Conference (SPLC). IEEE, Kyoto, Japan, 23--34. https://doi.org/10.1109/SPLINE.2007.24
[11]
Adnan Darwiche and Pierre Marquis. 2002. A knowledge compilation map. Journal of Artificial Intelligence Research 17 (2002), 229--264.
[12]
David Fernández-Amorós, Ruben Heradio, José Antonio Cerrada, and Carlos Cerrada. 2014. A Scalable Approach to Exact Model and Commonality Counting for Extended Feature Models. IEEE Trans. Software Eng. 40, 9 (2014), 895--910. https://doi.org/10.1109/TSE.2014.2331073
[13]
José Angel Galindo, Mathieu Acher, Juan Manuel Tirado, Cristian Vidal, Benoit Baudry, and David Benavides. 2016. Exploiting the enumeration of all feature model configurations: a new perspective with distributed computing. In 20th International Systems and Software Product Line Conference (SPLC). ACM, Beijing, China, 74--78. https://doi.org/10.1145/2934466.2934478
[14]
José A. Galindo and David Benavides. 2020. A Python framework for the automated analysis of feature models: A first step to integrate community efforts. In 24th ACM International Systems and Software Product Line Conference (SPLC), Vol. B. Montreal, Canada, 52--55. https://doi.org/10.1145/3382026.3425773
[15]
Salah Ghamizi, Maxime Cordy, Mike Papadakis, and Yves Le Traon. 2019. Automated search for configurations of convolutional neural network architectures. In 23rd International Systems and Software Product Line Conference (SPLC), Vol. A. ACM, Paris, France, 21:1--21:12. https://doi.org/10.1145/3336294.3336306
[16]
Yossi Gil, Shiri Kremer-Davidson, and Itay Maman. 2010. Sans Constraints? Feature Diagrams vs. Feature Models. In 14th International Software Product Lines Conference (SPLC): Going Beyond, Vol. 6287. Springer, Jeju Island, South Korea, 271--285. https://doi.org/10.1007/978-3-642-15579-6_19
[17]
Marco Gramaglia, Miguel Camelo, Lidia Fuentes, Joaquín Ballesteros, Gabriele Baldoni, Luca Cominardi, Andres Garcia-Saavedra, and Marco Fiore. 2022. Network Intelligence for Virtualized RAN Orchestration: The DAEMON Approach. In Joint European Conference on Networks and Communications & 6G Summit (EuCNC/6G Summit). 482--487. https://doi.org/10.1109/EuCNC/6GSummit54941.2022.9815816
[18]
Jianmei Guo, Edward Zulkoski, Rafael Olaechea, Derek Rayside, Krzysztof Czarnecki, Sven Apel, and Joanne M. Atlee. 2014. Scaling exact multi-objective combinatorial optimization by parallelization. In 29th IEEE/ACM International Conference on Automated Software Engineering (ASE). ACM, Vasteras, Sweden, 409--420. https://doi.org/10.1145/2642937.2642971
[19]
Axel Halin, Alexandre Nuttinck, Mathieu Acher, Xavier Devroey, Gilles Perrouin, and Benoit Baudry. 2019. Test them all, is it worth it? Assessing configuration sampling on the JHipster Web development stack. Empir. Softw. Eng. 24, 2 (2019), 674--717. https://doi.org/10.1007/s10664-018-9635-4
[20]
Marc Hentze, Chico Sundermann, Thomas Thüm, and Ina Schaefer. 2022. Quantifying the variability mismatch between problem and solution space. In 25th International Conference on Model Driven Engineering Languages and Systems (MODELS). ACM, Montreal, Canada, 322--333. https://doi.org/10.1145/3550355.3552411
[21]
Ruben Heradio, David Fernández-Amorós, José A. Galindo, David Benavides, and Don S. Batory. 2022. Uniform and scalable sampling of highly configurable systems. Emp. Soft. Eng. 27, 2 (2022). https://doi.org/10.1007/s10664-021-10102-5
[22]
Ruben Heradio, David Fernández-Amorós, Christoph Mayr-Dorn, and Alexander Egyed. 2019. Supporting the statistical analysis of variability models. In 41st International Conference on Software Engineering (ICSE). IEEE / ACM, Montreal, Canada, 843--853. https://doi.org/10.1109/ICSE.2019.00091
[23]
Ruben Heradio, Hector Perez-Morago, David Fernández-Amorós, Roberto Bean, Francisco Javier Cabrerizo, Carlos Cerrada, and Enrique Herrera-Viedma. 2016. Binary Decision Diagram Algorithms to Perform Hard Analysis Operations on Variability Models. In 15th New Trends in Software Methodologies, Tools and Techniques (SoMeT) (Frontiers in Artificial Intelligence and Applications, Vol. 286). Larnaca, Cyprus, 139--154. https://doi.org/10.3233/978-1-61499-674-3-139
[24]
Tobias Heß, Chico Sundermann, and Thomas Thüm. 2021. On the scalability of building binary decision diagrams for current feature models. In 25th ACM International Systems and Software Product Line Conference (SPLC), Vol. A. ACM, Leicester, United Kingdom, 131--135. https://doi.org/10.1145/3461001.3474452
[25]
José Miguel Horcas. 2018. WeaFQAs: A Software Product Line Approach for Customizing and Weaving Efficient Functional Quality Attributes. phdthesis. Universidad de Málaga. https://hdl.handle.net/10630/17231
[26]
José Miguel Horcas, José A. Galindo, and David Benavides. 2022. Variability in data visualization: a software product line approach. In 26th ACM International Systems and Software Product Line Conference (SPLC), Vol. A. ACM, Graz, Austria, 55--66. https://doi.org/10.1145/3546932.3546993
[27]
José Miguel Horcas, Mónica Pinto, and Lidia Fuentes. 2023. Empirical analysis of the tool support for software product lines. Softw. Syst. Model. 22, 1 (2023), 377--414. https://doi.org/10.1007/s10270-022-01011-2
[28]
José Miguel Horcas, Mónica Pinto, and Lidia Fuentes. 2023. A modular metamodel and refactoring rules to achieve software product line interoperability. J. Syst. Softw. 197 (2023), 111579. https://doi.org/10.1016/j.jss.2022.111579
[29]
Alexey Ignatiev, António Morgado, and João Marques-Silva. 2018. PySAT: A Python Toolkit for Prototyping with SAT Oracles. In 21st International Conference on Theory and Applications of Satisfiability Testing (SAT) (LNCS, Vol. 10929). Springer, Oxford, UK, 428--437. https://doi.org/10.1007/978-3-319-94144-8_26
[30]
Kyo C Kang, Sholom G Cohen, James A Hess, William E Novak, and A Spencer Peterson. 1990. Feature-oriented domain analysis (FODA) feasibility study. Technical Report. Carnegie-Mellon University. CMU/SEI-90-TR-21.
[31]
Alexander Knüppel, Thomas Thüm, Stephan Mennicke, Jens Meinicke, and Ina Schaefer. 2017. Is there a mismatch between real-world feature models and product-line research?. In 11th Joint Meeting on Foundations of Software Engineering (ESEC/FSE). ACM, 291--302. https://doi.org/10.1145/3106237.3106252
[32]
Alexander Knüppel. 2016. The Role of Complex Constraints in Feature Modeling. Master's Thesis. Technische Universität Braunschweig. https://www.isf.cs.tubs.de/cms/team/knueppel/downloads/thesisKnueppel16.pdf
[33]
Matthias Kowal, Sofia Ananieva, and Thomas Thüm. 2016. Explaining anomalies in feature models. In 15th ACM SIGPLAN International Conference on Generative Programming (GPCE): Concepts and Experiences. ACM, Amsterdam, The Netherlands, 132--143. https://doi.org/10.1145/2993236.2993248
[34]
Sebastian Krieter. 2020. Large-scale T-wise interaction sampling using YASA. In 24th ACM International Systems and Software Product Line Conference (SPLC), Vol. A. Montreal, Canada, 29:1--29:4. https://doi.org/10.1145/3382025.3414989
[35]
Jia Hui Liang, Vijay Ganesh, Krzysztof Czarnecki, and Venkatesh Raman. 2015. SAT-Based Analysis of Large Real-World Feature Models is Easy. In 19th International Conference on Software Product Line (SPLC). ACM, New York, NY, USA, 91--100. https://doi.org/10.1145/2791060.2791070
[36]
Roberto E. Lopez-Herrejon and Don S. Batory. 2001. A Standard Problem for Evaluating Product-Line Methodologies. In 3rd International Conference on Generative and Component-Based Software Engineering (GCSE) (LNCS, Vol. 2186). Springer, Erfurt, Germany, 10--24. https://doi.org/10.1007/3-540-44800-4_2
[37]
Roberto Erick Lopez-Herrejon, Javier Ferrer, Francisco Chicano, Evelyn Nicole Haslinger, Alexander Egyed, and Enrique Alba. 2014. A parallel evolutionary algorithm for prioritized pairwise testing of software product lines. In 16th Genetic and Evolutionary Computation Conference (GECCO). ACM, Vancouver, BC, Canada, 1255--1262. https://doi.org/10.1145/2576768.2598305
[38]
Jabier Martinez, Xhevahire Tërnava, and Tewfik Ziadi. 2018. Software product line extraction from variability-rich systems: the robocode case study. In 22nd International Systems and Software Product Line Conference (SPLC), Vol. 1. ACM, Gothenburg, Sweden, 132--142. https://doi.org/10.1145/3233027.3233038
[39]
Marcílio Mendonça. 2009. Efficient Reasoning Techniques for Large Scale Feature Models. Ph. D. Dissertation. University of Waterloo. https://hdl.handle.net/10012/4201
[40]
Marcílio Mendonça, Andrzej Wasowski, and Krzysztof Czarnecki. 2009. SAT-based analysis of feature models is easy. In 13th International Software Product Lines Conference (SPLC), Vol. 446. ACM, San Francisco, California, USA, 231--240. https://dl.acm.org/citation.cfm?id=1753267
[41]
Marcílio Mendonça, Andrzej Wasowski, Krzysztof Czarnecki, and Donald D. Cowan. 2008. Efficient compilation techniques for large scale feature models. In 7th International Conference on Generative Programming and Component Engineering (GPCE). ACM, 13--22. https://doi.org/10.1145/1449913.1449918
[42]
Jeho Oh, Paul Gazzillo, and Don S. Batory. 2019. t-wise coverage by uniform sampling. In 23rd International Systems and Software Product Line Conference (SPLC), Vol. A. ACM, 15:1--15:4. https://doi.org/10.1145/3336294.3342359
[43]
Tobias Pett, Sebastian Krieter, Tobias Runge, Thomas Thüm, Malte Lochau, and Ina Schaefer. 2021. Stability of Product-Line Samplingin Continuous Integration. In 15th International Working Conference on Variability Modelling of Software-Intensive Systems (VaMoS). 18:1-18:9. https://doi.org/10.1145/3442391.3442410
[44]
Anna Schmitt, Georg Rock, and Christian Bettinger. 2018. Glencoe - A Tool for Specification, Visualization and Formal Analysis of Product Lines. In 25th International Conference on Transdisciplinary Engineering, Vol. 7. Modena, Italy, 665--673. https://doi.org/10.3233/978-1-61499-898-3-66
[45]
Pierre-Yves Schobbens, Patrick Heymans, Jean-Christophe Trigaux, and Yves Bontemps. 2007. Generic semantics of feature diagrams. Comput. Networks 51, 2 (2007), 456--479. https://doi.org/10.1016/j.comnet.2006.08.008
[46]
Steven She, Rafael Lotufo, Thorsten Berger, Andrzej Wasowski, and Krzysztof Czarnecki. 2010. The Variability Model of The Linux Kernel. In 4th International Workshop on Variability Modelling of Software-Intensive Systems (VaMoS) (ICB-Research Report, Vol. 37). Universität Duisburg-Essen, Linz, Austria, 45--51. http://www.vamos-workshop.net/proceedings/VaMoS_2010_Proceedings.pdf
[47]
Kai Shi, Huiqun Yu, Jianmei Guo, Guisheng Fan, Liqiong Chen, and Xingguang Yang. 2019. A Parallel Framework of Combining Satisfiability Modulo Theory with Indicator-Based Evolutionary Algorithm for Configuring Large and Real Software Product Lines. Int. J. Softw. Eng. Knowl. Eng. 29, 4 (2019), 489--513. https://doi.org/10.1142/S0218194019500219
[48]
Kai Shi, Huiqun Yu, Jianmei Guo, Guisheng Fan, and Xingguang Yang. 2018. A parallel portfolio approach to configuration optimization for large software product lines. Softw. Pract. Exp. 48, 9 (2018). https://doi.org/10.1002/spe.2594
[49]
Norbert Siegmund, Marko Rosenmüller, Martin Kuhlemann, Christian Kästner, Sven Apel, and Gunter Saake. 2012. SPL Conqueror: Toward optimization of non-functional properties in software product lines. Softw. Qual. J. 20, 3-4 (2012), 487--517. https://doi.org/10.1007/s11219-011-9152-9
[50]
Chico Sundermann, Kevin Feichtinger, Dominik Engelhardt, Rick Rabiser, and Thomas Thüm. 2021. Yet another textual variability language?: a community effort towards a unified language. In 25th ACM International Systems and Software Product Line Conference (SPLC), Vol. A. https://doi.org/10.1145/3461001.3471145
[51]
Chico Sundermann, Kevin Feichtinger, José A. Galindo, David Benavides, Rick Rabiser, Sebastian Krieter, and Thomas Thüm. 2022. Tutorial on the universal variability language. In 26th ACM International Systems and Software Product Line Conference (SPLC), Vol. A. 260. https://doi.org/10.1145/3546932.3547024
[52]
Chico Sundermann, Tobias Heß, Michael Nieke, Paul Maximilian Bittner, Jeffrey M. Young, Thomas Thüm, and Ina Schaefer. 2023. Evaluating state-of-the-art # SAT solvers on industrial configuration spaces. Empir. Softw. Eng. 28, 2 (2023), 29. https://doi.org/10.1007/s10664-022-10265-9
[53]
Chico Sundermann, Michael Nieke, Paul Maximilian Bittner, Tobias Heß, Thomas Thüm, and Ina Schaefer. 2021. Applications of #SAT Solvers on Feature Models. In 15th International Working Conference on Variability Modelling of Software-Intensive Systems (VaMoS). 12:1-12:10. https://doi.org/10.1145/3442391.3442404
[54]
Thomas Thüm. 2020. A BDD for Linux?: the knowledge compilation challenge for variability. In 24th ACM International Systems and Software Product Line Conference (SPLC), Vol. A. 16:1--16:6. https://doi.org/10.1145/3382025.3414943
[55]
Thomas Thüm, Sven Apel, Christian Kästner, Ina Schaefer, and Gunter Saake. 2014. A Classification and Survey of Analysis Strategies for Software Product Lines. ACM Comput. Surv. 47, 1 (2014), 6:1--6:45. https://doi.org/10.1145/2580950
[56]
Thomas Thüm, Christian Kästner, Fabian Benduhn, Jens Meinicke, Gunter Saake, and Thomas Leich. 2014. FeatureIDE: An extensible framework for feature-oriented software development. Sci. Comput. Program. 79 (2014), 70--85. https://doi.org/10.1016/j.scico.2012.06.002
[57]
Robert Tieber and Alexander Felfernig. 2021. A Knowledge-based Configurator for Building Magic: The Gathering Card Decks. In 23rd International Configuration Workshop (ConfWS), Vol. 2945. CEUR-WS.org, Vienna, Austria, 55--57. https://ceur-ws.org/Vol-2945/42-RT-ConfWS21_paper_3.pdf
[58]
D. A. Turner. 1985. Miranda: A Non-Strict Functional language with Polymorphic Types. In Functional Programming Languages and Computer Architecture (FPCA) (LNCS, Vol. 201). Springer, 1--16. https://doi.org/10.1007/3-540-15975-4_26
[59]
Pim van den Broek and Ismênia Galvão. 2009. Analysis of Feature Models using Generalised Feature Trees. In 3rd International Workshop on Variability Modelling of Software-Intensive Systems (VaMoS), Vol. 29. 29--35. http://www.vamos-workshop.net/proceedings/VaMoS_2009_Proceedings.pdf
[60]
Pim van den Broek, Ismênia Galvão, and Joost Noppen. 2008. Elimination of Constraints from Feature Trees. In Workshop on Analyses of Software Product Lines (ASPL) @ SPLC'08, Vol. Second (Workshops). Limerick, Ireland, 227--232.
[61]
Cristian Vidal, Alexander Felfernig, José A. Galindo, Müslüm Atas, and David Benavides. 2021. Explanations for over-constrained problems using QuickXPlain with speculative executions. J. Intell. Inf. Syst. 57, 3 (2021), 491--508. https://doi.org/10.1007/s10844-021-00675-4
[62]
Trevor J. Young. 2005. Using Aspect J to build a software product line for mobile devices. Ph.D. Dissertation. University of British Columbia. https://doi.org/10.14288/1.0051632

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SPLC '23: Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A
August 2023
305 pages
ISBN:9798400700910
DOI:10.1145/3579027
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 the author(s) 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: 28 August 2023

Permissions

Request permissions for this article.

Check for updates

Badges

Author Tags

  1. Automated analysis
  2. constraint
  3. feature model
  4. feature tree
  5. parallelization
  6. software product line

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Funding Sources

  • Ministerio de Ciencia e Innovación
  • European Union
  • Junta de Andalucía

Conference

SPLC '23
Sponsor:

Acceptance Rates

Overall Acceptance Rate 167 of 463 submissions, 36%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 98
    Total Downloads
  • Downloads (Last 12 months)25
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 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

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media