Teaching Assistant Management Platform

Automating the recruitment and scheduling of teaching assistants

Bachelor Thesis (2018)
Author(s)

M. Pigmans (TU Delft - Electrical Engineering, Mathematics and Computer Science)

R. Keulemans (TU Delft - Electrical Engineering, Mathematics and Computer Science)

G.J. Habben Jansen (TU Delft - Electrical Engineering, Mathematics and Computer Science)

M. van Deursen (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

Xavier Devroey – Mentor

S. Hugtenburg – Graduation committee member

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2018 Max Pigmans, Ruben Keulemans, Geert Habben Jansen, Max van Deursen
More Info
expand_more
Publication Year
2018
Language
English
Copyright
© 2018 Max Pigmans, Ruben Keulemans, Geert Habben Jansen, Max van Deursen
Graduation Date
02-07-2018
Awarding Institution
Delft University of Technology
Project
['Bachelor End Project']
Programme
['Computer Science ']
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

The majority of the courses in the Computer Science Bachelor at the Delft University of Technology use so called lab sessions to provide an opportunity for students to ask questions about course material and get feedback on their assignment. In order to optimally support the students, teaching assistants, or TAs, are appointed to assist the lecturer during the lab sessions. With the number of students in the Bachelor quickly growing, the process of manually recruiting students to become a TA and assigning the TAs to lab sessions is becoming infeasible.

This project aims to ease the process of gathering and scheduling TAs. In order to achieve this goal, the Teaching Assistant Management platform, or TAM, has been developed. All parties involved in the process of appointing TAs can use TAM to provide their input. Lecturers can register their courses on TAM, students are able to indicate their interest to help with different courses and representatives from Education and Student Affairs can validate the application of the interested students. Using this input, TAM is able to automatically create a schedule by assigning TAs to lab sessions. To provide an algorithm for the automatic generation of schedules, a model based on the minimumcost max flow problem is created. Due to complications with the implementation of the minimum-cost max flow model, the schedule generation is handled by a linear solver: Gurobi. By modeling the constrains for a schedule to be considered valid, Gurobi is used to process the input of the users into an optimized schedule.

TAM consists of three components: a MySQL database, a backend written using Spring, containing the business logic and the implementation of the scheduler, and a frontend website created with Vue to provide an interface to the users. The frontend and the backend are connected using a REST API.

A unique aspect of the project is the live deployment of TAM. At the end of the fourth week, the first version was deployed, allowing interested students to submit their course preferences. Subsequent features have been deployed iteratively. During the development, muliple problems have been encountered. The team underestimated the time required to learn the new technologies, as well as the time needed to maintain a system in production. Furthermore, configuring Single Sign-On required more time than expected.

Files

BEP_Final_Report_6_.pdf
(pdf | 8.21 Mb)
License info not available