Borges, Ana Rosa PereiraGomes, Anabela de JesusCorreia, Fernanda Maria dos Reis Brito e RodriguesPires, João Pedro José2025-04-082025-04-082025-01-30http://hdl.handle.net/10400.26/57579Este projeto aborda o tema da previsão de desempenho dos estudantes na área da Introdução à Programação, visando o desafio atual das elevadas taxas de reprovação e de desistência nas unidades curriculares de Introdução à Programação no Ensino Superior. O principal objetivo passa por desenvolver um modelo preditivo baseado em técnicas de Business Intelligence, como Machine Learning, que seja capaz de prever o desempenho dos estudantes numa unidade curricular de Introdução à Programação e identificar aqueles em risco iminente de reprovação. Essa previsão possibilitará a adoção de intervenções preventivas e direcionadas, visando promover o sucesso académico dos estudantes. Os dados utilizados para os modelos foram essencialmente obtidos através de um teste cognitivo e ainda alguns dados de cariz académico, referentes a um grupo de estudantes numa unidade curricular de Introdução à Programação. No decorrer deste projeto foram realizados três estudos. O primeiro estudo analisa os fatores que influenciam a aptidão para aprender a programar, tendo este estudo culminado num artigo publicado e apresentado numa conferência internacional. O segundo estudo identifica os algoritmos de Machine Learning mais utilizados para prever o desempenho académico de estudantes na área da Introdução à Programação no Ensino Superior; este estudo originou um artigo que foi publicado numa revista internacional. O terceiro estudo apresenta uma análise estatística dos resultados obtidos a partir dum teste cognitivo realizado aos estudantes, tendo deste estudo resultado um artigo que foi submetido numa revista internacional e neste momento está em processo de revisão. No projeto, foram aplicados seis algoritmos: Deep Neural Network, Decision Tree, kNearest Neighbour, Naïve Bayes, Random Forest e Support Vector Machine. O desempenho foi avaliado utilizando as métricas accuracy, precision, recall, F1-score e specificity, tendo o modelo Deep Neural Network obtido os melhores resultados globais na identificação de estudantes com probabilidade de sucesso na unidade curricular, enquanto capta estudantes em risco.This project addresses the issue of predicting student performance in Introductory Programming, aimed at the current challenge of high failure and drop-out rates in Introductory Programming courses on Higher Education. The main objective is to develop a predictive model based on Business Intelligence techniques, such as Machine Learning, that is capable of predicting student’s performance in an Introductory Programming curricular unit and identifying those at imminent risk of failing. This prediction will make it possible to adopt preventive and targeted interventions aimed at promoting students’ academic success. The data used for the models was essentially obtained from a cognitive test and some academic data from a group of students in an Introductory Programming curricular unit. During this project, three studies were conducted. The first study analyses the factors that influence aptitude for learning to program, which culminated in a paper published and presented at an international conference. The second study identifies the Machine Learning algorithms most used to predict the academic performance of students in the area of Introductory Programming in Higher Education; this study led to a paper that was published in an international journal. The third study presents a statistical analysis of the results obtained from a cognitive test given to students, which resulted in a paper that was submitted to an international journal and is currently in the process of revision. Six algorithms were used in the project: Deep Neural Network, Decision Tree, k-Nearest Neighbour, Naïve Bayes, Random Forest and Support Vector Machine. The performance was assessed using the metrics accuracy, precision, recall, F1-score and specificity, with the Deep Neural Network model obtaining the best overall results in identifying students likely to succeed in the course, while capturing students at risk.engProgramação introdutóriaEnsino superiorMachine learningPrevisão de desempenhoPredicting student performance in a higher education curricular unitmaster thesis203894910