This thesis explores the use of serverless technology for automating the assessment
of programming assignments (AAPA). The aim of this study is to investigate the
effectiveness of serverless solutions for AAPA, and to explore the potential benefits
and challenges of using serverless technology in learning management systems. The
research questions addressed in this study are: (1) How serverless solutions for AAPA
affect the response time of grading? (2) How much does the serverless solution impact
infrastructure cost? (3) What are the environmental aspects of moving from locally
hosted VM-based solutions to cloud-based serverless solutions?
To answer these research questions, a design science research methodology was
used to design and implement a prototype solution for serverless AAPA. The solution
was implemented using AWS API Gateway, SQS, DynamoDB and Lambda, and
it was evaluated through experiments with real-world programming exercises. The
results of the experiments showed that the serverless solution was able to significantly
improve the response time of grading programming assignments in bursts, compared
to a locally hosted VM-based solution. Additionally, the serverless solution was
potentially able to reduce infrastructure costs, as it only used resources when needed,
and it was able to scale automatically to handle varying levels of traffic.
The environmental impact of serverless technology for programming exercise
assessment was also explored. The findings suggest that serverless technology can
have a positive impact on the environment by reducing energy consumption, carbon
emissions and hardware lifecycle management. However, there are also limitations
and challenges to using serverless technology for programming exercise assessment,
such as data privacy and security.
Overall, this thesis provides a framework for future research and development in
the field of serverless AAPA and highlights the potential benefits and challenges of
using serverless technology in learning management systems.