Please use this identifier to cite or link to this item: https://hdl.handle.net/10316/102157
Title: Development of a chatbot to assist introductory programming students
Other Titles: Desenvolvimento de um chatbot para apoiar a aprendizagem de programação
Authors: Carreira, Gustavo Moreira
Orientador: Mendes, António José Nunes
Oliveira, Hugo Ricardo Gonçalo
Keywords: Processamento de Linguagem Natural; Chatbot; Agente Virtual; Introdução à programação; Rasa; Natural Language Processing; Chatbot; Virtual Agent; Introductory programming; Rasa
Issue Date: 7-Sep-2022
Project: info:eu-repo/grantAgreement/FCT/6817 - DCRRNI ID/UIDB/00326/2020/PT
Serial title, monograph or event: Development of a chatbot to assist introductory programming students
Place of publication or event: DEI - FCTUC
Abstract: O contínuo aumento da dependência da nossa sociedade em termos de tecnologia resulta num aumento na demanda pro programador, que por si resulta também num aumento no número de indivíduos com interesse em aprender a programar. A programação é considerada uma disciplina por si difícil, e como o tamanho das turmas e o número de alunos matriculados em cursos online, de introdução à programação, continuam a crescer, oferecer suporte individualizado a cada aluno pode parecer uma missão impossível, levando à frustração, falta de motivação e aumento do número de desistêcias. Uma solução para este problema poderia vir da implementação de chatbots com a finalidade de auxiliar esses alunos. Os benefícios de usar esta tecnologia não passam apenas pela possibilidade de ajudar vários alunos ao mesmo tempo, mas incluem também uma disponibilidade de 24 horas, feedback instantâneo e um meio para os alunos mais tímidos expressarem as suas dúvidas.O presente trabalho propõe o desenvolvimento de um chatbot de natureza Portuguesa, Pyo, para auxiliar alunos de cursos introdutórios à programação, oferecendo explicações e exemplos de conceitos introdutórios, auxílio nos exercícios e orientação aos alunos com vista a resolução de erros nos seus algoritmos. Com a framework Rasa, uma abordagem baseada em regras e a ajuda de algumas bibliotecas Python, um chatbot foi desenvolvido, integrado numa plataforma online de introdução à programação, e finalmente avaliado por alunos reais com pouco, ou nenhum, conhecimento de programação. A avaliação foi enviesada para o lado positivo, com a maioria dos alunos identificando o Pyo como benéfico para a sua aprendizagem, mas também revelou uma forte preferência por parte dos alunos em procura pela ajuda de colegas ou professores, mesmo sabendo da disponibilidade do chatbot, pois chegou-se à conclusão que os alunos preferiam assistência mais direta.
As society's reliance on technology continues to increase, the demand for programmers will continue to rise, leading to an increase in the number of individuals seeking to learn how to program. Programming is regarded as a difficult subject to learn, and as the size of classes and the number of students enrolled in online courses continues to grow, providing individualised support to each student may appear impossible, leading to frustration, lack of motivation, and an increase in dropout rates. A solution could be the implementation of chatbots for the purpose of assisting such students. The benefits of using this technology would not only include the possibility of assisting multiple students at once, but also include 24-hour availability, instant feedback, and a means for shyer students to voice their doubts.The present work proposes the development of a Portuguese chatbot, Pyo, to assist students of introductory programming courses by providing explanations and examples of introductory programming concepts, assistance with the exercises, and guidance towards the resolution of errors in the algorithms. With the Rasa framework, a rule-based approach, and the help of other Python libraries, a chatbot was constructed, integrated into an online introductory programming platform, and then evaluated by real novice programmers.The evaluation was skewed toward the positive, with students identifying Pyo as beneficial to their learning journey, but it also uncovered a strong preference for seeking assistance from peers or professors rather than the agent as the students preferred more straightforward assistance.
Description: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
URI: https://hdl.handle.net/10316/102157
Rights: openAccess
Appears in Collections:UC - Dissertações de Mestrado

Files in This Item:
File Description SizeFormat
GustavoMoreiraCarreira.pdf3.98 MBAdobe PDFView/Open
Show full item record

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons