The 2nd meeting of the Yoda working group was held on
Wednesday, 12th of May, 2021, 14:00-16:00 CET.
The program comprised three talks
- "Deep Software Variability: Challenges and Opportunities for Handling Cross-Layer Configurations"
by Mathieu Acher, Université of Rennes 1 and DiverSE team (Inria/IRISA)
Presentation: slides, video recording available on demand
Abstract: At compile-time or at runtime, configuring software is a powerful means to achieve optimal functional and performance goals. An observation is that only considering the software layer might be naive to tune the performance of the system or test that the functionality behaves correctly. In fact, many layers (hardware, operating system, input data, build process etc.), themselves subject to variability, can alter performances of software configurations. For instance, configurations' options of the x264 video encoder may have very different effects on x264's encoding time when used with different input videos, depending on the way it has been compiled and the hardware on which it is executed. In this talk, I will introduce the concept of “deep software variability” which refers to the interactions of all external layers modifying the behavior or non-functional properties of a software system. I will show how compile-time options, inputs, and software evolution (versions), some dimensions of deep variability, can question the generalization of the configuration knowledge of popular configurable systems like Linux, xz, or x264. Transfer learning and dimensionality reduction are possible answers to deal with the combinatorial explosion of possible variabilities, but there are several challenges ahead. There are also opportunities: harnessing all variability layers (and not only the software layer) can lead to more efficient systems and configuration knowledge that truly generalizes to any usage and context. Finally, I will engage the audience with an exercise that might be slightly disturbing: does deep software variability affect your previous scientific, software-based studies? - "A Layered Implementation of DR-BIP Supporting Run-Time Monitoring and Analysis"
by Marius Bozga, VERIMAG / MOHYTOS
Presentation: slides, video
Related papers: ISoLA 2018, FACS 2018, SEFM 2020, SAC 2021
Abstract: Reconfigurable systems are emerging in many application domains as reconfiguration can be used to cope with unpredictable system environments and adapt by delivering new functionality. The Dynamic Reconfigurable BIP (DR-BIP) framework is an extension of the BIP component framework enriched with dynamic exogenous reconfiguration primitives, intended to support rigorous modeling of reconfigurable systems. We present a new two-layered implementation of DR-BIP clearly separating between execution of reconfiguration operations and execution of a fixed system configuration. Such a separation of concerns offers the advantage of using the mature and efficient BIP engine as well as existing associated analysis and verification tools. Another direct benefit of the new implementation is the possibility to monitor a holistic view of a system's behavior captured as a set of traces involving information about both the state of the system components and the dynamically changing architecture. - "Service generation and design contextualized by Information System architecture"
by Jacques Simonin, IMT-AtlantiquePresentation: slides, video
Abstract: The generation and design of the architecture of an information system service is complex. An information system is indeed a service system that can contain thousands of services. The lack of consideration of the constraints imposed by the information system makes it difficult to reuse these services. Another strong constraint is that an information system service must support a business service. The contribution is based on Model Driven Architecture approach and The Open Group Architecture Framework. It allows to generate information system services according to business service specification and logical architecture of the information system. An information system service generation algorithm is proposed in order to be consistent with an information system logical architecture pattern.