• Nenhum resultado encontrado

Um framework para integração de plataformas de aprendizado de programação e computação desplugada

N/A
N/A
Protected

Academic year: 2021

Share "Um framework para integração de plataformas de aprendizado de programação e computação desplugada"

Copied!
95
0
0

Texto

(1)

Departamento de Informática e Matemática Aplicada Programa de Pós-Graduação em Sistemas e Computação

Mestrado Acadêmico em Sistemas e Computação

Um framework para integração de plataformas

de aprendizado de programação e Computação

Desplugada

Sebastião Ricardo Costa Rodrigues

Natal-RN Julho 2019

(2)

Um framework para integração de plataformas de

aprendizado de programação e Computação

Desplugada

Proposta de dissertação apresentada ao Pro-grama de Pós-Graduação em Sistemas e Computação do Departamento de Informá-tica e MatemáInformá-tica Aplicada da Universidade Federal do Rio Grande do Norte como re-quisito parcial para a obtenção do grau de Mestre em Sistemas e Computação.

Linha de pesquisa: Engenharia de Software

Orientador

Prof. Dr. Eduardo Henrique da Silva Aranha

PPgSC – Programa de Pós-Graduação em Sistemas e Computação DIMAp – Departamento de Informática e Matemática Aplicada

CCET – Centro de Ciências Exatas e da Terra UFRN – Universidade Federal do Rio Grande do Norte

Natal-RN Julho 2019

(3)

Rodrigues, Sebastião Ricardo Costa.

Um framework para integração de plataformas de aprendizado de programação e computação desplugada / Sebastião Ricardo Costa Rodrigues. - 2019.

93f.: il.

Dissertação (mestrado) - Universidade Federal do Rio Grande do Norte, Centro de Ciências Exatas e da Terra, Programa de Pós-Graduação em Sistemas e Computação. Natal, 2019.

Orientador: Eduardo Henrique da Silva Aranha.

1. Computação Dissertação. 2. Ensino de programação -Dissertação. 3. Computação desplugada - -Dissertação. 4. Framework de visão computacional - Dissertação. I. Aranha, Eduardo Henrique da Silva. II. Título.

RN/UF/CCET CDU 004

Catalogação de Publicação na Fonte. UFRN - Biblioteca Setorial Prof. Ronaldo Xavier de Arruda - CCET

(4)
(5)
(6)

Aos meus pais (Randal e Dina), obrigado por todo amor e dedicação que me foi investido ao longo da vida.

Aos meus filhos abençoados (Yanna, Yann, Yasmin, Isabela) e à minha amada Débora, obrigado pelo amor e compreensão nos momentos em que eu precisei ficar longe de vocês. À minha irmã, Camila, obrigado pelo carinho e atenção de todos os dias. Aos meus queridos amigos, obrigado por me ouvirem nos momentos de angústia e sofrimento, que foram muitos durante essa jornada.

Ao meu orientador, Prof. Dr. Eduardo Aranha, muito obrigado pela compreensão de sempre e pelas valiosas contribuições para a realização deste trabalho. Ao meu amigo e coorientador, Prof. Dr. Thiago Reis da Silva, obrigado por todo o apoio e colaboração para que eu chegasse até aqui. Aos doutores da ciência que tive a honra de conhecer, muito obri-gado pelas contribuições, seja em forma de conhecimento ou experiências compartilhadas, foram imprescindíveis para a conclusão desta missão.

Aos meus colegas de mestrado e do Laboratório GamEdu, obrigado por compartilha-rem um pouco de suas experiências acadêmicas comigo. Em especial, meu muito obrigado aos amigos, Taynara e Jefferson, pelo companheirismo nessa trajetória.

Ao IFMA - Campus São Raimundo das Mangabeiras, obrigado pelo incentivo à qua-lificação oportunizado. Obrigado a todos os amigos deste campus, que são muitos. Em especial, agradeço aos meus amigos e diretores (Jânio e Roberto Kennedy), e aos meus queridos irmãos de coração, professores da área de Informática do Campus Mangabeiras (Bruno, Ernando, Sigfran e Tércio).

Ao IFPI - Campus Teresina Central e todos os queridos amigos professores, obrigado pela formação de excelência e pelo acolhimento neste regresso à vida discente.

Aos meus queridos alunos do Campus Mangabeiras, agradeço a compreensão da minha ausência e torcida pelo meu sucesso.

Enfim, obrigado a todos aqueles que contribuíram de forma direta ou indireta para que esse sonho fosse alcançado.

(7)
(8)

aprendizado de programação e Computação

Desplugada

Autor: Sebastião Ricardo Costa Rodrigues Orientador(a): Prof. Dr. Eduardo Henrique da Silva Aranha

Resumo

O mundo contemporâneo tem exigido indivíduos cada vez mais capacitados quanto ao uso das tecnologias digitais, independentemente da área de atuação. O ensino de programação tem sido um alvo de investigação recorrente na comunidade científica. Diversas abordagens de ensino de programação, como os jogos digitais, paradigmas de programação (visual ba-seada em blocos), plataformas gamificadas, robótica, entre outras, têm sido propostas em muitos países ainda mesmo em níveis mais básicos de ensino. No Brasil, principalmente na rede pública de ensino, onde há diversos problemas de infraestrutura tecnológica, como a falta de computadores, laboratórios e Internet, há dificuldades em realizar intervenções voltadas ao aprendizado de programação. Este trabalho tem como objetivo apresentar um framework que possibilite a integração de objetos tangíveis à plataformas de ensino de programação existentes através de técnicas de Visão Computacional e abordagens ba-seadas em Computação Desplugada. Para tanto, foram realizados estudos que buscaram evidências que pudessem fornecer respostas às questões de pesquisa elaboradas em torno do objetivo deste trabalho. Uma Revisão Sistemática da Literatura (RSL), um estudo ex-ploratório e um estudo experimental foram elaborados com as finalidades de prospecção de requisitos e análise contextual, implementação de técnicas e estratégias adequadas, e avaliação da aplicabilidade da abordagem proposta em um contexto de ensino de progra-mação. Os resultados evidenciaram a possibilidade concreta de integração de plataformas de ensino baseadas em programação visual baseada em blocos através de técnicas de Visão Computacional aliadas à atividades de Computação Desplugada, e que esta proporciona uma experiência positiva no processo de ensino-aprendizagem de programação. Pode-se concluir que a abordagem proposta, que tem como objetivo promover a integração de

(9)

proporcionar uma experiência proveitosa por aproximar atividades construtivistas aos recursos virtuais disponibilizados pelas plataformas digitais de programação.

Palavras-chave: Ensino de Programação, Computação Desplugada, Framework de Visão Computacional.

(10)

Environments and Computer Science Unplugged

Author: Sebastião Ricardo Costa Rodrigues Supervisor: Prof. Dr. Eduardo Henrique da Silva Aranha

Abstract

The world in today has required more and more individuals who are capable about the use of technology regardless of the area of activity. Programming teaching has been a recurring research target in the scientific community. Several programming teaching ap-proaches like digital games, programming paradigms (visual block-based), platforms of gamification, robotics, among others has been proposed. In Brazil, mainly in the public school system, where there are several problems of technological infrastructure, such as lack of computers, laboratories and internet, turns on hard make interventions towards teaching programming. This work aims to present a framework that allows the integration of tangible objects to existing programming teaching platforms through Computer Vision techniques and approaches based on Computer Science Unplugged (CS Unplugged). For that, studies were carried out that looked for evidence that could provide answers to the research questions around the goal of this work. A Systematic Literature Review (SLR), an exploratory and another experimental study were carried out aim prospecting requi-rements and contextual analysis, implementation of suitable techniques and strategies, and evaluation if the proposed approach fits well in a programming teaching context. The results evidenced the possibility concreteness integration of educational platforms based on block-based visual programming by Computer Vision techniques with CS Unplugged activities and it gives a positive experience in the programming teaching-learning process. It can be concluded that the proposed approach, which aims to promote the integration of tangible objects with programming teaching platforms, presents advantages by providing a useful experience by bringing constructivist activities closer to the virtual resources made available by digital programming platforms.

Keywords: Programming Teaching, Computer Science Unplugged, Computational Vision Framework.

(11)

1 Scratch é usado em diversos níveis de ensino. . . p. 24

2 Jogo “Flappy Bird ” no Code.org . . . p. 25

3 Kit LEGO Mindstorms . . . p. 26

4 (A) Componentes do Ambiente TaPrEC. (B) Arquitetura do TaPrEC. . p. 27

5 Atividade “Números Binários” . . . p. 28

6 Interface da atividade “Abelha: Sequência” na plataforma Code.org . . p. 46

7 Código fonte gerado para a atividade da Abelha mostrada na Figura 6 p. 47

8 Características (features) extraídas de um bloco de programação. . . . p. 49

9 (A) Estrutura do Projeto. (B) Blocos de Programação. (C) Arquivos

numpy. . . p. 49

10 (A) Imagem dos blocos de programação impressos. (B) Matching dos

keypoints reconhecidos e equivalentes nas duas imagens. . . p. 51

11 (A) Blocos direcionais originais. (B) Blocos direcionais após adaptação. p. 52

12 Identificação dos Blocos de Programação . . . p. 52

13 (A) URL da implementação local da plataforma com o parâmetro solu-tion representando a solução intermediária. (B) Código XML convertido

e compatível com a biblioteca Blockly. . . p. 54

14 Fluxo completo do processo de integração. . . p. 55

15 Arquitetura proposta. . . p. 60

16 Trecho de código do Módulo de Configuração. . . p. 61

17 Trecho de código do Módulo de Reconhecimento. . . p. 62

18 Fluxo de execução do framework. . . p. 63

(12)

de programação desplugada feitos em material acrílico. . . p. 68

21 Perfil dos participantes do estudo experimental. . . p. 68

22 Item 1 dos questionários sobre as atividades. . . p. 71

23 Item 2 dos questionários sobre as atividades. . . p. 71

24 Item 3 dos questionários sobre as atividades. . . p. 73

25 Item 7 dos questionários sobre as atividades. . . p. 74

26 Item 5 dos questionários sobre as atividades. . . p. 75

27 Item 4 dos questionários sobre as atividades. . . p. 76

28 Item 6 dos questionários sobre as atividades. . . p. 76

(13)

1 Fontes de pesquisa de publicações nacionais. . . p. 31

2 Critérios de Inclusão e Exclusão. . . p. 32

3 Resultados da Avaliação de Qualidade dos estudos selecionados . . . p. 34

4 Relação de estudos primários selecionados . . . p. 35

5 Mecanismos de Indexação e Busca . . . p. 39

6 Relação dos estudos primários selecionados (RSL Internacional) . . . . p. 41

7 Organização do Quadrado Latino . . . p. 66

(14)

UFRN – Universidade Federal do Rio Grande do Norte

DIMAp – Departamento de Informática e Matemática Aplicada

PC – Pensamento Computacional

CC – Ciência da Computação

CD – Computação Desplugada

RSL – Revisão Sistemática da Literatura

QP – Questões de Pesquisa

CI – Critérios de Inclusão

CE – Critérios de Exclusão

VC – Visão Computacional

SIFT – Scale-invariant Feature Transform

SURF – Speeded Up Robust Features

ORB – Oriented FAST and rotated BRIEF

FLANN – Fast Approximate Nearest Neighbor Search Library

RANSAC – RANdom Sample And Consensus

XML – eXtensible Markup Language

IA – Inteligência Artificial

(15)

1 Introdução p. 17 1.1 Contexto e Motivação . . . p. 17 1.2 Problemática . . . p. 18 1.3 Objetivos . . . p. 19 1.4 Questões de Pesquisa . . . p. 20 1.5 Metodologia . . . p. 20 1.6 Contribuições do Trabalho . . . p. 21 1.7 Organização do Trabalho . . . p. 22 2 Fundamentação Teórica p. 23 2.1 Ambientes Digitais . . . p. 23

2.1.1 Linguagens de programação baseadas em texto . . . p. 23

2.1.2 Linguagens de programação visual baseadas em blocos . . . p. 24

2.1.3 Jogos Digitais . . . p. 24 2.2 Contextos Tangíveis . . . p. 26 2.2.1 Robótica . . . p. 26 2.2.2 Computação Tangível . . . p. 27 2.2.3 Computação Desplugada . . . p. 27 2.3 Considerações Finais . . . p. 28

3 Computação Desplugada no Ensino de Programação: Uma Revisão

Sistemática da Literatura p. 30

(16)

3.1.2 Questões de Pesquisa . . . p. 31

3.1.3 Processo de busca, critérios de inclusão e exclusão . . . p. 31

3.1.4 Extração dos dados . . . p. 32

3.1.5 Avaliação da qualidade . . . p. 33 3.1.6 Resultados . . . p. 34 3.2 Cenário Internacional . . . p. 39 3.2.1 Protocolo da RSL . . . p. 39 3.2.1.1 Processo de busca . . . p. 39 3.2.2 Resultados . . . p. 40 3.3 Ameaças à Validade . . . p. 43 3.4 Considerações finais . . . p. 43 4 Estudo Exploratório p. 45 4.1 Protótipo de Integração . . . p. 45 4.1.1 Idealização . . . p. 45 4.2 Implementação . . . p. 47 4.2.1 Requisitos . . . p. 48 4.2.2 Módulo de Configuração . . . p. 48 4.2.3 Módulo de Reconhecimento . . . p. 50

4.2.3.1 Matching: Reconhecendo os blocos de programação . . p. 50

4.3 Dificuldades e Limitações . . . p. 51

4.4 Integração com o Jogo da Abelha do Code.org . . . p. 53

4.5 Resultados e Discussão . . . p. 55

4.6 Considerações Finais . . . p. 57

(17)

5.2 Arquitetura do framework . . . p. 59

5.3 Funcionalidades . . . p. 59

5.3.1 Módulo de Configuração . . . p. 59

5.3.2 Módulo de Reconhecimento . . . p. 62

5.4 Considerações Finais . . . p. 64

6 Avaliação: Estudo Experimental p. 65

6.1 Planejamento do Estudo . . . p. 65 6.1.1 Objetivo . . . p. 65 6.1.2 Hipóteses de Pesquisa . . . p. 65 6.1.3 Delineamento Experimental . . . p. 66 6.1.4 Material Experimental . . . p. 66 6.1.5 Participantes . . . p. 67

6.1.5.1 Perfil dos Participantes . . . p. 67

6.2 Execução . . . p. 69

6.2.1 Aula de Introdução . . . p. 69

6.2.2 Configuração do Experimento . . . p. 69

6.3 Coleta e Análise de Dados . . . p. 69

6.3.1 Processo de Análise . . . p. 70

6.4 Resultados . . . p. 70

6.5 Ameaças à Validade . . . p. 78

6.6 Considerações Finais . . . p. 78

7 Considerações Finais p. 80

7.1 Análise das Questões de Pesquisa . . . p. 80

(18)

Referências p. 84

Apêndice A -- Questionários p. 89

A.1 Questões Preliminares . . . p. 89

A.2 Questões sobre o experimento . . . p. 90

A.2.1 Questionário A: Avaliando a Experiência apenas no Computador p. 90

(19)

1

Introdução

Este capítulo apresenta uma introdução ao trabalho realizado por pesquisa. O mesmo é composto pelas seguintes subseções: 1.1 Contexto e Motivação, 1.2 Problemática, 1.3 Objetivos, 1.4 Questões de Pesquisa, 1.5 Metodologia, 1.6 Contribuições Esperadas; e, 1.7 Organização do Trabalho.

1.1

Contexto e Motivação

Assim como diversos outros setores da sociedade têm passado por transformações de-vido à necessidade de responder às demandas contemporâneas que incorporam a tecnolo-gia, não apenas como recurso facilitador dos seus processos, mas como meio imprescindível à existência e sobrevivência de determinados modelos de negócios, a educação também tende a se enquadrar neste mesmo panorama (MAHAJAN, 2017). O processo de formação educacional de parte dos indivíduos da “Geração Z” e, principalmente, dos indivíduos nascidos na “Era Digital”, também conhecida como “iGerenation” (AHN, 2011), cada vez mais têm incluído a tecnologia como mecanismo de suporte. Porém, o mercado de tra-balho, na atualidade, exige pessoas capazes de, não apenas, manusear tecnologia e seus recursos, mas também, pensar e criar soluções de modo mais inteligente, eficiente e eficaz utilizando as tecnologias disponíveis (ANANIADOU; CLARO, 2009).

Nos dias de hoje, é difícil pensar em tecnologia e não remeter este pensamento à com-putação. Em vista a este cenário, muitas são as iniciativas de promover uma educação que responda às demandas sociais contemporâneas, capacitando indivíduos e os empoderando de competências relacionadas à computação para atuarem nas mais diversas atividades profissionais e setores da sociedade, uma delas é a inclusão de componentes curriculares, ainda na educação básica, que despertem a curiosidade e interesse, além de fomenta-rem o desenvolvimento de habilidades na área a computação (HEININGER et al., 2017). As práticas educacionais voltadas à esta finalidade são variadas, dentre elas, o ensino de robótica e lógica de programação, utilização e desenvolvimento de jogos digitais, uso de

(20)

abordagens “desplugadas” (sem o uso de tecnologias digitais), atividades que estimulem o desenvolvimento do Pensamento Computacional (PC) , entre outras (SAINI, 2016).

A demanda emergente por capital humano dotado de tais capacidades tem aumentado o interesse de pesquisadores de várias instituições e países que empregam esforços na investigação de metodologias e/ou abordagens focadas no desenvolvimento de habilidades computacionais (BIRD; CALDWELL; MAYNE, 2017). O incentivo ao desenvolvimento do PC, que é definido por (WING, 2006) como um processo de resolução de problemas que engloba conceitos, habilidades e práticas da Ciência da Computação (CC) , é uma iniciativa que vêm ganhando espaço no contexto educacional e, segundo a autora, merece importância, tal qual, habilidades básicas como leitura e capacidade de efetuar cálculos.

Seguindo esta tendência, alguns países adotaram estratégias para inserção do PC já na educação básica, entre eles: Estados Unidos, Reino Unido, Israel, Alemanha, Holanda, Noruega, Nova Zelândia e Dinamarca (CASPERSEN; NOWACK, 2013). Uma revisão siste-mática realizada por (ZANETTI; BORGES; RICARTE, 2016) reporta o cenário das pesquisas realizadas no Brasil voltadas ao PC no ensino de programação. Dentre as práticas peda-gógicas identificadas no trabalho estão: Computação Desplugada (CD) , Jogos Digitais, Linguagem de Programação, Linguagem de Programação Visual e Robótica Pedagógica.

A “Computer Science Unplugged” ou “CS Unplugged” 1 (no Brasil, Computação Des-plugada) é um método composto com diversas atividades que visam a apresentação e introdução de conceitos da CC sem a necessidade de usar computadores ou qualquer tec-nologia digital (BELL; WITTEN; FELLOWS, 2011). A CD é uma estratégia de ensino fácil de ser implementada, pois utiliza materiais de baixo custo. Essa abordagem é ideal para introduzir conceitos da CC para indivíduos que tenham pouca ou nenhuma experiência com tecnologia, como por exemplo, crianças da educação básica.

1.2

Problemática

Apesar dos grandes avanços tecnológicos observados nas últimas décadas, ainda são notórias as lacunas existentes nos ambientes educacionais, em vários níveis de ensino, quanto à inserção dessas tecnologias como ferramentas pedagógicas. Quando o assunto é o ensino de programação, vê-se que ainda é uma realidade distante do modelo de educação implementado no Brasil, visto que alguns outros países, percebendo a necessidade de preparar pessoas que possuam habilidades relacionadas à programação, já implementam

(21)

ou estão em processo de inclusão destes conhecimentos nas bases curriculares, inclusive, nos níveis mais básicos do processo educacional.

A escassez de atividades relacionadas à computação nos níveis fundamentais de edu-cação no Brasil estão relacionados à falta de infraestrutura nas escolas, principalmente na iniciativa pública, que não dispõe de recursos para montar laboratórios de informática. Ao se analisar este cenário, verifica-se que há uma necessidade de acompanhar as ten-dências globais que convergem para a inserção do ensino de programação cada vez mais cedo, porém, também há a necessidade de contornar as questões relacionadas à falta de infraestrutura tecnológica.

As atividades desplugadas parecem ser uma alternativa viável para atender à estas duas demandas, além de contornarem o problema de disponibilidade de computadores, ainda representam uma importante forma de aprender, pois os aspectos cinestésicos des-sas atividades ancoram os fundamentos teóricos que são passados através do “aprender fazendo” (FELDER; SILVERMAN et al., 1988). Apesar dos benefícios, essas atividades, por si só, não são suficientes para cumprir integralmente os objetivos de ensino, pois o ambiente computacional é importante para que o aluno tenha uma conexão mais próxima com a realidade do que é programar.

Grande parte dos trabalhos encontrados na literatura trata da CD com o objetivo de despertar o interesse, principalmente dos jovens, para a área de computação, ou mesmo como uma abordagem introdutória para ambientes de programação visual baseadas em blocos. Portanto, há um espaço oportuno para a realização de pesquisas que aproveitem a natureza desconectada da CD, porém, tentando aproximar ao máximo da realidade que envolve atividades de programação, não ficando apenas na teoria.

Uma abordagem mista que busque conservar os benefícios da aprendizagem através da interação com objetos tangíveis com os proporcionados pelas plataformas de aprendizado de programação talvez pudesse contornar questões relacionadas à carência de infraestru-tura tecnológica e contribuir para uma aprendizado mais significativo.

1.3

Objetivos

O objetivo principal deste trabalho é propor um framework que possibilite a integração de objetos tangíveis à plataformas de ensino de programação existentes através de técnicas de Visão Computacional e abordagens baseadas em Computação Desplugada. A fim de alcançar esse objetivo geral, os seguintes objetivos específicos foram traçados:

(22)

• Pesquisar e apresentar atividades de ensino de programação ou PC baseadas na abordagem da CD através de uma Revisão Sistemática da Literatura;

• Analisar e compreender aspectos pedagógicos (materiais, conteúdos, atividades, ins-trumentos de avaliação, etc.) presentes em plataformas de ensino de programação;

• Modelar e implementar um framework para a integração entre objetos tangíveis e plataformas de ensino de programação;

• Avaliar a abordagem desenvolvida a partir da sua aplicação em um ambiente edu-cacional.

1.4

Questões de Pesquisa

O desenvolvimento deste trabalho é guiado pelas Questões de Pesquisa (QP) apresen-tadas a seguir.

• QP1: Quais métodos e materiais estão sendo utilizados para o desenvolvimento de habilidades voltadas à programação sem o uso de dispositivos digitais?

• QP2: Quais aspectos são requeridos para que seja possível a integração de plata-formas de ensino de programação com objetos tangíveis?

• QP3: Uma arquitetura baseada em Visão Computacional e Computação Desplu-gada é capaz de fornecer recursos suficientes para o ensino de programação?

• QP4: Quais as vantagens e/ou limitações do uso de uma abordagem mista (mundo real, mundo digital) no processo de ensino-aprendizagem de programação?

Buscando encontrar respostas para a questões de pesquisa definidas acima, estudos empíricos foram realizados.

1.5

Metodologia

A fim de alcançar os objetivos propostos neste trabalho, foram planejadas algumas atividades e estas subdivididas nas seguintes etapas.

Primeiramente, um levantamento bibliográfico foi realizado a fim de se investigar o uso de objetos tangíveis que pudessem ser utilizados no processo de ensino de programação

(23)

e, como resultado, foram encontradas algumas abordagens, dentre elas, a Computação Desplugada (CD), como apontado no Capítulo 2.

Em um segundo momento (Capítulo 3), uma Revisão Sistemática da Literatura (RSL) foi planejada e executada em paralelo à outras atividades, e teve como objetivo extrair ca-racterísticas importantes das atividades desenvolvidas através da CD a fim de possibilitar um estudo posterior buscando uma investigação quanto a viabilidade de integração com plataformas de ensino de programação existentes. A RSL foi dividida em 2 etapas, uma explorando o cenário nacional, tendo como base de dados anais dos principais congres-sos relacionados à Informática na Educação, e outra explorando o contexto internacional através da implementação de uma string de busca em grandes engenhos de pesquisa. Os resultados desta RSL foram importantes para o levantamento de requisitos mais específi-cos e para a validação dos demais estudos realizados.

A terceira etapa engloba um estudo exploratório (Capítulo 4) que foi planejado e exe-cutado para confirmar a hipóteses relacionadas à viabilidade de integração de objetos do mundo real e plataformas de ensino de programação existentes. Nesta etapa foram identi-ficados os requisitos, bem como as técnicas de Visão Computacional (VC) necessárias para a modelagem de um framework e para construir um protótipo de integração objetivando a delimitação do escopo e dos recursos que deverão ser implementados pelo framework.

Uma proposta de framework (Capítulo 5) foi detalhada descrevendo os recursos de integração de objetos tangíveis com plataformas de ensino de programação dentro dos requisitos e limitações apontadas pelo estudo exploratório da etapa anterior.

Ao final, um estudo experimental foi conduzido buscando validar as hipóteses le-vantadas no objetivo deste trabalho, como apresentado no Capítulo 6. Para tanto, um experimento controlado foi realizado em um contexto educacional real com o intuito de avaliar a proposta de framework apresentada e ajudar a responder às principais questões de pesquisa desta dissertação de mestrado.

1.6

Contribuições do Trabalho

Este trabalho contribui com a comunidade científica e o estado da arte através dos seguintes pontos:

1. Apresenta uma Revisão Sistemática da Literatura que descreve as possibilidades de ensino de programação com a Computação Desplugada comparando a

(24)

implementa-ção destas atividades no âmbito da pesquisa nacional e internacional;

2. Proposição de framework para a integração entre os mundos real e virtual objeti-vando uma experiência mais significativa no contexto do ensino de programação a partir de uma abordagem integrada entre objetos tangíveis e plataformas de ensino de programação visual baseadas em blocos;

3. Avaliação dos benefícios e vantagens do uso de objetos tangíveis no ensino de pro-gramação integrados à plataformas digitais de aprendizado;

4. Apresentar os resultados dos trabalhos na forma de artigos científicos, como já feito com o Capítulo 3 (panorama nacional). Os Capítulos 4 e 6 estão aguardando perió-dicos para serem submetidos:

RODRIGUES, S. R. C.; SILVA, T. R.; ARANHA, E. H. S. Computação Desplugada no Ensino de Programação: Uma Revisão Sistemática da Literatura. XXIX Simpósio Brasileiro de Informática na Educação. 2018.

1.7

Organização do Trabalho

Este documento está organizado em sete capítulos, incluindo este primeiro capítulo que trata do Contexto e Motivação da pesquisa, Problemática, Questões de Pesquisa, Objetivos Geral e Específicos, além da Metodologia proposta. O Capítulo 2 apresenta as abordagens de ensino de programação considerando ambientes digitais e contextos tangíveis. No Capítulo 3, é reportada uma Revisão Sistemática da Literatura sobre Com-putação Desplugada no Ensino de Programação, esta foi dividida em 2 etapas, a primeira contemplando o panorama nacional e a segunda o contexto internacional do tema. O Capítulo 4 apresenta um estudo exploratório, onde são levantados os requisitos para a implementação de um framework baseado na construção de um protótipo. O Capítulo 5 traz a proposta do framework com seus requisitos e a descrição detalhada de suas funcio-nalidades. O Capítulo 6 apresenta um estudo experimental executado como ferramenta de avaliação deste trabalho. No Capítulo 7, as considerações finais desta pesquisa reportam uma análise das questões de pesquisa, os trabalhos relacionados e os direcionamentos para trabalhos futuros.

(25)

2

Fundamentação Teórica

Neste capítulo, segue a fundamentação teórica relacionada às diversas abordagens de ensino de programação disponíveis na literatura considerando a aprendizagem em ambi-entes digitais (mundo virtual) e em contextos tangíveis (mundo real).

2.1

Ambientes Digitais

O ato de programar é uma ação intrinsecamente digital, considerando que é uma ati-vidade fim voltada para a execução de instruções objetivando a resolução de problemas através de um dispositivo digital, geralmente, um computador. Nesta seção, serão apre-sentadas algumas abordagens que utilizam ambientes digitais com a finalidade de ensinar programação.

2.1.1

Linguagens de programação baseadas em texto

Há diversas metodologias e práticas para o ensino de programação em diversos níveis educacionais. Um método de ensino clássico, comumente empregado nas salas de aulas em cursos de computação em nível superior ou técnico, é o ensino através de linguagens de programação baseadas em texto. Inicialmente, pseudocódigos e fluxogramas podem ser utilizados para minimizar o impacto cognitivo que uma linguagem de programação pode vir a causar no processo de assimilação e aprendizagem (MANSO et al., 2009).

Um dos problemas desta abordagem é o alto nível de abstração que uma determinada linguagem de programação pode requerer dos alunos, que muitas vezes, não conseguem visualizar e entender o que está acontecendo durante a execução de um código de progra-mação.

Outro problema das linguagens de programação baseadas em texto é a carga sintática. Algumas linguagens de programação são muito carregadas sintaticamente e dificultam a assimilação dos conceitos de lógica de programação fundamentais para a aprendizagem, e

(26)

podem tornar o processo de aprendizagem desinteressante e, até mesmo, frustrante.

2.1.2

Linguagens de programação visual baseadas em blocos

Uma alternativa para o ensino de programação descrita na subseção anterior é o uso de linguagens de programação visual baseadas em blocos. Nesta abordagem, os comandos são representados por blocos específicos que devem ser encaixados de maneira lógica a fim de resolver um determinado problema de programação proposto.

Uma plataforma bastante difundida que implementa programação visual baseada em blocos é o Scratch1, que possibilita a quem tem pouca, ou nenhuma experiência com programação, seja introduzido aos conceitos básicos de programação de maneira fácil, intuitiva e divertida (MALONEY et al., 2010).

Figura 1: Scratch é usado em diversos níveis de ensino. Fonte: https://scratch.mit.edu

Há inúmeros estudos que reportam o sucesso no uso desta abordagem de ensino, principalmente, entre os mais jovens, como por exemplo, crianças no contexto da educação básica (KALELIOĞLU; GÜLBAHAR, 2014).

2.1.3

Jogos Digitais

Os jogos digitais representam mais uma alternativa para o ensino de programação (LEUTENEGGER; EDGINGTON, 2007). A natureza lúdica e os aspectos relacionados ao

(27)

entretenimento, que é uma característica intrínseca dos jogos, torna essa abordagem eficaz quando inserida no processo de ensino-aprendizagem de programação.

Há várias iniciativas voltadas para o ensino de programação através de jogos digitais, dentre elas, uma das mais difundidas no contexto acadêmico é a plataforma Code.org2, que

disponibiliza, além de materiais e cursos voltados ao ensino de ciências da computação, diversos jogos digitais com foco no ensino de programação.

Além do Code.org, diversas outras iniciativas que envolvem a utilização de jogos di-gitais como instrumentos de aprendizagem de programação podem ser encontradas, tais como: Lightbot3, CodeCombat4, entre outros.

Figura 2: Jogo “Flappy Bird ” no Code.org Fonte: https://code.org

(MEDEIROS; SILVA; ARANHA, 2013) e (SILVA; MEDEIROS; ARANHA, 2014) reportam revisões sistemáticas que apontam os jogos digitais como ferramentas de ensino de pro-gramação que ajudam a melhorar o rendimento e o interesse dos alunos.

As abordagens citadas acima compõem as possibilidades de ensino de programação considerando o contexto virtual de aprendizagem, ou seja, o contexto natural no qual a atividade é realizada, tendo o processo de abstração de ideias como o centro do obje-tivo. Apesar de serem abordagens bastante difundidas, estas não são as únicas opções empregadas no ensino de programação. A seção a seguir trata de abordagens de ensino de programação baseadas na interação com objetos do mundo real, ou seja, em um contexto tangível.

2https://code.org 3http://lightbot.com 4http://codecombat.com

(28)

2.2

Contextos Tangíveis

Esta seção apresenta algumas das abordagens mais utilizadas no contexto do ensino de conceitos de programação a partir da interação com objetos tangíveis, ou seja, objetos disponíveis ou construídos no mundo real para esta finalidade.

2.2.1

Robótica

A robótica é mais uma das abordagens que podem ser utilizadas para o ensino de programação (MAJOR; KYRIACOU; BRERETON, 2011). Além da natureza lúdica, a robótica desperta a curiosidade e o interesse dos alunos através da possibilidade de comunicação entre os dois mundos: virtual e real.

Talvez uma desvantagem do uso da robótica para o ensino de programação seja o investimento inicial necessário, haja vista as necessidades específicas de uma plataforma para programar as ações e dos robôs para a realização das atividades. Uma ferramenta bastante difundida é o kit LEGO Mindstorms5 (ZIMMERMAN, 2017).

Figura 3: Kit LEGO Mindstorms Fonte: https://www.lego.com

Uma característica que pode ser observado no ensino de programação através da

(29)

tica é que o aprendizado acontece partindo do abstrato (conceitos e comandos de progra-mação) para o concreto (visualização das ações programadas através do comportamento de um robô).

2.2.2

Computação Tangível

A Computação Tangível traz o conceito de Interface de Usuário Tangível (TUI-Tangible User Interface) (ISHII; ULLMER, 1997), que permite a interação de usuários com

informações digitais a partir da manipulação de objetos físicos, ou seja, tangíveis, no lugar de periféricos tradicionais como teclado e mouse. Esta abordagem vem sendo uti-lizada também para finalidades educacionais voltadas ao ensino de programação, como apresentado em (CARBAJAL; BARANAUSKAS, 2015).

Figura 4: (A) Componentes do Ambiente TaPrEC. (B) Arquitetura do TaPrEC. Fonte: (CARBAJAL; BARANAUSKAS, 2015)

Os objetos tangíveis apresentados nesta abordagem são compostos por objetos do mundo equipados com sensores e/ou microcontroladores tornando-se periféricos específicos para proverem entrada para uma determinada solução. Apesar de apresentar benefícios análogos aos da robótica, esta abordagem depende de recursos computacionais específicos para sua implementação.

2.2.3

Computação Desplugada

Outra abordagem utilizada para o ensino de programação é baseada em atividades que não requerem computadores e outros recursos digitais, ou seja, atividades “desplugadas” (BELL; WITTEN; FELLOWS, 2011).

(30)

São atividades que aproveitam a disponibilidade de recursos e ideias comuns, como caneta, papel, garrafas, música e dança, para ensinar conceitos de programação e desen-volver habilidades do Pensamento Computacional. Essas atividades remetem ao conceito de “Computação Desplugada”6, que tem despertado o interesse da comunidade científica

pela natureza construtivista das atividades propostas.

Através das atividades desplugadas, os alunos podem entender melhor, e de maneira prática, conceitos necessários ao aprendizado de programação, além de criarem uma re-ferência cinestésica proporcionadas pelas experiências práticas realizadas (FABER et al., 2017).

Ao contrário da robótica, o aprendizado parte da associação de experiências do con-creto (interação com objetos/experiências do mundo real) para o abstrato (assimilação através de analogias com as experiências adquiridas).

Figura 5: Atividade “Números Binários” Fonte: https://csunplugged.org

2.3

Considerações Finais

Este capítulo apresentou abordagens utilizadas no processo de ensino-aprendizagem de programação e conceitos fundamentais de Ciências da Computação a partir de

(31)

entes digitais e contextos tangíveis. O capítulo seguinte traz uma Revisão Sistemática da Literatura sobre a Computação Desplugada no ensino de programação.

(32)

3

Computação Desplugada no

Ensino de Programação: Uma

Revisão Sistemática da Literatura

Neste capítulo, uma Revisão Sistemática da Literatura (RSL) é apresentada com o objetivo de fornecer um panorama da utilização da CD como abordagem para o ensino de programação. Esta RSL foi dividida em duas partes: a primeira traz resultados do cenário nacional, enquanto a segunda reporta dados do contexto internacional.

Para extrair dados relevantes neste contexto, trabalhos publicados sobre o tema no pe-ríodo entre 2013 a 2017 foram investigados nas principais fontes de informações científicas nacionais e em grandes mecanismos de indexação e busca de trabalhos científicos.

Como resultado, buscou-se descrever o público-alvo, a motivação, os materiais e mé-todos, os conteúdos, as estratégias de avaliação do aprendizado, bem como as possíveis vantagens e/ou limitações da utilização do método.

3.1

Desdobramentos no Brasil

A seguir, é apresentado o protocolo da RSL conduzida descrevendo os detalhes de como todo o processo foi realizado.

3.1.1

Protocolo da RSL

Para a realização deste trabalho, foram seguidas as diretrizes propostas por ( KITCHE-NHAM, 2004), que contemplam as seguintes etapas: Planejamento (formalização através de um protocolo), Condução (identificação, seleção, extração e análise dos dados) e Apre-sentação dos Resultados (sistematização dos dados). Segue o protocolo desta RSL:

(33)

3.1.2

Questões de Pesquisa

O objetivo desta RSL é apresentar informações relevantes sobre o contexto do ensino de programação através do uso da CD. Para tanto, as seguintes Questões de Pesquisa (QP) foram elaboradas, a fim de garantir a relevância dos dados na etapa de extração e a qualidade deste trabalho. Seguem as QP:

• QP1: Qual o perfil do público alvo dos estudos?

• QP2: Qual a motivação para a utilização desta metodologia?

• QP3: Quais conceitos/conhecimentos de programação são abordados/ensinados atra-vés desta abordagem?

• QP4: Quais recursos instrucionais e metodológicos estão sendo utilizados no ensino de programação e/ou PC com CD?

• QP5: Quais métodos de avaliação da aprendizagem estão sendo utilizados?

• QP6: Quais as vantagens e/ou limitações da utilização da CD no ensino de progra-mação?

3.1.3

Processo de busca, critérios de inclusão e exclusão

A estratégia de busca escolhida para este trabalho foi a busca manual. As publicações realizadas nos últimos 5 anos (entre 2013 e 2017) nas principais fontes de informações científicas nacionais foram consultadas, conforme mostrado na Tabela 1.

Tabela 1: Fontes de pesquisa de publicações nacionais.

Sigla Fonte

SBIE Simpósio Brasileiro de Informática na Educação WIE Workshop de Informática na Escola

WCBIE Workshops do Congresso Brasileiro de Informática na Educação RBIE Revista Brasileira de Informática na Educação

SBGAMES Simpósio Brasileiro de Jogos e Entretenimento Digital RENOTE Revista Novas Tecnologias na Educação

WEI Workshop sobre Educação em Computação

Uma abordagem em duas etapas foi utilizada durante o processo de busca dos estudos primários. Na primeira etapa, os títulos e resumos dos trabalhos foram lidos e avaliados a fim de identificar aqueles que, incialmente, poderiam responder às QP definidas na Seção

(34)

3.1.2. Foram selecionados 43 trabalhos. A seguir, na segunda etapa, procedeu-se à leitura completa dos trabalhos selecionados na etapa anterior. Após a aplicação dos Critérios de Inclusão (CI) e Critérios de Exclusão (CE) relacionados na Tabela 2, 20 trabalhos foram selecionados.

Tabela 2: Critérios de Inclusão e Exclusão. Critérios de Inclusão

CI1 Publicações entre 2013 e 2017.

CI2 Trabalhos escritos em português ou inglês.

CI3 Artigos completos (com no mínimo quatro páginas). CI4 Trabalhos que citam o uso de computação desplugada.

Critérios de Exclusão

CE1 A publicação não possui acesso livre em bibliotecas digitais.

CE2

Documentos disponíveis na forma de resumo, apresentação (pôster/painel), es-tudo secundário (revisões sistemáticas da literatura e/ou mapeamentos sistemá-ticos), capítulo de livro sem resumo ou artigo sem vínculo com periódico ou conferência, e documentos com menos de quatro páginas.

CE3 Trabalhos duplicados e/ou com versão de publicação mais recente, ou mais com-pleta.

CE4 Trabalhos que não estejam relacionados ao ensino de programação usando ati-vidades de computação desplugada.

CE5 Publicações em idiomas diferentes de inglês e/ou português.

3.1.4

Extração dos dados

Nesta fase, a partir de um formulário de extração específico, os seguintes dados foram extraídos dos trabalhos selecionados após a sua leitura completa:

• Referência, evento e ano de publicação;

• Tipo de trabalho (artigo de jornal ou de conferência);

• Objetivos do trabalho;

• Metodologia adotada (observacional, relato de experiência, experimento controlado, estudo de caso, survey, pesquisa-ação, etc.);

• Conteúdos abordados;

• Materiais e métodos utilizados;

• Informações sobre os participantes do estudo (número, faixa etária, grau de escola-ridade, etc.);

(35)

• Resultados e conclusão;

• Etc.

Os dados coletados foram armazenados em uma planilha e posteriormente utilizados nas próximas fases desta RSL.

3.1.5

Avaliação da qualidade

Definir e avaliar a qualidade dos estudos primários está além dos critérios de inclusão e exclusão (KITCHENHAM, 2004). Os critérios de qualidade ajudam a classificar detalhes após a inclusão, a orientar recomendações futuras e a interpretar melhor os resultados da pesquisa. Este processo de Avaliação da Qualidade (AQ) foi realizado durante a fase de extração de dados no intuito de garantir que os estudos incluídos tenham uma contribuição relevante para esta RSL. Os critérios de AQ utilizados neste estudo são discutidos por (DYBÅ; DINGSØYR, 2008). As respostas para cada questão foram atribuídas o valor de 1 para “Sim”, 0.5 para “Parcialmente” ou 0 para “Não”.

• AQ1: O estudo está baseado em pesquisas empíricas ou em relatos de experiência com base em relatórios ou na opinião de especialistas?

• AQ2: Existe uma definição clara dos objetivos da pesquisa?

• AQ3: Existe uma descrição adequada do contexto em que a pesquisa foi realizada?

• AQ4: Havia um grupo de controle com o qual pudesse comparar tratamentos?

• AQ5: Os dados foram coletados de forma que abordasse as questões de pesquisa?

• AQ6: Existe uma indicação clara dos resultados?

Os critérios AQ1 e AQ2 foram utilizados para descartar os estudos primários que não relatam de forma clara os objetivos de pesquisa. Os demais critérios avaliam os métodos de pesquisa utilizados e se estes demonstram credibilidade e relevância para este estudo. A Tabela 3 mostra os resultados referentes à Avaliação de Qualidade dos estudos primários incluídos nesta RSL:

(36)

Tabela 3: Resultados da Avaliação de Qualidade dos estudos selecionados Estudo/Critério AQ1 AQ2 AQ3 AQ4 AQ5 AQ6 TOTAL

E1 1,0 1,0 1,0 0,0 1,0 1,0 5,0 E2 1,0 1,0 1,0 1,0 0,5 0,0 4,5 E3 1,0 1,0 1,0 0,0 1,0 1,0 5,0 E4 1,0 1,0 1,0 0,0 1,0 0,0 4,0 E5 1,0 1,0 1,0 0,0 1,0 0,0 4,0 E6 1,0 1,0 1,0 0,0 1,0 1,0 5,0 E7 1,0 1,0 1,0 0,0 0,0 0,5 3,5 E8 1,0 1,0 1,0 0,0 0,0 0,0 3,0 E9 1,0 1,0 1,0 1,0 1,0 1,0 6,0 E10 1,0 1,0 1,0 0,0 1,0 0,0 4,0 E11 1,0 1,0 1,0 0,0 0,5 0,0 3,5 E12 1,0 0,5 1,0 0,0 0,5 0,0 3,0 E13 1,0 1,0 1,0 0,0 1,0 0,5 4,5 E14 1,0 1,0 1,0 0,0 1,0 1,0 5,0 E15 1,0 0,5 1,0 0,0 0,5 0,5 3,5 E16 1,0 1,0 1,0 0,0 0,5 0,5 4,0 E17 1,0 1,0 1,0 0,0 0,5 0,5 4,0 E18 1,0 1,0 1,0 0,0 0,5 1,0 4,5 E19 1,0 1,0 1,0 0,0 1,0 0,0 4,0 E20 1,0 1,0 1,0 0,0 1,0 0,0 4,0

3.1.6

Resultados

Seguem os resultados encontrados a partir das resposta às QP levantadas nesta RSL. A relação dos estudos selecionados nesta revisão seguem identificados pela coluna ID, conforme descrito na Tabela 4. Os referidos estudos seguem referenciados por esta iden-tificação por todo o restante desta seção.

• QP1: Qual o perfil do público-alvo dos estudos?

Em 65% dos estudos (13 dos 20) [E3, E4, E5, E7, E8, E9, E10, E12, E14, E16, E18, E19 e E20], o público-alvo das intervenções realizadas é composto por alunos do Ensino Fundamental. Em 35% (7) dos estudos [E5, E10, E13, E15, E17, E19 e E20], tem relação com alunos do Ensino Médio. Por fim, dois estudos [E1 e E8] tem relação com alunos de cursos técnicos e outros 2 estudos [E2 e E6] com alunos da Educação Infantil. Apenas o estudo [E11] trabalhou com público de Nível Superior. Estes resultados sugerem um maior interesse das pesquisas que abordam CD no ensino de programação ainda na educação básica. As escolas públicas apresentam-se com predoninância nos estudos investigados, sendo em apenas no estudo E6 relatada a intervenção em uma escola privada.

(37)

Tabela 4: Relação de estudos primários selecionados

ID Fonte Título Ano

E1 SBIE

Relato da experiência do trabalho com jogos manuais de ra-ciocínio lógico como reforço para as disciplinas de algoritmos e linguagem de programação

2014 E2 WIE A contribuição do projeto berçário de hackers na

alfabetiza-ção matemática de crianças em fase pré-operatória 2017

E3 WIE

Pensamento Computacional: Uma Proposta de Ensino com Estratégias Diversificadas para Crianças do Ensino Funda-mental

2017 E4 WIE Proposta de atividade para o quinto ano do ensino

funda-mental: Algoritmos Desplugados 2015

E5 WIE

Experiência Prática Interdisciplinar do Raciocínio Compu-tacional em Atividades de Computação Desplugada na Edu-cação Básica

2015 E6 WIE Brinquedos de Programar na Educação Infantil: Um estudo

de Caso 2015

E7 WIE Bem Mais que os Bits da Computação Desplugada 2014 E8 WCBIE

Desenvolvimento do Pensamento Computacional e discus-sões sobre representação feminina na Computação: um es-tudo de caso

2017 E9 WCBIE Pensamento Computacional Desplugado: Ensino e Avaliação

na Educação Primária Espanhola 2017

E10 WCBIE Uma Experiência Piloto de Integração Curricular do

Racio-cínio Computacional na Educação Básica 2015 E11 WCBIE

Relato de experiência de alunos do curso de Licenciatura em Computação do IFMG - campus Ouro Branco na utilização de objetos de aprendizagem desplugados e do Scratch como instrumentos no ensino de programação

2013

E12 WEI Relato Histórico da Prática Docente em Disciplinas de

Está-gio Contado por Estudantes da Licenciatura em Computação 2013 E13 WEI O Pensamento Computacional no Ensino Médio: Uma

Abor-dagem Blended Learning 2013

E14 WEI Ensino de lógica de programação no ensino fundamental

uti-lizando o Scratch: um relato de experiência 2014

E15 WEI

O ensino de conceitos computacionais para alunos do ensino médio: relato de experiência de uma gincana e das estratégias utilizadas pelos alunos na resolução das atividades despluga-das

2015

E16 WEI O Ensino de Computação na Educação Básica apoiado por

Problemas: Práticas de Licenciandos em Computação 2015 E17 WEI para Ensino Médio na Modalidade Semipresencial: Uma

Ex-periência da Disciplina de Estágio Supervisionado 2015 E18 WEI organization via computational thinking: case study in a

pri-mary school classroom 2016

E19 WEI A percepção dos professores sobre a prática da

interdiscipli-naridade no ensino de computação para escolares 2017 E20 WEI Projeto Aprenda a Programar Jogando: Divulgando a

(38)

• QP2: Qual a motivação para a utilização desta metodologia?

A principal motivação relatada nos estudos foi a necessidade de inserção de conceitos de computação na educação básica. Esta motivação é encontrada em 50% (10) dos estudos [E4, E5, E12, E13, E14, E15, E16, E17, E18 e E20]. Outros 4 estudos [E3, E7, E11 e E12] apontam a prática de métodos de ensino de computação diversificados como motivação. A integração curricular através da interdisciplinaridade foi apontada por 3 estudos [E5, E10 e E19]. Em outros 3 estudos [E4, E7 e E9], a deficiência, ou mesmo ausência, de infraestrutura de laboratórios de informática foi a motivação apresentada. A baixa adesão do público feminino à Computação foi citada no estudo [E8] e o estudo [E1] apresentou o alto índice de evasão e as dificuldades em disciplinas de programação como motivação para o uso da CD como metodologia de ensino.

• QP3: Quais conceitos/conhecimentos de programação são abordados/ensinados através desta metodologia?

Os conceitos de algoritmos foram trabalhados em 90% (18) dos estudos [E1, E2, E3, E4, E5, E6, E8, E9, E10, E12, E13, E14, E15, E16, E17, E18, E19 e E20], por ser a base do ensino de programação. A execução de comandos/instruções e o sequenciamento de ações foram citadas em 9 trabalhos [E4, E6, E8, E9, E11, E12, E13, E16 e E17]. Outros 5 estudos abordaram os conteúdos de estruturas de decisão [E3, E4, E9, E16 e E19], estruturas de repetição [E3, E4, E8, E9 e E16] e operadores lógicos [E3, E5, E10, E11 e E12]. Os algoritmos de busca e ordenação [E5, E10 e E18] e o conceito de variáveis [E4, E9, E17] foram abordados por 3 trabalhos cada um. O raciocínio lógico-aritimético foi trabalhado nos estudos [E2 e E3] e o conceito de recursão no estudo [E1].

• QP4: Quais recursos instrucionais e metodológicos estão sendo utilizados no ensino de programação com CD?

Atividades com lápis, caneta e papel são citadas em 10 estudos [E3, E4, E5, E9, E10, E13, E14, E15, E16 e E17] com objetivos diversos. Por exemplo, escrever sequências de instruções para montagem de objetos ou desenhos. Jogos manuais (tabuleiros, raci-ocínio lógico-matemático, quebra-cabeças, etc.) são descritos em outros 9 estudos [E1, E2, E3, E4, E5, E9, E10, E13 e E18] como ferramentas para o exercício do raciocínio lógico-matemático, desafios, definição de regras a serem seguidas, representação de com-portamentos de estruturas de programação, entre outras atividades.

(39)

O uso de instruções verbais também é citado em 5 estudos [E5, E6, E13, E17 e E20], também trabalhando conceitos de algoritmos. Em 4 estudos [E5, E9, E10 e E14], a música e dança foram utilizadas como instrumento facilitador do entendimento de algoritmos de ordenação, por exemplo. Outros 4 estudos [E5, E7, E13 e E17] trabalharam conceitos de programação através de brincadeiras, desafios e atividades competitivas.

Os estudos [E11 e E18] empregaram materiais autorais construídos a partir de pla-cas de EVA, papelão, régua, garrafas, isopor para a criação de jogos e atividades para o ensino de operadores lógicos e algoritmos. A contextualização interdisciplinar com disci-plinas como Matemática, Química, Português, Inglês, Biologia foi um método utilizado nos estudos [E5, E10 e E19] para o ensino de conceitos de programação e raciocínio lógico.

Os estudos [E2 e E4] relataram a confecção e uso de blocos de instruções de programa-ção análogos aos utilizados no ambiente Scratch para trabalhar conceitos de programaprograma-ção de maneira visual. Exemplos do cotidiano (trocar uma lâmpada, tomar banho, escovar os dentes, ir à escola) foram utilizados para trabalhar o conceito de algoritmos nos estudos [E3 e E15].

Atividades envolvendo robótica também foram citadas nos estudos [E6 e E12]. Já os estudos [E13, E14, E16] relataram a utilização de algumas atividades do livro "CS Unplugged" (BELL; WITTEN; FELLOWS, 2011), referência para muitos outros trabalhos sobre CD. Também é importante relatar que os estudos [E2, E3, E8, E12, E13, E14, E16 e E20] utilizaram, além da CD, métodos complementares também focados no ensino de programação, tais como: Scratch, AppInventor, BeeBot, além de recursos do Code.org.

• QP5: Quais métodos de avaliação da aprendizagem estão sendo utiliza-dos?

O uso de questionários ou atividades avaliativas após as intervenções foi o método de avaliação apontando por 40% (8) dos estudos [E3, E4, E13, E14, E15, E16, E17 e E20]. A observação das atividades realizadas pelos alunos foi citada em 6 trabalhos [E4,E5, E6, E10, E14 e E16]. Outros 5 trabalhos [E1, E2, E8, E9 e E19] realizaram pré e pós-teste para avaliar o desempenho das intervenções, sendo que o estudo [E9] realizou pós-testes com dois grupos, um de controle e outro experimental para validação dos resultados alcançados, além de um instrumento avaliativo específico para medir o desenvolvimento das habilidades do PC (GONZÁLEZ, 2015).

Os estudos [E14 e E19] avaliaram as atividades realizadas através de entrevistas. O estudo [E3] relatou o uso de um sistema gamificado como ferramenta de avaliação. Uma

(40)

atividade prática foi o instrumento avaliativo utilizado no estudo [E17].

• QP6: Quais as vantagens e/ou limitações da utilização da CD no ensino de programação?

Vantagens: 4 estudos [E1, E8, E9 e E12] apontam melhorias no aprendizado e tam-bém no desenvolvimento de habilidades de raciocínio lógico-matemático. Elevação da au-toestima e estímulo à proatividade foram vantagens apontadas pelo estudo [E1], além da promoção da integração/cooperação entre os indivíduos durante a realização das ativida-des, que também foi apontada em outros 2 estudos [E6 e E14].

A possibilidade de construção de novos conhecimentos foi destacada em 3 estudos [E5, E10 e E17]. Os estudos [E3, E8 e E12] citaram a solução de problemas de forma criativa. Outros 4 estudos [E3, E7, E17 e E20] descreveram a CD como um método divertido e/ou satisfatório para o aprendizado de programação. A possibilidade de implementar estraté-gias interdisciplinares e a experiência prática docente foram apontadas como vantagens pelos estudos [E5, E10, E11 e E19].

O despertar do interesse pela área de computação foi apontando como vantagem em 3 estudos [E15, E16 e E17]. Já em 4 dos 20 estudos encontrados não relataram vantagens específicas quanto à utilização da CD no ensino de programação [E2, E4, E13 e E18].

Desvantagens e/ou Limitações: Os estudos [E6 e E15] relataram algumas difi-culdades de compreensão dos conteúdos, atribuindo à incompatibilidade das atividades com as faixas etárias trabalhadas. A necessidade de um tempo maior para a realização das atividades proposta foi relatada em dois estudos [E8 e E17]. O estudo [E7] relatou inadequação do ambiente físico disponível para a realização das atividades. Houve evasão no decorrer das atividades descritas no estudo [E14].

Questões pedagógicas relacionadas ao foco nas atividades por parte dos alunos foram apontadas como limitações no estudo [E12]. Por fim, o estudo [E19] relata que o método precisa ser aprimorado para alcançar melhores resultados. Não foram relatadas nenhuma desvantagem ou limitação em 60% (12) dos estudos [E1, E2, E3, E4, E5, E9, E10, E11, E13, E16, E18 e E20].

(41)

3.2

Cenário Internacional

Esta seção é uma extensão da RSL apresentada na seção anterior e os procedimentos específicos são relacionados a seguir, juntamente aos resultados apurados até o momento.

3.2.1

Protocolo da RSL

As diretrizes propostas por (KITCHENHAM, 2004) continuam sendo seguidas. As ques-tões de pesquisa, critérios de inclusão e exclusão são os mesmos apresentados até aqui. Seguem os procedimentos específicos adotados para esta finalidade.

3.2.1.1 Processo de busca

Para estender os resultados desta RSL, considerando o contexto internacional deste estudo, a estratégia de busca adotada nesta etapa foi a busca automática, que compre-ende o processo de busca em mecanismos de indexação de trabalhos científicos através da implementação de Strings de Busca específicas. Segundo (KITCHENHAM, 2004), uma String de busca é uma sequência de caracteres que contém os principais termos derivados das questões de pesquisa.

A Tabela 5 mostra as bases de dados consultadas.

Tabela 5: Mecanismos de Indexação e Busca

Sigla Nome

ACM ACM Digital Library

IEEE IEEE Xplore Digital Library SCOPUS Scopus Database

A String de busca genérica utilizado foi a seguinte:

(“Computer Science Unplugged” OR “CS Unplugged”) AND Programming

Para cada mecanismo de busca a String acima teve que ser adaptada devido à es-pecificidades das ferramentas. Além da sintaxe, refinamentos e/ou filtros tiveram que ser aplicados a fim de contemplar os requisitos do processo de busca automática. Seguem as Strings de busca para cada mecanismo:

(42)

(programming +(“CS unplugged” “Computer Science Unplugged”)) Refinamentos: Published since: 2013 and Published before: 2017

String IEEE:

((“Computer Science Unplugged” OR “CS Unplugged”) AND Programming) Filtro: 2013-2017

String SCOPUS:

(ALL(“CS Unplugged”) OR ALL(“Computer Science Unplugged”) AND ALL(programming)) AND PUBYEAR > 2012 AND PUBYEAR < 2018

Após executar as buscas, um total de 197 trabalhos foram encontrados (SCOPUS = 127; IEEE = 43; ACM = 27). A primeira etapa de seleção consistiu na leitura dos títulos e resumos dos estudos, sendo que, deste total, restaram apenas 40 trabalhos. Após a leitura integral e verificação dos critérios de inclusão e exclusão, 13 trabalhos foram selecionados para o processo de extração dos dados e sumarização dos resultados. Os procedimentos de extração dos dados e avaliação da qualidade permanecem os mesmos apresentados nas seções anteriores. Abaixo, a Tabela 6 traz a relação de estudos selecionados nesta fase.

3.2.2

Resultados

Seguem os resultados encontrados a partir das resposta às QP levantadas nesta RSL. Os estudos seguem referenciados pela coluna ID apresentada na Tabela 6, que é uma continuidade da Tabela 4.

• QP1: Qual o perfil do público-alvo dos estudos?

Na maioria dos estudos, 84,6% (11 dos 13 estudos), o público-alvo é formado por alunos do K-9 education, equivalente ao nível de Ensino Fundamental de 9 anos no Brasil. Os níveis Médio [E25] e Superior [E26] de ensino são o foco em 01 estudo cada. É notório o interesse maior voltado à investigação do ensino de programação através de estratégias que incluem a CD nos níveis mais básicos de ensino, pois é sobre este público que os benefícios e vantagens de abordagens construtivistas tem mais potencial.

(43)

Tabela 6: Relação dos estudos primários selecionados (RSL Internacional)

ID Fonte Título Ano

21 SIGCSE Assessing Computational Thinking in CS Unplugged

Activities 2017

22 SIGCSE Identifying elementary students’ pre-instructional

abi-lity to develop algorithms and step-by-step instructions 2014 23 IEEE/FIE Evaluating algorithmic thinking ability of primary

scho-olchildren who learn computer programming 2017 24 EDUCON Analysis of scratch projects of an introductory

program-ming course for primary school students 2017 25 eCONF Programming Unplugged: Bridging CS Unplugged

Ac-tivities Gap for Learning Key Programming Concepts 2015 26 ACM Improving computational thinking using follow and give

instructions 2017

27 ASSE Fun, innovative computer science activities for the

clas-sroom and outreach 2017

28 JVLC

Programming language, natural language? Supporting the diverse computational activities of novice program-mers

2017

29 ITiCSE Evaluating the effect of using physical manipulatives to

foster computational thinking in elementary school 2017 30 ACM Teaching computer science to 5-7 year-Olds: An initial

study with scratch, Cubelets and unplugged computing 2015

31 ISSEP Is coding the way to go? 2015

32 SIGCSE Scratch: A way to logo and python 2015

33 LNCS Blind pupils begin to solve algorithmic problems 2013

Dentre as principais motivações apontadas pelos estudos analisados estão: A necessi-dade de inserção de conceitos de computação a partir dos níveis mais básicos da educação (30,8% dos estudos) [E24, E28, E29 e E30]; A ausência ou introdução recente de um currí-culo de Ciências da Computação no nível de ensino investigado, ou mesmo, a necessidade de complementação deste currículo foi identificada em outros 3 estudos [E22, E24 e E26] (23,1%), e, dificuldades de aprendizagem em outros 2 estudos [E26 e E27] (15,4%). Além destas, mensurar a eficiência da CD no desenvolvimento de habilidades do PC [E21], ava-liar os conhecimentos sobre programação no ensino fundamental [E23], explorar melhor conceitos chaves de programação [E25], atrair jovens para o mundo da Ciência da Compu-tação [E31], preocupações quanto à transição de linguagens de programação visual para linguagens de programação textuais [E32], e, o desafio de introduzir programação para crianças com deficiência visual [E33], foram apontadas como motivação para a utilização da CD como metodologia de ensino de programação.

(44)

ensinados através desta metodologia?

Todos os estudos abordaram o conceito de algoritmos, pois é a base do ensino de programação. A execução de comandos/instruções e o sequenciamento de ações foram citados por 76,9% dos estudos [E22, E23, E24, E25, E26, E28, E29, E31, E32 e E33]. Estruturas de repetição nos estudos [E23, E24, E25, E27, E28, E31, E32 e E33] (61,5%), estruturas de decisão nos estudos [E23, E24, E25, E27, E28, E29 e E31] (53,8%), algoritmos de ordenação em [E21, E22 e E27] e funções em [E25, E28 e E32] com 23,1%, estruturas de dados (árvores e listas) pelos estudos [E21 e E25] (15,4%), recursão [E27], variáveis [E25], algoritmos de busca [E21], e, depuração [E30], foram citados por 1 estudo cada.

• QP4: Quais recursos instrucionais e metodológicos estão sendo utilizados no ensino de programação com CD?

Materiais comuns (lápis, caneta, papel, cola, tesoura, adesivos, etc.) foram citados em 61,5% dos estudos [E21, E22, E23, E25, E26, E31, E32 e E33]. Instruções verbais/gestuais foram citados em 30,8% dos estudos [E26, E30, E31 e E32], juntamente com materiais autorais (impressos, cartões perfurados/pré-definidos) [E25, E28, E29 e E30]. Outros ob-jetos físicos como bolas, copos cestas, entre outros, foram citados em 23,1% dos estudos [E21, E22 e E27]. Atividades envolvendo música e dança [E23], Robótica [E33] e exemplos do cotidiano [E25], blocos de programação (análogos aos da ferramenta Scratch) foram citados em 1 estudo cada.

• QP5: Quais métodos de avaliação da aprendizagem estão sendo utiliza-dos?

A avaliação do material produzido em atividades é citado por 38,5% dos estudos [E24, E25, E28, E29 e E30]. A implementação de pré e pós-teste foi executada em 30,8% dos trabalhos [E21, E23, E25 e E29], questionários [E26, E30 e E31] e entrevistas [E22, E30 e E31] em 23,1%. Notas de observação foi citada em 2 estudos [E29 e E32], seguida por avaliação formal (prova) [E29], e, exercícios e/ou desafios [E33] em 1 estudo cada. Apenas o estudo [E27] não relata nenhuma estratégia de avaliação por se tratar de um guia de atividades para cursos de verão.

• QP6: Quais as vantagens e/ou limitações da utilização da CD com esta finalidade?

(45)

Vantagens: Os estudos [E21, E24, E26 e E28], que representam 30,8% do total, des-tacam o impacto positivo que as atividades proporcionam, pois aproveitam a familiaridade dos alunos com os materiais utilizados pela abordagem de ensino. A diversão [E21, E27 e E30], a atratividade [E23, E24 e E25] e a facilidade de assimilação dos conteúdos [E25, 39 e E33] são as vantagens citados em 23,1% dos estudos. Em outros 2 estudos [E31 e E32] é destacada a natureza construtivista das atividades como uma importante caracterís-tica para o ensino. Os estudos [E22 e E23] não destacaram nenhuma vantagem específica relacionada à CD.

Desvantagens e/ou Limitações: O nível mais elevado ou alguma dificuldade na interpretação dos objetivos das atividades foram relatados pelos estudos [E23, E28 e E31]. Uma maior demanda de tempo para a preparação e execução de material foi uma difi-culdade encontrada nos estudos [E25 e E29]. Desvio do foco pedagógico por conta do excessivo entretenimento [E30], dificuldades em conciliar espaços distintos para a realiza-ção das atividades [E27], e, de orientarealiza-ção espacial, no caso das atividades com deficientes visuais, foram outras limitações apontadas. E, por fim, os estudos [E22, E24, E26 e E32] não relataram quaisquer fatores negativos por conta do uso da CD no desenvolvidos de suas atividades.

3.3

Ameaças à Validade

Como em toda revisão da literatura, as decisões tomadas durante a fase de elaboração deste protocolo de RSL têm influência direta sobre os resultados alcançados. A execução da RSL envolve naturalmente subjetividades como as escolhas feitas pelos pesquisadores na aplicação dos critérios de inclusão e exclusão, além da interpretação e extração de dados dos trabalhos. Contudo, estes riscos foram minimizados, pois uma amostragem relevante dos resultados foi revisada por outros dois pesquisadores, além do pesquisador principal, garantindo a coerência dos resultados alcançados.

3.4

Considerações finais

O presente trabalho traz um panorama do uso da CD como metodologia para o ensino de programação considerando o cenário nacional nos últimos 5 anos (2013 a 2017). É notório, analisando os resultados apresentados, que o ensino de computação (isso inclui programação), tem se mostrado necessário cada vez mais cedo, haja vista as mudanças

(46)

observadas no contexto social contemporâneo em todo o mundo.

Apesar do grande avanço tecnológico observado nas últimas décadas, a realidade da educação brasileira, principalmente a educação pública, ainda apresenta dificuldades es-truturais quanto ao desenvolvimento de atividades voltadas ao ensino de computação, seja pelas deficiências na infraestrutura das escolas (falta de computadores, laboratórios, internet), ou pela falta de professores capacitados para atuarem nos níveis fundamentais da educação.

Ao contrário das ações executadas em outros países, que já caminham há um bom tempo com atividades de Ciências da Computação incorporadas aos seus currículos da educação fundamental, o Brasil ainda caminha a passos curtos em direção à difusão do conhecimento computacional. Enquanto o cenário internacional já investiga e discute as possíveis melhorias desse upgrade curricular, o acesso às vantagens proporcionadas por uma educação que incorpora os benefícios do desenvolvimento das habilidades do PC e voltadas à programação ainda é uma realidade de poucos.

Através desta revisão, foi possível verificar o potencial que a CD possui para a introdu-ção de conhecimentos de computaintrodu-ção e programaintrodu-ção, desenvolvimento de habilidades do PC, cada vez mais necessárias em diversas áreas, não somente na computação, despertar e motivar o interesse pela área, ser uma alternativa viável econômica e tecnologicamente. Contudo, ainda há possibilidades de promover melhorias nos materiais e métodos empre-gados, no processo de ensino-aprendizagem, nas estratégias de avaliação e na transposição para o ensino de programação formal em computadores.

No capítulo seguinte, é apresentado um estudo exploratório que tem como objetivo o levantamento de requisitos para uma proposta de framework que tem como objetivo a integração de plataformas de ensino de programação com objetos tangíveis utilizando técnicas de Visão Computacional e atividades de Computação Desplugada.

(47)

4

Estudo Exploratório

Este capítulo apresenta um estudo exploratório e tem como objetivo investigar as possibilidades de integração de plataformas de ensino com objetos tangíveis, identificando requisitos, técnicas e viabilidade de implementação, coletando evidências iniciais sobre as hipóteses formuladas a partir de experiências realizadas com algumas ferramentas e abordagens descritas em trabalhos científicos estudados no capítulo anterior. Seguem as hipóteses de pesquisa (HP):

• HP1: Qualquer plataforma utilizada para ensinar programação pode ser integrada com objetos tangíveis.

• HP2: Quaisquer conteúdos relacionados à programação podem ser ensinados utili-zando objetos tangíveis.

• HP3: É possível usar técnicas de Visão Computacional para integrar o mundo real e o mundo virtual com o objetivo de ensinar programação.

• HP4: Qualquer objeto tangível pode ser utilizado para ensinar programação de forma integrada à uma plataforma de programação.

4.1

Protótipo de Integração

Esta seção descreve o desenvolvimento de um protótipo que tem como objetivo validar as hipóteses de pesquisa.

4.1.1

Idealização

Dentre os métodos apresentados na Seção 1.5, as atividades desplugadas estão dire-tamente relacionadas ao manuseio de artefatos tangíveis, ou seja, objetos do mundo real.

(48)

A RSL apresentada no Capítulo ?? apontou em seus resultados a utilização de diver-sos materiais e estratégias para o ensino de programação. Alguns trabalhos relataram o uso de blocos de programação físicos ou mesmo comandos impressos análogos aos dis-ponibilizados por plataformas que implementam programação através de linguagens de programação visual baseadas em blocos (como Scratch, por exemplo).

A ideia deste protótipo é conseguir integrar blocos de programação físicos com uma plataforma de ensino existente. Para tanto, foi escolhida a atividade “Abelha: Sequência”1 disponibilizada na plataforma Code.org2. Esta atividade consiste em um desafio onde o

usuário deve ordenar uma sequência de blocos de ações que devem conduzir a abelha a cumprir a tarefa proposta, ou seja, representa uma solução para um dado problema. A Figura 6 mostra a interface da atividade.

Figura 6: Interface da atividade “Abelha: Sequência” na plataforma Code.org Fonte: https://studio.code.org

Por se tratar de uma atividade que envolve a manipulação de blocos de programação visual, e estes devem ser representados por objetos físicos de igual significado, os blocos disponíveis na plataforma foram impressos em quantidades suficientes para programar uma solução para os desafios propostos. Ao invés de interagir com os blocos disponíveis na interface da ferramenta, o usuário deve manusear os blocos impressos para programar uma solução.

1https://studio.code.org/s/course1/stage/7/puzzle/1 2https://code.org

Referências

Documentos relacionados

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

Este artigo está dividido em três partes: na primeira parte descrevo de forma sumária sobre a importância do museu como instrumento para construção do conhecimento, destaco

Para esse fim, analisou, além do EVTEA, os Termos de Referência (TR) do EVTEA e do EIA da Ferrogrão, o manual para elaboração de EVTEA da empresa pública Valec –

Requiring a realignment of the EVTEA with its ToR, fine-tuning it to include the most relevant socio-environmental components and robust methodologies for assessing Ferrogrão’s impact

Dessa maneira, os resultados desta tese são uma síntese que propõe o uso de índices não convencionais de conforto térmico, utilizando o Índice de Temperatura de Globo Negro e

São considerados custos e despesas ambientais, o valor dos insumos, mão- de-obra, amortização de equipamentos e instalações necessários ao processo de preservação, proteção

Apesar da longa distância dos grandes centros urbanos do país, Bonito destaca- se, regionalmente, como uma área promissora dentro do Estado de Mato Grosso do Sul. Bonito,

Afinal de contas, tanto uma quanto a outra são ferramentas essenciais para a compreensão da realidade, além de ser o principal motivo da re- pulsa pela matemática, uma vez que é