Recommender Systems For Software Engineering

PhD Advanced Course (20 hours), Mälardalens University, 2024

This course aims to give comprehensive knowledge about recommender systems, with particular emphasis on recommendations for software engineering tasks. The course will cover the foundational aspects of recommender systems.

Course content

  • The main concepts the course wants to achieve are the following:
  • Introduction to recommender systems (1h, theory)
  • Foundational concepts (1,5h, t)
  • Main techniques (collaborative filtering, content-based, knowledge-based) (5h, t+lab)
  • Evaluation metrics (2,5h, t+lab)
  • Common problems (popularity bias, cold start problem) (2,5h, t+lab)
  • Integration of machine learning and recommender systems (2,5h, t+lab)
  • Real scenarios (Libraries, code snippets, modelling artifacts) (5h, t+lab)

Intended learning outcomes

  • At the end of the course the student shall be able to:
  • Understand the foundational concepts underlying recommendation systems
  • Reason about the suitable techniques to be adopted in a specific application scenario and the corresponding problems
  • Design and implement recommendation systems through appropriate technologies