Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos

Detalhes bibliográficos
Autor(a) principal: Laranjeira, Dion Ribeiro
Data de Publicação: 2020
Outros Autores: http://lattes.cnpq.br/7053277807912206
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFAM
Texto Completo: https://tede.ufam.edu.br/handle/tede/7775
Resumo: Muitos alunos de disciplinas de Programação Introdutória (CS1) têm dificuldade em aprender a programar. Por isso, professores de programação têm utilizado juízes online para propor exercícios, realizar maratonas e campeonatos de programação, a fim de tentar melhorar a experiência de aprendizado dos alunos. No entanto, nos casos de juízes online que possuem em sua base de dados muitos exercícios cadastrados, o aluno poderá escolher um exercício que não seja adequado para seu nível de conhecimento. Nesse sentido, neste trabalho é proposto um sistema de recomendação de exercícios, que filtra exercícios por nível de dificuldade, em um juiz online chamado CodeBench. Esses exercícios são classificados manualmente por assuntos pelo professor, e o método proposto nesta pesquisa sugere exercícios ordenados pelo nível de dificuldade. Para isso, é utilizada a abordagem de recomendação de filtragem colaborativa para mapear as dificuldades experimentadas pelos alunos quando resolvem exercícios de programação no ambiente de desenvolvimento integrado do CodeBench. Após isso, é feita a predição de dificuldade dos exercícios que o aluno ainda não resolveu para, então, sugerir exercícios com graus de dificuldade crescentes. Este método de recomendação foi aplicado em uma base de dados com 645 alunos de graduação, distribuídos em 14 turmas de CS1, ministradas no ano de 2018, em uma universidade pública. A disciplina é dividida em 7 módulos, cada módulo possui duas listas de exercícios e uma prova. Em cada módulo foi feita a comparação da ordem original de resolução de exercícios com a ordem de resolução de exercícios proposta pelo método. Os resultados mostram que em 6 módulos da disciplina o método aqui proposto sugere uma ordem de resolução adaptada para cada aluno, com nível crescente de dificuldade.
id UFAM_fc908808b1c7111dbfb518001e588be6
oai_identifier_str oai:https://tede.ufam.edu.br/handle/:tede/7775
network_acronym_str UFAM
network_name_str Biblioteca Digital de Teses e Dissertações da UFAM
repository_id_str 6592
spelling Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigosRecommended exercises for programming students in an automatic code correction environmentCodeBenchJuízes onlineFiltragem colaborativaSistema de recomendação de exercíciosProgramação IntrodutóriaCIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃOProgramação introdutóriaJuízes onlineSistemas de recomendaçãoFiltragem colaborativaMuitos alunos de disciplinas de Programação Introdutória (CS1) têm dificuldade em aprender a programar. Por isso, professores de programação têm utilizado juízes online para propor exercícios, realizar maratonas e campeonatos de programação, a fim de tentar melhorar a experiência de aprendizado dos alunos. No entanto, nos casos de juízes online que possuem em sua base de dados muitos exercícios cadastrados, o aluno poderá escolher um exercício que não seja adequado para seu nível de conhecimento. Nesse sentido, neste trabalho é proposto um sistema de recomendação de exercícios, que filtra exercícios por nível de dificuldade, em um juiz online chamado CodeBench. Esses exercícios são classificados manualmente por assuntos pelo professor, e o método proposto nesta pesquisa sugere exercícios ordenados pelo nível de dificuldade. Para isso, é utilizada a abordagem de recomendação de filtragem colaborativa para mapear as dificuldades experimentadas pelos alunos quando resolvem exercícios de programação no ambiente de desenvolvimento integrado do CodeBench. Após isso, é feita a predição de dificuldade dos exercícios que o aluno ainda não resolveu para, então, sugerir exercícios com graus de dificuldade crescentes. Este método de recomendação foi aplicado em uma base de dados com 645 alunos de graduação, distribuídos em 14 turmas de CS1, ministradas no ano de 2018, em uma universidade pública. A disciplina é dividida em 7 módulos, cada módulo possui duas listas de exercícios e uma prova. Em cada módulo foi feita a comparação da ordem original de resolução de exercícios com a ordem de resolução de exercícios proposta pelo método. Os resultados mostram que em 6 módulos da disciplina o método aqui proposto sugere uma ordem de resolução adaptada para cada aluno, com nível crescente de dificuldade.Many students in Introductory Programming (CS1) courses have difficulty learning to program. Therefore, programming teachers have used online judges to propose exercises, run marathons and programming championships, in order to try to improve the students' learning experience. However, in cases of online judges who have many registered exercises in their database, the student may choose an exercise that is not suitable for their level of knowledge. In this sense, this work proposes an exercise recommendation system, which filters exercises by level of difficulty, in an online judge called CodeBench. These exercises are classified manually by subjects by the teacher, and the method proposed in this research suggests exercises ordered by level of difficulty. For this, the collaborative filtering recommendation approach is used to map the difficulties experienced by students when solving programming exercises in the CodeBench integrated development environment. After that, the prediction of the difficulty of the exercises that the student has not yet solved is made to then suggest exercises with increasing degrees of difficulty. This recommendation method was applied to a database of 645 undergraduate students, distributed in 14 CS1 classes, taught in 2018, at a public university. The course is divided into 7 modules, each module has two lists of exercises and a test. In each module, the original order of exercise resolution was compared with the order of exercise resolution proposed by the method. The results show that in 6 modules of the discipline the method proposed here suggests an order of resolution adapted for each student, with increasing level of difficulty.Universidade Federal do AmazonasInstituto de ComputaçãoBrasilUFAMPrograma de Pós-graduação em InformáticaOliveira, Elaine Harada Teixeira dehttp://lattes.cnpq.br/6553721651836761Souto, Eduardo James Pereirahttp://lattes.cnpq.br/3875301617975895Carvalho, Leandro Silva Galvão dehttp://lattes.cnpq.br/6049960144667044Laranjeira, Dion Ribeirohttp://lattes.cnpq.br/70532778079122062020-04-24T02:34:46Z2020-03-27info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfLARANJEIRA, Dion Ribeiro. Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos. 2020. 110 f. Dissertação (Mestrado em Informática) - Universidade Federal do Amazonas, Manaus, 2020.https://tede.ufam.edu.br/handle/tede/7775porinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFAMinstname:Universidade Federal do Amazonas (UFAM)instacron:UFAM2020-04-24T05:03:45Zoai:https://tede.ufam.edu.br/handle/:tede/7775Biblioteca Digital de Teses e Dissertaçõeshttp://200.129.163.131:8080/PUBhttp://200.129.163.131:8080/oai/requestddbc@ufam.edu.br||ddbc@ufam.edu.bropendoar:65922020-04-24T05:03:45Biblioteca Digital de Teses e Dissertações da UFAM - Universidade Federal do Amazonas (UFAM)false
dc.title.none.fl_str_mv Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
Recommended exercises for programming students in an automatic code correction environment
title Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
spellingShingle Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
Laranjeira, Dion Ribeiro
CodeBench
Juízes online
Filtragem colaborativa
Sistema de recomendação de exercícios
Programação Introdutória
CIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃO
Programação introdutória
Juízes online
Sistemas de recomendação
Filtragem colaborativa
title_short Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
title_full Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
title_fullStr Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
title_full_unstemmed Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
title_sort Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos
author Laranjeira, Dion Ribeiro
author_facet Laranjeira, Dion Ribeiro
http://lattes.cnpq.br/7053277807912206
author_role author
author2 http://lattes.cnpq.br/7053277807912206
author2_role author
dc.contributor.none.fl_str_mv Oliveira, Elaine Harada Teixeira de
http://lattes.cnpq.br/6553721651836761
Souto, Eduardo James Pereira
http://lattes.cnpq.br/3875301617975895
Carvalho, Leandro Silva Galvão de
http://lattes.cnpq.br/6049960144667044
dc.contributor.author.fl_str_mv Laranjeira, Dion Ribeiro
http://lattes.cnpq.br/7053277807912206
dc.subject.por.fl_str_mv CodeBench
Juízes online
Filtragem colaborativa
Sistema de recomendação de exercícios
Programação Introdutória
CIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃO
Programação introdutória
Juízes online
Sistemas de recomendação
Filtragem colaborativa
topic CodeBench
Juízes online
Filtragem colaborativa
Sistema de recomendação de exercícios
Programação Introdutória
CIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃO
Programação introdutória
Juízes online
Sistemas de recomendação
Filtragem colaborativa
description Muitos alunos de disciplinas de Programação Introdutória (CS1) têm dificuldade em aprender a programar. Por isso, professores de programação têm utilizado juízes online para propor exercícios, realizar maratonas e campeonatos de programação, a fim de tentar melhorar a experiência de aprendizado dos alunos. No entanto, nos casos de juízes online que possuem em sua base de dados muitos exercícios cadastrados, o aluno poderá escolher um exercício que não seja adequado para seu nível de conhecimento. Nesse sentido, neste trabalho é proposto um sistema de recomendação de exercícios, que filtra exercícios por nível de dificuldade, em um juiz online chamado CodeBench. Esses exercícios são classificados manualmente por assuntos pelo professor, e o método proposto nesta pesquisa sugere exercícios ordenados pelo nível de dificuldade. Para isso, é utilizada a abordagem de recomendação de filtragem colaborativa para mapear as dificuldades experimentadas pelos alunos quando resolvem exercícios de programação no ambiente de desenvolvimento integrado do CodeBench. Após isso, é feita a predição de dificuldade dos exercícios que o aluno ainda não resolveu para, então, sugerir exercícios com graus de dificuldade crescentes. Este método de recomendação foi aplicado em uma base de dados com 645 alunos de graduação, distribuídos em 14 turmas de CS1, ministradas no ano de 2018, em uma universidade pública. A disciplina é dividida em 7 módulos, cada módulo possui duas listas de exercícios e uma prova. Em cada módulo foi feita a comparação da ordem original de resolução de exercícios com a ordem de resolução de exercícios proposta pelo método. Os resultados mostram que em 6 módulos da disciplina o método aqui proposto sugere uma ordem de resolução adaptada para cada aluno, com nível crescente de dificuldade.
publishDate 2020
dc.date.none.fl_str_mv 2020-04-24T02:34:46Z
2020-03-27
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv LARANJEIRA, Dion Ribeiro. Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos. 2020. 110 f. Dissertação (Mestrado em Informática) - Universidade Federal do Amazonas, Manaus, 2020.
https://tede.ufam.edu.br/handle/tede/7775
identifier_str_mv LARANJEIRA, Dion Ribeiro. Recomendação de exercícios para alunos de programação em um ambiente de correção automática de códigos. 2020. 110 f. Dissertação (Mestrado em Informática) - Universidade Federal do Amazonas, Manaus, 2020.
url https://tede.ufam.edu.br/handle/tede/7775
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal do Amazonas
Instituto de Computação
Brasil
UFAM
Programa de Pós-graduação em Informática
publisher.none.fl_str_mv Universidade Federal do Amazonas
Instituto de Computação
Brasil
UFAM
Programa de Pós-graduação em Informática
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFAM
instname:Universidade Federal do Amazonas (UFAM)
instacron:UFAM
instname_str Universidade Federal do Amazonas (UFAM)
instacron_str UFAM
institution UFAM
reponame_str Biblioteca Digital de Teses e Dissertações da UFAM
collection Biblioteca Digital de Teses e Dissertações da UFAM
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFAM - Universidade Federal do Amazonas (UFAM)
repository.mail.fl_str_mv ddbc@ufam.edu.br||ddbc@ufam.edu.br
_version_ 1809732039810744320