skip to main content
article

Anomaly analyses for feature-model evolution

Published:07 April 2020Publication History
Skip Abstract Section

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.

References

  1. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  2. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  3. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  4. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  5. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  6. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  8. 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 ScholarGoogle ScholarCross RefCross Ref
  9. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  10. 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 ScholarGoogle Scholar
  11. 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 ScholarGoogle Scholar
  12. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  14. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  15. Adithya Hemakumar. 2008. Finding Contradictions in Feature Models. In Proceedings of the 12th International Software Product Line Conference (SPLC). 183-190.Google ScholarGoogle Scholar
  16. 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 ScholarGoogle Scholar
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  19. 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 ScholarGoogle Scholar
  20. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  21. 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 ScholarGoogle ScholarCross RefCross Ref
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  26. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  27. Jens Meinicke, Thomas Thüm, Reimar Schröter, Fabian Benduhn, Thomas Leich, and Gunter Saake. 2017. Mastering Software Variability with FeatureIDE. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  29. 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 ScholarGoogle Scholar
  30. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  31. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  32. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  33. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  34. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  35. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  36. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  37. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  38. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  39. K. Pohl, G. Böckle, and F.J. van der Linden. 2005. Software Product Line Engineering: Foundations, Principles and Techniques. Springer Berlin Heidelberg. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  41. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  42. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  43. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  44. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  45. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  46. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  47. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  48. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  49. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  50. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  51. 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 ScholarGoogle Scholar
  52. Pablo Trinidad Martin-Arroyo. 2012. Automating the analysis of stateful feature models. Ph.D. Dissertation. University of Seville.Google ScholarGoogle Scholar
  53. 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 ScholarGoogle Scholar

Index Terms

  1. Anomaly analyses for feature-model evolution

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 53, Issue 9
        GPCE '18
        September 2018
        214 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/3393934
        Issue’s Table of Contents
        • cover image ACM Conferences
          GPCE 2018: Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences
          November 2018
          214 pages
          ISBN:9781450360456
          DOI:10.1145/3278122

        Copyright © 2018 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 7 April 2020

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!