Upload
allysonbarros
View
222
Download
0
Embed Size (px)
Citation preview
PotigolCodeAmbiente de apoio ao ensino de lógica de programação
através da linguagem de programação Potigol.
Allyson Bruno Campos Barros VilelaOrientador: Leonardo Reis LucenaCo-Orientador: Jailton Carlos Paiva
Motivação• As disciplinas de introdução à programação
são de extrema importância nos cursos de TI para a formação da lógica de programação e da habilidade de resolução de problemas. MOREIRA e FAVERO (2008)
• O processo de aprendizado de algoritmos é difícil e exigente para a maioria dos alunos ingressantes nos cursos de TI.
Motivação• Muitos alunos concluem as disciplinas de
programação sem ter um conhecimento mínimo adequado.Borges (2000 apud MOREIRA; FAVERO, 2008)
• Muitos abandonam o curso nos primeiros semestres devido às dificuldades encontradas durante o processo de ensino.Borges (2000 apud MOREIRA; FAVERO, 2008)
Problemas na aprendizagem de algoritmos• Ausência ou ineficácia de estratégias de
resolução lógica por parte dos alunos.RAABE e SILVA (2005)
• Diferença de experiência e ritmo de aprendizagem entre os alunos.RAABE e SILVA (2005)
• Dificuldade para motivar os alunos e os manter interessados na disciplina.PETRY e ROSATELLI (2006)
Problemas na aprendizagem de algoritmos• Grande número de alunos por turma,
dificultando a avaliação individual.RAABE e SILVA (2005)
• Lentidão na avaliação e feedback de todos os exercícios enviados pelos alunos.MOREIRA e FAVERO (2008)
• Outros problemas de ordem pessoal e/ou emocional.RAABE e SILVA (2005)
Objetivos• Desenvolver uma ferramenta de apoio para
o ensino e aprendizado de algoritmos que utilizasse a linguagem de programação Potigol.
• Permitir que a ferramenta possa ser utilizada nas disciplinas de programação do curso de Análise e Desenvolvimento de Sistemas do IFRN.
O PotigolCode• Ambiente web desenvolvido para auxiliar os
professores no ensino de disciplinas como Introdução à Programação, Orientação a Objetos e Paradigmas de Linguagens de Programação.
• Inspirado em aplicações web voltadas para o ensino das linguagens de programação Java, Python e Ruby como CodingBat.com , CodeCademy.com e TryRuby.org.
Requisitos Funcionais do Projeto• Gerenciamento de cursos e exercícios;
• Administração dos alunos e dos materiais de aula;
• Avaliação das respostas submetidas e geração de feedbacks através de testes automatizados;
• Pontuação automática e Ranking dos alunos.
Requisitos Não Funcionais do Projeto• Autenticação dos usuários e controle de
permissões;
• Disponibilidade de acesso de qualquer lugar e em qualquer horário através de um ambiente web;
• Bom desempenho para executar os testes automatizados com rapidez.
O PotigolCode
Fonte: Vilela (2012)
O PotigolCode
Fonte: Vilela (2012)
Tecnologias Utilizadas• Desenvolvido utilizando as linguagens de
programação Java e Scala através do Play Framework 2.0 e o banco de dados relacional MySQL.
• Utilizada a versão inicial e de testes da linguagem Potigol que é responsável pela execução dos algoritmos submetidos ao sistema.
Arquitetura do Sistema
Fonte: Vilela (2012)
Arquitetura do Sistema
Fonte: Vilela (2012)
Demonstração
Conclusão• O sistema mostrou-se uma boa ferramenta
de apoio para o ensino e aprendizagem da l inguagem Potigol , pois permite o gerenciamento dos cursos, exercícios e de seus materiais de aula.
• As funcionalidades de avaliação automática e o feedback imediato possibilitam maior rapidez na avaliação e feedback de todos os exercícios enviados pelos alunos durante as disciplinas.
Trabalhos Futuros• Aprimoramento da avaliação automática
das respostas dos exercícios e critérios de pontuação automática dos exercícios resolvidos pelos alunos;
• Implementação do acompanhamento das respostas enviadas a fim de avaliar o progresso e erros mais comuns mais cometidos pelos alunos
• Implementação de restrição temporal para a resolução dos exercícios;
Trabalhos Futuros• Criação de mecanismos de conquistas e
selos baseados na pontuação do aluno;
• Integração com as redes sociais permitindo o compartilhamento do progresso e conquistas;
• Integração e suporte à outras linguagens de programação como Java, Scala, Ruby, Python, C#, etc.
ReferênciasMOREIRA, Mireille Pinheiro; FAVERO, Eloi Luiz. Um Ambiente para Ensino de Programação.Disponível em: <http://www.ufpa.br/ppgcc/ppgcc/files/File/Seminario_Andamento/2008/EAD/artigo_1.1.pdf>. Acesso em: 22 out. 2012.
PETRY, Patrícia Gerent; ROSATELLI, Marta Costa. Ensino e Aprendizagem de Algoritmos com o AlgoLC. Disponível em: <http://www.lbd.dcc.ufmg.br/colecoes/sbie/2006/040.pdf>. Acesso em: 5 nov. 2012.
RAABE, André Luís Alice; SILVA, Júlia Marques Carvalho da. Um Ambiente p a r a A t e n d i m e n t o a s D i fi c u l d a d e s d e A p re n d i z a g e m d e Algoritmos. Disponível em: <http://200.169.53.89/download/CD%20congressos/2005/SBC%202005/pdf/arq0027.pdf>. Acesso em: 30 out. 2012.