author: Martijn Verkleij
title: Programming education off the shelf.
keywords: software engineering, education, testing, quality assurance
topics: Algorithms and Data Structures , Case studies and Applications , Software Technology , Testing , Other
committee: Ansgar Fehnker
started: April 2019
end: July 2019


There are numerous tools intended to make it easier for teachers and teaching teams to deliver programming education. However, none of these tools has managed to achieve wide adoption. Within the software development the situation is vastly different with the emergence of standard tools and platform for versions control, continuous integration, testing, mocking, and quality assurance emerging that find wide use by teams of all sizes. Well known household names are github, Travis Ci, or Sonarqube.

The aim of this project is to investigate if tools that have a proven track record in industry can be used in an educational context. The research includes a survey of what these tool have to offer, how the support they give to development teams relates to educational needs and concepts, their short comings, and potential use cases. The project will use as a case study a python algorithmics course for students with some basic prior programming skill, and implement an ecosystem customized to the need in education.


  1. SPINOZA: In-class Python Problem Solving with Classroom Orchestration (Digital version available here)
  2. The effects of "pair-pressure" and "pair-learning" on software engineering education (Digital version available here)
  3. Use of Agile Methods in Software Engineering Education (Digital version available here)