You are here: SE » ResearchHome

Research of AG SE

The Software Engineering research group is concerned with reducing the gap between the State of the Art and the average State of the Practice in all areas of software engineering.

About our research in general

Here are some of our credos that describe where we start:
  • Most of the time, methods and tools are used very differently and/or very incompletely compared to what their designers hoped.
  • Understanding the reasons for this discrepancy (cognitive, technical, social, and economic) would help a great deal in improving both the methods/tools and their use.
  • Even when methods/tools are left aside, many of the social and cognitive fundamentals driving the practice of software development are hardly understood.

Loosely speaking, the goal of our research is understanding what goes on in software processes and why. We believe such understanding will lead to improvements of the process quite readily. Our research approach is therefore primarily empirical and experience-based, rather than constructive and theory-based.

We do not wear blinders, though: Every once in a while, a project may be about something entirely different…

If you want to know more:

Research strand 1: Human factors in agile software development

Agile software development methods have taken the world by storm since about 1999, but not all is as rosy there as its protagonists suggest it should be. We are interested in all those things that are human-related and somehow appear to be more difficult than some make us believe.

  • Pair Programming (including Saros): Studying what really goes on when two people program as a pair -- either locally or in a distributed fashion
  • Self-organization: About some of the difficulties in the so-called self-organization that is at the heart of agile methods.
  • Testing practices: How teams cope with the difficulties involved in real-world automated software testing, in particular for integration testing.
  • Technical Debt: How teams cope with the difficulties involved in properly managing technical debt.

Research strand 2: Research quality

We have an ongoing interest in understanding current software engineering research, in particular what may be good or bad about it. On a broader scale, we aim at improving the status of peer review throughout all subjects of research in many disciplines.

  • Review Quality Collector (RQC): Establishing formal reputation for scientists' performance as peer reviewers
  • Shoulders of Giants: Citations in SE (to be described)
  • Research literature language: (to be described)
  • Peer review research: (to be described)
    see OurPublications
  • Gaps in the SE community's knowedge: (to be described)

Former or dormant research topics

  • F/OSS (2003-2017):
    Studying the characteristics of distributed software processes as they occur in Free/Open Source software development, in particular with respect to the introduction of process innovations.
  • API Documentation Quality (2014-2017)
    Identifying different styles of API documentation, how helpful they are in practice, and what makes them helpful or less helpful.
  • API-Usabillity: Improving the usability of SeqAn (2012-2015)
    SeqAn is a bioinformatics sequence analysis algorithm library. Our research analyzed why programmers are struggling with its API and what to do about that. And then did it.
  • Plat_Forms: The web development platform comparison (2007-2013).
  • Medical Knowledge Explication (2005-2011, dormant)
  • Project "WAVES" (2006-2008): Knowledge exchange in distributed software development.
  • Micro Process/ECG (2003-2007): Building an environment for detailed examination of programmers' activities during software development
  • ErrorHome (2003-2007, dormant): Studying the phenomenon of error (root causes, conditions, triggers, and prevention)