Prof. Dr. Norbert Siegmund - Bauhaus Universität Weimar, Germany
Title: Challenges and Insights from Optimizing Configurable Software Systems
Configuring a software system to optimize non-functional properties is a hard task. There are dozens to thousands of configuration options that can affect performance, energy consumption, and other attributes of the resulting program. Even worse, options may interact, such that their combined presence (or absence) has an influence on a non-functional property. In this talk, I report on our experiences with learning different performance models based on a multitude of sampling techniques. The goal is to raise awareness of the distinct challenges in this domain: constraints among options, the exponential search space, and suitable sampling and learning techniques. I will show a variety of approaches including their strengths and weaknesses and close the talk with new challenges relevant for our community: changing environments and reproducibility.
Keynote slides :
Prof. Dr. Norbert Siegmund holds the Chair of Intelligent Software Systems at the Bauhaus-University Weimar. He received his Ph.D. with distinction in 2012 from the Otto-von-Guericke University Magdeburg. His research thrives to automate software engineering by combining methods from software analysis, machine learning, and meta-heuristic optimization. His special interests include software product lines and configurable software systems, performance and energy optimization, and digitization based on MicroServices and Web technologies. He is author and co-author of over 70 peer-reviewed scientific publications. He regularly serves in program committes of top-ranked international conferences and is in the review board of the renowned journal IEEE Transactions on Software Engineering. His work has received several awards, such as the ACM SIGSOFT Distinguished Paper Award at the International Software Engineering Conference (ICSE), the best paper award at the Software Product Line Conference (SPLC), and the award of the Karin-Witte Foundation for the best PhD thesis at his department. He is founding member of the Java User Group Thuringia and leads an industrial-student project developing a software solution for a charity organization.
Dr. Matthias Galster, Senior Lecturer - University of Canterbury, New Zealand
Title: Variability-intensive software systems: product lines and beyond
Product line engineering emerged from the software reuse and generative programming movements of the 70s. However, in today’s competitive and fast-paced markets where users expect software to adapt to their specific needs, most modern software-intensive products and services are variability-intensive, regardless of whether they are part of a product line or not. In this talk, we explore how building variability-intensive software systems impacts the various software product life-cycle stages. Furthermore, we look beyond variability in functional features: We explore the role of quality attributes in the design of variability-intensive software systems and discuss how to address the challenge of identifying, implementing and managing variability in quality attributes. Finally, based on the example of software product line research, we explore how research on variability has been changing over time and if perspectives in industry and academia have diverged.
Matthias Galster is a Senior Lecturer (equivalent to tenured Associate Professor in the US) in the Department of Computer Science and Software Engineering at the University of Canterbury in Christchurch, New Zealand. His current work aims at improving the way we develop high quality software, with a focus on software architecture, development processes and practices and empirical software engineering. His work has been published in several journals, including IEEE Software, IST, JSS, and TSE, and conferences such as ESEM, FSE, ICSA, ICSE and WICSA. His work has received several best-paper awards. He regularly serves on program and organizing committees of highly ranked software engineering conferences and reviews for renowned software engineering journals. Matthias has co-organized the VARSA (Variability in Software Architecture) workshop series at WICSA as well as the VACE (Variability and Complexity in Software Design) workshops series at ICSE for several years. Also, Matthias has co-edited a special issue of JSS on variability in software architecture.