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

Unified Operations for Variability in Space and Time

Published: 23 February 2022 Publication History
  • Get Citation Alerts
  • Abstract

    Software and systems engineering is challenged by variability in space (concurrent variations at a single point in time) and time (sequential variations due to evolution). Managing both dimensions of variability independently is cumbersome and error-prone. A common foundation for operations on these dimensions is still missing, hampering the comparison and integration of existing techniques coping with variability in space and time as well as the design of new ones. In this paper, we address this problem by systematically identifying, categorizing, and unifying operations from contemporary tools and extending them to cope with both variability dimensions. Based on our gained insights, we identify gaps and trade-offs in current tools for managing variability in space and time, and discuss open challenges. The unified operations establish a common foundation that helps researchers and practitioners to gain a deeper understanding of existing techniques and tools for managing variability in space and/or time, analyze and compare them, and design new ones.

    References

    [1]
    Hadil Abukwaik, Andreas Burger, Berima Kweku Andam, and Thorsten Berger. 2018. Semi-Automated Feature Traceability with Embedded Annotations. In International Conference on Software Maintenance and Evolution. IEEE, 529–533.
    [2]
    Sofia Ananieva, Sandra Greiner, Thomas Kühn, Jacob Krüger, Lukas Linsbauer, Sten Grüner, Timo Kehrer, Heiko Klare, Anne Koziolek, Henrik Lönn, Sebastian Krieter, Christoph Seidl, S. Ramesh, Ralf Reussner, and Bernhard Westfechtel. 2020. A Conceptual Model for Unifying Variability in Space and Time. In International Systems and Software Product Line Conference. ACM, 1–12.
    [3]
    Sven Apel, Don Batory, Christian Kästner, and Gunter Saake. 2013. Feature-Oriented Software Product Lines: Concepts and Implementation. Springer.
    [4]
    Colin Atkinson, Dietmar Stoll, and Philipp Bostan. 2010. Orthographic Software Modeling: A Practical Approach to View-Based Development. In Evaluation of Novel Approaches to Software Engineering. Springer, 206–219.
    [5]
    Don Batory. 2005. Feature Models, Grammars, and Propositional Formulas. In International Conference on Software Product Lines. Springer, 7–20.
    [6]
    Benjamin Behringer, Jochen Palz, and Thorsten Berger. 2017. PEoPL: Projectional Editing of Product Lines. In International Conference on Software Engineering. IEEE, 563–574.
    [7]
    Thorsten Berger, Marsha Chechik, Timo Kehrer, and Manuel Wimmer. 2019. Software Evolution in Time and Space: Unifying Version and Variability Management (Dagstuhl Seminar 19191). Schloss Dagstuhl – Leibniz-Zentrum fuer Informatik.
    [8]
    Paul Maximilian Bittner, Alexander Schultheiß, Thomas Thüm, Timo Kehrer, Jeffrey M. Young, and Lukas Linsbauer. 2021. Feature Trace Recording. In Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. ACM, 1007–1020.
    [9]
    Erik Johannes Burger. 2013. Flexible Views for View-Based Model-Driven Development. In International Doctoral Symposium on Components and Architecture. ACM, 25–30.
    [10]
    Paul Clements and Linda Northrop. 2001. Software Product Lines: Practices and Patterns. Addison-Wesley.
    [11]
    Reidar Conradi and Bernhard Westfechtel. 1998. Version Models for Software Configuration Management. ACM Computing Surveys 30, 2 (1998), 232–282.
    [12]
    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 International Workshop on Variability Modeling of Software-Intensive Systems. ACM, 173–182.
    [13]
    Jacky Estublier. 2000. Software Configuration Management: A Roadmap. In Conference on The Future of Software Engineering. ACM, 279–289.
    [14]
    Stefan Fischer, Lukas Linsbauer, Roberto Erick Lopez-Herrejon, and Alexander Egyed. 2014. Enhancing Clone-and-Own with Systematic Reuse for Developing Software Variants. In International Conference on Software Maintenance and Evolution. IEEE, 391–400.
    [15]
    Sten Grüner, Andreas Burger, Tuomas Kantonen, and Julius Rückert. 2020. Incremental Migration to Software Product Line Engineering. In Conference on Systems and Software Product Line. ACM, 1–11.
    [16]
    Daniel Hinterreiter, Michael Nieke, Lukas Linsbauer, Christoph Seidl, Herbert Prähofer, and Paul Grünbacher. 2019. Harmonized Temporal Feature Modeling to Uniformly Perform, Track, Analyze, and Replay Software Product Line Evolution. In International Conference on Generative Programming: Concepts and Experiences. ACM, 115–128.
    [17]
    Daniel Hinterreiter, Herbert Prähofer, Lukas Linsbauer, Paul Grünbacher, Florian Reisinger, and Alexander Egyed. 2018. Feature-Oriented Evolution of Automation Software Systems in Industrial Software Ecosystems. In International Conference on Emerging Technologies and Factory Automation. IEEE, 107–114.
    [18]
    Jose-Miguel Horcas, Mónica Pinto, and Lidia Fuentes. 2019. Software Product Line Engineering: A Practical Experience. In International Systems and Software Product Line Conference. ACM, 164–176.
    [19]
    Wenbin Ji, Thorsten Berger, Michal Antkiewicz, and Krzysztof Czarnecki. 2015. Maintaining Feature Traceability with Embedded Annotations. In International Conference on Software Product Line. ACM, 61–70.
    [20]
    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 CMU/SEI-90-TR-21. Carnegie-Mellon University.
    [21]
    Timo Kehrer, Thomas Thüm, Alexander Schultheiß, and Paul Maximilian Bittner. 2021. Bridging the Gap Between Clone-and-Own and Software Product Lines. In International Conference on Software Engineering: New Ideas and Emerging Results. 21–25.
    [22]
    Jacob Krüger, Sofia Ananieva, Lea Gerling, and Eric Walkingshaw. 2020. Third International Workshop on Variability and Evolution of Software-Intensive Systems. In International Systems and Software Product Line Conference. ACM, 34:1–1.
    [23]
    Jacob Krüger and Thorsten Berger. 2020. An Empirical Analysis of the Costs of Clone- and Platform-Oriented Software Reuse. In Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. ACM, 432–444.
    [24]
    Jacob Krüger, Wardah Mahmood, and Thorsten Berger. 2020. Promote-pl: A Round-Trip Engineering Process Model for Adopting and Evolving Product Lines. In International Systems and Software Product Line Conference. ACM, 2:1–12.
    [25]
    Jacob Krüger, Mukelabai Mukelabai, Wanzi Gu, Hui Shen, Regina Hebig, and Thorsten Berger. 2019. Where is My Feature and What is it About? A Case Study on Recovering Feature Facets. Journal of Systems and Software 152 (2019), 239–253.
    [26]
    Jacob Krüger, Louis Nell, Wolfram Fenske, Gunter Saake, and Thomas Leich. 2017. Finding Lost Features in Cloned Systems. In International Systems and Software Product Line Conference. ACM, 65–72.
    [27]
    Lukas Linsbauer, Somayeh Malakuti, Andrey Sadovykh, and Felix Schwägerl. 2018. 1st International Workshop on Variability and Evolution of Software-Intensive Systems. In International Systems and Software Product Line Conference. ACM, 294–294.
    [28]
    Lukas Linsbauer, Felix Schwägerl, Thorsten Berger, and Paul Grünbacher. 2021. Concepts of Variation Control Systems. Journal of Systems and Software 171 (2021), 110796.
    [29]
    Stephen A. MacKay. 1995. The State of the Art in Concurrent, Distributed Configuration Management. In International Workshop on Software Configuration Management. Springer, 180–193.
    [30]
    Gabriela K. Michelon, David Obermann, Lukas Linsbauer, Wesley K. G. Assunção, Paul Grünbacher, and Alexander Egyed. 2020. Locating Feature Revisions in Software Systems Evolving in Space and Time. In International Systems and Software Product Line Conference. ACM, 14:1–14:11.
    [31]
    Mukelabai Mukelabai, Benjamin Behringer, Moritz Fey, Jochen Palz, Jacob Krüger, and Thorsten Berger. 2018. Multi-View Editing of Software Product Lines with PEoPL. In International Conference on Software Engineering. ACM, 81–84.
    [32]
    Damir Nešić, Jacob Krüger, Stefan Stănciulescu, and Thorsten Berger. 2019. Principles of Feature Modeling. In Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. ACM, 62–73.
    [33]
    Michael Nieke, Lukas Linsbauer, Jacob Krüger, and Thomas Leich. 2019. International Workshop on Variability and Evolution of Software-Intensive Systems. In International Systems and Software Product Line Conference. ACM, 320–320.
    [34]
    Leonardo Passos, Leopoldo Teixeira, Nicolas Dintzner, Sven Apel, Andrzej Wąsowski, Krzysztof Czarnecki, Paulo Borba, and Jianmei Guo. 2016. Coevolution of Variability Models and Related Software Artifacts: A Fresh Look at Evolution Patterns in the Linux Kernel. Empirical Software Engineering 21, 4 (2016), 1744–1793.
    [35]
    Klaus Pohl, Günter Böckle, and Frank J. van der Linden. 2005. Software Product Line Engineering: Foundations, Principles and Techniques. Springer.
    [36]
    Julia Rubin and Marsha Chechik. 2013. A Survey of Feature Location Techniques. In Domain Engineering, Product Lines, Languages, and Conceptual Models. Springer, 29–58.
    [37]
    Julia Rubin and Marsha Chechik. 2013. A Framework for Managing Cloned Product Variants. In International Conference on Software Engineering. IEEE, 1233–1236.
    [38]
    Julia Rubin, Krzysztof Czarnecki, and Marsha Chechik. 2015. Cloned Product Variants: From Ad-Hoc to Managed Software Product Lines. International Journal on Software Tools for Technology Transfer (2015), 627–646.
    [39]
    Nayan B. Ruparelia. 2010. The History of Version Control. SIGSOFT Software Engineering Notes 35, 1 (2010), 5–9.
    [40]
    Johannes Schröpfer, Thomas Buchmann, and Bernhard Westfechtel. 2021. A Framework for Projectional Multi-variant Model Editors. In International Conference on Model-Driven Engineering and Software Development. SCITEPRESS, 294–305.
    [41]
    Christoph Seidl, Ina Schaefer, and Uwe Aßmann. 2014. Integrated Management of Variability in Space and Time in Software Families. In International Software Product Line Conference. ACM, 22–31.
    [42]
    Daniel Strüber, Mukelabai Mukelabai, Jacob Krüger, Stefan Fischer, Lukas Linsbauer, Jabier Martinez, and Thorsten Berger. 2019. Facing the Truth: Benchmarking the Techniques for the Evolution of Variant-Rich Systems. In International Systems and Software Product Line Conference. ACM, 177–188.
    [43]
    Stefan Stănciulescu, Thorsten Berger, Eric Walkingshaw, and Andrzej Wąsowski. 2016. Concepts, Operations, and Feasibility of a Projection-Based Variation Control System. In International Conference on Software Maintenance and Evolution. IEEE, 323–333.
    [44]
    Thomas Thüm, Leopoldo Teixeira, Klaus Schmid, Eric Walkingshaw, Mukelabai Mukelabai, Mahsa Varshosaz, Goetz Botterweck, Ina Schaefer, and Timo Kehrer. 2019. Towards Efficient Analysis of Variation in Time and Space. In International Workshop on Variability Modelling of Software-Intensive Systems. ACM.
    [45]
    Eric Walkingshaw and Klaus Ostermann. 2014. Projectional Editing of Variational Software. In International Conference on Generative Programming: Concepts and Experiences. ACM, 29–38.
    [46]
    Bernhard Westfechtel, Bjørn P. Munch, and Reidar Conradi. 2001. A Layered Architecture for Uniform Version Management. IEEE Transactions on Software Engineering 27, 12 (2001), 1111–1133.

    Cited By

    View all
    • (2023)Union Models for Model Families: Efficient Reasoning over Space and TimeAlgorithms10.3390/a1602010516:2(105)Online publication date: 11-Feb-2023
    • (2023)Analysis and Propagation of Feature Revisions in Preprocessor-based Software Product Lines2023 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER56733.2023.00035(284-295)Online publication date: Mar-2023
    • (2023)How do microservices evolve? An empirical analysis of changes in open-source microservice repositoriesJournal of Systems and Software10.1016/j.jss.2023.111788204:COnline publication date: 1-Oct-2023

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    VaMoS '22: Proceedings of the 16th International Working Conference on Variability Modelling of Software-Intensive Systems
    February 2022
    114 pages
    ISBN:9781450396042
    DOI:10.1145/3510466
    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: 23 February 2022

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. product lines
    2. variability
    3. version control

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Funding Sources

    • Federal Ministry of Economic Affairs and Energy
    • German Research Foundation
    • German Academic Exchange Service

    Conference

    VaMoS '22

    Acceptance Rates

    Overall Acceptance Rate 66 of 147 submissions, 45%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)30
    • Downloads (Last 6 weeks)3

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Union Models for Model Families: Efficient Reasoning over Space and TimeAlgorithms10.3390/a1602010516:2(105)Online publication date: 11-Feb-2023
    • (2023)Analysis and Propagation of Feature Revisions in Preprocessor-based Software Product Lines2023 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER56733.2023.00035(284-295)Online publication date: Mar-2023
    • (2023)How do microservices evolve? An empirical analysis of changes in open-source microservice repositoriesJournal of Systems and Software10.1016/j.jss.2023.111788204:COnline publication date: 1-Oct-2023

    View Options

    Get Access

    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