Recommender Systems in Software Engineering

Recommender Systems in Software Engineering

The increasing number of open-source projects and the easy applicability of different machine learning approaches started a new movement in the software engineering community. “Integrated Development Environments” (IDE) are no longer just simple build tools, they now understand the goal of the developer. Special recommender systems can actively support developers during their work.

In this seminar, we will investigate the current state in the research of recommender systems and their effects on modern software engineering. The seminar is a basic introduction to the topic. We are going to discuss several approaches and compare them. We will also have a critical view on cross-cutting concerns like the evaluation of such systems.

This is a discussion seminar with weekly meetings. In each meeting, we discuss a scientific article. The following weekly activities are required:

  • reading a scientific article
  • writing a short summary (max. 1 page)
  • active participation in the discussion of the content

The focus of the seminar is the discussion. Therefore, the major part of the final grade is based on active participation.

Since we have so many participants, please print your summary and bring it to the meeting!


15.10. – Kick-off

22.10. – Recommender Systems for Software Engineering (Robillard, Walker, Zimmermann)

29.10. – Using Structural Context to Recommend Source-Code Examples (Holmes, Murphy)

05.11. – Learning from examples to improve code completion systems (Bruch, Monperrus, Mezini)

12.11. – Jungloid mining: helping to navigate the API jungle (Mandelin et al.)

19.11. – No Meeting

26.11. – Graph-based mining of multiple object usage patterns (Nguyen et al.)

3.12. – Data Mining Static Code Attributes to Learn Defect Predictors (Menzies et al.)

10.12. – Software Bug Localization with Markov Logic (Zhang et al.)

17.12. – Automatic Parameter Recommendation for Practical API Usage (Zhang et al.)

14.1. – Identifier-based Context-dependend API Method Recommendations (Heinemann et al.)

21.1. – Mining StackOverflow to turn the IDE into a self-confident programming prompter (Ponzanelli et al.)

28.1. – Live API Documentation (Subramanian et al.)

4.2. – Diversity in Software Engineering Research (Nagappan et al.)

11.2. – Open discussion about all above papers. Pick an aspect from the papers or our discussions that you find particularly interesting, problematic, or important. Prepare to discuss that point (0.5-1 page essay): What is it? Why is it of interest? What's your opinion/idea about it?

Course Information



Course Type

Seminar (3CP)


Sven Amann, Sebastian Proksch


Please register in TUCAN and also send an email to Sebastian Proksch. To ensure an interactive and productive seminar, we have to limit the number of participants to aprox. 15. Therefore, the kick-off meeting is obligatory.


15th October 2014, 15:20 - 17:00 in A313


Wednesdays, 15:20 - 17:00 in A313