Avaliação Automática de Programas em Contexto de E-learning

A sociedade quotidiana está embebida na tecnologia. Várias atividades do nosso dia-a-dia estão diretamente ligadas e dependentes do mundo tecnológico. Isto torna-se mais evidente no contexto do MIEIC, onde todo o percurso académico está relacionado com software.

Sendo assim, no conjunto de métodos automáticos já implementados no curso, há realidades não enquadradas na ideologia da automação: o processo de correção de testes. Em unidades curriculares como LPOO e MPCP são usados IDEs para a resolução de exercícios de programação.

No entanto, o processo de correção é essencialmente manual, exigindo um esforço significativo dos docentes e uma espera acrescida dos alunos pelo feedback. Assim, o objetivo desta dissertação é desenvolver uma plataforma Web que permita a avaliação automática de programas desenvolvidos pelos alunos em contexto de exame.

A plataforma permitirá aos alunos submeterem o seu código e, posteriormente, num ambiente controlado e seguro (protegendo de código malicioso e/ou ciclos infinitos), executar o código e uma bateria de testes (disponibilizada pelo docente) comparando o output esperado com o obtido.

Por fim, a plataforma apresenta os resultados automaticamente ao aluno, bem como as estatísticas relativas ao tempo de execução. Esta dissertação envolverá, numa fase inicial, um estudo de várias ferramentas e frameworks existentes que permitem, sob diferentes contextos , a avaliação automática de código como o Mooshak ou o SPOJ com o objetivo de identificar pontos fortes que sejam passiveis de integração com o Moodle.

Posteriormente, a plataforma será desenvolvida seguindo um processo iterativo, em 3 fases: desenvolvimento de um servidor que permitirá a submissão do código e bateria de testes por parte do aluno e do docente, respetivamente; desenvolvimento de ambiente server-side responsável pela avaliação do código e retorno dessa mesma avaliação; desenvolvimento da interface de visualização do output esperado e obtido e das estatísticas relativas à execução. A ferramenta será validada recorrendo a contextos reais, as aulas de MPCP e LPOO. É expetável que a plataforma seja útil no processo de avaliação de código, onde o principal objetivo é proporcionar um ambiente mais propício para os alunos e mais seguro e automático para os docentes.

Fonte: José Alberto Carvalho Cardoso

Ler mais

Partilhar