Research
Overview
A key vision driving our research is to empower software engineering practice to enter an era of intensive automation. We develop and evaluate methods, tools, and theories for the construction and analysis of efficient, reliable, maintainable, and configurable software systems. In this endeavor, we pay special attention to the human factor and interdisciplinary research questions. In particular, we are interested in:
Software variability and configuration |
AI-based program generation and optimization |
Socio-technical software analysis |
Empirical and neurophysiological methods |
We apply our research results routinely to real-world software systems and projects from various domains, both from the open-source realm or in collaborations with partners from industry, such as Siemens AG, Bosch Engineering, and Airbus Helicopters.
Projects
Ongoing
-
Brains On Code – A Neuroscientific Foundation of Program Comprehension
(European Research Council) -
CPEC – Transregional Collaborative Research Centre 248 "Foundations of Perspicuous Software Systems"
(German Research Foundation)
Completed
-
Congruence – Foundations and Implications of Socio-Technical Congruence in Large-Scale, Decentralized, and Distributed Software Projects
(German Research Foundation) -
Pervolution – Performance Evolution of Highly Configurable Software Systems
(German Research Foundation) -
ExaStencils – Advanced Stencil-Code Engineering
(German Research Foundation) -
Software Intelligence
(Siemens AG) -
FeatureOpt – Taming and Optimizing Feature Interactions in Software-intensive Automotive Systems
(Austrian Research Promotion Agency) -
Pythia – Techniques and Prediction Models for Sustainable Product-Line Engineering
(German Research Foundation) -
SafeSPL++ – Generation of Correct and Efficient Software based on Product-Line Technology
(Heisenberg Programme, German Research Foundation) -
SafeSPL – Safe and Efficient Software Product Lines
(Emmy-Noether Programme, German Research Foundation) -
FeatureFoundation – Algebra-Based Feature-Oriented Program Synthesis
(German Research Foundation) -
MapReduceFoundation – Typing and Scaling MapReduce
(German Research Foundation)
Tools
- CIDE – Virtual Separation of Concerns
- Codeface – Project Analysis and Dashboard Framework
- coronet – Network Library to Build and Analyze Socio-Technical Developer Networks
- cppstats – Analyzing C Preprocessor Directives
- FeatureHouse – Language-Independent Feature Composition
- FeatureIDE – Feature-Oriented Software Development
- FeatureVisu – Layout-Based Feature Clustering
- Fuji – Feature-Oriented Programming in Java
- JDime – Structured Merge of Software Versions
- SPL Conqueror – Performance Prediction of Software Variants
- SPLverifier – Variability-Aware Model Checking
- TypeChef – Variability-Aware Static Analysis