skip to main content
10.1145/3461002.3473069acmconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
short-paper

A flexible approach for transforming variability models

Published:06 September 2021Publication History

ABSTRACT

In software product lines, engineers use variability models to explicitly represent commonalities and variability. A plethora of variability modeling approaches have been proposed in the last 30 years, and there is no standard variability modeling approach the community agrees on. Well-known approaches such as feature modeling or decision modeling exist in many different variants, most of which have been shown to be useful for at least one specific use case. Due to this variety of approaches researchers and practitioners alike struggle to find, understand, and eventually pick the right approach for a specific context or (set of) system(s). Practitioners in industry often develop custom solutions to manage the variability of various artifacts, like requirements documents or design spreadsheets. In this paper, we report on our ongoing research towards developing a framework for (semi-)automatically transforming variability models. Our approach supports researchers and practitioners experimenting with and comparing different variability modeling approaches and switching from one modeling approach to another. We present the research questions guiding our research and discuss the current status of our work as well as future work.

References

  1. Felix Bachmann, Michael Goedicke, Julio Leite, Robert Nord, Klaus Pohl, Balasubramaniam Ramesh, and Alexander Vilbig. 2003. A meta-model for representing variability in product family development. In Proc. of the International Workshop on Software Product-Family Engineering. Springer, 66--80.Google ScholarGoogle Scholar
  2. Don Batory. 2005. Feature Models, Grammars, and Propositional Formulas. In Software Product Lines, Henk Obbink and Klaus Pohl (Eds.). Springer, 7--20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Maurice H. ter Beek, Klaus Schmid, and Holger Eichelberger. 2019. Textual Variability Modeling Languages: An Overview and Considerations. In Proceedings of the 23rd International Systems and Software Product Line Conference - Volume B (SPLC '19). Association for Computing Machinery, New York, NY, USA, 151--157. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Thorsten Berger and Philippe Collet. 2019. Usage Scenarios for a Common Feature Modeling Language. In Proceedings of the 23rd International Systems and Software Product Line Conference - Volume B (SPLC '19). Association for Computing Machinery, New York, NY, USA, 174--181. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Thorsten Berger, Ralf Rublack, Divya Nair, Joanne M Atlee, Martin Becker, Krzysztof Czarnecki, and Andrzej Wąsowski. 2013. A survey of variability modeling in industrial practice. In Proc. of the 7th International Workshop on Variability Modelling of Software-intensive Systems. ACM, 7--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Thorsten Berger, Steven She, Rafael Lotufo, Andrzej Wąsowski, and Krzysztof Czarnecki. 2010. Variability modeling in the real: a perspective from the operating systems domain. In Proc. of the IEEE/ACM International Conference on Automated Software Engineering. ACM, 73--82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Stefan Biffl, Detlef Gerhard, and Arndt Lüder. 2017. Introduction to the Multi-Disciplinary Engineering for Cyber-Physical Production Systems. Springer International Publishing, Cham, 1--24.Google ScholarGoogle Scholar
  8. Marco Brambilla, Jordi Cabot, and Manuel Wimmer. 2017. Model-driven software engineering in practice. Synthesis Lectures on Soft. Eng. 3, 1 (2017), 1--207. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 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 Engineering 23, 4 (2016), 687--733. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Jordi Cabot and Martin Gogolla. 2012. Object constraint language (OCL): a definitive guide. In International school on formal methods for the design of computer, communication and software systems. Springer, 58--90. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Krzysztof Czarnecki, Paul Grünbacher, Rick Rabiser, Klaus Schmid, and Andrzej Wąsowski. 2012. Cool Features and Tough Decisions: A Comparison of Variability Modeling Approaches. In Proc. of the 6th International Workshop on Variability Modeling of Software-Intensive Systems. ACM, 173--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Krzysztof Czarnecki and Andrzej Wąsowski. 2007. Feature Diagrams and Logics: There and Back Again. In Proc. of the 11th International Software Product Line Conference. IEEE, 23--34. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Deepak Dhungana, Paul Grünbacher, and Rick Rabiser. 2011. The DOPLER Meta-Tool for Decision-Oriented Variability Modeling: A Multiple Case Study. Automated Software Engineering 18, 1 (2011), 77--114. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Sascha El-Sharkawy, Stephan Dederichs, and Klaus Schmid. 2012. From Feature Models to Decision Models and Back Again: An Analysis Based on Formal Transformations. In Proc. of the 16th International Software Product Line Conference. ACM, 126--135. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Hafiyyan Sayyid Fadhlillah, Kevin Feichtinger, Lisa Sonnleithner, Rick Rabiser, and Alois Zoitl. 2021. Towards Heterogeneous Multi-Dimensional Variability Modeling in Cyber-Physical Production Systems. In Proc. of the 4rd International Workshop on Variability and Evolution of Software-Intensive Systems (VariVolution), co-located with SPLC 2021. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Kevin Feichtinger, Kristof Meixner, Rick Rabiser, and Stefan Biffl. 2020. Variability Transformation from Industrial Engineering Artifacts: An Example in the Cyber-Physical Production Systems Domain. In Proc. of the 3rd International Workshop on Variability and Evolution of Software-Intensive Systems (VariVolution), co-located with SPLC 2020. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Kevin Feichtinger, Kristof Meixner, Rick Rabiser, and Stefan Biffl. 2021. A Systematic Study as Foundation for a Variability Modeling Body of Knowledge. In Proc. of the 47th Euromicro Conference on Software Engineering and Advanced Applications. IEEE, Palermo, Italy.Google ScholarGoogle Scholar
  18. Kevin Feichtinger and Rick Rabiser. 2020. Towards Transforming Variability Models: Usage Scenarios, Required Capabilities and Challenges. In 3rd International Workshop on Languages for Modelling Variability (MODEVAR), co-located with SPLC 2020. ACM, Montréal, Canada. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Kevin Feichtinger and Rick Rabiser. 2020. Variability Model Transformations: Towards Unifying Variability Modeling. In Proc. of the 46th Euromicro Conference on Software Engineering and Advanced Applications. IEEE, Portoroz, Slovenia.Google ScholarGoogle ScholarCross RefCross Ref
  20. Kevin Feichtinger and Rick Rabiser. 2021. How flexible must a Transformation Approach for Variability Models and Custom Variability Representations be?. In Proc. of the 4rd International Workshop on Languages for Modelling Variability (MODEVAR), co-located with SPLC 2021. ACM.Google ScholarGoogle Scholar
  21. Kevin Feichtinger, Johann Stöbich, Dario Romano, and Rick Rabiser. 2021. TRAVART: An Approach for Transforming Variability Models. In 15th International Working Conference on Variability Modelling of Software-Intensive Systems (VaMoS'21). Association for Computing Machinery, New York, NY, USA, Article 8, 10 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Michael Felderer and Guilherme Horta Travassos. 2020. Contemporary Empirical Methods in Software Engineering. Springer.Google ScholarGoogle Scholar
  23. Matthias Galster, Danny Weyns, Dan Tofan, Bartosz Michalik, and Paris Avgeriou. 2013. Variability in software systems-a systematic literature review. IEEE Transactions on Software Engineering 40, 3 (2013), 282--306. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Hassan Gomaa. 2005. Designing software product lines with UML. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. T.R.G. Green and M. Petre. 1996. Usability Analysis of Visual Programming Environments: A 'Cognitive Dimensions' Framework. Journal of Visual Languages & Computing 7, 2 (1996), 131--174.Google ScholarGoogle ScholarCross RefCross Ref
  26. Øystein Haugen, Andrzej Wąsowski, and Krzysztof Czarnecki. 2013. CVL: common variability language. In Proc. of the 17th International Software Product Line Conference. ACM, 277--277. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Frédéric Jouault, Freddy Allilaire, Jean Bézivin, and Ivan Kurtev. 2008. ATL: A model transformation tool. Science of computer programming 72, 1-2 (2008), 31--39. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Barbara Ann Kitchenham, David Budgen, and Pearl Brereton. 2015. Evidence-based software engineering and systematic reviews. Vol. 4. CRC press.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Sebastian Krieter, Thomas Thüm, Sandro Schulze, Gunter Saake, and Thomas Leich. 2020. YASA: Yet Another Sampling Algorithm. In Proc. of the 14th International Working Conference on Variability Modelling of Software-Intensive Systems. ACM, 1--10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Jia Hui Liang, Vijay Ganesh, Krzysztof Czarnecki, and Venkatesh Raman. 2015. SAT-Based Analysis of Large Real-World Feature Models is Easy. In Proceedings of the 19th International Conference on Software Product Line (SPLC '15). Association for Computing Machinery, New York, NY, USA, 91--100. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Jabier Martinez, Wesley KG Assunção, and Tewfik Ziadi. 2017. ESPLA: A catalog of Extractive SPL Adoption case studies. In Proc. of the 21st International Systems and Software Product Line Conference. ACM, 38--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. 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
  33. Kristof Meixner, Kevin Feichtinger, Rick Rabiser, and Stefan Biffl. 2021. A Reusable Set of Real-World Product Line Case Studies for Comparing Variability Models in Research and Practice. In Proc. of the 4rd Workshop on Experiences and Empirical Studies on Software Reuse (WEESR 2021), co-located with SPLC 2021. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Kristof Meixner, Felix Rinker, Hannes Marcher, Jakob Decker, and Stefan Biffl. 2021. A Domain-Specific Language for Product-Process-Resource Modeling. In IEEE Int. Conf. on Emerging Technologies and Factory Automation (ETFA). IEEE.Google ScholarGoogle Scholar
  35. Marcilio Mendonca, Moises Branco, and Donald Cowan. 2009. S.P.L.O.T.: Software Product Lines Online Tools. In Proceedings of the 24th ACM SIGPLAN Conference Companion on Object Oriented Programming Systems Languages and Applications. Association for Computing Machinery, New York, NY, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Gary Oliver. 2012. Foundations of the assumed business operations and strategy body of knowledge (BOSBOK): An outline of shareable knowledge. Darlington Press.Google ScholarGoogle Scholar
  37. Sebastian Oster, Florian Markert, and Philipp Ritter. 2010. Automated Incremental Pairwise Testing of Software Product Lines. In Software Product Lines: Going Beyond, Jan Bosch and Jaejoon Lee (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 196--210. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Gilles Perrouin, Sagar Sen, Jacques Klein, Benoit Baudry, and Yves le Traon. 2010. Automated and Scalable T-wise Test Case Generation Strategies for Software Product Lines. In 2010 Third International Conference on Software Testing, Verification and Validation. 459--468. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. K. Petersen, S. Vakkalanka, and L. Kuzniarz. 2015. Guidelines for conducting systematic mapping studies in software engineering: An update. Information and Software Technology 64 (2015), 1--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Klaus Pohl, Günter Böckle, and Frank J van der Linden. 2005. Software Product Line Engineering: Foundations, Principles and Techniques. Springer Science & Business Media. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Rick Rabiser, Klaus Schmid, Martin Becker, Goetz Botterweck, Matthias Galster, Iris Groher, and Danny Weyns. 2019. Industrial and Academic Software Product Line Research at SPLC: Perceptions of the Community. In Proceedings of the 23rd International Systems and Software Product Line Conference. ACM, Paris, France, 189--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Fabricia Roos Frantz, David Felipe Benavides Cuevas, and Antonio Ruiz Cortés. 2009. Feature model to orthogonal variability model transformation towards interoperability between tools. In Knowledge Industry Survival Strategy Initiative, Kiss Workshop (ASE 2009), Auckland, New Zealand.Google ScholarGoogle Scholar
  43. Per Runeson and Martin Höst. 2008. Guidelines for conducting and reporting case study research in software engineering. Empirical Software Engineering 14 (2008), 131--164. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Michael Schulze and Robert Hellebrand. 2015. Variability Exchange Language-A Generic Exchange Format for Variability Data.. In Software Engineering (Workshops). 71--80.Google ScholarGoogle Scholar
  45. Christoph Seidl, Tim Winkelmann, and Ina Schaefer. 2016. A software product line of feature modeling notations and cross-tree constraint languages. In Modellierung 2016, Andreas Oberweis and Ralf Reussner (Eds.). Gesellschaft für Informatik e.V., Bonn, 157--172.Google ScholarGoogle Scholar
  46. Steven She, Rafael Lotufo, Thorsten Berger, Andrzej Wąsowski, and Krzysztof Czarnecki. 2010. The Variability Model of The Linux Kernel. In Proc. of the 5th International Workshop on Variability Modelling of Software-intensive Systems. ACM, 45--51.Google ScholarGoogle Scholar
  47. 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 Proc. of the 25th International Systems and Software Product Line Conference. ACM, Leicester, United Kingdom. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Gabriele Taentzer, Rick Salay, Daniel Strüber, and Marsha Chechik. 2017. Transformations of software product lines: a generalizing framework based on category theory. In Proc. of the 20th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems. IEEE, 101--111. 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. Bart Veer and John Dallaway. 2011. The eCos Component Writer's Guide. Manual, available online at http://www.gaisler.com/doc/ecos-2.0-cdl-guide-a4.pdf.Google ScholarGoogle Scholar
  51. Bernhard Westfechtel and Sandra Greiner. 2018. From single-to multi-variant model transformations: trace-based propagation of variability annotations. In Proc. of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems. 46--56. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Roel J Wieringa. 2014. Design science methodology for information systems and software engineering. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Claes Wohlin, Per Runeson, Martin Höst, Magnus C Ohlsson, Björn Regnell, and Anders Wesslén. 2012. Experimentation in software engineering. Springer Science & Business Media. Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. A flexible approach for transforming variability models

    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
    • Published in

      cover image ACM Conferences
      SPLC '21: Proceedings of the 25th ACM International Systems and Software Product Line Conference - Volume B
      September 2021
      148 pages
      ISBN:9781450384704
      DOI:10.1145/3461002

      Copyright © 2021 ACM

      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: 6 September 2021

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • short-paper

      Acceptance Rates

      Overall Acceptance Rate167of463submissions,36%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader