Post on 21-Jul-2022
UNIVERSIDADE FEDERAL RURAL DO SEMIÁRIDO
PRÓ-REITORIA DE GRADUAÇÃO
CENTRO MULTIDISCIPLINAR DE ANGICOS
CURSO DE LICENCIATURA EM COMPUTAÇÃO E INFORMÁTICA
JOÃO PEDRO DE MORAIS FIGUEIREDO
UTILIZAÇÃO DA FERRAMENTA COMPUTE IT PARA INTRODUÇÃO À LÓGICA
DE PROGRAMAÇÃO
ANGICOS/RN
2019
JOÃO PEDRO DE MORAIS FIGUEIREDO
UTILIZAÇÃO DA FERRAMENTA COMPUTE IT PARA INTRODUÇÃO À LÓGICA
DE PROGRAMAÇÃO
Monografia apresentada à Universidade Federal Rural do Semiárido como requisito para obtenção do título de Licenciado em Computação e Informática. Orientadora: Profª. Me. Luana Dantas Chagas.
ANGICOS/RN
2019
© Todos os direitos estão reservados a Universidade Federal Rural do Semi-Árido. O conteúdo desta obra é de inteiraresponsabilidade do (a) autor (a), sendo o mesmo, passível de sanções administrativas ou penais, caso sejam infringidas as leisque regulamentam a Propriedade Intelectual, respectivamente, Patentes: Lei n° 9.279/1996 e Direitos Autorais: Lei n°9.610/1998. O conteúdo desta obra tomar-se-á de domínio público após a data de defesa e homologação da sua respectivaata. A mesma poderá servir de base literária para novas pesquisas, desde que a obra e seu (a) respectivo (a) autor (a)sejam devidamente citados e mencionados os seus créditos bibliográficos.
O serviço de Geração Automática de Ficha Catalográfica para Trabalhos de Conclusão de Curso (TCC´s) foi desenvolvido pelo Institutode Ciências Matemáticas e de Computação da Universidade de São Paulo (USP) e gentilmente cedido para o Sistema de Bibliotecasda Universidade Federal Rural do Semi-Árido (SISBI-UFERSA), sendo customizado pela Superintendência de Tecnologia da Informaçãoe Comunicação (SUTIC) sob orientação dos bibliotecários da instituição para ser adaptado às necessidades dos alunos dos Cursos deGraduação e Programas de Pós-Graduação da Universidade.
F475u Figueiredo, João Pedro de Morais. Utilização da Ferramenta Compute It paraintrodução a lógica de programação / João Pedro deMorais Figueiredo. - 2019. 43 f. : il.
Orientadora: Luana Dantas Chagas. Monografia (graduação) - Universidade FederalRural do Semi-árido, Curso de Computação eInformática, 2019.
1. Computação. 2. Disciplinas de Programação. 3.Compute It. 4. Ferramenta Educacional. 5. Ensino-Aprendizagem. I. Dantas Chagas, Luana, orient.II. Título.
Dedico esse trabalho a todos os meus professores
que me ajudaram em minha carreira
acadêmica/estudantil, desde minha formação
infantil, ensino básico até o ensino superior,
reconhecendo que apesar das dificuldades e
injustiças para a classe, consegui minha
formação acadêmica por meio da dedicação e
esforço empregado por eles. Dedico também a
meu pai, minha mãe e meu irmão.
AGRADECIMENTOS
Agradeço primeiramente a minha família pelo apoio em todas as formas e sentidos que
puderem existir, onde apesar das dificuldades, sempre se esforçaram para me manter
estudando e seguem sendo meu pilar. Agradeço também a minha companheira Juscelly Silva,
por estar ao meu lado independente do momento e me apoiar em minhas decisões. Agradeço
aos meus amigos que sempre compartilharam bons momentos comigo e me deram forças pra
continuar e agradeço também aos meus orientadores que me ajudaram a realizar este trabalho
e concluir mais essa etapa, Luana Dantas Chagas e Sairo Raoni dos Santos.
RESUMO
O presente trabalho traz um estudo sobre a utilização da ferramenta Compute It como auxílio
no desenvolvimento do raciocínio lógico de alunos de períodos iniciais de cursos na área de
computação que estão iniciando estudos nas disciplinas de programação. A proposta é a
utilização da ferramenta como instrumento principal no desenvolvimento do raciocínio lógico
na resolução de problemas em algoritmos. O estudo foi aplicado aos discentes da
Universidade Federal Rural do Semi-Árido, campus Angicos, dos cursos de Bacharelado em
Sistemas de Informação e Licenciatura em Computação e Informática, que estavam
matriculados na disciplina de Algoritmos e Programação I. Para tal, os estudantes foram
divididos em três grupos que participaram de aulas simultâneas sobre um mesmo conjunto de
conceitos, na qual as aulas diferiram na técnica de ensino utilizada: exposição com Portugol,
programação com a ferramenta Visualg e interação com a ferramenta online Compute It. As
análises feitas indicaram que os primeiros resultados com o uso da ferramenta Compute It são
positivos, não obstante eles exijam um acompanhamento por um período de tempo mais longo
para que seus resultados possam ser efetivamente comprovados. Desta forma, acredita-se que
esta ferramenta pode possibilitar melhorias no processo de ensino-aprendizagem das
disciplinas de programação; contudo, não se deve menosprezar outras ferramentas didáticas,
tais como aulas expositivas, visto que o jogo é um complemento e não método absoluto de
ensino.
PALAVRAS-CHAVE: Computação. Disciplinas de programação. Compute It. Ferramenta
educacional. Ensino-aprendizagem.
ABSTRACT
The present work presents a study about the use of the Compute It tool in the development of
the logical reasoning of students from initial periods of courses in the area of computation that
are beginning studies in the programming disciplines. The proposal is the use of the tool as a
main tool in the development of logical reasoning in problem solving in algorithms. The study
has been applied to the students of the Federal University of the Semi-Arid, Angicos campus,
of the courses of Bachelor of Information Systems and Graduation in Computing and
Computer Science, that were enrolled in the discipline of Algorithms and Programming I .
The students were divided into three groups that participated in simultaneous classes on a
same set of introductory concepts related to the logic of programming. The classes differed in
the teaching technique used to present and exercise the concepts: exposition with Portugol,
programming with the tool Visualg and interaction with the online tool Compute It. The
analyzes indicated that the first results with the use of this methodology are positive,
nevertheless they require monitoring for a longer period of time so that their results can be
effectively proven. In this way, it is believed that this tool can enable improvements in the
teaching-learning process of the programming disciplines; however, one should not overlook
other teaching tools, such as lectures, since the game is a complement not an absolute method
of teaching.
Keywords: Computing. Programming disciplines. Compute It. Educational Tool.
Teaching-learning.
LISTA DE FIGURAS
Figura 1 - Exemplo de Fluxograma e seus símbolos 19
Figura 2 - Cálculo de média aritmética utilizando fluxograma 21
Figura 3 - Pseudocódigo para realizar uma soma 22
Figura 4 - Interface gráfica da ferramenta VisualG 23
Figura 5 - Interface gráfica da ferramenta PortugolStudio 24
Figura 6 - Interface gráfica da ferramenta PortugolIDE 2 5
Figura 7 - Interface do Jogo Compute IT 2 9
Figura 8 - Fase do Jogo Educacional Compute-It 30
LISTA DE QUADROS
Quadro 1 - Conhecimento prévio em programação 34
Quadro 2 - Importância da disciplina de programação segundo os alunos 34
Quadro 3 - Receptividade a metodologia aplicada 35
Quadro 4 - Comparação da metodologia aplicada com as metodologias tradicionais 35
Quadro 5 - Perspectiva sobre a dificuldade na continuação da disciplina 36
Quadro 6 - Contribuição da metodologia no aprendizado em lógica de programação 36
Quadro 7 - Perspectiva de metodologias semelhantes no restante da disciplina 37
Quadro 8 - Motivação acerca do restante da disciplina 37
11
SUMÁRIO
1. INTRODUÇÃO 12
1.1. JUSTIFICATIVA 13
1.2 OBJETIVOS 15
1.2.1 OBJETIVO GERAL 15
1.2.2 OBJETIVOS ESPECÍFICOS 15
2. REFERENCIAL TEÓRICO 16
2.1 FERRAMENTAS DE ENSINO 19
2.1.1 FLUXOGRAMAS 20
2.1.2 PSEUDOCÓDIGOS 22
2.1.3 JOGOS EDUCACIONAIS 26
3. FERRAMENTA COMPUTE-IT 30
4. COMPUTE IT NO DESENVOLVIMENTO DO RACIOCÍNIO LÓGICO 33
4.1. RESULTADOS 34
6. CONSIDERAÇÕES FINAIS 40
6.1. TRABALHOS FUTUROS 41
REFERÊNCIAS BIBLIOGRÁFICAS 42
APÊNDICE 44
12
1. INTRODUÇÃO
O presente trabalho traz um estudo sobre a utilização da ferramenta Compute It no
desenvolvimento do raciocínio lógico de alunos do primeiro período dos cursos de Sistemas
de Informação e Licenciatura em Computação e Informática que estão iniciando estudos nos
componentes curriculares de programação. A proposta é a utilização da ferramenta como
instrumento auxiliar no desenvolvimento do raciocínio lógico na resolução de problemas em
algoritmos.
As disciplinas de programação apresentam um acentuado índice de desistência por
conta de problemas na aprendizagem dos alunos. Pereira Junior (2005) relata que este é um
dos principais fatores que fazem com que a quantidade de alunos de cursos de computação
que se formam na universidade seja consideravelmente inferior à quantidade de alunos que
entram nesses cursos. As causas podem ser diversas, porém, se observa que a maior
dificuldade dos alunos se refere ao raciocínio lógico, já que a prática mais comum em sala de
aula é primeiro os alunos aprenderem a sintaxe de uma linguagem de programação, quando o
mais necessário seria aprender primeiro lógica de programação (GOMES, 2008). Por esse
motivo, muitos alunos não conseguem ter sucesso nas disciplinas.
Gomes e Mendes (2000) afirmam que aprender lógica de programação é um processo
que exige muito dos alunos e dos professores, por isso se faz necessário à busca por novas
ferramentas que diminuam a dificuldade de aprendizado e que torne o processo mais eficaz.
Por ser um processo lento, muitas vezes, ao perceber que quanto mais estuda, mais ainda tem
para aprender, o estudante se vê incapaz de alcançar os objetivos almejados, encontrando
desestímulos no caminho. Para programar, exige-se um nível de concentração alto,
disponibilidade de tempo contínuo e força de vontade para superar os diversos erros com que
o aluno pode se deparar ao desenvolver programas. Erros esses que vão desde problemas de
sintaxe até problemas no raciocínio utilizado.
Em pesquisa desenvolvida na Faculdade de Filosofia, Ciências e Letras de Caruaru,
Souza & França (2013) apresentam um retrato da realidade vivenciada por alunos do primeiro
ao quarto período do curso de Análise e Desenvolvimento de Sistemas naquela Unidade. Tal
pesquisa aponta que pouco mais de 80% dos estudantes figuram a lógica de programação e a
metodologia aplicada pelos professores como principais dificuldades.
13
Nesse contexto, o objetivo deste projeto é propor a utilização de uma ferramenta para
tornar o aprendizado de lógica de programação mais eficiente e lúdico, estimular o aluno e
diminuir as suas dificuldades, se diferenciando de outras abordagens.
1.1. JUSTIFICATIVA
Estudos mostram que muitos alunos desistem dos cursos logo no primeiro ano do
ensino superior, sendo as disciplinas causadoras desta desistência aquelas associadas ao
ensino de cálculo e de programação (MORA e GIRAFFA, 2013). Grande parte dos estudantes
apresentam dificuldades em aprender os conceitos iniciais, aumentando cada vez mais, o
índice de evasão e reprovação nas disciplinas desta área (PRIETCH E PAZETO , 2010).
Segundo DETERS et al (2008), as disciplinas de programação possuem índices
elevados de reprovação, podendo chegar a 60% em uma turma com média de cinquenta
alunos. Ela cita:
No processo de ensino-aprendizagem existem quatro
componentes que interagem: aluno, professor, disciplina a ser
lecionada e as condições ambientais, que quando relacionadas
adequadamente fazem com que o processo flua sem apresentar
problemas. Mas quando algo de errado acontece com um ou mais
componentes o processo passa a ser dificultado, podendo culminar
em vários problemas, dentre eles o alto índice de reprovação na
disciplina em questão.
Diante desse cenário, os professores e pesquisadores dessas disciplinas devem ter a
grande responsabilidade de buscar e aperfeiçoar a maneira com que ensinam, a fim de
diminuir tais reprovações e desistências.
De acordo com Gomes (2008), existe uma grande dificuldade em compreender e
aplicar conceitos de programação por parte de uma percentagem significativa dos alunos que
frequentam disciplinas introdutórias. Existem razões que tornam o processo de aprendizagem
de programação difícil, como a falta de motivação, dificuldade de compreender o problema
14
proposto, dificuldade de aplicar o raciocínio-lógico para resolver o problema, etc, e as
abordagens tradicionais não conseguem resolver esse problema de forma eficaz.
Borges (2000) explica que o “modo tradicional” se caracteriza pelas seguintes etapas:
(1) Apresentação da teoria, (2) Apresentação de exemplos práticos, (3) proposição de
exercícios práticos e (4) proposição de projetos complexos. Esse método de ensino é usado
em outras áreas de conhecimento, mas essa forma apresenta uma série de inconvenientes. Os
inconvenientes que o autor cita são: a motivação dos alunos que é inexistente neste método e
as dificuldades no primeiro ano de curso, principalmente para aqueles que não possuem
conhecimento básico de informática. A falta de motivação acaba se tornando um fator crítico
na aprendizagem do aluno, tornando o conteúdo mais difícil de ser assimilado.
Cravo (2012, p. 3) diz que mesmo com muitas opções disponíveis no mercado de
trabalho para um profissional de informática, muitos desistem do curso antes de se formarem.
De acordo com uma análise da Cisco Systems, empresa mundial líder em TI, quatrocentos e
cinquenta mil postos de trabalho não serão preenchidos no Brasil em 2019, sendo que
cinquenta mil destas vagas, ou seja, onze por cento, estão à espera de um profissional de TI
qualificado. A tendência desses números destinados a área de TI é crescer cada vez mais, visto
que a digitalização dos serviços acontece de forma abrangente no país, porém mesmo com o
mercado aquecido para a área, os cursos de computação não conseguem atender essa
demanda.
Gomes (2008) aponta que muitas vezes os alunos passam a vida acadêmica inteira
sendo bem-sucedidos com metodologias de ensino que requerem leituras sucessivas,
memorização de fórmulas e procedimentos mecânicos. Isso contraria as habilidades
necessárias para o aprendizado de lógica de programação, que exige prática intensiva e uma
boa metodologia de ensino para uma verdadeira compreensão do conteúdo e reflexão acerca
dos problemas a serem resolvidos. Assistir às aulas e buscar estudo em leituras acaba não
sendo o suficiente, sendo necessário motivação para se obter sucesso, além de um trabalho
intenso fora de sala de aula.
Santos e Costa (2006) relatam que o estudo de programação não deve se restringir ao
estudo de linguagens, deve existir um abrangente entendimento dos problemas e suas formas
de resolução, para que só então sejam codificadas em uma linguagem. Desta forma, este
15
trabalho busca investigar os possíveis benefícios da utilização da ferramenta Compute-It,
ferramenta esta que busca estimular o raciocínio lógico do aluno para resolver problemas em
forma de algoritmo sem depender de uma linguagem de programação específica.
1.2 OBJETIVOS
1.2.1 OBJETIVO GERAL
Investigar o uso da ferramenta Compute It no desenvolvimento do raciocínio lógico de
discentes matriculados em cursos na área de Computação.
1.2.2 OBJETIVOS ESPECÍFICOS
● Realizar pesquisa bibliográfica sobre a ferramenta Compute It;
● Elaborar experimento para verificar benefícios da ferramenta Compute It;
● Aplicar o experimento em discentes matriculados em disciplinas iniciais de
programação;
● Identificar os benefícios do uso da ferramenta Compute It.
16
2. REFERENCIAL TEÓRICO
Podemos compreender por software uma sequência de instruções escritas para serem
interpretadas por um computador com o objetivo de executar tarefas específicas. Pode ser
definido ainda, como os programas que comandam o funcionamento de um computador. O
software é classificado como a parte lógica do computador, sua função é fornecer instruções
para o hardware . Já o hardware é toda a parte física que constitui o computador, por exemplo,
a CPU, a memória e os dispositivos de entrada e saída.
O ensino de programação tem como propósito fazer o aluno adquirir competências
para produzir softwares com qualidade que sejam capazes de resolver problemas reais. De
acordo com Lima e Meirelles (2015), esta disciplina é uma das principais para os cursos da
área de computação, tendo por objetivo treinar a mente, a lógica e a linguagem das máquinas.
De Santiago e Dazzi (2004) ressaltam a importância da disciplina de programação sobretudo
para a formação dos discentes que pretendem desenvolver softwares como produto final do
seu trabalho.
De acordo com Rocha et al. (2010), a compreensão dos conceitos base de programação
é fundamental para todo decorrer de um curso na área de computação. Ainda de acordo com o
autor, a apropriação ou não dos conceitos iniciais de programação tem relação direta com o
desempenho do aluno no decorrer de todo o curso; desta forma, se um aluno segue para outra
disciplina sem esse conhecimento terá dificuldades para entender e implementar alguns outros
conceitos.
Muitos cursos optam por desde o início abordar conceitos básicos como variáveis,
tipos de dados e constantes. Concomitantemente são apresentados: operadores de atribuição,
comandos de entrada e saída de dados, relacionais, aritméticos e lógicos (SOUZA, 2009,
p.01). No entanto, esse método de apresentação dos conteúdos por vezes apresenta
dificuldades durante seu processo de aprendizado, o que pode acontecer pelas mais diversas
causas.
Uma dessas causas refere-se ao fato de que quando ingressa em um curso superior o
aluno está em um cenário onde há pouca ou nenhuma base acadêmica anterior relativa a
computação. Assim, muito do que foi aprendido no ensino básico não o ajuda a assimilar os
novos conteúdos, o que pode contribuir para que ele opte por desistir não somente de
17
disciplinas, como do curso de graduação. Gomes et. al. (2008) apontam também que algumas
dificuldades residem precisamente na “compreensão e, em particular, na aplicação de noções
básicas, desde as estruturas de controle à criação de algoritmos que resolvam problemas
concretos”.
Outro ponto, destacado por Rocha et. al. (2010), refere-se às exigências
lógico-matemáticas predominante nas disciplinas de programação, em que o aluno deveria ter
domínio sobre tais conceitos. Concomitantemente a isto, os autores também relatam sobre a
dificuldade de absorção do conteúdo, o ritmo de aula do professor e consequentemente o
ritmo de aprendizagem de cada aluno.
Segundo Lima e Meirelles (2015, p.168):
Alunos que não dominam lógica de programação
costumam ter grandes dificuldades em cadeiras de linguagem de
programação como estrutura de dados e programação orientada a
objetos. Quando não são estimulados a estudarem além da sala de
aula e os professores não procuram motivar os alunos, o processo de
aprendizagem torna-se difícil.
Esses desestímulos causados pelas dificuldades de aprendizagem ao longo do curso
podem gerar a reprovação de muitos alunos, até mesmo a desistência da formação. Prietch e
Pazeto (2010) afirmam que disciplinas de programação podem ser determinantes para a
desistência, visto que costumam ter altos índices de evasão e reprovação, dificultando ou
impedindo a continuidade dos alunos nos cursos de computação.
Compreender lógica de programação é uma tarefa que exige bastante do aluno e
quando não consegue, ele acredita que não consegue programar, mesmo quando se esforça e
uma vez que ele não aprende, terá dificuldades nas disciplinas de programação restantes no
currículo (LIMA e MEIRELLES, 2015). Segundo Gomes et. al. (2008, p.162), aprender a
programar é complexo e requer esforço, perseverança e uma abordagem especial no que
concerne à forma de estudo e de ensino. Há um conjunto de habilidades envolvidas que vão
muito além de saber a sintaxe da linguagem. Mais especificamente, o autor aponta quatro
questões cruciais nas metodologias de ensino de programação que atrapalham o aprendizado:
18
1. O ensino não é personalizado. Os prazos apertados para o cumprimento das
disciplinas e a grande quantidade de alunos por turma acaba fazendo com que
não se dê a atenção necessária individual a cada aluno.
2. As estratégias utilizadas não contemplam os estilos de aprendizagem dos
alunos. O professor acaba sendo forçado a ensinar a todos de forma genérica,
fazendo assim com que o ensino seja prejudicado, visto que cada aluno tem sua
forma de aprender.
3. Os conceitos de programação e seu dinamismo é geralmente apresentado de
forma estática. Tais conceitos se interligam constantemente uns com os outros
e explicações verbais, apresentação de slides, diagramas, desenhos, textos, etc.,
podem não atingir o englobamento necessário, não promovendo um pleno
aprendizado e provocando confusão no aluno.
4. Os professores estão mais preocupados em promover o ensino da linguagem de
programação e seus detalhes de sintaxe do que englobar a lógica de
programação e resolução de problemas.
Para superar tais dificuldades é imprescindível um grande estudo sobre as deficiências
do sistema de ensino de programação, além de profissionais inovadores, capazes de unir
inteligência e dinamismo na busca de soluções, principalmente na área da informática, que
envolve tecnologias em constante desenvolvimento. Da mesma forma que essas tecnologias
evoluem constantemente, se faz necessária a atualização das didáticas de ensino nessa área
(SANTOS e COSTA, 2006, p.1), já que são as novas abordagens que facilitam o processo de
ensino-aprendizagem da programação, tais como o uso de ferramentas nos estágios iniciais do
ensino de programação (SOUZA, 2009).
Lima e Meirelles (2015) apontam que as ferramentas são recursos que podem auxiliar
tanto o professor como o aluno, já que elas permitem a resolução dos problemas por meio da
simulação, observação e análise num maior nível de facilidade, podendo o aluno visualizar e
corrigir erros enxergando o problema como um todo, sendo esse artifício essencial para
aprendizes em programação.
19
2.1 FERRAMENTAS DE ENSINO
Quando tratamos de sala de aula, do processo de ensino-aprendizagem, a metodologia
que será utilizada pelo professor é determinante na compreensão e assimilação do conteúdo
abordado. As ferramentas de ensino são recursos que podem ajudar tanto o professor, quanto o
aluno em sua motivação (LIMA e MEIRELLES, 2015). “A utilização de uma ferramenta
computacional para os alunos confeccionarem seus algoritmos [...] é, antes de tudo, um
grande motivador do processo de ensino aprendizagem” (DAZZI, MIRANDA, SOUZA,
2000). Tais ferramentas permitem uma maior visão sobre o problema por meio de simulação,
observação e análise em um maior nível de facilidade.
Segundo Souza (2009), a utilização dessas ferramentas possibilitam que muitos dos
obstáculos encontrados pelos alunos, que dificultam a compreensão dos assuntos, sejam
minimizados. Lima e Meirelles (2015, p.168) afirmam que:
Existem diferentes metodologias/ferramentas de ensino que
abordam a aprendizagem de lógica de programação de uma forma
simples sem a necessidade de ter logo no início o formalismo de
uma linguagem de programação que tem suas expressões em inglês
e pode comprometer o aluno a usar uma IDE ( Integrated
Development Environment ), um ambiente integrado para o
desenvolvimento de software, podendo dificultar o aluno a entender
a lógica e causar o desânimo.
Analisando os autores, pode se constatar que o uso dessas ferramentas traz benefícios
para os alunos, facilitando a aprendizagem e principalmente criando maneiras mais simples de
internalizar um conteúdo tão complexo. Santos e Costa (2006) alegam que uso de ferramentas
educacionais computacionais podem ser trabalhadas de forma a ajustar algumas propostas
pedagógicas, focando na área de computação. Para Souza (2009):
As dificuldades enfrentadas no início do aprendizado de
programação e a própria característica da disciplina indicam que o
ensino convencional deve ser deixado de lado e que o uso de
ferramentas de auxílio ao aprendizado deve ser estudado e
difundido para que o rendimento dos alunos seja melhorado (Souza,
2009, p.08).
20
Desta forma, devemos valorizar a utilização das ferramentas de ensino e
implementá-las cada vez mais para facilitar a aprendizagem da programação. De acordo com
Lima e Meirelles (2015), algumas das ferramentas mais comumente adotadas em sala de aula
no ensino de programação são os fluxogramas, pseudocódigos e jogos educativos.
2.1.1 FLUXOGRAMAS
De acordo com Lima & Meirelles (2015), os fluxogramas são a representação de um
processo, por meio de símbolos gráficos, que descrevem passo a passo a natureza e o fluxo
deste processo. O objetivo dessa ferramenta é mostrar de forma descomplicada o fluxo das
informações e elementos que o compõem, mostrando a sequência que caracteriza o trabalho
que está sendo executado.
O fluxograma possui uma sintaxe em que cada símbolo gráfico possui um significado.
Assim, há símbolos para determinar início e fim da sequência do algoritmo, símbolo para
fluxo de ações, para processamento de dados, para decisão de uma condição e leitura de
dados. Tais símbolos são ilustrados na Figura 1.
Figura 1 - Exemplo de Fluxograma e seus símbolos
Fonte: Lima & Meirelles (2015)
21
De acordo com a Figura 1, temos o círculo que representa a condição de início e fim
do fluxograma. Portanto, esse símbolo deve ser o primeiro a ser utilizado na representação de
um algoritmo, indicando que a representação começou, bem como o último, indicando que a
representação acabou. O losango determina que há alguma condição a ser avaliada,
possibilitando diferentes fluxos de ações de acordo com o resultado da avaliação. Por
exemplo, em um algoritmo para determinar se um empregado deve ganhar horas extras após
uma semana de trabalho, nesse passo do algoritmo poderia ser avaliada uma condição para
verificar se a quantidade de horas trabalhadas no dia foi superior a quarenta horas. O
retângulo determina que algum processamento de dados está acontecendo. Por exemplo,
considerando o algoritmo para verificar as horas extras do trabalhador, o cálculo para
verificar a quantidade de horas trabalhadas na semana estaria dentro de um retângulo. O
símbolo que envolve o retângulo com a linha curva indica que há uma leitura de dados. No
caso do algoritmo das horas extras, esse símbolo seria utilizado para inserir no programa a
quantidade de horas que foi trabalhado em cada dia. Por fim, as linhas ligam os outros
símbolos, indicando em qual direção e sentido deve ser feita a leitura do fluxograma.
Gondim (2008) destaca como vantagem do uso dos fluxogramas três importantes
fatores: (1) fluxogramas possuem uma sintaxe mínima. Quando se reduz o foco em sintaxe,
pode-se aumentar o esforço em análise; (2) fluxogramas são uma representação universal.
Nenhum outro sistema visual alcançou a aceitação dos fluxogramas e (3) fluxogramas são
mais fáceis do que estrutura de código para estudantes iniciantes em computação. O próprio
autor demonstra por meio de estudos que estudantes iniciantes em algoritmos cometem menos
erros, têm maior confiança e resolvem problemas representados por algoritmos simples e
médios mais rapidamente, quando utilizam fluxogramas.
Na Figura 2 é ilustrado um fluxograma sobre um algoritmo que produz uma média
entre duas notas. O fluxograma inicia no símbolo “INÍCIO” que significa o ponto de partida
do algoritmo. Na sequência, o fluxograma faz uma leitura de dados recebendo o valor de duas
notas. O passo seguinte é realizar um processamento desses dados, onde é feito o cálculo da
média aritmética. Na sequência, o fluxograma passa para uma condição de decisão, em que é
verificado se a média é maior ou igual a 6. Essa condição permite duas ações possíveis: se a
nota for maior ou igual a 6, o algoritmo imprimirá o valor “Aprovado”; se a nota for menor
22
que 6, o algoritmo imprimirá “Reprovado”. Por fim, chega-se ao último estado do algoritmo,
que é “FIM”, indicando que a sequência acabou.
Figura 2 – Cálculo de média aritmética utilizando fluxograma
Fonte: ResearchGate (2016)
Os fluxogramas são práticos e claros porque mostram o caminho a ser percorrido de
forma direta, economizando explicações e palavras desnecessárias. Porém, sua praticidade é
também seu ponto fraco. Se o aluno não compreende os conceitos necessários do fluxograma,
não será possível sua confecção e seu entendimento.
Gondim (2008) destaca que apesar de terem sido muito usados no processo de
programação até os anos 80, hoje os fluxogramas não são mais utilizados no ensino de
algoritmos, já que um antigo estudo demonstrou que um fluxograma não transmitia nem mais
e nem menos informações do que o código de programação e, portanto, não era útil aos
programadores.
2.1.2 PSEUDOCÓDIGOS
Os pseudocódigos são a junção da ideia de confecção de algoritmos com as regras
formais que envolvem uma linguagem (Lima & Meirelles, 2015). Segundo Mota & Pereira
(2008) eles são uma forma genérica de escrever um algoritmo, utilizando uma linguagem mais
informal, podendo ser entendida por qualquer pessoa, sem necessidade de conhecer a sintaxe
de nenhuma linguagem de programação. O uso do pseudocódigo também pode auxiliar a
escrever um programa menor e mais fácil de ser entendido. Essas ferramentas possuem a
23
facilidade de geralmente serem no idioma nativo dos alunos, o que representa uma facilidade
a mais no ensino aprendizagem, ajudando-os a entender e formular os algoritmos de maneira
mais clara.
Os pseudocódigos possuem, no entanto, uma desvantagem: à medida que o algoritmo
aumenta, a produção dele pode tornar-se cansativa, devido a grande quantidade de palavras
empregadas. Além disso, no caso específico de pseudocódigos escritos em português, existe a
possibilidade de confusão devido à ambiguidade que a língua portuguesa apresenta em
algumas palavras.
A sintaxe de um pseudocódigo pode ser compreendida como simples, para que o aluno
se preocupe apenas com a resolução dos problemas, em comparação com outras linguagens
mais complexas. Eles iniciam e finalizam com a escrita início e fim e entre elas existe as
operações como declaração de variáveis, que podem ser inteiro, real, lógico e caractere.
Operações de entrada e saída como ler, escreva e escreval (impressão de texto com quebra de
linha), operadores aritméticos, relacionais, lógicos e de caracteres. Além de comandos
condicionais como se, senao; comando de seleção múltipla como escolha, caso, outrocaso e
comandos de repetição como repita, enquanto, etc.
Figura 3 - Pseudocódigo para realizar uma soma
Fonte: Devmedia (2017)
A Figura 3 mostra um pseudocódigo que realiza a operação matemática de soma. Na
linha 01, inicia-se o pseudocódigo. Na linha 02 há a declaração de três variáveis que recebem
os valores dos fatores e do resultado. Nas linhas 04 e 05 o pseudocódigo realiza a leitura dos
24
fatores e na linha 06 a soma dos valores inseridos. Na linha 07 apresenta-se o resultado da
operação efetuada e na linha 08 o fim do pseudocódigo.
Uma das ferramentas que trabalha com pseudocódigos é o VisualG. A interface do
programa é ilustrada na Figura 4. Souza (2009) descreve o programa como uma ferramenta
que fornece aos estudantes iniciantes nas disciplinas de programação ferramentas para digitar,
executar e depurar o pseudocódigo para resolver problemas propostos, fornecendo também
aos professores vários recursos didáticos para que expliquem como os programas funcionam,
tais como execução passo a passo, visualização do conteúdo das variáveis, etc.
O visualG (figura 4) foi criado por dois professores brasileiros com o objetivo de
aproximar a interface de um programa com a facilidade buscada pelo aluno. Souza (2009)
relata que a ferramenta é amplamente utilizada nos cursos de computação no Brasil. O
programa pode ser encontrado gratuitamente na Internet por meio do site da
ApoioInformatica, uma empresa de software que tem o objetivo de desenvolver sistemas
informatizados para pequenas e médias empresas.
Figura 4 - Interface gráfica da ferramenta VisualG
Fonte: Techtudo (2016)
Além do VisualG, existem outras ferramentas que possibilitam a escrita com
pseudocódigos. Um exemplo é o PortugolStudio, ferramenta desenvolvida e mantida pelo
25
Laboratório de Inovação Tecnológica na Educação da Universidade do Vale do Itajaí
(UNIVALI). Essa ferramenta disponibiliza diversos exemplos para quem está iniciando seus
estudos e possibilita escrever desde programas mais simples até programas mais complexos,
que incluem jogos com interface gráfica, sua interface é ilustrada na Figura 5.
Figura 5 - Interface gráfica da ferramenta PortugolStudio
Fonte: UFMG (2014)
Outro exemplo de ferramenta é PortugolIDE. Ela foi desenvolvida em 2004 no
Instituto Politécnico de Tomar, em Portugal. Essa ferramenta disponibiliza uma interface
simples para os iniciantes na programação e tem como vantagem o recurso de um editor de
fluxograma integrado. Assim, além de desenvolver o pseudocódigo do algoritmo, o aluno
ainda pode visualizar o fluxograma dele, gerado automaticamente pela ferramenta, facilitando
bastante a compreensão do programa que está sendo escrito. Além disso, a execução do
programa também é ilustrada no fluxograma, possibilitando o aluno visualizar o passo a passo
do que foi feito. A interface do PortugolIDE é apresentada na Figura 6.
26
Figura 6 - Interface gráfica da ferramenta PortugolIDE
Fonte: Semanticscholar (2013)
2.1.3 JOGOS EDUCACIONAIS
Antes mesmo do século XIX, Rousseau, um dos principais filósofos e grande
contribuidor do pensamento iluminista, considera que umas das atividades mais importantes
para o desenvolvimento de um indivíduo seria o jogo. Ferreira (2018) mostra por meio das
ideias de Rousseau, que o ser humano desde cedo explora o mundo através da percepção de
movimentos, descobertas de sons, cheiros, cores, e a partir disso usa espaços ao seu redor
através de atividades exploratórias que proporcionam construção de conhecimento e no jogar
é exatamente isso o que acontece. Essa ideia ganhou força a partir do século XXI, em que
surgiram vertentes pedagógicas que valorizam o brincar e o jogar apoiadas pelas ideias de
Rousseau (1712-1778). Assim, despontam as experiências que apresentam o jogo na educação
com o objetivo de facilitar o ensino e a aprendizagem relacionados às diversas áreas do
conhecimento.
27
Tarouco et al. (2004) elenca que existem diferentes tipos de jogos, que podem ser
classificados de acordo com seus objetivos, são eles de: ação, aventura, cassino, lógicos,
estratégicos, esportivos, RPGs, etc. E que eles podem ser utilizados com propósitos
educacionais. Os autores citam, por exemplo que:
1. Jogos de ação: Podem auxiliar no desenvolvimento psicomotor do indivíduo,
desenvolvendo reflexos, coordenação, auxiliar em decisões rápidas frente a uma
situação inesperada, etc.
2. Jogos de aventura: Auxiliam na simulação de atividades que são impossíveis de serem
vivenciadas em sala de aula, não existe um limite de criação e as possibilidades a
serem exploradas são infinitas.
3. Jogos de estratégia: Ajudam o aluno a entender o ambiente ao seu redor e desenvolve
o pensamento estratégico, análise interpretativa, planejamento e formulação de planos
de execução, fazendo-os lidar com eficiência problemas que possam vir a surgir no
mundo real.
4. Jogos lógicos: Jogos desse tipo atuam muito mais na mente do que com os reflexos.
Pode fortalecer habilidades cognitivas e a concentração, auxiliando em tarefas difíceis
e na resolução de problemas enigmáticos.
5. Role-playing game (RPG): Esse tipo de jogo é complexo e difícil de desenvolver. O
usuário desenvolve um personagem em um ambiente aberto e interagir com os outros
personagens reais. Quando desenvolvido pensando na instrução, pode-se obter um
ambiente de socialização cativante, inovador e motivado a descobertas.
Tarouco (2004) continua ponderando que os jogos educacionais proporcionam ao
aluno motivação, desenvolvendo também hábitos de persistência na resolução de desafios e
tarefas. Savi & Ulbricht (2008) elencam oito benefícios que os jogos podem realizar de forma
geral, independente do seu tipo:
1. Efeito motivador: Os jogos demonstram ter alta capacidade para divertir e entreter as
pessoas ao mesmo tempo em que incentivam o aprendizado por meio de ambientes
interativos e dinâmicos.
2. Facilitador de aprendizado: Jogos digitais têm a capacidade de facilitar o aprendizado
em vários campos de conhecimento. Por exemplo, no auxílio do entendimento de
28
ciências e matemática quando se torna difícil manipular e visualizar determinados
conceitos, como moléculas, células e gráficos matemáticos na maneira tradicional.
3. Desenvolvimento de habilidades cognitivas: desenvolvem várias habilidades
cognitivas, como a resolução de problemas, tomada de decisão, reconhecimento de
padrões, processamento de informações, criatividade e pensamento crítico.
4. Aprendizado por descoberta: Desenvolvem a capacidade de explorar, experimentar e
colaborar, pois o feedback instantâneo e o ambiente livre de riscos provocam a
experimentação e exploração, estimulando a curiosidade, aprendizagem, etc.
5. Experiência de novas identidades: Oferecem aos estudantes oportunidades de novas
experiências de imersão em outros mundos e a vivenciar diferentes identidades.
6. Socialização: Servem como agentes de socialização à medida que aproximam os
alunos jogadores, competitivamente ou cooperativamente, dentro do mundo virtual ou
no próprio ambiente físico de uma escola ou universidade.
7. Coordenação motora: Desenvolve o raciocínio rápido e tomada de decisões por meio
de estímulos visuais, sendo levado a trabalhar a própria concentração para tomar tais
decisões.
8. Comportamento expert: Crianças e jovens que jogam vídeo games se tornam experts
no que o jogo propõe. Isso indica que jogos com desafios educacionais podem ter o
potencial de tornar seus jogadores experts nos temas abordados.
Os Jogos Educacionais são caracterizados pela sua propriedade de estimular a
imaginação, favorecer no processo de integração entre grupos e facilitar a construção do
conhecimento além de proporcionar um crescimento gradativo da auto-estima. É importante
salientar que um jogo bem elaborado e planejado com objetivos bem definidos pode oferecer
inúmeras vantagens ao jogadores tais como: desenvolver o senso crítico, possibilitar a criação
de conceitos de difícil compreensão, motivação e estímulo ao trabalho em equipes, despertar a
criatividade e a curiosidade para novas descobertas, além de permitir a competição sadia e
prazerosa.
Ser atrativo, agradável e fácil de usar, devem ser as características principais de um
jogo educacional. É primordial pensar o jogo educativo como ferramenta que possa colaborar
no processo de ensino e aprendizagem, mediando entretenimento e educação. Também é
29
importante que os jogos possam estar diretamente inseridos no contexto da atualidade
tecnológica que o momento exige.
Lima & Meirelles (2015) afirmam que os jogos educacionais estão se tornando a
ferramenta mais utilizada para motivar as pessoas a aprenderem a programar. Grandes
empresas da área de informática como Google, Microsoft e Facebook aderiram a essa forma
de ensinar. Os jogos educacionais estimulam o aluno a aprender programação, tornando a
aprendizagem divertida e motivadora, por meio do uso de recursos multimídias. Santos (p. 7)
relata que: “o uso de um produto de software educacional, que enfatize animação gráfica, é de
extrema importância como facilitador do processo de aprendizagem, visto que a apresentação
de conceitos abstratos se torna mais viável e didática, melhorando a qualidade do material das
aulas.”
30
3. FERRAMENTA COMPUTE-IT
Dentre os vários jogos educacionais que podem contribuir para o processo de ensino e
aprendizagem da programação está o “Compute It”. Ele trata-se de uma ferramenta online da
empresa Toxicode, uma web-empresa francesa de soluções inovadoras para comunicação na
Internet e que faz parte do movimento “Hour Of Code”. Esse movimento atinge um público
de dezenas de milhões de pessoas que estão espalhadas em mais de cento e oitenta países em
todo o mundo.
O movimento Hour of Code foi criado pela Toxicode no intuito de dedicar uma hora à
ciência da computação, fazendo uso de atividades que buscam desmistificar a programação e
mostrar que qualquer pessoa pode aprender seus fundamentos básicos e fazer parte da área de
computação.
Figura 7 – Interface do Jogo Compute IT
Fonte: Toxicode (2019)
A ferramenta Compute It consiste em um jogo organizado em sessenta fases, indicado
inclusive para quem nunca estudou programação. A interface inicial da ferramenta é ilustrada
na Figura 7. Cada etapa apresenta um desafio e o aluno avança à fase seguinte somente após
concluir a anterior.
O jogo consiste em mover um objeto pela interface, utilizando as setas do teclado de
acordo com a orientação de um algoritmo. Assim, o jogo mantém o foco na leitura e
31
entendimento da lógica de programação e não na produção do código, trabalhando o
desenvolvimento do raciocínio lógico para a resolução dos problemas que são propostos.
Um exemplo de jogada é ilustrada na Figura 8. Na figura tem-se os círculos coloridos
que são os caminhos possíveis que a bolinha branca pode percorrer. O aluno deve movimentar
essa bolinha branca por meio dos círculos coloridos de acordo com a orientação do algoritmo
no lado direito da interface. Nesse caso, de acordo com o algoritmo, o aluno deve
primeiramente apertar a tecla correspondente a “cima” no teclado para movimentar-se no
jogo, então ele entra no laço de repetição, onde ele deve apertar a tecla correspondente a
“direita” três vezes para então sair do laço de repetição e apertar a tecla “cima” novamente e
finalizar esta fase. Ao invés de produzir um pseudocódigo, o aluno concentra-se no
funcionamento do algoritmo, entende sua sequência e, nessa fase específica, entende a lógica
que compreende um laço de repetição. Assim, torna-se desnecessário em um primeiro
momento construir um pseudocódigo para depois compreender a lógica de programação.
Figura 8 - Fase do Jogo Educacional Compute-It
Fonte: Toxicode (2019)
De acordo com o próprio site da ferramenta, o jogador “se torna o computador”; desta
forma o usuário tem que ler e interpretar o algoritmo para encontrar a trajetória correta e
vencer os desafios. Deste modo, o jogador tem que se concentrar e usar habilidades intuitivas
para entender alguns conceitos básicos de lógica de programação. O principal objetivo do
jogo está no foco da leitura de código. Espera-se que após concluir o Compute It, o aluno
tenha uma boa prática sobre como funciona o algoritmo e sua estruturação, sendo essa uma
habilidade indispensável para quem pretende trabalhar com códigos.
32
Sabendo das dificuldades de aprender programação, os criadores desta ferramenta o
fizeram com o intuito de desmistificar a codificação computacional. Segundo os criadores do
jogo:
Nós projetamos “Compute It” para ser usado por
educadores com conhecimento zero, ou mesmo sem
educador. Se você planeja usar o “Compute It” em uma
sala de aula ou com os seus amigos, e se você já estiver
confortável com as noções que usamos, tente não explicar
muito, e deixe os jogadores descobrirem por si mesmos
(http://compute-it.toxicode.fr/about).
Os criadores do jogo afirmam ser mais fácil para os iniciantes serem introduzidos a
conceitos abstratos praticando do que usando palavras complexas. E descobrir isso os
recompensará associando o aprendizado na ferramenta com os conceitos em sala de aula como
entrada e saída, estruturas de repetição, etc. Tratando-se de sala de aula, a utilização deste
jogo tende a facilitar a vida dos alunos, uma vez que os mesmos aprendem programação de
forma lúdica e dinâmica. Segundo De Santiago e Dazzi (2004, p.02) “A utilização de uma
ferramenta computacional para os alunos [...] permite aos mesmos testarem suas soluções
visualizando o resultado gerado por elas, é antes de tudo, um grande motivador do processo de
ensino aprendizagem ”.
Ainda segundo a Toxicode, apesar do Compute It contribuir para o ensino da
programação o mesmo não possui essa finalidade, sendo o jogo um software de apoio ao
professor, que permite ao aluno praticar programação de forma simplificada.
33
4. COMPUTE IT NO DESENVOLVIMENTO DO RACIOCÍNIO LÓGICO
O presente trabalho trata-se de uma pesquisa experimental. De acordo com Gil (2007),
pesquisas experimentais consistem em determinar um objeto de estudo e, mantidas
determinadas formas e controle, observar a influência que diferentes variáveis exercem sobre
ele.
O experimento que norteou o estudo foi aplicado a discentes da Universidade Federal
Rural do Semi-Árido, campus Angicos, dos cursos de: (1) Bacharelado em Sistemas de
Informação, que tem como objetivo formar profissionais capacitados para gerir as tecnologias
de organizações e (2) Licenciatura em Computação e Informática, que tem como objetivo
formar professores capacitados para atuar no processo de ensino-aprendizagem para alunos do
ensino básico na disciplina de informática. Os alunos dos dois cursos totalizaram um total de
vinte oito participantes e estavam matriculados no período inicial do curso, na disciplina de
Algoritmos e Programação I.
Foram empregadas diferentes técnicas de ensino a diferentes grupos de estudantes
matriculados na disciplina, visando investigar possíveis diferenças no aprendizado dos alunos,
assim como a receptividade de cada técnica.
Os participantes da pesquisa foram divididos em três grupos que participaram de aulas
simultâneas sobre um mesmo conjunto de conceitos introdutórios relacionados à lógica de
programação. Ao total participaram vinte e oito alunos, sendo dez do primeiro grupo, oito do
segundo grupo e dez do terceiro grupo. As aulas diferiram na técnica de ensino usada para
apresentar e exercitar os conceitos: (1) aula expositiva com conceitos básicos de programação
como estruturas de entrada e saída, estruturas de controle, etc; (2) programação com a
ferramenta Visualg e (3) interação com a ferramenta online Compute It. A atividade utilizando
a ferramenta Compute It foi ministrada pelo autor do trabalho, enquanto que as outras duas
atividades foram ministradas por outros dois colaboradores voluntários . Seguem as descrições
das três técnicas.
O primeiro grupo teve uma aula expositiva de noventa minutos sobre os conceitos
básicos de programação. Os alunos não tiveram contato com computadores. Foram
34
apresentados conteúdos como estrutura dos algoritmos em Portugol e os comandos SE,
REPITA e ENQUANTO.
Para o segundo grupo, foi utilizado o VisuAlg. Este trata-se de um software que
fornece aos estudantes que se iniciam nas disciplinas de programação ferramentas para digitar,
executar e depurar o pseudocódigo para resolver problemas propostos nas aulas e em
exercícios (SOUZA, 2009). É distribuído gratuitamente e é largamente utilizados nas
instituições de ensino.
Na aula do segundo grupo, o VisuAlg foi utilizado para criar, junto com os alunos,
algoritmos simples, mostrando o funcionamento do programa e dos algoritmos,
simultaneamente com a explicação dos conceitos. A aula também teve duração de noventa
minutos e foi proposto um exercício de declaração de variáveis e operação matemática de
soma e subtração.
Na aula do terceiro grupo, os alunos foram apresentados à ferramenta Compute It. Foi
explicado o funcionamento do programa e eles tentaram compreender e aperfeiçoar seu
entendimento dos conceitos por meio da utilização dele. Durante noventa minutos foi
proposto que os alunos jogassem e avançassem de fase, sem maiores dicas, utilizando os
próprios conhecimentos adquiridos durante o uso da própria ferramenta para avançar à fase
seguinte.
4.1. RESULTADOS
Ao fim de cada aula, os participantes responderam um questionário (disponível no
Apêndice I) sobre a experiência. O questionário abordava questões objetivas de acordo com a
opinião deles sobre a aula em relação a motivação, identificação com a metodologia,
importância da disciplina de programação para o curso, conhecimentos prévios, etc. As
questões serviram como base para comparação das metodologias, analisar o nível de
aprendizagem adquirido em cada um dos três momentos e fazer uma análise estatística sobre o
resultado final.
A primeira indagação do questionário buscou identificar o nível de conhecimento
inicial dos discentes sobre programação. Para tal, ele tiveram que classificar seu
35
conhecimento com um número de 1 a 5, em que 1 (um) está para nenhum conhecimento e 5
(cinco) para muito conhecimento. O resultado dessa questão é apresentado no Quadro 1.
Quadro 1 - Conhecimento prévio em programação
Compute-It Visualg Aula Expositiva
Média 2,2 1,75 1,8
Pode se observar neste cenário que os alunos que assistiram a aula Compute-It
possuem uma média um pouco maior, demonstrando um conhecimento de programação maior
do que o restante da turma. Porém, é possível perceber que a maioria da turma declara possuir
um baixo conhecimento em programação, uma vez que em todos os grupos houve uma média
muito distante da nota máxima 5.
A segunda questão buscou identificar a importância da disciplina de programação dos
discentes para o curso. Como na questão anterior, a classificação utilizada foi de 1 a 5, onde 1
(um) está para nenhuma importância e 5 (cinco) para muita importância, e as respostas dos
alunos estão apresentadas no Quadro 2.
Quadro 2 - Importância da disciplina de programação segundo os alunos
Compute-It Visualg Aula Expositiva
Média 5 4,75 4,8
Não existiram diferenças significativas na média dessa questão, demonstrando que os
alunos da turma reconhecem a importância da disciplina de programação para os futuros
profissionais da área de computação.
No questionamento seguinte, os alunos responderam sobre receptividade ou rejeição a
metodologia aplicada onde 1 (um) está para rejeição e 5 (cinco) para receptividade a
metodologia. As respostas deles estão apresentadas no Quadro 3.
36
Quadro 3 - Receptividade a metodologia aplicada
Compute-It Visualg Aula Expositiva
Média 4,5 3,87 3,4
Embora a média indique não haver rejeição para nenhuma das metodologias, nessa
questão pode-se observar que os alunos que utilizaram a ferramenta Compute-It foram muito
mais receptivos a metodologia em comparação aos alunos que utilizaram o VisualG e os que
assistiram a aula expositiva.
A próxima questão buscou estabelecer uma comparação entre as metodologias
tradicionais e a metodologia aplicada. Os alunos responderam de acordo com sua perspectiva
sobre as metodologias já conhecidas e a que eles vivenciaram na atividade, as respostas,
apresentadas no Quadro 4, se caracterizaram como 1 (um) está para a metodologia aplicada
ser pior e 5 (cinco) para a metodologia aplicada ser melhor.
Quadro 4 - Comparação da metodologia aplicada com as metodologias tradicionais
Compute-It Visualg Aula Expositiva
Média 4,4 4 3,6
Pode ser observado que os alunos que utilizaram a ferramenta Compute-It concluíram
que a metodologia aplicada é superior aos métodos tradicionais de ensino, assim como os
alunos que utilizaram a ferramenta Visualg, sendo que o primeiro citado quase alcançou a nota
máxima. Já a aula expositiva alcançou números medianos, constatando igualdade em relação
às metodologias tradicionais.
No Quadro 5 há a apresentação da perspectiva do aluno sobre a dificuldade no restante
da disciplina após as atividades vivenciadas, onde a resposta apresentada seria a que 1 (um)
está para que o restante da disciplina será difícil e 5 (cinco) para que o restante da disciplina
será fácil.
37
Quadro 5 - Perspectiva sobre a dificuldade na continuação da disciplina
Compute-It Visualg Aula Expositiva
Média 3,6 3,12 2,4
Os alunos que utilizaram a ferramenta Compute-It tiveram uma perspectiva positiva
acerca da continuidade da disciplina em relação à dificuldade, eles têm a ideia de que a
disciplina será mais fácil em comparação a opinião do restante da turma.
No próximo questionamento os alunos foram abordados sobre a opinião deles em
relação ao quanto essa metodologia contribuiu para seu entendimento inicial em lógica de
programação, os valores estão distribuídos como 1 (um) está para nenhuma contribuição e 5
(cinco) para muita contribuição. Suas respostas estão expostas no Quadro 6.
Quadro 6 - Contribuição da metodologia no aprendizado em lógica de programação
Compute-It Visualg Aula Expositiva
Média 4,3 3,62 3,7
Os alunos que utilizaram a ferramenta Compute-It tiveram uma diferença significativa
sobre a contribuição da aula no entendimento de lógica de programação, com relação ao
restante da turma. Podemos observar que eles consideraram ter um maior entendimento do
que o restante da turma. Vale observar também que os alunos que assistiram a aula expositiva
consideraram ter um entendimento um pouco maior de lógica de programação, do que os
alunos que participaram da atividade utilizando o VisualG.
O quadro 7 demonstra a opinião dos alunos em relação a continuidade de
metodologias parecidas no restante da disciplina. As respostas são representadas por 1 (um)
está para permanência das metodologias antigas e 5 (cinco) para a continuação da
metodologias praticadas na atividade.
38
Quadro 7 - Perspectiva de metodologias semelhantes no restante da disciplina
Compute-It Visualg Aula Expositiva
Média 3,9 3,75 3,3
No quadro pode ser observado que por uma pequena maioria na média, os alunos que
fizeram uso da ferramenta Compute-It tem uma percepção positiva sobre a metodologia e
desejam a continuidade do uso de metodologias parecidas no restante da disciplina. Este
resultado é um pouco melhor do que os dos alunos que experimentaram a atividade com o
VisualG e a aula expositiva.
O Quadro 8 apresenta a relação acerca da motivação dos alunos. Foi questionado o
quanto eles estavam motivados com a disciplina após participarem de suas respectivas
atividades. A respostas estão representadas da seguinte forma: 1 (um) está para pouco
motivado e 5 (cinco) para muito motivado.
Quadro 8 - Motivação acerca do restante da disciplina
Compute-It Visualg Aula Expositiva
Média 4,5 4 4,1
No que remete a motivação, os alunos que assistiram a aula utilizando a ferramenta
Compute-It estavam mais motivados com o restante da disciplina do que seus colegas que
assistiram as outras duas aulas. O que se caracteriza em mais um fator positivo, essencial para
o desempenho no restante da disciplina.
As questões tratadas no questionário apontam que os alunos que participaram da
atividade Compute It obtiveram percepções positivas em relação ao restante da turma que
participaram das outras duas atividades. Pontos como a receptividade a metodologia,
motivação e a perspectiva sobre a dificuldade na disciplina, entre outros se mostraram
bastante promissores e demonstraram ser um bom ponto de partida na percepção dos alunos
39
em ver a disciplina de programação não como um componente curricular complexo, mas
como uma disciplina que pode ser aprendida facilmente de forma lúdica.
40
6. CONSIDERAÇÕES FINAIS
Pode-se observar várias citações na literatura sobre o ensino de programação e suas
dificuldades. É perceptível que há uma necessidade na modificação dos instrumentos e
técnicas didáticas utilizadas para o ensino da programação que atualmente, por muitas vezes,
desmotivam o aluno. De acordo com trabalhos como Mora e Giraffa (2013) e Souza e França
(2013), bem como o próprio experimento realizado nesse estudo, o uso das metodologias
tradicionais de ensino não incentivam o aluno a desvendar a complexidade que existe em
entender lógica de programação e suas respectivas linguagens.
Diantes desse contexto, ferramentas educativas podem colaborar no processo de
ensino e aprendizagem e incentivar o aluno em seus estudos de tarefas antes ditas
desmotivadoras. A ferramenta utilizada neste trabalho, que consiste no jogo Compute It,
apresenta-se como uma proposta alternativa de metodologia para facilitar o processo de
ensino e aprendizado em disciplinas de introdução a programação, visto que o mesmo pode se
adequar ao conteúdo ajudando na motivação dos alunos.
Nesse estudo, foi proposto dividir um grupo de alunos matriculados em uma disciplina
inicial de programação em três grupos em que: um grupo assistiu uma aula expositiva sobre
programação, outro grupo assistiu a aula utilizando a ferramenta VisulaG e o terceiro grupo
assistiu a aula utilizando a ferramentas Compute It. Todas as aulas tiveram a mesma duração.
Por fim, os alunos foram solicitados a responder um questionário sobre a experiência
vivenciada.
As análises feitas neste trabalho indicam que os primeiros resultados com o uso desta
ferramenta são positivos, visto que os alunos que utilizaram a programa Compute It
apresentaram médias de avaliações superiores em quesitos como entendimento inicial, atração
pela metodologia, perspectiva futuras, facilidade em comparação a outras metodologias, não
obstante eles exijam um acompanhamento por um período de tempo mais longo para que seus
resultados possam ser efetivamente comprovados.
Desta forma, acredita-se que esta ferramenta pode possibilitar melhorias no processo
de ensino e aprendizagem das disciplinas de programação. Contudo, não se deve menosprezar
outras ferramentas didáticas, visto que o jogo é um complemento para as aulas, não podendo
ser considerado um método absoluto de ensino.
41
6.1. TRABALHOS FUTUROS
Os jogos educacionais são boas ferramentas para auxiliar o professor quando
lecionando conteúdos de disciplinas de programação, uma vez que podem deixar as aulas
mais didáticas e estimulantes para os discentes. Assim, ajudam a dirimir a dificuldade que os
alunos sentem ao iniciar seus estudos na programação, em que além de precisar aprender uma
nova linguagem, com uma sintaxe muito diferente de seu idioma falado, ainda precisam
trabalhar o desenvolvimento do seu raciocínio lógico. Esse último é um dos principais fatores
de dificuldade dos alunos.
Nesse estudo foi realizado um experimento com a ferramenta Compute It, que foi
utilizada para auxiliar no ensino de conceitos iniciais de programação. Embora o estudo tenha
apontado que a ferramenta trouxe benefícios aos discentes, durante a elaboração do trabalho
foram identificados questões que podem melhorar o estudo desenvolvido, sendo apontadas
como trabalhos futuros. São elas:
● Realizar o estudo durante um período maior de tempo, envolvendo um grupo de
discentes mais diversos.
● Realizar o estudo com outros jogos educacionais, explorando o estudo além da
ferramenta Compute It.
42
REFERÊNCIAS BIBLIOGRÁFICAS
BORGES, Marcos AF. Avaliação de uma metodologia alternativa para a aprendizagem de programação. In: VIII Workshop de Educação em Computação–WEI. 2000. p. 15. CRAVO, Ana Cristina. Análise das causas da evasão escolar do curso técnico de informática em uma faculdade de tecnologia de Florianópolis. Revista Gestão Universitária na América Latina-GUAL, v. 5, n. 2, 2012. DAZZI, R. L. S.; MIRANDA, E. M.; SOUZA, E. M. S. SAEL: Sistema de apoio ao ensino de lógica de programação. WORKSHOP DE INFORMÁTICA APLICADA À EDUCAÇÃO, Araraquara, Brasil, 2000. DETERS, Janice Inês et al. O desafio de trabalhar com alunos repetentes na disciplina de Algoritmos e Programação. In: Workshop de Ambientes de apoio à Aprendizagem de Algoritmos e Programação. 2008. DE SANTIAGO, Rafael; DAZZI, Rudimar Luís Scaranto. Ferramenta de apoio ao ensino de algoritmos. XIII Seminário de Computação (SEMINCO), p. 1-8, 2004. DE SOUZA, Márcia Valéria Rocha; FRANÇA, A. César C. Ferramentas de Auxílio ao Aprendizado de Programação: Um Estudo Comparativo. 2013. EDUCA MAIS BRASIL. Mercado de trabalho está aquecido na área de tecnologia. Disponível em: <https://www.educamaisbrasil.com.br/senac-rs/noticias/mercado-de-trabalho-esta-aquecido-na-area-de-tecnologia> Acesso em: 12 de fevereiro de 2019 FERREIRA-UFES, Herberth Gomes. A importância da ludicidade no pensamento de Jean-Jacques Rousseau e o seu Emílio: o brincar como instrumento de aprendizagem, trazendo-o para contemporaneidade. 2018. GIL, A. C. Como elaborar projetos de pesquisa. 4. ed. São Paulo: Atlas, 2007. GONDIM, H. W. A. S.; AMBROSIO, A. P. L. Esboço de fluxogramas no ensino de algoritmos. In: WEI-Workshop sobre Educação em Computação. 2008. p. 109-117. GOMES, Anabela et al. Aprendizagem de programação de computadores: dificuldades e ferramentas de suporte. Revista Portuguesa de Pedagogia, p. 161-179, 2008. LIMA, José Weliff Ferreira; MEIRELES, Alandson Mendonça Ribeiro. METODOLOGIAS DE ENSINO DE LÓGICA DE PROGRAMAÇÃO. Revista Expressão Católica, v. 4, n. 1, 2015. MENDES, António José Nunes; GOMES, Anabela Jesus. Suporte à aprendizagem da programação com o ambiente SICAS. In: Actas do V Congresso Ibero-Americano de Informática Educativa, Viña del Mar. 2000.
43
MORA, Michael Da Costa; GIRAFFA, Lucia Maria Martins. Evasão na disciplina de algoritmo e programação: um estudo a partir dos fatores intervenientes na perspectiva do aluno. In: Tercera Conferencia sobre el Abandono en la Educación Superior (III CLABES, 2013, Espanha. 2013. MOTA, Marcelle Pereira; PEREIRA, Lis W. Kanashiro; FAVERO, Eloi Luiz. Javatool: Uma ferramenta para o ensino de programaçao. In: Congresso da Sociedade Brasileira de Computação. Belém. XXVIII Congresso da Sociedade Brasileira de Computação. 2008. p. 127-136. PEREIRA JÚNIOR, J. C. R. et al. Ensino de algoritmos e programação: uma experiência no nível médio. In: XIII Workshop de Educação em Computação (WEI’2005). São Leopoldo, RS, Brasil. 2005. PRIETCH, Soraia Silva; PAZETO, Tatiana Annoni. Estudo sobre a Evasão em um Curso de Licenciatura em Informática e Considerações para Melhorias. WEIBASE, Maceió/AL, 2010. ROCHA, Paulo Santana et al. Ensino e aprendizagem de programação: análise da aplicação de proposta metodológica baseada no sistema personalizado de ensino. RENOTE, v. 8, n. 3, 2010. SANTOS, Rodrigo Pereira dos; COSTA, Heitor Augustus Xavier. Análise de Metodologias e Ambientes de Ensino para Algoritmos, Estruturas de Dados e Programação aos iniciantes em Computação e Informática. INFOCOMP, v. 5, n. 1, p. 41-50, 2006. SAVI, Rafael; ULBRICHT, Vania Ribas. Jogos digitais educacionais: benefícios e desafios. Renote, v. 6, n. 1, 2008. SOUZA, Cláudio Morgado de. VisuAlg-Ferramenta de apoio ao ensino de programação. Revista Eletrônica TECCEN, v. 2, n. 2, p. 01-09, 2009. SOUZA, M. V. R., França, A. C. C. (2013). “Ferramentas de Auxílio ao Aprendizado de Programação: Um Estudo Comparativo”. TAROUCO, Liane Margarida Rockenbach et al. Jogos educacionais. RENOTE: revista novas tecnologias na educação [recurso eletrônico]. Porto Alegre, RS, 2004.
44
APÊNDICE
Questões aplicadas aos alunos que participaram das três atividades:
1) Qual o seu conhecimento na área de programação antes de ingressar na faculdade? 1 = Nenhum 5 = Muito conhecimento 2) Você considera a disciplina de programação importante para você no seu curso? 1 = Pouco importante 5 = Muito importante 3) Você considera essa metodologia de ensino atrativa? Você gostou da metodologia aplicada? 1 = Pouco atrativa / Não gostei 5 = Muito atrativa / Gostei 4) Você achou essa metodologia de ensino melhor ou pior em comparação a metodologia de ensino de seus professores no ensino médio e fundamental? 1 = Pior 3 = Mesma coisa 5 = Melhor 5) De acordo apenas com a aula de hoje, você considera que a disciplina de programação será difícil ou fácil? 1 = Difícil 5 = Fácil 6) Você considera que essa aula de hoje contribuiu para sua aprendizagem inicial em lógica de programação? 1 = Não contribuiu 5 = Contribuiu bastante
7) Você gostaria que no restante da disciplina fossem realizadas aulas semelhantes a de hoje? 1 = Gostaria que mudasse 5 = Gostaria de ver mais aulas assim 8) Você está mais motivado a aprender o restante dos conteúdos da disciplina de programação? 1 = Pouco motivado 5 = Muito motivado