Revista Brasileira de Computação Aplicada (Jun 2016)
Combinando técnicas de análise estática e avaliação dinâmica para avaliação de código em ambientes de aprendizagem de programação
Abstract
O aprendizado da programação tem se revelado desafiador para a maioria dos alunos do ensino superior. A estratégia de ensino empregada é geralmente o learning by doing, envolvendo a aplicação de vários exercícios de programação. Essas atividades são facilitadas por ferramentas que possibilitam aos alunos a submissão da solução dos exercícios pela internet e automatizam o processo de correção. Este trabalho apresenta um mecanismo de feedback, que combina técnicas de análise estática e avaliação dinâmica de código, e um mecanismo de cadastro de casos de teste pelo docente, que automatiza a geração de casos de teste pela validação da assinatura das classes a serem submetidas, agilizando assim a realização dessa atividade pelo professor. Este estudo foi integrado a um ambiente virtual de aprendizagem para apoiar as disciplinas de programação, que contém funcionalidades para cadastro de projetos de programação e submissão de soluções pelos alunos, chamado Feeper. Uma avaliação deste trabalho foi realizada com uma amostra de conveniência de treze estudantes de graduação e pós-graduação em informática que usaram Feeper para desenvolver projetos de programação por três semanas. Após esse período, foi aplicado um questionário com questões fechadas cujas respostas seguiam a escala Likert de concordância. Os resultados da avaliação sugerem que as melhorias propostas e implementadas no Feeper aumentaram a qualidade do auxílio dado pela ferramenta aos alunos durante a programação de suas soluções.