O que é o Virtual Programming Lab (VPL)?
De uma forma simples consiste num módulo para o servidor MOODLE que permite a criação de programas em diferentes linguagens online. Também é possível a compilação online desses mesmos programas.
No entanto, talvez seja melhor primeiro dizer o que é um servidor MOODLE (Modular Object-Oriented Dynamic Learning Environment).
Desse modo, o MOODLE é um software, na realidade um site que permite a gestão de diversas atividades de ensino ou educação. Da mesma forma, permite a criação de cursos online e disponibilização de recursos para apoio a cursos e disciplinas não só online. Assim, o MOODLE pode ser categorizado como uma ferramenta do tipo Learning Management System (LMS) e uma das suas grandes vantagens é ser gratuito.
Sendo o MOODLE um software livre e gratuito é possível criar módulos extra para aumentar as capacidades do mesmo. Finalmente, o módulo de VPL é um desses módulos que pode ser descarregado de forma gratuito e adicionado ao MOODLE.
Certamente com este módulo é possível criar atividades para os alunos de forma a poderem realizar exercícios, testes online. Assim é possível realizar exercícios e testes num ambiente mais controlado. Portanto, todos os alunos usam o mesmo compilador. Sobretudo é possível comparar de forma automática o programa elaborado pelo o aluno de forma automática e obter um valor de similaridade de forma a tentar descobrir trabalhos idênticos. Ademais é possível criar uma série de testes ao código e partir daí dar automaticamente uma nota ao exercício/teste realizado.
Ainda mais, é possível também criar uma série de testes ao código e partir daí dar automaticamente uma nota ao exercício/teste realizado.
Instalação do Módulo/Plugin
Não é recomendada a utilização do módulo VPL “sozinho” é aconselhado o uso do “VPL-jailserver” de forma à compilação ser feita de forma isolada e numa máquina que não o moodle.
Instalação do plugin no moodle.
Com efeito, faça o download do plugin adequado à versão do moodle instalado em: http://vpl.dis.ulpgc.es/index.php/home/download
Desse modo, ao clicar na ligação da versão será encaminhado para a página de plugins do moodle.
Após ter completado o download, aceda como administrador ao moodle.
Posteriormente escolha a opção “Administração do Site” e de seguida opção “Módulo” e depois “Instalar Módulo”
Finalmente, arraste o ficheiro em formato .zip que foi descarregado da página plugins. Posteriormente clique em “Instalar módulo a partir de ficheiro ZIP” e aguardar.
Deverá ser apresentada uma nova página para validar a instalação do módulo VPL.
Assim que esta for apresentada, clique no botão “Atualizar agora a base de dados do Moodle” e aguarde novamente. Em caso de sucesso deverá ser apresentada uma mensagem, como a de baixo. Clique em “Continuar” para avançar.
Certamente que o módulo ficou instalado na pasta mods/ que se encontra na pasta do moodle (usualmente /opt/moodle/).
Configurar módulo VPL
Agora é necessário fazer as configurações do módulo VPL. Também deve ser instalado o servidor de jails vpl. Conforme já fora referido, serve para a execução dos programas submetidos no VPL não serem executados na mesma máquina que o moodle e serem executados numa jail de Linux de forma a limitar as suas permissões.
As configurações devem ser feitas de acordo com as necessidades previstas. Todavia, é boa prática limitar o tempo de execução de um programa de forma a não gerar demasiado congestionamento no servidor. Também deve ter em atenção ao número de processo em simultâneo e máximo de memória usada. Ademais é também aqui que se indica o jailserver.
Assim que possível remover o servidor de exemplo, pelo nosso jailserver.
Após realizar as alterações necessárias clique em “Guardar Alterações”.
A partir de agora podemos criar atividades do tipo VPL na disciplina que desejarmos. Assim, a criação de uma atividade é simples. Basta apenas entrar em modo de edição da disciplina e acrescentarmos uma atividade do tipo VPL.
Teste da disciplina – “Hello World”
Depois é só programar.
No próximo artigo vamos instalar o VPL-jailserver e integrá-lo com o MOODLE.