Research
I am a post-doctoral fellow at Mira Mezini’s Software Technology Group at Technische Universität Darmstadt, Germany. I am also being funded through, and doing research for the Center for Advanced Security Research Darmstadt (CASED), Research Area “Secure Services”.
Past Research
In the past, I have published research mainly on static and hybrid (dynamic & static) typestate analysis and on race detection. Find out more about my past research here.
Current research: analyzing programs that use reflection
I am just starting off a new exciting research project about analyzing programs under realistic assumptions. The major motivation for this project came after I finished Clara, my static whole-program-analysis framework for typestate properties. Clara works beautifully, but only on closed programs that do not use reflection, and for which all classes are known. But this is unrealistic. Just take the DaCapo benchmark suite version 9.12-bach as an example. The suite loads all its benchmarks using reflection. Some of its benchmarks also use reflection extensively internally, and even execute runtime-generated classes. The goal of our new project is to allow researchers to conduct static whole-program analysis even on such programs.
Planned research: Modular and incremental program analyses
The idea of analyzing programs under realistic assumptions can be extended. In particular, the idea of a whole-program analysis is not all that realistic any more. Current industrial Java programs often consists of components, e.g. services, that live in dedicated execution containers. Ideally, one would want to analyze such components in isolation to then be able to reason about the ability to compose multiple components with each other. In our planned research we plan to tackle this problem through novel algorithms and new technologies.
The second problem that I plan to address is the problem of incrementalizing static analyses. Current static analyses are often monolithic and cannot cope well with changes to the analyzed code. In the future we plan to implement a framework for the implementation of incremental program analyses that can update their analysis information incrementally for incremental program changes.
Interested in collaboration? Please drop me a line!





