Autor*innen mit den meisten Dokumenten
Neueste Veröffentlichungen
- KonferenzbeitragAn Empirical Study of Flaky Tests in Python(Software Engineering 2022, 2022) Gruber, Martin; Lukasczyk, Stephan; Kroiß, Florian; Fraser, GordonThis is a summary of our work presented at the International Conference on Software Testing 2021 [Gr21b]. Tests that cause spurious failures without code changes, i.e., flaky tests, hamper regression testing and decrease trust in tests. While the prevalence and importance of flakiness is well established, prior research focused on Java projects, raising questions about generalizability. To provide a better understanding of flakiness, we empirically study the prevalence, causes, and degree of flakiness within 22 352 Python projects containing 876 186 tests. We found flakiness to be equally prevalent in Python as in Java. The reasons, however, are different: Order dependency is a dominant problem, causing 59% of the 7 571 flaky tests we found. Another 28% were caused by test infrastructure problems, a previously less considered cause of flakiness. The remaining 13% can mostly be attributed to the use of network and randomness APIs. Unveiling flaky tests also requires more runs than often assumed: A 95% confidence that a passing test is not flaky on average would require 170 reruns. Additionally, through our investigations, we created a large dataset of flaky tests that other researchers already started building on [MM21; Ni21].
- KonferenzbeitragA Survey on the Relevance of the Performance of Model Transformations(Software Engineering 2022, 2022) Groner, Raffaela; Juhnke, Katharina; Höppner, Stefan; Tichy, Matthias; Becker, Steffen; Vijayshree, Vijayshree; Frank, SebastianWhen we are confronted with performance issues in a general-purpose language, like Java, it is a given to us that we have various tools and techniques at our disposal to help us. But is such support also needed when using model transformation languages? To address this question, we conducted a quantitative online survey as part of a mixed methods study with 84 respondents to our questionnaire. Our results show that a certain performance is desired but not always achieved. The developers would like to improve the performance, but they lack insights on how a transformation is performed. As a first step to mitigate this issue, we compiled a list of information regarding the models used, the transformations applied and their execution deemed to be helpful by the participants. Additionally, we used hypotheses tests to investigate possible influencing factors that cause participants to try to improve the performance of transformations. The main relevant factors found in our study are the satisfaction with the execution time, the size of the models used, the relevance of whether a certain execution time is not exceeded in the average case, and the knowledge of how a transformation engine executes a transformation.
- KonferenzbeitragA Precedence-Driven Approach for Concurrent Model Synchronization Scenarios using Triple Graph Grammars(Software Engineering 2022, 2022) Fritsche, Lars; Kosiol, Jens; Möller, Adrian; Schürr, Andy; Taentzer, GabrieleWe summarize our paper A Precedence-Driven Approach for Concurrent Model Synchronization Scenarios using Triple Graph Grammars that has been published in the proceedings of the 13th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2020).
- KonferenzbeitragAn Evolutionary Analysis of Software-Architecture Smells(Software Engineering 2022, 2022) Gnoyke, Philipp; Schulze, Sandro; Krüger, JacobThis paper was published in the proceedings of the 37th International Conference on Software Maintenance and Evolution (ICSME 2021). If software quality assurance is postponed or abandoned for a software system, maintenance and evolution become harder or impossible. One symptom for the degradation of system quality are Architecture Smells (ASs), which violate fundamental principles of software design. We present a study on the evolution of ASs, including how and when they foster system degradation. This provides valuable insights regarding what ASs are meaningful to assure system quality. To this end, we analyzed the evolution of three types of ASs in 14 open-source systems, with 485 versions in total. We adapted previously used indicators to assess the severity of ASs (e.g., growth, lifetime), and relate ASs to technical debt. Our results indicate that 1) ASs remain mostly stable compared to the code size of a system, 2) certain types of ASs, such as cyclic dependencies, have a greater impact on system degradation, and 3) certain properties determine how much an AS contributes to software degradation. These findings are valuable for practitioners to identify and tackle system degeneration. Moreover, they help researchers to scope new research on managing ASs and technical debt.
- KonferenzbeitragIdentifying Domain-Based Cyclic Dependencies in Microservice APIs Using Source Code Detectors(Software Engineering 2022, 2022) Genfer, Patric; Zdun, UweIsolation, autonomy, and loose coupling are critical success factors of microservice architectures, but unfortunately, systems tend to become strongly coupled over time and sometimes even exhibiting cyclic communication chains. These cycles can even manifest on a conceptual or domain level, making them hard to track for algorithms that rely solely on static analysis. Accordingly, previous attempts to detect cycles either focused on synchronous communication or had to collect additional runtime data, which can be costly and time-consuming. We suggest a novel approach for identifying and evaluating domain-based cyclic dependencies in microservice systems based on modular, reusable source code detectors. Based on the architecture model reconstructed by our detectors, we derived a set of architectural metrics for identifying and classifying domain-based cyclical dependencies. By conducting two case studies on open-source microservice architectures, we validated the feasibility and applicability of our approach.
- KonferenzbeitragThree Major Instructional Approaches for Requirements Engineering(Software Engineering 2022, 2022) Daun, Marian; Grubb, Alicia M.; Tenbergen, BastianIn this talk, we report on our findings from the paper A Survey of Instructional Approaches in the Requirements Engineering Education Literature, which has been accepted at and published in the proceedings of the 2021 IEEE International Conference on Requirements Engineering. The paper reports the findings of a systematic literature review to define and investigate the current state of research on requirements engineering education.
- KonferenzbeitragSoftware Engineering 2022 - Komplettband(Software Engineering 2022, 2022)
- KonferenzbeitragEnhancing Human-in-the-Loop Adaptive Systems through Digital Twins and VR Interfaces(Software Engineering 2022, 2022) Yigitbas, Enes; Karakaya, Kadiray; Jovanovikj, Ivan; Engels, GregorThis work has been published as a full paper at SEAMS'21. In the context of self-adaptive systems, there are situations where human involvement in the adaptation process is beneficial or even necessary. For such ''human-in-the-loop'' adaptive systems, two major challenges, namely transparency, and controllability must be addressed to include the human in the self-adaptation loop. Transparency covers the context information about the adaptive system and its context while controllability targets the decision-making and adaptation operations. As existing human-in-the-loop adaptation approaches do not fully cover these aspects, we investigate alternative human-in-the-loop strategies by using a combination of digital twins and virtual reality (VR) interfaces. Based on the concept of the digital twin, we represent a self-adaptive system and its respective context in a virtual environment. For integrating the human in the decision-making and adaptation process, we have implemented and analyzed two different human-in-the-loop strategies in VR: a procedural control where the human can control the decision making-process and adaptations through VR interactions and a declarative control where the human specifies the goal state and the configuration is delegated to an AI planner. We evaluate our approach based on an autonomic robot system that is accessible through a VR interface.
- KonferenzbeitragRequirement Management in Enterprise Systems Projects (AESP'22)(Software Engineering 2022, 2022) Weiss, Christoph; Keckeis, JohannesERP systems and other enterprise systems are the backbone of any company in a digitized world. Besides enterprise systems driven requirements companies often face additional organizational requirements and challenges during enterprise systems projects like evaluating, implementing or improving.
- Konferenzbeitrag19th Workshop on Automotive Software Engineering (ASE'22)(Software Engineering 2022, 2022) Dörr, Heiko; Helke, SteffenSoftware based systems play an increasingly important role and enable most of the innovations in modern cars. This workshop deals with various topics related to the development of automotive software and discusses suitable methods, techniques, and tools necessary to master the most current challenges researchers and practitioners are facing.