@inproceedings{JoblinApelHunsenetal., author = {Joblin, Mitchell and Apel, Sven and Hunsen, Claus and Mauerer, Wolfgang}, title = {Classifying Developers into Core and Peripheral: An Empirical Study on Count and Network Metrics}, series = {2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE), Buenos Aires, Argentina, 20-28 May 2017}, booktitle = {2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE), Buenos Aires, Argentina, 20-28 May 2017}, publisher = {IEEE}, doi = {10.1109/icse.2017.23}, pages = {164 -- 174}, abstract = {Knowledge about the roles developers play in a software project is crucial to understanding the project's collaborative dynamics. In practice, developers are often classified according to the dichotomy of core and peripheral roles. Typically, count-based operationalizations, which rely on simple counts of individual developer activities (e.g., number of commits), are used for this purpose, but there is concern regarding their validity and ability to elicit meaningful insights. To shed light on this issue, we investigate whether count-based operationalizations of developer roles produce consistent results, and we validate them with respect to developers' perceptions by surveying 166 developers. Improving over the state of the art, we propose a relational perspective on developer roles, using fine-grained developer networks modeling the organizational structure, and by examining developer roles in terms of developers' positions and stability within the developer network. In a study of 10 substantial open-source projects, we found that the primary difference between the count-based and our proposed network-based core-peripheral operationalizations is that the network-based ones agree more with developer perception than count-based ones. Furthermore, we demonstrate that a relational perspective can reveal further meaningful insights, such as that core developers exhibit high positional stability, upper positions in the hierarchy, and high levels of coordination with other core developers, which confirms assumptions of previous work.}, language = {en} } @misc{Mauerer, author = {Mauerer, Wolfgang}, title = {Open Source in Research and Reality}, series = {Open Source Summit North America and Embedded Linux Conference North America 2020}, journal = {Open Source Summit North America and Embedded Linux Conference North America 2020}, language = {en} } @inproceedings{Mauerer, author = {Mauerer, Wolfgang}, title = {Are any big brothers watching you, and if yes, what can they tell about Debian}, series = {DebConf18 Hsinchu, Taiwan}, booktitle = {DebConf18 Hsinchu, Taiwan}, abstract = {Debian, as a collection of software packages and components, is known to be one of the largest software projects in the history of mankind. Combined with a traceable history over many years, the artefacts created by Debian developers and users make it one of science's favourite targets to quantitatively or qualitatively understand how real-world software development works (or does not), how people collaborate, and many other other related questions. Unfortunately, while scientists make ample use of the resources and artefacts created by FLOSS and friends, the exchange of insights and ideas does not seem to extend in both directions: Developers, users and integrators are often unaware of results obtained in science. This talk will introduce the Debian community to a selection the most important results obtained by scientific (software engineering) research, with a special focus on large-scale socio-technical analysis of projects like Debian, and the possible implications and improvements these may bring to Debian development itself.}, language = {en} } @misc{RamsauerKiszkaMauerer, author = {Ramsauer, Ralf and Kiszka, Jan and Mauerer, Wolfgang}, title = {Spectre and Meltdown vs. Real-Time: How Much do Mitigations Cost?}, series = {Embedded Linux Conference Europe 2018, October 22 - 24, 2018, Edinburgh, UK}, journal = {Embedded Linux Conference Europe 2018, October 22 - 24, 2018, Edinburgh, UK}, language = {en} } @misc{RamsauerDudaMauereretal., author = {Ramsauer, Ralf and Duda, Sebastian and Mauerer, Wolfgang and Bulwahn, Lukas}, title = {The list is our process: An analysis of the kernel's email-based development process}, series = {Linux Plumbers Conference, Lisbon September 9, 2019}, journal = {Linux Plumbers Conference, Lisbon September 9, 2019}, language = {en} } @misc{RamsauerDudaBulwahnetal., author = {Ramsauer, Ralf and Duda, Sebastian and Bulwahn, Lukas and Mauerer, Wolfgang}, title = {The list is our process! An analysis of the kernel's email-based development process}, series = {Embedded Linux Conference Europe, Lyon 28.10.2019}, journal = {Embedded Linux Conference Europe, Lyon 28.10.2019}, language = {en} } @article{MauererScherzinger, author = {Mauerer, Wolfgang and Scherzinger, Stefanie}, title = {Digitale Forschungswerkzeuge : Nachhaltigkeit f{\"u}r Software und Daten}, series = {Forschung \& Lehre (Forschung und Lehre)}, volume = {28}, journal = {Forschung \& Lehre (Forschung und Lehre)}, number = {10}, publisher = {Zentrum f{\"u}r Wissenschaftsmanagement e.V. (ZWM)
}, organization = {Deutscher Hochschullehrerverband}, pages = {816 -- 817}, abstract = {Die wissenschaftliche Reproduktionskrise hat den Blick auf digitale Forschungswerkzeuge intensiviert. Auch wenn der Mehraufwand f{\"u}r Reproduzierbarkeit und Zug{\"a}nglichkeit zunehmend anerkannt wird, existieren noch Defizite in der Umsetzung, wenn es darum geht, die Datenbasis und Forschungswerkzeuge verf{\"u}gbar zu machen}, language = {de} } @misc{Mauerer, author = {Mauerer, Wolfgang}, title = {Safety, Security, Quality: Artificial Intelligence versus Common Sense}, series = {Open Source Summit North America and Embedded Linux Conference North America 2020}, journal = {Open Source Summit North America and Embedded Linux Conference North America 2020}, language = {en} } @article{SaxFeldZielinskietal., author = {Sax, Irmi and Feld, Sebastian and Zielinski, Sebastian and Gabor, Thomas and Linnhoff-Popien, Claudia and Mauerer, Wolfgang}, title = {Towards Understanding Approximation Complexity on a Quantum Annealer}, series = {Digitale Welt}, volume = {4}, journal = {Digitale Welt}, number = {1}, publisher = {DIGITALE WELT Academy c/o Ludwig-Maximilians-Universit{\"a}t M{\"u}nchen}, address = {M{\"u}nchen}, doi = {10.1007/s42354-019-0244-1}, pages = {104}, abstract = {Many industrially relevant problems can be deterministically solved by computers in principle, but are intractable in practice, as the seminal P/NP dichotomy of complexity theory and Cobham's thesis testify. For the many NP-complete problems, industry needs to resort to using heuristics or approximation algorithms. For approximation algorithms, there is a more refined classification in complexity classes that goes beyond the simple P/NP dichotomy. As it is well known, approximation classes form a hierarchy, that is, FPTAS \subseteq PTAS \subseteq APX \subseteq NPO. This classification gives a more realistic notion of complexity but—unless unexpected breakthroughs happen for fundamental problems like P = NP or related questions— there is no known efficient algorithm that can solve such problems exactly on a realistic computer. Therefore, new ways of computations are sought. Recently, considerable hope was placed on the possible computational powers of quantum computers and quantum annealing (QA) in particular. However, the precise benefits of such a drastic shift in hardware are still unchartered territory to a good extent. Firstly, the exact relations between classical and quantum complexity classes pose many open questions, and secondly, technical details of formulating and implementing quantum algorithms play a crucial role in real-world applications. Guided by the hierarchy of classical optimisation complexity classes, we discuss how to map problems of each class to a quantum annealer. Those problems are the Minimum Multiprocessor Scheduling (MMS) problem, the Minimum Vertex Cover (MVC) problem and the Maximum Independent Set (MIS) problem. We experimentally investigate if and how the degree of approximability influences implementation and run-time performance. Our experiments indicate a discrepancy between classical approximation complexity and QA behaviour: Problems MIS and MVC, members of APX respectively PTAS, exhibit better solution quality on a QA than MMS, which is in FPTAS, even despite the use of preprocessing the for latter. This leads to the hypothesis that traditional classifications do not immediately extend to the quantum annealing domain, at least when the properties of real-world devices are taken into account. A structural reason, why FPTAS problems do not show good solution quality, might be the use of an inequlity in the problem description of the FPTAS problems. Formulating those inequalities on a quantum hardware (mostly done by formulating a Quadratic Unconstrained Binary optimisation (QUBO) problem in form of a matrix) requires a lot of hardware space which makes finding an optimal solution more difficult. Reducing the density of a QUBO is possible by appropriately pruning QUBO matrices. For the problems considered in our evaluation, we find that the achievable solution quality on a real-world machine is unexpectedly robust against pruning, often up to ratios as high as 50\% or more. Since quantum annealers are probabilistic machines by design, the loss in solution quality is only of subordinate relevance, especially considering that the pruning of QUBO matrices allows for solving larger problem instances on hardware of a given capacity. We quantitatively discuss the interplay between these factors.}, language = {en} } @inproceedings{MurrMauerer, author = {Murr, Florian and Mauerer, Wolfgang}, title = {McFSM: Globally Taming Complex Systems}, series = {2017 IEEE/ACM 3rd International Workshop on Software Engineering for Smart Cyber-Physical Systems (SEsCPS), 21-21 May 2017, Buenos Aires, Argentina}, booktitle = {2017 IEEE/ACM 3rd International Workshop on Software Engineering for Smart Cyber-Physical Systems (SEsCPS), 21-21 May 2017, Buenos Aires, Argentina}, publisher = {IEEE}, doi = {10.1109/SEsCPS.2017.7}, pages = {26 -- 29}, abstract = {Industrial computing devices, in particular cyber-physical, real-time and safety-critical systems, focus on reacting to external events and the need to cooperate with other devices to create a functional system. They are often implemented with languages that focus on a simple, local description of how a component reacts to external input data and stimuli. Despite the trend in modern software architectures to structure systems into largely independent components, the remaining interdependencies still create rich behavioural dynamics even for small systems. Standard and industrial programming approaches do usually not model or extensively describe the global properties of an entire system. Although a large number of approaches to solve this dilemma have been suggested, it remains a hard and error-prone task to implement systems with complex interdependencies correctly. We introduce multiple coupled finite state machines (McFSMs), a novel mechanism that allows us to model and manage such interdependencies. It is based on a consistent, well-structured and simple global description. A sound theoretical foundation is provided, and associated tools allow us to generate efficient low-level code in various programming languages using model-driven techniques. We also present a domain specific language to express McFSMs and their connections to other systems, to model their dynamic behaviour, and to investigate their efficiency and correctness at compile-time.}, language = {en} } @inproceedings{RamsauerKiszkaMauerer, author = {Ramsauer, Ralf and Kiszka, Jan and Mauerer, Wolfgang}, title = {A Novel Software Architecture for Mixed Criticality Systems}, series = {Digital Transformation in Semiconductor Manufacturing: Proceedings of the 1st and 2nd European Advances in Digital Transformation Conference, EADTC 2018, Zittau, Germany and EADTC 2019, Milan, Italy}, booktitle = {Digital Transformation in Semiconductor Manufacturing: Proceedings of the 1st and 2nd European Advances in Digital Transformation Conference, EADTC 2018, Zittau, Germany and EADTC 2019, Milan, Italy}, editor = {Keil, Sophia and Lasch, Rainer and Lindner, Fabian and Lohmer, Jacob}, publisher = {Springer International Publishing}, address = {Cham}, doi = {10.1007/978-3-030-48602-0_11}, pages = {121 -- 128}, abstract = {The advent of multi-core CPUs in nearly all embedded markets has prompted an architectural trend towards combining safety critical and uncritical software on single hardware units. We present a novel architecture for mixed criticality systems based on Linux that allows us to consolidate critical and uncritical parts onto a single hardware unit. CPU virtualisation extensions enable strict and static partitioning of hardware by direct assignment of resources, which allows us to boot additional operating systems or bare metal applications running aside Linux. The hypervisor Jailhouse is at the core of the architecture and ensures that the resulting domains may serve workloads of different criticality and can not interfere in an unintended way. This retains Linux's feature-richness in uncritical parts, while frugal safety and real-time critical applications execute in isolated domains. Architectural simplicity is a central aspect of our approach and a precondition for reliable implementability and successful certification. While standard virtualisation extensions provided by current hardware seem to suffice for a straight forward implementation of our approach, there are a number of further limitations that need to be worked around. This paper discusses the arising issues, and evaluates the suitability of our approach for real-world safety and real-time critical scenarios.}, language = {en} } @article{MauererJaeger, author = {Mauerer, Wolfgang and Jaeger, Michael C.}, title = {Open Source Engineering Processes}, series = {it - Information Technology}, volume = {55}, journal = {it - Information Technology}, number = {5}, publisher = {de Gruyter}, doi = {10.1515/itit.2013.1008}, pages = {196 -- 203}, abstract = {Software engineering in open source projectsfaces similar challenges as in traditional software development(coordination of and cooperation between contributors, changeand release management, quality assurance, . . .), but often usesdifferent means of solving them. This leads to some salientdistinctions between both worlds, especially with respect tocommunication and how technical issues are addressed. Thevariations within open source software (OSS) communities areconsiderable, and many different approaches are currently inuse, ranging from informal conventions to highly systematic,formally specified and rigidly applied processes. We discussthe archetypal best practises in the field, illustrate them bypresenting example projects, and provide a comparison to tradi-tional approaches.}, language = {en} } @inproceedings{MauererScherzinger, author = {Mauerer, Wolfgang and Scherzinger, Stefanie}, title = {1-2-3 Reproducibility for Quantum Software Experiments}, series = {2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), Honolulu, HI, USA, 15-18 March 2022}, booktitle = {2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), Honolulu, HI, USA, 15-18 March 2022}, publisher = {IEEE}, doi = {10.1109/SANER53432.2022.00148}, pages = {1247 -- 1248}, abstract = {Various fields of science face a reproducibility crisis. For quantum software engineering as an emerging field, it is therefore imminent to focus on proper reproducibility engineering from the start. Yet the provision of reproduction packages is almost universally lacking. Actionable advice on how to build such packages is rare, particularly unfortunate in a field with many contributions from researchers with backgrounds outside computer science. In this article, we argue how to rectify this deficiency by proposing a 1-2-3~approach to reproducibility engineering for quantum software experiments: Using a meta-generation mechanism, we generate DOI-safe, long-term functioning and dependency-free reproduction packages. They are designed to satisfy the requirements of professional and learned societies solely on the basis of project-specific research artefacts (source code, measurement and configuration data), and require little temporal investment by researchers. Our scheme ascertains long-term traceability even when the quantum processor itself is no longer accessible. By drastically lowering the technical bar, we foster the proliferation of reproduction packages in quantum software experiments and ease the inclusion of non-CS researchers entering the field.}, language = {en} } @article{FranzWolfPeriyasamyetal., author = {Franz, Maja and Wolf, Lucas and Periyasamy, Maniraman and Ufrecht, Christian and Scherer, Daniel D. and Plinge, Axel and Mutschler, Christopher and Mauerer, Wolfgang}, title = {Uncovering Instabilities in Variational-Quantum Deep Q-Networks}, series = {Journal of the Franklin Institute}, journal = {Journal of the Franklin Institute}, edition = {In Press, Corrected Proof}, publisher = {Elsevier}, issn = {0016-0032}, doi = {10.1016/j.jfranklin.2022.08.021}, abstract = {Deep Reinforcement Learning (RL) has considerably advanced over the past decade. At the same time, state-of-the-art RL algorithms require a large computational budget in terms of training time to converge. Recent work has started to approach this problem through the lens of quantum computing, which promises theoretical speed-ups for several traditionally hard tasks. In this work, we examine a class of hybrid quantumclassical RL algorithms that we collectively refer to as variational quantum deep Q-networks (VQ-DQN). We show that VQ-DQN approaches are subject to instabilities that cause the learned policy to diverge, study the extent to which this afflicts reproduciblity of established results based on classical simulation, and perform systematic experiments to identify potential explanations for the observed instabilities. Additionally, and in contrast to most existing work on quantum reinforcement learning, we execute RL algorithms on an actual quantum processing unit (an IBM Quantum Device) and investigate differences in behaviour between simulated and physical quantum systems that suffer from implementation deficiencies. Our experiments show that, contrary to opposite claims in the literature, it cannot be conclusively decided if known quantum approaches, even if simulated without physical imperfections, can provide an advantage as compared to classical approaches. Finally, we provide a robust, universal and well-tested implementation of VQ-DQN as a reproducible testbed for future experiments.}, language = {en} } @inproceedings{SchoenbergerFranzScherzingeretal., author = {Sch{\"o}nberger, Manuel and Franz, Maja and Scherzinger, Stefanie and Mauerer, Wolfgang}, title = {Peel | Pile? Cross-Framework Portability of Quantum Software}, series = {2022 IEEE 19th International Conference on Software Architecture Companion (ICSA-C), 12-15 March 2022, Honolulu, HI, USA}, booktitle = {2022 IEEE 19th International Conference on Software Architecture Companion (ICSA-C), 12-15 March 2022, Honolulu, HI, USA}, publisher = {IEEE}, doi = {10.1109/ICSA-C54293.2022.00039}, abstract = {In recent years, various vendors have made quantum software frameworks available. Yet with vendor-specific frameworks, code portability seems at risk, especially in a field where hardware and software libraries have not yet reached a consolidated state, and even foundational aspects of the technologies are still in flux. Accordingly, the development of vendor-independent quantum programming languages and frameworks is often suggested. This follows the established architectural pattern of introducing additional levels of abstraction into software stacks, thereby piling on layers of abstraction. Yet software architecture also provides seemingly less abstract alternatives, namely to focus on hardware-specific formulations of problems that peel off unnecessary layers. In this article, we quantitatively and experimentally explore these strategic alternatives, and compare popular quantum frameworks from the software implementation perspective. We find that for several specific, yet generalisable problems, the mathematical formulation of the problem to be solved is not just sufficiently abstract and serves as precise description, but is likewise concrete enough to allow for deriving framework-specific implementations with little effort. Additionally, we argue, based on analysing dozens of existing quantum codes, that porting between frameworks is actually low-effort, since the quantum- and framework-specific portions are very manageable in terms of size, commonly in the order of mere hundreds of lines of code. Given the current state-of-the-art in quantum programming practice, this leads us to argue in favour of peeling off unnecessary abstraction levels.}, language = {en} } @inproceedings{GaborZielinskiFeldetal., author = {Gabor, Thomas and Zielinski, Sebastian and Feld, Sebastian and Roch, Christoph and Seidel, Christian and Neukart, Florian and Galter, Isabella and Mauerer, Wolfgang and Linnhoff-Popien, Claudia}, title = {Assessing Solution Quality of 3SAT on a Quantum Annealing Platform}, series = {Quantum Technology and Optimization Problems : First International Workshop, QTOP 2019, Munich, Germany, March 18, 2019, Proceedings}, volume = {11413}, booktitle = {Quantum Technology and Optimization Problems : First International Workshop, QTOP 2019, Munich, Germany, March 18, 2019, Proceedings}, editor = {Feld, Sebastian and Linnhoff-Popien, Claudia}, publisher = {Springer International Publishing}, address = {Cham}, isbn = {978-3-030-14081-6}, doi = {10.1007/978-3-030-14082-3_3}, pages = {23 -- 35}, language = {en} } @inproceedings{MauererScherzinger, author = {Mauerer, Wolfgang and Scherzinger, Stefanie}, title = {Educating Future Software Architects in the Art and Science of Analysing Software Data.}, series = {SEUH 2020: Software Engineering im Unterricht der Hochschulen, Tagungsband des 17. Workshops "Software Engineering im Unterricht der Hochschulen", Innsbruck, {\"O}sterreich, 26. - 27.02.2020}, booktitle = {SEUH 2020: Software Engineering im Unterricht der Hochschulen, Tagungsband des 17. Workshops "Software Engineering im Unterricht der Hochschulen", Innsbruck, {\"O}sterreich, 26. - 27.02.2020}, editor = {Krusche, Stephan and Wagner, Stefan}, publisher = {RWTH Aachen}, pages = {56 -- 60}, abstract = {We report the design and teaching experience of a Master-level seminar course on quantitative and empirical software engineering. The course combines elements of traditional literature seminars with active learning by scientific project work, in particular quantitative mixed-method analyses of open source systems. It also provides short introductions and refreshers to data mining and statistical analysis, and discusses the nature and practice of scientific knowledge inference. Student presentations of published research, augmented by summary reports, bridge to standard seminars. We discuss our educational goals and the course structure derived from them. We review research questions addressed by students in mini research reports, and analyse them as tokens on how junior-level software engineers perceive the potential of empirical software engineering research. We assess challenges faced, and discuss possible solutions.}, language = {en} } @inproceedings{KruegerMauerer, author = {Kr{\"u}ger, Tom and Mauerer, Wolfgang}, title = {Quantum Annealing-Based Software Components}, series = {Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops (ICSE'20): Seoul Republic of Korea 27.06.2020 - 19.07.2020}, booktitle = {Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops (ICSE'20): Seoul Republic of Korea 27.06.2020 - 19.07.2020}, publisher = {Association for Computing Machinery}, address = {New York, NY}, isbn = {9781450379632}, doi = {10.1145/3387940.3391472}, pages = {445 -- 450}, abstract = {Quantum computers have the potential of solving problems more efficiently than classical computers. While first commercial prototypes have become available, the performance of such machines in practical application is still subject to exploration. Quantum computers will not entirely replace classical machines, but serve as accelerators for specific problems. This necessitates integrating quantum computational primitives into existing applications. In this paper, we perform a case study on how to augment existing software with quantum computational primitives for the Boolean satisfiability problem (SAT) implemented using a quantum annealer (QA). We discuss relevant quality measures for quantum components, and show that mathematically equivalent, but structurally different ways of transforming SAT to a QA can lead to substantial differences regarding these qualities. We argue that engineers need to be aware that (and which) details, although they may be less relevant in traditional software engineering, require considerable attention in quantum computing.}, language = {en} } @inproceedings{BrainingerMauererScherzinger, author = {Braininger, Dimitri and Mauerer, Wolfgang and Scherzinger, Stefanie}, title = {Replicability and Reproducibility of a Schema Evolution Study in Embedded Databases}, series = {Advances in conceptual modeling: ER 2020 Workshops CMAI, CMLS, CMOMM4FAIR, CoMoNoS, EmpER, Vienna, Austria, November 3-6, 2020, Proceedings}, volume = {12584}, booktitle = {Advances in conceptual modeling: ER 2020 Workshops CMAI, CMLS, CMOMM4FAIR, CoMoNoS, EmpER, Vienna, Austria, November 3-6, 2020, Proceedings}, editor = {Grossmann, Georg and Ram, Sudha}, publisher = {Springer}, address = {Cham}, isbn = {978-3-030-65846-5}, doi = {10.1007/978-3-030-65847-2_19}, pages = {210 -- 219}, abstract = {Ascertaining the feasibility of independent falsification or repetition of published results is vital to the scientific process, and replication or reproduction experiments are routinely performed in many disciplines. Unfortunately, such studies are only scarcely available in database research, with few papers dedicated to re-evaluating published results. In this paper, we conduct a case study on replicating and reproducing a study on schema evolution in embedded databases. We can exactly repeat the outcome for one out of four database applications studied, and come close in two further cases. By reporting results, efforts, and obstacles encountered, we hope to increase appreciation for the substantial efforts required to ensure reproducibility. By discussing minutiae details required to ascertain reproducible work, we argue that such important, but often ignored aspects of scientific work should receive more credit in the evaluation of future research.}, language = {en} } @inproceedings{MauererScherzinger, author = {Mauerer, Wolfgang and Scherzinger, Stefanie}, title = {Nullius in Verba: Reproducibility for Database Systems Research, Revisited}, series = {2021 IEEE 37th International Conference on Data Engineering (ICDE 2021): 19-22 April 2021, Chania, Greece}, booktitle = {2021 IEEE 37th International Conference on Data Engineering (ICDE 2021): 19-22 April 2021, Chania, Greece}, editor = {Ailamaki, Anastasia}, publisher = {IEEE}, address = {Piscataway, NJ}, isbn = {978-1-7281-9184-3}, doi = {10.1109/ICDE51399.2021.00270}, pages = {2377 -- 2380}, abstract = {Over the last decade, reproducibility of experimental results has been a prime focus in database systems research, and many high-profile conferences award results that can be independently verified. Since database systems research involves complex software stacks that non-trivially interact with hardware, sharing experimental setups is anything but trivial: Building a working reproduction package goes far beyond providing a DOI to some repository hosting data, code, and setup instructions.This tutorial revisits reproducible engineering in the face of state-of-the-art technology, and best practices gained in other computer science research communities. In particular, in the hands-on part, we demonstrate how to package entire system software stacks for dissemination. To ascertain long-term reproducibility over decades (or ideally, forever), we discuss why relying on open source technologies massively employed in industry has essential advantages over approaches crafted specifically for research. Supplementary material shows how version control systems that allow for non-linearly rewriting recorded history can document the structured genesis behind experimental setups in a way that is substantially easier to understand, without involvement of the original authors, compared to detour-ridden, strictly historic evolution.}, language = {en} } @inproceedings{SaxFeldZielinskietal., author = {Sax, Irmi and Feld, Sebastian and Zielinski, Sebastian and Gabor, Thomas and Linnhoff-Popien, Claudia and Mauerer, Wolfgang}, title = {Approximate approximation on a quantum annealer}, series = {Proceedings of the 17th ACM International Conference on Computing Frontiers (CF '20): Catania Sicily Italy 11.05.2020 -13.05.2020}, booktitle = {Proceedings of the 17th ACM International Conference on Computing Frontiers (CF '20): Catania Sicily Italy 11.05.2020 -13.05.2020}, editor = {Palesi, Maurizio}, publisher = {Association for Computing Machinery}, address = {New York, NY, United States}, isbn = {9781450379564}, doi = {10.1145/3387902.3392635}, pages = {108 -- 117}, abstract = {Many problems of industrial interest are NP-complete, and quickly exhaust resources of computational devices with increasing input sizes. Quantum annealers (QA) are physical devices that aim at this class of problems by exploiting quantum mechanical properties of nature. However, they compete with efficient heuristics and probabilistic or randomised algorithms on classical machines that allow for finding approximate solutions to large NP-complete problems. While first implementations of QA have become commercially available, their practical benefits are far from fully explored. To the best of our knowledge, approximation techniques have not yet received substantial attention. In this paper, we explore how problems' approximate versions of varying degree can be systematically constructed for quantum annealer programs, and how this influences result quality or the handling of larger problem instances on given set of qubits. We illustrate various approximation techniques on both, simulations and real QA hardware, on different seminal problems, and interpret the results to contribute towards a better understanding of the real-world power and limitations of current-state and future quantum computing.}, language = {en} } @inproceedings{ScherzingerMauererKondylakis, author = {Scherzinger, Stefanie and Mauerer, Wolfgang and Kondylakis, Haridimos}, title = {DeBinelle: Semantic Patches for Coupled Database-Application Evolution}, series = {2021 IEEE 37th International Conference on Data Engineering (ICDE 2021): 19-22 April 2021, Chania, Greece}, booktitle = {2021 IEEE 37th International Conference on Data Engineering (ICDE 2021): 19-22 April 2021, Chania, Greece}, editor = {Ailamaki, Anastasia}, publisher = {IEEE}, address = {Piscataway, NJ}, isbn = {978-1-7281-9184-3}, doi = {10.1109/ICDE51399.2021.00307}, pages = {2697 -- 2700}, abstract = {Databases are at the core of virtually any software product. Changes to database schemas cannot be made in isolation, as they are intricately coupled with application code. Such couplings enforce collateral evolution, which is a recognised, important research problem. In this demonstration, we show a new dimension to this problem, in software that supports alternative database backends: vendor-specific SQL dialects necessitate a simultaneous evolution of both, database schema and program code, for all supported DB variants. These near-same changes impose substantial manual effort for software developers. We introduce DeBinelle, a novel framework and domain-specific language for semantic patches that abstracts DB-variant schema changes and coupled program code into a single, unified representation. DeBinelle further offers a novel alternative to manually evolving coupled schemas and code. DeBinelle considerably extends established, seminal results in software engineering research, supporting several programming languages, and the many dialects of SQL. It effectively eliminates the need to perform vendor-specific changes, replacing them with intuitive semantic patches. Our demo of DeBinelle is based on real-world use cases from reference systems for schema evolution.}, language = {en} } @article{BayerstadlerBecquinBinderetal., author = {Bayerstadler, Andreas and Becquin, Guillaume and Binder, Julia and Botter, Thierry and Ehm, Hans and Ehmer, Thomas and Erdmann, Marvin and Gaus, Norbert and Harbach, Philipp and Hess, Maximilian and Klepsch, Johannes and Leib, Martin and Luber, Sebastian and Luckow, Andre and Mansky, Maximilian and Mauerer, Wolfgang and Neukart, Florian and Niedermeier, Christoph and Palackal, Lilly and Pfeiffer, Ruben and Polenz, Carsten and Sepulveda, Johanna and Sievers, Tammo and Standen, Brian and Streif, Michael and Strohm, Thomas and Utschig-Utschig, Clemens and Volz, Daniel and Weiss, Horst and Winter, Fabian}, title = {Industry quantum computing applications}, series = {EPJ Quantum Technology}, volume = {8}, journal = {EPJ Quantum Technology}, publisher = {Springer}, organization = {Springer}, doi = {10.1140/epjqt/s40507-021-00114-x}, pages = {1 -- 17}, abstract = {Quantum computing promises to overcome computational limitations with better and faster solutions for optimization, simulation, and machine learning problems. Europe and Germany are in the process of successfully establishing research and funding programs with the objective to dvance the technology's ecosystem and industrialization, thereby ensuring digital sovereignty, security, and competitiveness. Such an ecosystem comprises hardware/software solution providers, system integrators, and users from research institutions, start-ups, and industry. The vision of the Quantum Technology and Application Consortium (QUTAC) is to establish and advance the quantum computing ecosystem, supporting the ambitious goals of the German government and various research programs. QUTAC is comprised of ten members representing different industries, in particular automotive manufacturing, chemical and pharmaceutical production, insurance, and technology. In this paper, we survey the current state of quantum computing in these sectors as well as the aerospace industry and identify the contributions of QUTAC to the ecosystem. We propose an application-centric approach for the industrialization of the technology based on proven business impact. This paper identifies 24 different use cases. By formalizing high-value use cases into well-described reference problems and benchmarks, we will guide technological progress and eventually commercialization. Our results will be beneficial to all ecosystem participants, including suppliers, system integrators, software developers, users, policymakers, funding program managers, and investors.}, language = {en} } @inproceedings{FruthScherzingerMauereretal., author = {Fruth, Michael and Scherzinger, Stefanie and Mauerer, Wolfgang and Ramsauer, Ralf}, title = {Tell-Tale Tail Latencies: Pitfalls and Perils in Database Benchmarking}, series = {Performance evaluation and benchmarking, 13th TPC Technology Conference (TPCTC 2021): Copenhagen, Denmark, August 20, 2021, Revised Selected Papers}, booktitle = {Performance evaluation and benchmarking, 13th TPC Technology Conference (TPCTC 2021): Copenhagen, Denmark, August 20, 2021, Revised Selected Papers}, editor = {Nambiar, Raghunath and Poess, Meikel}, publisher = {Springer}, address = {Cham, Switzerland}, isbn = {9783030944377}, doi = {10.1007/978-3-030-94437-7_8}, pages = {119 -- 134}, abstract = {The performance of database systems is usually characterised by their average-case (i.e., throughput) behaviour in standardised or de-facto standard benchmarks like TPC-X or YCSB. While tails of the latency (i.e., response time) distribution receive considerably less attention, they have been identified as a threat to the overall system performance: In large-scale systems, even a fraction of requests delayed can build up into delays perceivable by end users. To eradicate large tail latencies from database systems, the ability to faithfully record them, and likewise pinpoint them to the root causes, is imminently required. In this paper, we address the challenge of measuring tail latencies using standard benchmarks, and identify subtle perils and pitfalls. In particular, we demonstrate how Java-based benchmarking approaches can substantially distort tail latency observations, and discuss how the discovery of such problems is inhibited by the common focus on throughput performance. We make a case for purposefully re-designing database benchmarking harnesses based on these observations to arrive at faithful characterisations of database performance from multiple important angles.}, language = {en} } @inproceedings{RamsauerBulwahnLohmannetal., author = {Ramsauer, Ralf and Bulwahn, Lukas and Lohmann, Daniel and Mauerer, Wolfgang}, title = {The Sound of Silence : Mining Security Vulnerabilities from Secret Integration Channels in Open-Source Projects}, series = {Proceedings of the 2020 ACM SIGSAC Conference on Cloud Computing Security Workshop: 09.11.2020, virtual event}, booktitle = {Proceedings of the 2020 ACM SIGSAC Conference on Cloud Computing Security Workshop: 09.11.2020, virtual event}, editor = {Zhang, Yinqian and Sion, Radu}, publisher = {ACM}, address = {New York, NY, USA}, isbn = {9781450380843}, doi = {10.1145/3411495.3421360}, pages = {147 -- 157}, abstract = {Public development processes are a key characteristic of open source projects. However, fixes for vulnerabilities are usually discussed privately among a small group of trusted maintainers, and integrated without prior public involvement. This is supposed to prevent early disclosure, and cope with embargo and non-disclosure agreement (NDA) rules. While regular development activities leave publicly available traces, fixes for vulnerabilities that bypass the standard process do not. We present a data-mining based approach to detect code fragments that arise from such infringements of the standard process. By systematically mapping public development artefacts to source code repositories, we can exclude regular process activities, and infer irregularities that stem from non-public integration channels. For the Linux kernel, the most crucial component of many systems, we apply our method to a period of seven months before the release of Linux 5.4. We find 29 commits that address 12 vulnerabilities. For these vulnerabilities, our approach provides a temporal advantage of 2 to 179 days to design exploits before public disclosure takes place, and fixes are rolled out. Established responsible disclosure approaches in open development processes are supposed to limit premature visibility of security vulnerabilities. However, our approach shows that, instead, they open additional possibilities to uncover such changes that thwart the very premise. We conclude by discussing implications and partial countermeasures.}, language = {en} } @inproceedings{RamsauerLohmannMauerer, author = {Ramsauer, Ralf and Lohmann, Daniel and Mauerer, Wolfgang}, title = {The List is the Process: Reliable Pre-Integration Tracking of Commits on Mailing Lists}, series = {2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE), 25-31 May 2019, Montreal, QC, Canada}, booktitle = {2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE), 25-31 May 2019, Montreal, QC, Canada}, publisher = {IEEE}, doi = {10.1109/ICSE.2019.00088}, pages = {807 -- 818}, abstract = {A considerable corpus of research on software evolution focuses on mining changes in software repositories, but omits their pre-integration history. We present a novel method for tracking this otherwise invisible evolution of software changes on mailing lists by connecting all early revisions of changes to their final version in repositories. Since artefact modifications on mailing lists are communicated by updates to fragments (i.e., patches) only, identifying semantically similar changes is a non-trivial task that our approach solves in a language-independent way. We evaluate our method on high-profile open source software (OSS) projects like the Linux kernel, and validate its high accuracy using an elaborately created ground truth. Our approach can be used to quantify properties of OSS development processes, which is an essential requirement for using OSS in reliable or safety-critical industrial products, where certifiability and conformance to processes are crucial. The high accuracy of our technique allows, to the best of our knowledge, for the first time to quantitatively determine if an open development process effectively aligns with given formal process requirements.}, language = {en} } @article{FeldRochGaboretal., author = {Feld, Sebastian and Roch, Christoph and Gabor, Thomas and Seidel, Christian and Neukart, Florian and Galter, Isabella and Mauerer, Wolfgang and Linnhoff-Popien, Claudia}, title = {A Hybrid Solution Method for the Capacitated Vehicle Routing Problem Using a Quantum Annealer}, series = {Frontiers in ICT}, volume = {6}, journal = {Frontiers in ICT}, publisher = {Frontiers}, doi = {10.3389/fict.2019.00013}, pages = {1 -- 13}, abstract = {he Capacitated Vehicle Routing Problem (CVRP) is an NP-optimization problem (NPO) that has been of great interest for decades for both, science and industry. The CVRP is a variant of the vehicle routing problem characterized by capacity constrained vehicles. The aim is to plan tours for vehicles to supply a given number of customers as efficiently as possible. The problem is the combinatorial explosion of possible solutions, which increases superexponentially with the number of customers. Classical solutions provide good approximations to the globally optimal solution. D-Wave's quantum annealer is a machine designed to solve optimization problems. This machine uses quantum effects to speed up computation time compared to classic computers. The problem on solving the CVRP on the quantum annealer is the particular formulation of the optimization problem. For this, it has to be mapped onto a quadratic unconstrained binary optimization (QUBO) problem. Complex optimization problems such as the CVRP can be translated to smaller subproblems and thus enable a sequential solution of the partitioned problem. This work presents a quantum-classic hybrid solution method for the CVRP. It clarifies whether the implementation of such a method pays off in comparison to existing classical solution methods regarding computation time and solution quality. Several approaches to solving the CVRP are elaborated, the arising problems are discussed, and the results are evaluated in terms of solution quality and computation time.}, language = {en} } @article{MauererJoblinTamburrietal., author = {Mauerer, Wolfgang and Joblin, Mitchell and Tamburri, Damian and Paradis, Carlos and Kazman, Rick and Apel, Sven}, title = {In Search of Socio-Technical Congruence: A Large-Scale Longitudinal Study}, series = {IEEE Transactions on Software Engineering (TSE)}, volume = {48}, journal = {IEEE Transactions on Software Engineering (TSE)}, number = {8}, publisher = {IEEE}, doi = {10.1109/TSE.2021.3082074}, pages = {3159 -- 3184}, abstract = {This paper describes a large-scale empirical study investigating the relevance of socio-technical congruence over key basic software quality metrics, namely, bugs and churn. That is, we explore whether alignment or misalignment of social communication structures and technical dependencies in large software projects influences software quality. To this end, we have defined a quantitative and operational notion of socio-technical congruence, which we call /socio-technical motif congruence/ (STMC). STMC is a measure of the degree to which developers working on the same file or on two related files, need to communicate. As socio-technical congruence is a complex and multi-faceted phenomenon, the interpretability of the results is one of our main concerns, so we have employed a careful mixed-methods statistical analysis. In particular, we provide analyses with similar techniques as employed by seminal work in the field to ensure comparability of our results with the existing body of work. The major result of our study, based on an analysis of 25 large open-source projects, is that STMC is /not/ related to project quality measures---software bugs and churn---in any temporal scenario. That is, we find no statistical relationship between the alignment of developer tasks and developer communications on one hand, and project outcomes on the other hand. We conclude that, wherefore congruence does matter as literature shows, then its measurable effect lies elsewhere.}, language = {en} }