- Software System Performance and Reliability
- Advanced Software Engineering Methodologies
- Software Reliability and Analysis Research
- Software Engineering Research
- Service-Oriented Architecture and Web Services
- Cloud Computing and Resource Management
- Software-Defined Networks and 5G
- Software Testing and Debugging Techniques
- Software Engineering Techniques and Practices
- Model-Driven Software Engineering Techniques
- Business Process Modeling and Analysis
- Network Security and Intrusion Detection
- IoT and Edge/Fog Computing
- Real-Time Systems Scheduling
- Anomaly Detection Techniques and Applications
- Real-time simulation and control systems
- Smart Grid Security and Resilience
- Advanced Optical Network Technologies
- Risk and Safety Analysis
- Distributed systems and fault tolerance
- Advanced Research in Systems and Signal Processing
- Formal Methods in Verification
- Semantic Web and Ontologies
- AI in Service Interactions
- Design Education and Practice
Universität Hamburg
2021-2025
University of Stuttgart
2014-2023
Radboud University Nijmegen
2021-2022
Software (Germany)
2008-2020
Institute of Software
2017
Reliable Software Resources (United States)
2017
Software Engineering Institute
2016
Kiel University
2010-2012
Carl von Ossietzky Universität Oldenburg
2008-2010
Kieker is an extensible framework for monitoring and analyzing the runtime behavior of concurrent or distributed software systems. It provides measurement probes application performance control-flow tracing. Analysis plugins extract visualize architectural models, augmented by quantitative observations. Configurable readers writers allow to be used online offline analysis. This paper reviews focusing on its features, provided extension points custom components, as well imposed overhead.
Microservices complement approaches like DevOps and continuous delivery in terms of software architecture. Along with this architectural style, several important deployment technologies, such as container-based virtualization container orchestration solutions, have emerged. These technologies allow to efficiently exploit cloud platforms, providing a high degree scalability, availability, portability for microservices.
The specification of workloads is required in order to evaluate performance characteristics application systems using load testing and model-based prediction. Defining workload specifications that represent the real as accurately possible one biggest challenges both areas. To overcome this challenge, paper presents an approach aims automate extraction transformation for prediction session-based systems. (WESSBAS) comprises three main components. First, a system- tool-agnostic domain-specific...
In the past, spectrum-based fault localization (SBFL) techniques have been developed to pinpoint a location in program given set of failing and successful test executions. Most algorithms use similarity coefficients only evaluated on established but small benchmark programs from Software-artifact Infrastructure Repository (SIR). this paper, we evaluate feasibility applying 33 state-of-the-art SBFL large real-world project, namely ASPECTJ. From an initial 350 faulty version iBugs repository...
DevOps is a modern software engineering paradigm that gaining widespread adoption in industry. The goal of to bring changes into production with high frequency and fast feedback cycles. This conflicts quality assurance activities, particularly respect performance. For instance, performance evaluation activities --- such as load testing require considerable amount time get statistically significant results.
Emerging serverless computing technologies, such as function a service (FaaS), enable developers to virtualize the internal logic of an application, simplifying management cloud-native services and allowing cost savings through billing scaling at level individual functions. Serverless is therefore rapidly shifting attention software vendors challenge developing cloud applications deployable on FaaS platforms. In this vision paper, we present research agenda RADON project (...
Software architecture optimization aims to enhance non-functional attributes like performance and reliability while meeting functional requirements. Multi-objective employs metaheuristic search techniques, such as genetic algorithms, explore feasible architectural changes propose alternatives designers. However, this resource-intensive process may not always align with practical constraints. This study investigates the impact of designer interactions on multi-objective software optimization....
Autonomic computing components and services require continuous monitoring capabilities for collecting analyzing data of runtime behavior. Particularly software systems, a trade-off between coverage performance overhead is necessary.
Complex software systems experience failures at runtime even though a lot of effort is put into the development and operation. Reactive approaches detect these after they have occurred already caused serious consequences. In order to execute proactive actions, goal online failure prediction in advance by monitoring quality service or system events. Current look individual components as monolith without considering architecture system. They disregard fact that one component can propagate...
Microservices have emerged as an architectural style for developing distributed applications. Assessing the performance of architecture deployment configurations — e.g., with respect to alternatives is challenging and must be aligned system usage in production environment. In this paper, we introduce approach using operational profiles generate load tests automatically assess scalability pass/fail criteria microservice configuration alternatives. The provides a Domain-based metric each...
DevOps is a trend towards tighter integration between development (Dev) and operations (Ops) teams. The need for such an driven by the requirement to continuously adapt enterprise applications (EAs) changes in business environment. As of today, concepts have been primarily introduced ensure constant flow features bug fixes into new releases from functional perspective. In order integrate non-functional perspective these this report focuses on tools, activities, processes one most important...
Summary Pure spectrum‐based fault localization (SBFL) is a well‐studied statistical debugging technique that only takes set of test cases (some failing and some passing) their code coverage as input produces ranked list suspicious program elements to help the developer identify location bug causes failed case. Studies show pure SBFL techniques produce good lists for small programs. However, our previous study based on iBugs benchmark uses A spect J repository shows that, realistic programs,...
Manual failure diagnosis in large-scale software systems is time-consuming and error-prone. Automatic support mechanisms can potentially narrow down, or even localize faults within a very short time which both helps to preserve system availability. A large class of automatic approaches consists two steps: 1) computation component anomaly scores; 2) global correlation the scores for fault localization. In this paper, we present an architecture-centric approach second step. our approach, are...
Failures or unexpected events are inevitable in critical and complex systems. Proactive failure detection is an approach that aims to detect such advance so preventative recovery measures can be planned, thus improving system availability. Machine learning techniques have been successfully applied learn patterns from available datasets classify predict which class a new instance of data belongs. In this paper, we evaluate compare the performance 21 machine algorithms by using them for...
The performance of application systems has a direct impact on business metrics. For example, companies lose customers and revenue in case poor such as high response times. Application management (APM) aims to provide the required processes tools have continuous up-to-date picture relevant measures during operations, well support detection resolution performance-related incidents.
Microservice architectures are steadily gaining adoption in industrial practice. At the same time, performance and resilience important properties that need to be ensured. Even though approaches for have been developed (e.g., anomaly detection fault tolerance), there no benchmarking environments their evaluation under controlled conditions. In this paper, we propose a generative platform engineering microservice architectures, comprising an underlying metamodel, generation platform,...
In recent years, there has been a shift in software development towards microservice-based architectures, which consist of small services that focus on one particular functionality. Many companies are migrating their applications to such architectures reap the benefits microservices, as increased flexibility, scalability and smaller granularity offered functionality by service. On hand, microservices for functional testing often praised, allow more targeted convenient testing. other using...
Even though load testing is an established technique to assess load-related quality properties of software systems, it applied only seldom and with questionable results. Indeed, configuring, executing, interpreting results a test require high effort expertise. Since chatbots have shown promising for interactively supporting complex tasks in various domains (including engineering), we hypothesize that can provide developers suitable support testing. In this paper, present PerformoBot, our...
Application-level monitoring and dynamic analysis of software systems are a basis for various tasks in engineering research, such as performance evaluation reverse engineering. The Kieker framework provides monitoring, analysis, visualization support these purposes. It commenced 2006, grew toward high-quality open-source that has been employed variety research projects over the last decade. Several groups constitute community to advance framework. In this paper, we review Kieker's history,...