Welcome to the Software Technology Group and Reactive Programming
Our research is dedicated to developing new technologies that help to construct high-quality software in a productive way.
Part of our research is in programming language design and implementation. One key theme underlying our current work is the development of event-based, reactive systems. The goal is to support developers in clearly expressing the design structure of the systems they build and to enable software construction as an assembly of modular (reusable) services.
Another thread of our research focuses on intelligent programming environments that provide means to manage and explore the software space and which foster developer productivity.
The third pillar of our research is the application and development of static analyses for a variety of software properties. We are targeting efficient, scalable analyses targeted towards security properties as well as an application's overall design and coding styles. The goal is to identify (security) bugs and to better support software comprehension and reengineering.
Our commitment to carrying out world-class research was recently honored by the European Research Council (ERC), which awarded Prof. Mira Mezini an ERC Advanced Grant – Europe's highest and most prestigious individual research grant. It enables exceptional established research leaders to pursue ground-breaking projects that open new directions in their respective research fields. The grant of 2.3 million Euros enables our group to continue to carry out world-class research to support the development of next-generation distributed applications.
Research at Software Technology Group and Reactive Programming
Constructive Software Technology|
Type Systems, Programming Paradigms, Code Generation
Analytical Software Technology|
Static and Dynamic Analysis, Machine Learning
Finding and Preventing Security Vulnerabilities|
Programming Abstractions for Big Data Processing|
Reactive Programming, Complex Event Processing
Using Big Data Analytics for Automating Software Development|
Enabling Technologies for DSLs;|
Reengineering of Legacy Applications
SugarX, Reactive Programming, Veritas
DSLs for Specifying Design Rules|
Advanced Module Systems, Reactive Programming
Enabling Technologies for Software Quality|
|Software Product Lines||
Language Support for Product Line Engineering|
Dependent Classes, Virtual Classes, Variability Modeling of Cryptographic Components, Co-Contextual Java