The Software Engineering Research Group
The mission of the TU Delft Software Engineering Research Group (SERG) is
to develop a deep understanding of how people build and evolve software systems;
to develop novel methods, techniques, theories, and tools that advance the way in which software is built and adjusted;
to ensure that our research results have a lasting impact in software development practice; and
to offer students an education that prepares them to take a leading role in complex software development projects.
The research of the TU Delft Software Engineering Research Group is characterized by a focus on empirical research, conducted in close collaboration with software development practice. Topics of interest include software testing, software architecture, end user programming, software evolution, and collaborative and distributed software development.
To accomplish our research goals, our research is organized across the following research lines:
- Artificial Intelligence and Machine Learning for Software Engineering: How can techniques from artificial intelligence and machine learning be used to improve complex software development tasks?
- DevOps: To understand and improve the modern CI/CD and DevOps practices.
- Software Engineering for Fintech: Develop methods, tools, and technologies to radically innovate the software-intensive financial sector.
- Software Analytics: How can we harness the massive data modern development and deployment processes generate, as well as Big Code, to increase development productivity and operational efficiency?
- Software Refactoring: The investigation of automated techniques for software refactoring recommendation, the understanding of the role of software refactoring in large and complex software systems, and the investigation and the proposal of context-based software (anti-)patterns.
- Software Quality: Help developers in improving the internal and external quality of their software systems.
We conduct our research in mixed teams, in collaboration with practitioners and international researchers. We publish our research in the top venues in the field. Members of SERG actively serve in organizational and program committees of these conferences and editorial boards of these journals.
We are strong supporters of open science, and self-archive our publications in the TU Delft institutional repository and through our Technical Reports series. We aim at sharing our research prototypes as open source tools whenever possible.
We have a passion for teaching and a deep desire to share what we learn about software engineering with our students. Our teaching activities include:
Undergraduate courses in the TU Delft bachelor in computer science, covering such topics as object-oriented programming, various projects, software testing, big data processing, and software engineering.
Advanced software engineering courses in the TU Delft master programs in computer science and embedded systems, covering such topics as software architecture, search-based software engineering, psychology of programming, and software analytics.
Nine-month projects with our MSc students who advance our knowledge in software engineering by participating in our research projects – often in collaboration with our industrial partners.
Introductory courses in the TU Delft minor and digital skills programs, offering non-CS students a background in programming, data science, and software engineering;
On line courses offered through the TU Delft EdX platform, on such topics as data analysis and Scratch programming, which have attracted tens of thousands of students from across the globe.
SERG is one of the sections of the Department of Software Technology (ST). Together with the Intelligent Systems department INSY, ST is responsible for research and education in computer science and engineering at Delft University of Technology.
SERG and the Department of Software Technology are part of the TU Delft Faculty of Electrical Engineering, Mathematics, and Computer Science.