Please use this identifier to cite or link to this item: http://hdl.handle.net/10071/27449
Author(s): Gonçalves, Jorge Alexandre da Silva
Advisor: Santos, André Leal
Pardal, Joana Martinho de Almeida Costa
Date: 19-Dec-2022
Title: A hint generation system for introductory programming exercises in Java
Reference: Gonçalves, J. A. da S. (2022). A hint generation system for introductory programming exercises in Java [Dissertação de mestrado, Iscte - Instituto Universitário de Lisboa]. Repositório Iscte. http://hdl.handle.net/10071/27449
Keywords: Introductory programming
Hint generation
Recommender systems
Autonomous work
Introdução à programação
Geração de dicas
Sistema de recomendação
Trabalho autónomo
Abstract: Teaching and learning programming is a real challenge for teachers and students. Students starting to code for the first time, feeling stuck when trying to solve a programming exercise is normal, and teachers should support them in this case. The student who works autonomously can create a proactive attitude towards his education. With the current evolution of technology and world events, the remote environment for education is a reality, so tools that can help students, guiding them when they need it, can be important to give them the necessary autonomy.This dissertation proposes a recommendation system that can be integrated into any exercise platform to recognize a partially written code and generate reliable and useful tips (combined with positive feedback) whenever the student needs support, based on a solution previously set by the teacher. This dissertation describes the implementation of such a recommendation system, based on abstract syntax trees and tree editing distance. A system prototype composed of a REST API and a Web frontend was developed as a materialization of the proposed approach.
Ensinar e aprender programação é um verdadeiro desafio para professores e alunos. É normal os alunos que começam a codificar pela primeira vez sentirem-se bloqueados ao tentar resolver um exercício de programação, ficando dependentes de ajuda de professores ou alguém mais experiente para progredir. Porém, o aluno que trabalha de forma autónoma pode desenvolver uma atitude proativa em relação à sua educação. Com a atual evolução da tecnologia e os acontecimentos mundiais, o ambiente remoto para educação é uma realidade, e logo, ferramentas que possam auxiliar os alunos, orientando-os quando precisam, podem ser importantes para dar-lhes a autonomia necessária. Esta dissertação propõe um sistema de recomendação que pode ser integrado em qualquer plataforma de exercícios para reconhecer um código parcialmente escrito e gerar dicas confiáveis e úteis (combinadas com feedback positivo) para ajudar no progresso sempre que o aluno precisar de apoio. As dicas são geradas com base numa solução previamente definida pelo professor. Esta dissertação descreve a implementação de tal sistema de recomendação, baseado em árvores de sintaxe abstrata e distância de edição das mesmas. Foi desenvolvido um protótipo de sistema composto por uma API REST e um frontend Web como materialização da abordagem proposta.
Department: Departamento de Ciências e Tecnologias da Informação
Degree: Mestrado em Engenharia Informática
Peerreviewed: yes
Access type: Open Access
Appears in Collections:T&D-DM - Dissertações de mestrado

Files in This Item:
File Description SizeFormat 
master_jorge_silva_goncalves.pdf1,62 MBAdobe PDFView/Open


FacebookTwitterDeliciousLinkedInDiggGoogle BookmarksMySpaceOrkut
Formato BibTex mendeley Endnote Logotipo do DeGóis Logotipo do Orcid 

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.