Sistema Online de Conferências - IFMG Campus Bambuí, XIV Jornada Científica

Tamanho da fonte: 
Melhorando o processo de ensino-aprendizagem das disciplinas de lógica de programação por meio da gamificação
Rafael Borges de Assis, Gabriel da Silva

Última alteração: 2022-10-10

Resumo


O processo ensino-aprendizagem das disciplinas introdutórias de algoritmos e lógica de programação costuma ser desafiador para os alunos devido a diversos fatores. Um deles é a complexidade das linguagens textuais de programação. Na área da Computação, diversas ferramentas e estratégias foram desenvolvidas ao longo do tempo com o objetivo de facilitar o aprendizado. As linguagens textuais exigem que o aluno conheça muitas palavras e estruturas sintáticas dos comandos. Na década de 2000, foi desenvolvido o conceito de programação em blocos. Neste modelo, o aluno interage com os componentes gráficos da linguagem de forma visual, manipulando blocos que representam a solução do problema.  O próprio ambiente de programação em blocos guia o usuário no desenvolvimento dos algoritmos. Assim, o desenvolvedor em fase de aprendizado consegue escolher os blocos disponíveis e uni-los, sem se preocupar com erros de escrita do código. Atualmente, existem diversas aplicações que estimulam o aprendizado por meio da utilização de programação em blocos, como, por exemplo, o Scratch, o Screeps, o CodeinGame, dentre outros. A programação em blocos pode ser uma grande aliada para o processo de ensino aprendizagem e suas vantagens podem ser potencializadas se utilizada em conjunto com os conceitos de gamificação. A gamificação é um conceito criado para trazer as características dos jogos para as atividades de ensino-aprendizagem. Na educação, o conceito é utilizado a fim de atrair e estimular os alunos durante a fase de aprendizagem utilizando sistemas de objetivos e recompensas. Neste contexto, o presente projeto de pesquisa teve como objetivo principal facilitar o aprendizado dos alunos em disciplinas de lógica de programação, por meio do desenvolvimento de uma ferramenta que auxilie o professor e o aluno no processo de ensino aprendizagem, utilizando os conceitos de programação em blocos e gamificação. Foi proposto e implementado um ambiente de programação que permite ao professor preparar um exercício e uma solução algorítmica com um conjunto de entradas e respectivas saídas. O aluno acessa o enunciado da questão e constrói seu próprio algoritmo com os blocos disponíveis. Ao terminar o desenvolvimento, o aluno poderá submeter o algoritmo desenvolvido para verificação pelo próprio ambiente. O algoritmo é testado de forma automatizada pela aplicação utilizando os conjuntos de entrada e saídas previamente definidos pelo professor, gerando um retorno em tempo real para o aluno. Por utilizar o conjunto de entradas e saídas como validação, a aplicação concede a liberdade de desenvolver diversas soluções para um mesmo problema. Para o desenvolvimento foram utilizadas a tecnologia NodeJs e as bibliotecas React, React-blockly e Material UI. Como resultados parciais foram implementados o ambiente de programação com as seguintes funcionalidades: criação de exercício, resolução de exercício, validação de soluções, criação de usuários e controle de acesso. Nos próximos passos será implementada a estratégia da gamificação, que consistirá em definir trilhas de aprendizagem, compostas por exercícios de diferentes graus de dificuldade e conteúdos distintos, aos quais serão atribuídos pontos (premiação) após a execução de cada algoritmo com sucesso.

Palavras-chave: Gamificação; Programação em blocos; Educação; Algoritmos