01 ago 2024
09:00 Defesa de Doutorado Auditório do IC3
Tema
Problemas de Compreensão em Códigos Corretos: Auxiliando Instrutores e Alunos ao Iluminar o que é Potencialmente Ofuscado pela Correção Automática
Aluno
Eryck Pedro da Silva
Orientador / Docente
Rodolfo Jardim de Azevedo - Coorientador: Ricardo Edgard Caceffo
Breve resumo
Um dos desafios do ensino-aprendizagem de introdução à programação em universidades (CS1) é a elaboração de feedback adequado aos estudantes: um elevado número de alunos por turma gera dificuldades ou mesmo inviabiliza a interação individual entre instrutor e discente. Nesse cenário, a geração de feedback costuma ser realizada por meio de sistemas de avaliação automática de código. No entanto, como essas ferramentas costumam apenas verificar se o código está correto, outras características presentes podem estar sendo ignoradas. Nesta tese, foram identificados Problemas de Compreensão em Códigos Corretos (PC³), que são comportamentos que potencialmente indicam compreensões incompletas ou erradas sobre os conceitos de CS1. Ao todo, 45 PC³ foram identificados ao analisar manualmente 2,441 códigos de alunos em uma turma de introdução à programação em Python lecionada no paradigma estruturado. A validação inicial dos PC³ foi realizada por meio de consulta docente e discente, com o objetivo de identificar as potenciais causas dos alunos cometerem esses comportamentos. A consulta com os docentes também permitiu listar 15 PC³ considerados como mais graves, ou seja, que possuem maior prioridade de correção em sala de aula. Com foco da tese redirecionado para esses PC³ mais graves, foram construídos artefatos educacionais para auxiliar o ensino e a aprendizagem de CS1 com respeito a esses comportamentos: uma ferramenta de detecção automática e a elaboração de materiais didáticos que abordam a explicação do porquê esses PC³ devem ser evitados. A ferramenta de detecção automática foi utilizada em um estudo em larga escala para avaliar a frequência dos PC³ mais graves ao longo de oito semestres letivos de uma disciplina de CS1, totalizando mais de 40.000 submissões. Os resultados obtidos demonstram que os PC³ mais graves ocorrem continuamente ao longo de um semestre letivo, não aparentando serem corrigidos por conta própria dos alunos. Metade desses PC³ mais graves englobam tópicos sobre comandos de decisão e de repetição, assuntos cruciais em CS1. A outra metade diz respeito a uma despreocupação discente em manter organização e legibilidade dos códigos. Os materiais educacionais foram avaliados em um estudo de caso com 23 discentes de uma turma de CS1. Os resultados obtidos sugerem que a instrução, dentro ou fora de sala de aula, tem o poder de influenciar tanto a ocorrência como a correção de PC³. No entanto, somente a aplicação de materiais não aparenta ser suficiente para mitigar PC³, pois o ambiente educacional precisa reforçar, em mais aspectos, a necessidade dos discentes evitarem esses comportamentos. Esta tese propõe que docentes e discentes de disciplinas de introdução à programação atentem-se para a verificação dos PC³ além da corretude dos códigos, pois os resultados sugerem que os alunos obtêm aprovação nessas disciplinas podendo obter nota máxima, mas ainda assim carregando uma compreensão incompleta ou errada dos conceitos aprendidos.
Banca examinadora
Titulares:
Rodolfo Jardim de Azevedo IC/UNICAMP
Jacques Wainer IC/UNICAMP
Julio Cesar dos Reis IC/UNICAMP
Rodrigo Silva Duran IFMS
Leandro Silva Galvao de Carvalho IComp/UFAM
Suplentes:
Ricardo de Oliveira Anido IC/UNICAMP
Yorah Bosse CPPP/UFMS
Ronaldo Celso Messias Correia FCT/UNESP