Logan Murphy, Alessio Di Sandro, Ramy I. Shahin, M. Chechik
{"title":"Reusing Your Favourite Analysis Framework to Handle Workflows of Product Line Models","authors":"Logan Murphy, Alessio Di Sandro, Ramy I. Shahin, M. Chechik","doi":"10.1145/3579027.3608983","DOIUrl":"https://doi.org/10.1145/3579027.3608983","url":null,"abstract":"Model management frameworks support a wide array of analyses, transformations, and workflows, but lack native support for handling product lines of models. Yet the ubiquity of domains that heavily use model-driven techniques and are built using product lines, such as automotive, require adaptation, or lifting, of model management frameworks to be variability-aware. Lifting might introduce new implementation and validation costs, especially in safety-critical contexts. To facilitate the implementation and validation of variability-aware model management workflows, this paper provides a novel taxonomy of lifting methods. We compare the lifting methods in their capacity to reuse existing components and validation results. We then define a general framework for lifting and validating model management workflows, and report on an experience of lifting and validating modeling tasks and workflows in an existing Eclipse-based model management framework.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"526 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116706435","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Sandra Greiner, Xhevahire Têrnava, Kristof Meixner, S. Krieter
{"title":"Sixth International Workshop on Variability and Evolution of Software-Intensive Systems (VariVolution 2023)","authors":"Sandra Greiner, Xhevahire Têrnava, Kristof Meixner, S. Krieter","doi":"10.1145/3579027.3609003","DOIUrl":"https://doi.org/10.1145/3579027.3609003","url":null,"abstract":"Software versions resulting from evolution in time (revisions) and space (variants) are still mainly managed separately although several research activities have examined the integrated management of evolution and variability. Existing approaches stem from multiple origins, most notably from the fields of software configuration management and software product line engineering. For instance, variation control systems adopt a holistic view on software evolution in time and space with the ultimate goal of systematically managing software revisions and variants. VariVolution (the 6th International Workshop on Variability and Evolution of Software-Intensive Systems) aims at bringing together researchers studying software evolution and variability from different angles as well as practitioners who encounter these phenomena in real-world software systems. The workshop offers a platform for exchanging new ideas and shall foster research collaborations and synergies.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"101 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114307431","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Domenik Eichhorn, T. Pett, T. Osborne, Ina Schaefer
{"title":"Quantum Computing for Feature Model Analysis: Potentials and Challenges","authors":"Domenik Eichhorn, T. Pett, T. Osborne, Ina Schaefer","doi":"10.1145/3579027.3608971","DOIUrl":"https://doi.org/10.1145/3579027.3608971","url":null,"abstract":"Feature modeling is a technique to model the variability of configurable systems. When working with feature models, it is possible to analyze them, for instance, by counting the number of valid configurations, searching feature model anomalies, or creating samples of configurations for testing. Classical feature model analysis techniques are based on solving algorithmic problems such as boolean satisfiability, satisfiability modulo theories, or integer linear programming. Existing analysis approaches provide satisfactory solutions for small and medium-sized problem instances, but scaling issues are observed for large-sized feature models. Quantum computers provide up to superpolynomial speedups for specific algorithmic problems and have the potential to solve those scaling issues. This paper analyzes the algorithmic techniques used in classical product line analysis and identifies potentials and challenges for quantum speedups. Our findings show that quantum algorithms like QAOA and Grover have the potential to speed up SAT and ILP-based feature model analysis techniques, but only after additional improvements in quantum hardware have been made.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"135 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115811507","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A Comparison of Visualization Concepts and Tools for Variant-Rich System Engineering","authors":"Siyue Chen, L. Cleophas, J. Krüger","doi":"10.1145/3579027.3608986","DOIUrl":"https://doi.org/10.1145/3579027.3608986","url":null,"abstract":"Software product-line engineering is concerned with developing a set of similar, yet customized, software systems that share a common codebase. To develop such a variant-rich system, various development processes, techniques, and tools have been studied in research and are used in practice. Specifically, to help developers manage the complexity of developing large-scale variant-rich systems, researchers have proposed visualizations to visually present different properties of such systems and their engineering---such as feature models, configurations, the similarity of variants, or process traces. Two recent mapping studies have systematically elicited the state-of-the-art on such visualizations, but neither of them provides a comparative analysis of the underlying visualization concepts and tools. In this paper, we report a qualitative meta-analysis of the 64 papers that we primarily selected from these two mapping studies. Advancing on the previous studies, we compare the use cases, pros, cons, and relations between visualization concepts and tools used with respect to engineering variant-rich systems. Our results provide insights---orthogonal to those from the mapping studies---regarding the purposes for which visualization concepts are used and the tools that are available to implement these concepts. The overview we provide can help researchers as well as practitioners decide to use specific established visualization concepts or design new ones, and identify tools that can help them to implement these.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130876690","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
H. Fadhlillah, A. M. G. Fernández, Rick Rabiser, Alois Zoitl
{"title":"Managing Cyber-Physical Production Systems Variability using V4rdiac: Industrial Experiences","authors":"H. Fadhlillah, A. M. G. Fernández, Rick Rabiser, Alois Zoitl","doi":"10.1145/3579027.3608994","DOIUrl":"https://doi.org/10.1145/3579027.3608994","url":null,"abstract":"Cyber-Physical Production Systems (CPPSs) are highly robust and versatile production systems that utilize diverse hardware components through control software. Employing a systematic variability management approach for developing variants of control software can reduce cost and time-to-market to build such complex systems. However, employing this approach in the CPPS domain is challenging. Engineering CPPSs require multidisciplinary engineering knowledge (e.g., process, signal, mechanical). Knowledge about CPPS variability is thus typically scattered across diverse engineering artifacts. Also, variability knowledge is usually not documented explicitly but rather tacit knowledge of mostly senior engineers. Furthermore, control software is commonly implemented using a graphical Domain-Specific Modeling Language (DSML) which only provides minimal support to express variability. This paper describes our experiences dealing with these challenges in an industrial context using a multidisciplinary variability management approach called Variability for 4diac (V4rdiac). V4rdiac is an integrated approach that allows CPPS engineers to conduct stepwise product configuration based on heterogeneous variability models from multiple engineering disciplines. V4rdiac also provides a mechanism to automatically generate control software based on a set of selected configuration options. We evaluate how V4rdiac implements and manages CPPS control software variants in the metallurgical production plant domain. We describe the benefits and lessons learned from using V4rdiac in this domain based on feedback from industrial practitioners.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130956885","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"VariantInc: Automatically Pruning and Integrating Versioned Software Variants","authors":"S. Krieter, J. Krüger, Thomas Leich, Gunter Saake","doi":"10.1145/3579027.3608984","DOIUrl":"https://doi.org/10.1145/3579027.3608984","url":null,"abstract":"Developers use version-control systems and software-hosting platforms to manage their software systems. They rely on the provided branching and forking mechanisms to implement new features, fix bugs, and develop customized system variants. A particular problem arises when forked variants are not re-integrated (i.e., merged), but kept and co-evolved as individual systems. This can cause maintenance overheads, due to change propagation and limitations in simultaneously managing variations in space (variants) and time (revisions). Thus, most organizations decide to integrate their set of variants into a single platform at some point, and several techniques have been proposed to semi-automate such an integration. However, existing techniques usually consider only a single revision of each variant and do not merge the revision histories, disregarding that not only variants (i.e., configuring the features of the system) but also revisions (i.e., checking out specific versions of the features) are important. We propose an automated technique, VariantInc, for analyzing, pruning, and integrating variants of a system that also merges the revision history of each variant into the resulting platform (i.e., using presence conditions). To validate VariantInc, we employed it on 160 open-source C systems of various sizes (i.e., number of forks, revisions, source code). The results show that VariantInc works as intended, and allows developers or researchers to automatically integrate variants into a platform as well as to perform software analyses.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"158 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125781105","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Development and Evolution of Software Product Lines Driven by Stakeholder Beliefs","authors":"Lola Burgueño, J. Horcas, J. Kienzle","doi":"10.1145/3579027.3608975","DOIUrl":"https://doi.org/10.1145/3579027.3608975","url":null,"abstract":"The planning, realization, and release of a Software Product Line (SPL) are driven by features. Therefore, many high-level decisions about the evolution of an SPL are made at the feature level. However, a feature can involve many stakeholders with different expertise, and taking their opinions into account to make the right decisions is not trivial. In this paper, we propose using belief uncertainty in conjunction with feature models to assist in the evolution of SPLs by explicitly quantifying opinions. We outline three evolution scenarios in which subjective logic can be used to represent the opinions of stakeholders and explain in detail how to use subjective logic to make decisions in the context of the next release problem. We illustrate our ideas with a Smartwatch SPL. Finally, we discuss different ways of combining the opinions of stakeholders depending on the situation, the goals and the risks that can be assumed.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125320717","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"On Programming Variability with Large Language Model-based Assistant","authors":"M. Acher, J. Duarte, J. Jézéquel","doi":"10.1145/3579027.3608972","DOIUrl":"https://doi.org/10.1145/3579027.3608972","url":null,"abstract":"Programming variability is central to the design and implementation of software systems that can adapt to a variety of contexts and requirements, providing increased flexibility and customization. Managing the complexity that arises from having multiple features, variations, and possible configurations is known to be highly challenging for software developers. In this paper, we explore how large language model (LLM)-based assistants can support the programming of variability.We report on new approaches made possible with LLM-based assistants, like: features and variations can be implemented as prompts; augmentation of variability out of LLM-based domain knowledge; seamless implementation of variability in different kinds of artefacts, programming languages, and frameworks, at different binding times (compile-time or run-time). We are sharing our data (prompts, sessions, generated code, etc.) to support the assessment of the effectiveness and robustness of LLMs for variability-related tasks.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"66 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122601715","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Aleksandar S. Dimovski, Sami Lazreg, Maxime Cordy, Axel Legay
{"title":"Family-based model checking of fMultiLTL properties","authors":"Aleksandar S. Dimovski, Sami Lazreg, Maxime Cordy, Axel Legay","doi":"10.1145/3579027.3608976","DOIUrl":"https://doi.org/10.1145/3579027.3608976","url":null,"abstract":"We introduce a new logic for expressing multi-properties of system families (Software Product Lines - SPLs). While the standard LTL logic refers only to a single trace at a time, fMultiLTL logic proposed here refers to multiple traces originating from different sets of variants of the SPL. This is achieved by allowing so-called featured quantification over traces, ∀ψ and ∃ψ, where the feature expression ψ describes a set of variants (sub-family) the quantified trace comes from. A specialized family-based model checking algorithm for verifying some fragments of fMultiLTL is given. A prototype family-based model checker, called Dądalux, has been implemented. We illustrate the practicality of this approach on several interesting SPL models.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115474655","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Andreas Pollom, Martin Becker, Philippe Barbie, M. Andres, Robert Hellebrandt, Shubha Kikkeri Tummala
{"title":"Approaching Pattern Catalogues for Variability Realization in Model-Based Systems and Software Engineering","authors":"Andreas Pollom, Martin Becker, Philippe Barbie, M. Andres, Robert Hellebrandt, Shubha Kikkeri Tummala","doi":"10.1145/3579027.3608997","DOIUrl":"https://doi.org/10.1145/3579027.3608997","url":null,"abstract":"Managing variants, versions, and variability in system-level engineering is becoming increasingly important in industry and represents a challenge for model-based systems engineering. With this paper, we want to raise awareness that guidance and decision support when it comes to realizing variants and variability in SysML and UML models is needed. Although there are already a significant number of approaches to variability realization at source code level, there is a lack of practice-oriented guidance at model level. This creates great uncertainty and ad-hoc approaches when dealing with system changes or parallel modeling of system variants. Due to lack of modularization and standardized variability realization, interwoven, and overly complex system models result. In this paper, we raise awareness of the need for appropriate guides and decision support tools, present our pattern catalogue framework for commonly encountered scenarios in variability realization, discuss feedback from industry on this collection, and show the application of some patterns on an exemplary weather station.","PeriodicalId":322542,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128496945","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}