Abstract
Software Product Lines (SPLs) are a common technique to capture families of software products in terms of commonalities and variabilities. On a conceptual level, functionality of an SPL is modeled in terms of features in Feature Models (FMs). As other software systems, SPLs and their FMs are subject to evolution that may lead to the introduction of anomalies (e.g., non-selectable features). To fix such anomalies, developers need to understand the cause for them. However, for large evolution histories and large SPLs, explanations may become very long and, as a consequence, hard to understand. In this paper, we present a method for anomaly detection and explanation that, by encoding the entire evolution history, identifies the evolution step of anomaly introduction and explains which of the performed evolution operations lead to it. In our evaluation, we show that our method significantly reduces the complexity of generated explanations.
- Vander Alves, Rohit Gheyi, Tiago Massoni, Uirá Kulesza, Paulo Borba, and Carlos Lucena. 2006. Refactoring Product Lines. In Proceedings of the 5th International Conference on Generative Programming and Component Engineering (GPCE '06). ACM, New York, NY, USA, 201-210. Google Scholar
Digital Library
- Sofia Ananieva, Matthias Kowal, Thomas Thüm, and Ina Schaefer. 2016. Implicit Constraints in Partial Feature Models. In Proceedings of the 7th International Workshop on Feature-Oriented Software Development (FOSD 2016). ACM, New York, NY, USA, 18-27. Google Scholar
Digital Library
- Don Batory. 2005. Feature Models, Grammars, and Propositional Formulas. In Proceedings of the 9th International Conference on Software Product Lines (SPLC'05). Springer-Verlag, Berlin, Heidelberg, 7-20. Google Scholar
Digital Library
- David Benavides, Sergio Segura, and Antonio Ruiz-Cortés. 2010. Automated analysis of feature models 20 years later: A literature review. Information Systems 35, 6 (2010), 615-636. Google Scholar
Digital Library
- David Benavides, Pablo Trinidad, and Antonio Ruiz-Cortés. 2005. Automated Reasoning on Feature Models. In Proceedings of the 17th International Conference on Advanced Information Systems Engineering (CAiSE'05). Springer-Verlag, Berlin, Heidelberg, 491-503. Google Scholar
Digital Library
- Goetz Botterweck, Andreas Pleuss, Deepak Dhungana, Andreas Polzer, and Stefan Kowalewski. 2010. EvoFM: Feature-driven Planning of Product-line Evolution. In Proceedings of the 2010 ICSE Workshop on Product Line Approaches in Software Engineering (PLEASE '10). ACM, New York, NY, USA, 24-31. Google Scholar
Digital Library
- Johannes Bürdek, Timo Kehrer, Malte Lochau, Dennis Reuling, Udo Kelter, and Andy Schürr. 2016. Reasoning About Product-line Evolution Using Complex Feature Model Differences. Automated Software Engg. 23, 4 (Dec. 2016), 687-733. Google Scholar
Digital Library
- Krzysztof Czarnecki, Simon Helsen, and Ulrich W. Eisenecker. 2005. Formalizing cardinality-based feature models and their specialization. Software Process: Improvement and Practice 10 (2005), 7-29.Google Scholar
Cross Ref
- Nicolas Dintzner, Arie Deursen, and Martin Pinzger. 2017. Analysing the Linux Kernel Feature Model Changes Using FMDiff. Softw. Syst. Model. 16, 1 (Feb. 2017), 55-76. Google Scholar
Digital Library
- Abdelrahman Osman Elfaki, Somnuk Phon-Amnuaisuk, and Chin Kuan Ho. 2009. Using First Order Logic to Validate Feature Model. In Third International Workshop on Variability Modelling of Software-Intensive Systems, Seville, Spain, January 28-30, 2009. Proceedings. 169-172.Google Scholar
- Alexander Felfernig, David Benavides, José A. Galindo, and Florian Reinfrank. 2013. Towards Anomaly Explanation in Feature Models. In Proceedings of the 15th International Configuration Workshop, Vienna, Austria, August 29-30, 2013. 117-124.Google Scholar
- Jianmei Guo and Yinglin Wang. 2010. Towards Consistent Evolution of Feature Models. In Software Product Lines: Going Beyond, Jan Bosch and Jaejoon Lee (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 451-455. Google Scholar
Digital Library
- Jianmei Guo, Yinglin Wang, Pablo Trinidad, and David Benavides. 2012. Consistency maintenance for evolving feature models. Expert Systems with Applications 39, 5 (2012), 4987-4998. Google Scholar
Digital Library
- Ofer Guthmann, Ofer Strichman, and Anna Trostanetski. 2016. Minimal unsatisfiable core extraction for SMT. In 2016 Formal Methods in Computer-Aided Design, FMCAD 2016, Mountain View, CA, USA, October 3-6, 2016. 57-64. Google Scholar
Digital Library
- Adithya Hemakumar. 2008. Finding Contradictions in Feature Models. In Proceedings of the 12th International Software Product Line Conference (SPLC). 183-190.Google Scholar
- 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 Univ Pittsburgh Pa Software Engineering Inst.Google Scholar
- 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 Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering (ESEC/FSE 2017). ACM, New York, NY, USA, 291-302. Google Scholar
Digital Library
- Matthias Kowal, Sofia Ananieva, and Thomas Thüm. 2016. Explaining anomalies in feature models. In Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, GPCE 2016, Amsterdam, The Netherlands, October 31- November 1, 2016. 132-143. Google Scholar
Digital Library
- Dean Kramer, Christian Severin Sauer, and Thomas Roth-Berghofer. 2013. Towards Explanation Generation using Feature Models in Software Product Lines. In Proceedings of 9thWorkshop on Knowledge Engineering and Software Engineering (KESE9) co-located with the 36th German Conference on Artificial Intelligence (KI2013), Koblenz, Germany, September 17, 2013.Google Scholar
- Sebastian Krieter, Thomas Thüm, Sandro Schulze, Reimar Schröter, and Gunter Saake. 2018. Propagating Configuration Decisions with Modal Implication Graphs. In Proceedings of the 40th International Conference on Software Engineering (ICSE '18). ACM, New York, NY, USA. Google Scholar
Digital Library
- Uwe Lesta, Ina Schaefer, and Tim Winkelmann. 2015. Detecting and Explaining Conflicts in Attributed Feature Models. In Proceedings 6th Workshop on Formal Methods and Analysis in SPL Engineering, FMSPLE@ ETAPS 2015, London, UK, 11 April 2015. 31-43.Google Scholar
Cross Ref
- Mark H. Liffiton and Karem A. Sakallah. 2008. Algorithms for Computing Minimal Unsatisfiable Subsets of Constraints. J. Autom. Reasoning 40, 1 (2008), 1-33. Google Scholar
Digital Library
- Sascha Lity, Matthias Kowal, and Ina Schaefer. 2016. Higher-order Delta Modeling for Software Product Line Evolution. In Proceedings of the 7th International Workshop on Feature-Oriented Software Development (FOSD 2016). ACM, New York, NY, USA, 39-48. Google Scholar
Digital Library
- Sascha Lity, Sophia Nahrendorf, Thomas Thüm, Christoph Seidl, and Ina Schaefer. 2018. 175 Artifacts. In Proceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems (VAMOS 2018). ACM, New York, NY, USA, 27-34. Google Scholar
Digital Library
- Rafael Lotufo, Steven She, Thorsten Berger, Krzysztof Czarnecki, and Andrzej Wasowski. 2010. Evolution of the Linux Kernel Variability Model. In Proceedings of the 14th International Conference on Software Product Lines: Going Beyond (SPLC'10). Springer-Verlag, Berlin, Heidelberg, 136-150. http://dl.acm.org/citation.cfm?id=1885639.1885653. Google Scholar
Digital Library
- Jacopo Mauro, Michael Nieke, Christoph Seidl, and Ingrid Chieh Yu. 2017. Anomaly Detection and Explanation in Context-Aware Software Product Lines. In Proceedings of the 21st International Systems and Software Product Line Conference, SPLC 2017, Volume B, Sevilla, Spain, September 25-29, 2017. 18-21. Google Scholar
Digital Library
- Jens Meinicke, Thomas Thüm, Reimar Schröter, Fabian Benduhn, Thomas Leich, and Gunter Saake. 2017. Mastering Software Variability with FeatureIDE. Springer. Google Scholar
Digital Library
- Marcilio Mendonca, Andrzej Wasowski, and Krzysztof Czarnecki. 2009. SAT-based Analysis of Feature Models is Easy. In Proceedings of the 13th International Software Product Line Conference (SPLC '09). Carnegie Mellon University, Pittsburgh, PA, USA, 231-240. http://dl.acm.org/citation.cfm?id=1753235.1753267. Google Scholar
Digital Library
- Sophia Nahrendorf, Sascha Lity, and Ina Schaefer. 2018. Applying Higher-Order Delta Modeling for the Evolution of Delta-Oriented Software Product Lines. Technical Report. TU Braunschweig. https://www.isf.cs.tu-bs.de/cms/team/lity/TUBS_Report_2018-01_Nahrendorf_et_al.pdf.Google Scholar
- Laís Neves, Paulo Borba, Vander Alves, Lucinéia Turnes, Leopoldo Teixeira, Demóstenes Sena, and Uirá Kulesza. 2015. Safe evolution templates for software product lines. Journal of Systems and Software 106 (2015), 42-58. Google Scholar
Digital Library
- Laís Neves, Leopoldo Teixeira, Demóstenes Sena, Vander Alves, Uirá Kulesza, and Paulo Borba. 2011. Investigating the Safe Evolution of Software Product Lines. In Proceedings of the 10th ACM International Conference on Generative Programming and Component Engineering (GPCE '11). ACM, New York, NY, USA, 33-42. Google Scholar
Digital Library
- Michael Nieke, Gil Engel, and Christoph Seidl. 2017. DarwinSPL: An Integrated Tool Suite for Modeling Evolving Context-aware Software Product Lines. In Proceedings of the Eleventh International Workshop on Variability Modelling of Software-intensive Systems (VAMOS '17). ACM, New York, NY, USA, 92-99. Google Scholar
Digital Library
- Michael Nieke, Christoph Seidl, and Sven Schuster. 2016. Guaranteeing Configuration Validity in Evolving Software Product Lines. In Proceedings of the Tenth International Workshop on Variability Modelling of Software-intensive Systems (VaMoS '16). ACM, New York, NY, USA, 73-80. Google Scholar
Digital Library
- Michael Nieke, Christoph Seidl, and Thomas Thüm. 2018. Back to the Future: Avoiding Paradoxes in Feature-Model Evolution. In Proceedings of the 22nd International Systems and Software Product Line Conference - Volume B (SPLC '18). ACM, New York, NY, USA. Google Scholar
Digital Library
- Sebastian Oster, Marius Zink, Malte Lochau, and Mark Grechanik. 2011. Pairwise Feature-interaction Testing for SPLs: Potentials and Limitations. In Proceedings of the 15th International Software Product Line Conference, Volume 2 (SPLC '11). ACM, New York, NY, USA, Article 6, 8 pages. Google Scholar
Digital Library
- Leonardo Passos, Krzysztof Czarnecki, Sven Apel, Andrzej Wasowski, Christian Kästner, and Jianmei Guo. 2013. Feature-oriented Software Evolution. In Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems (VaMoS '13). ACM, New York, NY, USA, Article 17, 8 pages. Google Scholar
Digital Library
- Leonardo Passos, Krzysztof Czarnecki, and Andrzej Wasowski. 2012. Towards a Catalog of Variability Evolution Patterns: The Linux Kernel Case. In Proceedings of the 4th International Workshop on Feature-Oriented Software Development (FOSD '12). ACM, New York, NY, USA, 62-69. Google Scholar
Digital Library
- Andreas Pleuss, Goetz Botterweck, Deepak Dhungana, Andreas Polzer, and Stefan Kowalewski. 2012. Model-driven Support for Product Line Evolution on Feature Level. J. Syst. Softw. 85, 10 (Oct. 2012), 2261-2274. Google Scholar
Digital Library
- K. Pohl, G. Böckle, and F.J. van der Linden. 2005. Software Product Line Engineering: Foundations, Principles and Techniques. Springer Berlin Heidelberg. Google Scholar
Digital Library
- Clément Quinton, Andreas Pleuss, Daniel Le Berre, Laurence Duchien, and Goetz Botterweck. 2014. Consistency Checking for the Evolution of Cardinality-based Feature Models. In Proceedings of the 18th International Software Product Line Conference - Volume 1 (SPLC '14). ACM, NewYork, NY, USA, 122-131. Google Scholar
Digital Library
- Tartler Reinhard, Sincero Julio, Schröder-Preikschat Wolfgang, and Lohmann Daniel. 2009. Dead or Alive: Finding Zombie Features in the Linux Kernel. In Proceedings of the First International Workshop on Feature-Oriented Software Development (FOSD '09). ACM, New York, NY, USA, 81-86. Google Scholar
Digital Library
- LF Rincón, Gloria Lucia Giraldo, Raúl Mazo, and Camille Salinesi. 2014. An ontological rule-based approach for analyzing dead and false optional features in feature models. Electronic notes in theoretical computer science 302 (2014), 111-132. Google Scholar
Digital Library
- Gabriela Sampaio, Paulo Borba, and Leopoldo Teixeira. 2016. Partially Safe Evolution of Software Product Lines. In Proceedings of the 20th International Systems and Software Product Line Conference (SPLC '16). ACM, New York, NY, USA, 124-133. Google Scholar
Digital Library
- Ina Schaefer, Rick Rabiser, Dave Clarke, Lorenzo Bettini, David Benavides, Goetz Botterweck, Animesh Pathak, Salvador Trujillo, and Karina Villela. 2012. Software diversity: state of the art and perspectives. International Journal on Software Tools for Technology Transfer 14, 5 (01 Oct 2012), 477-495. Google Scholar
Digital Library
- Reimar Schröter, Thomas Thüm, Norbert Siegmund, and Gunter Saake. 2013. Automated Analysis of Dependent Feature Models. In Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems (VaMoS '13). ACM, New York, NY, USA. Google Scholar
Digital Library
- Mathias Schubanz, Andreas Pleuss, Goetz Botterweck, and Claus Lewerentz. 2012. Modeling Rationale over Time to Support Product Line Evolution Planning. In Proceedings of the Sixth International Workshop on Variability Modeling of Software-Intensive Systems (VaMoS '12). ACM, NewYork, NY, USA, 193-199. Google Scholar
Digital Library
- Mathias Schubanz, Andreas Pleuss, Ligaj Pradhan, Goetz Botterweck, and Anil Kumar Thurimella. 2013. Model-driven Planning and Monitoring of Long-term Software Product Line Evolution. In Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems (VaMoS '13). ACM, New York, NY, USA, Article 18, 5 pages. Google Scholar
Digital Library
- Christoph Seidl, Florian Heidenreich, and Uwe Aßmann. 2012. Coevolution of Models and Feature Mapping in Software Product Lines. In Proceedings of the 16th International Software Product Line Conference - Volume 1 (SPLC '12). ACM, New York, NY, USA, 76-85. Google Scholar
Digital Library
- 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, Article 6 (June 2014), 45 pages. Google Scholar
Digital Library
- Thomas Thüm, Don Batory, and Christian Kästner. 2009. Reasoning About Edits to Feature Models. In Proceedings of the 31st International Conference on Software Engineering (ICSE '09). IEEE Computer Society, Washington, DC, USA, 254-264. Google Scholar
Digital Library
- Pablo Trinidad, David Benavides, Antonio Ruiz-Cortés, Sergio Segura, and Miguel Toro. 2006. Explanations for agile feature models. In Procceedings of the 1st International Workshop on Agile Product Line Engineering (APLE'06). 44.Google Scholar
- Pablo Trinidad Martin-Arroyo. 2012. Automating the analysis of stateful feature models. Ph.D. Dissertation. University of Seville.Google Scholar
- Thomas von der Maßen and Horst Lichter. 2004. Deficiencies in feature models. In Workshop on Software Variability Management for Product Derivation-Towards Tool Support, Vol. 44.Google Scholar
Index Terms
Anomaly analyses for feature-model evolution
Recommendations
Anomaly analyses for feature-model evolution
GPCE 2018: Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and ExperiencesSoftware Product Lines (SPLs) are a common technique to capture families of software products in terms of commonalities and variabilities. On a conceptual level, functionality of an SPL is modeled in terms of features in Feature Models (FMs). As other ...
Using composite feature models to support agile software product line evolution
ME '12: Proceedings of the 6th International Workshop on Models and EvolutionManaging continuous change in a Software Product Line (SPL) is one of the challenges now faced by the SPL engineering community. On the one hand, the SPL paradigm captures the intrinsic variability of a software based on a systemic vision of the ...
A New Parameter for Product Configuration in Software Product Lines
KAM '09: Proceedings of the 2009 Second International Symposium on Knowledge Acquisition and Modeling - Volume 02Software product line development is a new software engineering method. It promotes the predictive software reuse by developing similar software systems together. One of the key artifacts of a software product line is the feature model, which represents ...







Comments