Blog

Thoughts, tech notes, in-depth articles and walkthroughs.

November 01, 2014 2 mins read

Bachelor's Thesis: Systematic Architecture Level Fault Diagnosis Using Statistical Techniques

Abstract

In the past various spectrum-based fault localization (SBFL) algorithms have been developed to pinpoint a fault location given a set of failing and passing test executions. Most of the algorithms use similarity coefficients and have only been evaluated on established benchmark programs like the Siemens set or the space program from the Software-artifact Infrastructure Repository. In addition to that, SBFL has not been applied by developers in practice yet. This study evaluates the feasibility of applying SBFL to a real-world project, namely AspectJ. From an initial set of 110 manually classified faulty versions, a maximum of seven bugs can be found after examining the 1000 most suspicious lines produced by various SBFL techniques. To explain the result, the influence of the program size is examined using different metrics and evaluations. In general, the program size has a slight influence on some metrics, but is not the primary explanation for the results. The results seem to originate from the metrics currently used throughout the research community to assess SBFL performance. The study showcases the limitations of SBFL with the help of different performance metrics and the insights learned during manual classification. Moreover, additional performance metrics that are better suited to evaluate the fault localization performance are proposed.

Read more
October 01, 2014 2 mins read

SCAPE

SCAPE is an approach for online failure prediction in component-based software systems using event log analysis techniques.

I was involved in this project as a research assistant at the University of Stuttgart with two friends of mine. Together, we programmed the framework and conducted the experiments which are reported in a paper published in the ValueTools 2014 conference.

Used technologies include: Java, Weka machine learning library, the Kieker framework, and the R language for the evaluation/plotting of the experimental results.

Read more
May 01, 2013 1 mins read

Scalable Multicast Concepts

Abstract

There are many use cases where applied multicast concepts can have a huge impact on application performance. Especially in data centers huge amounts of data can be transferred through the network using multicast techniques. The problem with multicast is scalability - routers have to keep track of multicast forwarding states and often can’t handle huge amounts of multicast groups. In this paper we examine different approaches enhancing the overall performance of multicast and compare them to each other. First we are going to look at tree-building multicast algorithms like REUNITE operating from routers. Another approach is injecting the multicast logic into the sender right beneath the application layer like DR. MULTICAST does. Lastly we examine how multicast can be easily approached with software defined networking.

Read more