avep - um ambiente virtual para apoio ao ......requisitos necessários para a obtenção do grau de...

124
AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ENSINO DE ALGORITMOS E PROGRAMAÇÃO JOSÉ CARLOS ROCHA PEREIRA JÚNIOR UNIVERSIDADE ESTADUAL DO NORTE FLUMINENSE – UENF CAMPOS DOS GOYTACAZES – RJ JUNHO – 2006

Upload: others

Post on 08-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ENSINO DE

ALGORITMOS E PROGRAMAÇÃO

JOSÉ CARLOS ROCHA PEREIRA JÚNIOR

UNIVERSIDADE ESTADUAL DO NORTE FLUMINENSE – UENF

CAMPOS DOS GOYTACAZES – RJ

JUNHO – 2006

Page 2: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

ii

AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ENSINO DE

ALGORITMOS E PROGRAMAÇÃO

JOSÉ CARLOS ROCHA PEREIRA JÚNIOR

“Dissertação apresentada ao Centro de Ciências e

Tecnologia da Universidade Estadual do Norte

Fluminense, como parte das exigências para

obtenção do título de Mestre em Engenharia de

Produção”.

Orientadora: Clevi Elena Rapkiewicz, D.Sc.

CAMPOS DOS GOYTACAZES – RJ

JUNHO – 2006

Page 3: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

iii

AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ENSINO DE

ALGORITMOS E PROGRAMAÇÃO

JOSÉ CARLOS ROCHA PEREIRA JÚNIOR

“Dissertação apresentada ao Centro de Ciências e

Tecnologia da Universidade Estadual do Norte

Fluminense, como parte das exigências para

obtenção do título de Mestre em Engenharia de

Produção”.

Aprovada em 10 de junho de 2006. Comissão Examinadora: _____________________________________________ Prof.ª Annabell del Real Tamariz, D.Sc. - UCAM

_____________________________________________ Prof.ª Sahudy Montenegro González, D.Sc. - UCAM

_____________________________________________ Prof. Lacir Jorge Soares, D.Sc. - UENF

_____________________________________________ Prof.ª Clevi Elena Rapkiewicz, D.Sc. - UENF

Orientadora

Page 4: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

iv

DEDICATÓRIA

Aos meus pais e a minha esposa, Isabel Cristina, que são presentes de Deus.

Page 5: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

v

AGRADECIMENTOS

A Deus, Senhor da minha existência, pela oportunidade de desenvolver este

trabalho.

Aos meus pais, pela formação e carinho que me deram.

A minha esposa, pelo incentivo em todos os momentos desta caminhada.

A minha orientadora, Clevi Elena Rapkiewicz, pela amizade, paciência e dedicação

para a concretização deste trabalho e pelo tanto que me fez crescer

profissionalmente e como pessoa.

Á Equipe que se empenhou no desenvolvimento dos jogos utilizados neste trabalho.

À Carla Delgado, pela colaboração com material didático e suporte para aplicação

da estratégia utilizada.

A minha tia Silvane e a Maria Valdete, ambas são professoras do Colégio Estadual

Baltazar Carneiro, pelo apoio para a realização de uma oficina nesta instituição de

ensino.

Ao professor José Antônio Xexeo e à Unibennett, pela disponibilidade para

realização da uma outra oficina.

A todos os colegas do mestrado e funcionários da UENF, pelo companheirismo e

pelas colaborações.

Aos membros da banca por compartilharem suas experiências profissionais na

avaliação desta dissertação.

A CAPES e a todos de maneira geral que, direta ou indiretamente, contribuíram para

a concretização desse trabalho.

Page 6: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

vi

SUMÁRIO

RESUMO................................................................................................................. VIII

ABSTRACT............................................................................................................... IX

LISTA DE FIGURAS.................................................................................................. X

LISTA DE TABELAS ............................................................................................... XII

LISTA DE TERMOS................................................................................................ XIII

CAPÍTULO 1 – INTRODUÇÃO...................................................................................1 1.1 CONTEXTO...........................................................................................................1 1.2 DEFINIÇÃO DO PROBLEMA E MOTIVAÇÃO DO TRABALHO ..........................................4 1.3 OBJETIVOS ..........................................................................................................5 1.4 JUSTIFICATIVA ......................................................................................................5 1.5 ESTRUTURA DA DISSERTAÇÃO...............................................................................6

CAPÍTULO 2 – ANÁLISE CRÍTICA DA LITERATURA..............................................7 2.1 ALGUNS DESAFIOS RELATIVOS AO PROCESSO DE ENSINO E APRENDIZAGEM DE ALGORITMOS E PROGRAMAÇÃO...................................................................................9 2.2 PROPOSTAS NA LITERATURA PARA MINIMIZAÇÃO DOS PROBLEMAS.........................12

2.2.1. FERRAMENTAS ........................................................................................13 2.2.2. ESTRATÉGIAS..........................................................................................27

2.3. UMA ANÁLISE CRÍTICA DA LITERATURA................................................................31 CAPÍTULO 3 – UMA METODOLOGIA PARA ENSINAR PROGRAMAÇÃO...........35

3.1. A METODOLOGIA ...............................................................................................38 3.1.1. AS FASES ...............................................................................................41

3.1.1.1. PRIMEIRA FASE – INICIAÇÃO LÚDICA – RESOLUÇÃO DE PROBLEMAS.............................................................................................................41 3.1.1.2. SEGUNDA FASE – FALANDO SÉRIO – FORMALIZAÇÃO....................45 3.1.1.3. TERCEIRA FASE – E AGORA? – CONSTRUÇÃO DE PROGRAMAS......49

3.2. A PROPOSTA DO GRUPO DE TRABALHO SOBRE LICENCIATURA EM COMPUTAÇÃO ...51 3.3. O PROJETO DE UMA OFICINA ..............................................................................53 3.4. ANÁLISES DE RESULTADOS OBTIDOS ..................................................................55

CAPÍTULO 4 – O AMBIENTE VIRTUAL PARA ENSINO DE PROGRAMAÇÃO ....59 4.1. O AMBIENTE VIRTUAL PARA ENSINO DE PROGRAMAÇÃO (AVEP) ..........................60

4.1.1. ATORES..................................................................................................63 4.1.1.1. ADMINISTRADOR ........................................................................63 4.1.1.2. TUTOR ......................................................................................65 4.1.1.3. ALUNO ......................................................................................70

Page 7: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

vii

4.2. COMPONENTES .................................................................................................71 4.2.1. COMPONENTES DE APRENDIZAGEM...........................................................73

4.2.1.1. FASE 1 – “RESOLUÇÃO DE PROBLEMAS” ......................................76 4.2.1.2. FASE 2 – “FORMALIZAÇÃO” .........................................................78 4.2.1.3. FASE 3 – “CONSTRUÇÃO DE PROGRAMAS”...................................80

4.2.2. COMPONENTES DE COMUNICAÇÃO............................................................81 4.2.3. COMPONENTE DE ARMAZENAMENTO .........................................................83

4.3. VALIDAÇÃO DO AMBIENTE ..................................................................................84 CAPÍTULO 5 – CONSIDERAÇÕES FINAIS.............................................................89

5.1. CONTRIBUIÇÕES................................................................................................91 5.2. DIFICULDADES...................................................................................................92 5.3. TRABALHOS FUTUROS .......................................................................................93

REFERÊNCIAS BIBLIOGRÁFICAS.........................................................................95

REFERÊNCIAS BIBLIOGRÁFICAS COMPLEMENTARES...................................100

ANEXO I - UMA PROPOSTA PARA A MATRIZ CURRICULAR ...........................106

ANEXO II - FICHA DE AVALIAÇÃO DO AVEP .....................................................109

Page 8: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

viii

Resumo da dissertação apresentada ao CCT/UENF como parte integrante dos

requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de

Produção.

AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ENSINO DE

ALGORITMOS E PROGRAMAÇÃO

José Carlos Rocha Pereira Júnior 10 de Junho de 2006

Orientadora: Clevi Elena Rapkiewicz, D.Sc.

Durante o processo de ensino e aprendizagem de algoritmos e programação

presentes em cursos de computação e engenharia nota-se que grande parte dos

alunos apresenta muitas dificuldades. A partir de uma análise da literatura sobre os

problemas inerentes e propostas de solução, verificou-se que melhores resultados

são obtidos quando se agrega ferramentas computacionais à uma estratégia de

ensino.

Seguindo esta tendência foi desenvolvido o Ambiente Virtual para Ensino de

Programação (AVEP) que, agregando um conjunto de ferramentas, visa guiar uma

estratégia baseada na resolução de problemas que tem obtido bons resultados.

O ambiente foi validado através de um curso a distância com 16 alunos de

graduação em computação dos quais 8 obtiveram aproveitamento acima de 70%.

Com isto, pode-se sugerir que os alunos estão adquirindo as competências

propostas com o uso do ambiente.

Page 9: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

ix

Abstract of the dissertation presented to the CCT/UENF as an integrant part of the

necessary requirements for the achievement of the Master degree (M.Sc.) in

Production Engineering.

AVEP - A VIRTUAL ENVIRONMENT FOR SUPPORT TO THE

ALGORITHMS AND PROGRAMMING TEACHING

José Carlos Rocha Pereira Júnior June 10, 2006

Advisor: Prof. Clevi Elena Rapkiewicz

During the process of teaching and learning algorithms and programming that are

present in computer sciences and engineering courses it can see that a great part of

the students has many difficulties. From a literature analysis about inherent problems

and solution proposals, it was verified that better results are gotten by adding

computational tools along with teaching strategy.

Following this trend a Virtual Environment for Programming Teaching (AVEP) was

developed that, adding a set of tools, aims at guiding a problem-based strategy that

has gotten good results.

The environment was validated through a distance course with 16 computer science

undergraduation students of whom 8 had gotten exploitation above 70%. With this, it

can be suggested that students are acquiring the abilities proposals with the use of

the environment.

Page 10: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

x

LISTA DE FIGURAS

2.1: Levantamento da literatura nacional e internacional (105 artigos) .......................8

2.2: Formas mais utilizadas de representação algorítmica. ......................................15

2.3: Constructor.........................................................................................................18

2.4: Aplicação Web para realizar Teste de Mesa em Algoritmos ..............................19

2.5: Ambiente para Teste de Mesa Utilizando Fluxograma.......................................20

2.6: Portugol/Plus ......................................................................................................20

2.7: HabiPro ..............................................................................................................21

2.8: ILA......................................................................................................................22

2.9: BACCII++ ...........................................................................................................23

2.10: FLINT ...............................................................................................................23

2.11: Pascal-Logo .....................................................................................................24

2.12: Ambiente de Aprendizagem Adaptado para Algoritmos (A4) ...........................26

2.13: Ambiente Cooperativo de Aprendizagem.........................................................27

2.14: Vertentes das soluções para o problema do ensino de algoritmos e programação (105 artigos) ........................................................................................31

2.15: Publicações sobre o Ensino de Fundamentos de Programação no WEI e SBIE – 1999 a 2003 ...........................................................................................................33

2.16: Foco das publicações dos eventos em 2001 e 2003.......................................34

3.1: Jogo “Histórias das 1001 Noites” .......................................................................44

3.2: Fórum na Internet...............................................................................................46

3.3: Ferramenta ‘Turbo Pascal’ .................................................................................50

3.4: Gráfico da Freqüência diária na oficina. .............................................................56

4.1. Tela de abertura do AVEP..................................................................................61

4.2. Arquitetura do AVEP ..........................................................................................62

4.3. Ações do Administrador .....................................................................................64

Page 11: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

xi

4.4. Gerência de Tutores...........................................................................................64

4.5. Ações do Tutor ...................................................................................................66

4.6. Gestão de Problemas.........................................................................................67

4.7. Atribuição de Alunos a Turma ............................................................................68

4.8. Análise da Solução do Aluno..............................................................................69

4.9. Ações do Aluno ..................................................................................................70

4.10. Interface do Aluno ............................................................................................71

4.11. Componente no AVEP .....................................................................................72

4.12. Seqüência da Aprendizagem ...........................................................................73

4.13. Avaliação dos Problemas .................................................................................75

4.14. Etapa 1 da Fase 1 – Lista de Problemas..........................................................76

4.15. Etapa 2 da Fase 1 – Jogos...............................................................................77

4.16. Etapa 1 da Fase 2 - Fórum...............................................................................78

4.17. Etapa 2 da Fase 2 - Formalização ...................................................................79

4.18. Desenvolvimento de Programas (Fase 3) ........................................................80

4.19. AVEP Fórum ....................................................................................................81

4.20. AVEP E-mail.....................................................................................................82

4.21. AVEP Recado ..................................................................................................82

4.22. AVEP Armazenamento.....................................................................................83

4.23. Gráfico da Freqüência do AVEP ......................................................................85

4.24. AVEP: Exemplo de Jogo – Limpadores de Vidro .............................................86

A.1: O cronograma da disciplina .............................................................................107

Page 12: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

xii

LISTA DE TABELAS

3.1: Estrutura da metodologia. ..................................................................................40

4.1. Resultado da oficina...........................................................................................87

5.1. Contribuições do AVEP......................................................................................91

Page 13: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

xiii

LISTA DE TERMOS

A4 – Ambiente de Aprendizagem Adaptado para Algoritmos

ACM – Associação para Maquinaria da Computação

AmCorA – Ambiente Cooperativo de Aprendizagem

ASA – Animação e Simulação de Algoritmos

ATMUF – Aplicação para Teste de Mesa Utilizando Fluxograma

AVEP – Ambiente Virtual para Ensino de Programação

AWTM – Aplicação Web para realizar Teste de Mesa em algoritmos

BACCII++ - Ben A. Calloni Coding Iconic Interface

CECIERJ/CEDERJ - Fundação Centro de Ciências e Educação Superior a Distância

do Estado do Rio de Janeiro

CISUC – Centro de Informática e Sistemas da Universidade de Coimbra

GT3 – Grupo de Trabalho de Licenciatura em Computação

HabiPro – Habits of Programming

HTML – HyperText Markup Language

IEEE – Instituto de Engenharia Elétrica e Eletrônica

ILA – Interpretador de Linguagem Algorítmica

PROINFO – Programa Nacional de Informática Educativa

SBC – Sociedade Brasileira de Computação

SBIE – Simpósio Brasileiro de Informática na Educação

TIC – Tecnologia da Informação e Comunicação

UAL – Unesa Algorithmic Language

WEI – Workshop de Educação em Computação

Page 14: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

Capítulo 1 – Introdução

1.1 Contexto

Durante os três últimos séculos deslumbraram-se diferentes eras nas quais

se constava o domínio de alguma tecnologia. O desenvolvimento tecnológico

durante este período inicia-se com os grandes sistemas mecânicos até atingir as

atuais tecnologias da informação e comunicação (TICs) na chamada era da

informação.

A era atual estabelece uma nova sociedade, referida por Castells (1999)

como Sociedade Informacional, produzindo um grande impacto econômico-social ao

excitar a competitividade nos negócios e empreendimentos e promover a integração

social tornando as pessoas mais próximas em grandes distâncias e elevando o

nível de informação. A conseqüência deste impacto nas organizações é a rápida e

contínua necessidade de modernização da produção e comercialização de bens e

serviços. Isto faz com que as tecnologias da informação desempenhem um papel

pró-ativo na estratégia das organizações.

Para Castells (1999), a era da informação se caracteriza não pela

centralidade de conhecimento e informação, mas pela aplicação destes

conhecimentos e informações na geração de novos conhecimentos e de dispositivos

de processamento/comunicação da informação, em um ciclo de realimentação

cumulativo entre inovação e seu uso.

É evidente a necessidade de um modelo de adaptação para alavancar o

desenvolvimento e manter uma competição econômica. O caso brasileiro considera

a geração de novas oportunidades de trabalho promovendo a qualificação

profissional nacional. Segundo Takahashi (2000), a mão-de-obra qualificada

assegura ganhos de produtividade e melhora a competitividade ampliando a oferta

de empregos.

Para demarcar a proposta deste modelo pode-se levar em consideração o

que ocorreu com o sistema produtivo de bens e serviços. O paradigma da produção

Page 15: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

2

em massa na qual grande parte dos trabalhadores era instruído a se comportar

como uma máquina, exercendo somente aquilo que era “programado” para fazer,

evoluiu para a produção enxuta na qual os trabalhadores possuem um papel mais

participativo e importante, pois passam a ter maiores responsabilidades como tomar

decisões, buscar resolver problemas e desenvolver tarefas que otimizem os

processos da produção previamente não planejadas.

Portanto, é considerável uma infra-estrutura moderna, mas também é

importante a capacitação profissional de modo a transformar a informação em

conhecimento, um fator essencial em todas as etapas do processo produtivo.

Somente ter informação não implica em ter conhecimento. O conhecimento

deverá ser fruto do processamento dessa informação, aplicação dessa informação

processada na resolução de problemas significativos e reflexão sobre os resultados

obtidos (Valente, 1999 p. 30).

Neste caso, a educação é um elemento fundamental, pois visa não somente

capacitar o indivíduo a trabalhar com alguma das Tecnologias de Informação e

Comunicação (TICs), mas investir na criação de competências para sua atuação

efetiva no mercado de trabalho, na sua formação como auto-aprendiz de modo a

adaptar-se a rápida mudança tecnológica e para aproveitar o conhecimento

adquirido no complexo processo de tomada de decisão.

Nesta realidade, a escola necessita agir de forma diferente estando atenta

às mudanças tecnológicas de forma a ser menos impactada por estas. No contexto

deste ambiente escolar, os professores passam a repensar o processo de ensino e

aprendizagem construindo novas formas de ação utilizando a informática como um

novo instrumento de aprendizagem.

A informática deve habilitar e dar oportunidade ao aluno de adquirir novos

conhecimentos, facilitar o processo ensino/aprendizagem, enfim ser um

complemento de conteúdos curriculares visando o desenvolvimento integral do

indivíduo (Flores, 2002 apud Lopes, 2004).

Indo mais além, a informática representa um componente suscetível que

influi a formação do indivíduo. Assim, tem-se um novo ambiente de aprendizagem

Page 16: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

3

que dinamiza o processo educacional permitindo o aprendiz conhecer seu potencial

cognitivo para resolver problemas, tomar decisões e, sobretudo, inovar.

Resolver problemas é uma necessidade intrínseca na vida cotidiana das

pessoas, desde problemas simples, como conferir o troco numa compra pequena,

até situações mais complexas, como escolher o melhor caminho para ir de um ponto

a outro ou a melhor distribuição dos recursos financeiros de uma família face ao

aumento crescente das despesas. De uma forma ou de outra, pela necessidade de

resolver estes e outros problemas, algum tipo de solução acaba sendo encontrada.

E, com o passar do tempo, caso a mesma situação se apresente para a pessoa

inúmeras vezes, a tendência é que seja buscada uma melhor solução do que a

anterior seja por mudança radical ou por melhoria incremental de solução já

conhecida. Além disso, a solução adotada por uma pessoa pode ser passada para

outra pessoa em situação semelhante, com as devidas adaptações feitas por esta

segunda, adequando a circunstância particular.

Para cada solução adotada, as partes envolvidas de alguma forma

conseguem justificar, seja para si próprias ou para outrem, a escolha feita. Há,

portanto, algum tipo de lógica subjacente às soluções dadas.

A questão, porém, é que na maioria das vezes estas soluções não são

estruturadas. As partes envolvidas não necessariamente conseguem materializar

alguma forma de explicação clara de qual foi a solução dada e, menos ainda, quais

foram as razões para ser aquela solução e não outra qualquer.

Na verdade, esse é um problema comum: como formalizar o conhecimento

tácito. Isso nos casos em que tal conhecimento já esteja presente. E quando ele não

está? De que forma pode ser desenvolvido?

Em cursos de engenharia e computação uma das metas está definida em

torno da capacidade do aluno apresentar soluções para diversas classes de

problemas encontradas no cotidiano das pessoas, das organizações e de diversos

outros elementos.

Através de um programa busca-se um mecanismo de obtenção de soluções

para um conjunto de problemas e o processo, ou seja, as várias instruções

Page 17: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

4

estruturadas logicamente que o computador executa para chegar a tais soluções são

definidas por meio de uma linguagem de programação.

O desenvolvimento de programas não se limita apenas a resolução de

problemas, mas contribui com a geração de negócios inovadores que impactam

positivamente os segmentos da economia tornando-se foco para política de

promoção nacional.

1.2 Definição do Problema e Motivação do Trabalho

O ensino de algoritmos e programação busca, principalmente, fornecer as

bases necessárias para o desenvolvimento da lógica de programação e, em seu

estudo, representar o raciocínio envolvido através de algoritmos nexos e corretos,

desenvolvendo competências e habilidades para construir soluções estruturadas

para problemas e a posterior transformação desses em programas.

Neste processo, a busca pela formalização ou expressão estruturada de

situações e procedimentos cria diversas dificuldades (Delgado et al, 2004):

• Manipulação e interpretação de uma nova representação semiótica;

• Identificação de elementos e de suas inter-relações, de uma situação

problema;

• Adaptação ao pensamento algorítmico.

Destaca-se em vários trabalhos e relatos de professores e alunos que o

processo de ensino e aprendizagem de algoritmos e programação apresenta muitas

outras dificuldades que têm origem em diversas vertentes e razões. Estes problemas

são difíceis de serem tratados, de forma que não se pode afirmar a existência de

uma solução que o resolva em sua totalidade.

Não é novidade que disciplinas desta área apresentam altos índices de

reprovação, o que pode ser sintoma de limitadas pesquisas relacionadas (Kaasbøll,

1998) de modo a questionar o aprendizado, buscando entender as dificuldades e

propor alternativas que agreguem valor a este, facilitando-o. Para as pessoas que

Page 18: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

5

não fazem este questionamento resta a simples visão de que infelizmente

“programação não é para todos” (Rocha, 1995).

Entretanto, como será demonstrado no Capítulo 2, o processo de ensino e

aprendizagem em algoritmos e programação é um tema levado em consideração por

diversos pesquisadores nacionais e de outros países comprovado pela quantidade

de referências relativas ao assunto. Porém, existe muito trabalho a ser feito para

alcançar uma solução que amenize consideravelmente os problemas associados ao

processo.

1.3 Objetivos

O presente trabalho propõe um Ambiente Virtual para Ensino de Algoritmos

e Programação (AVEP) que reflete uma metodologia que busca a construção do

conhecimento através da resolução de problemas.

Para concretizar esta proposta foi necessário cumprir os seguintes objetivos

específicos:

• Identificar os problemas do processo e propostas para amenizá-los;

• Desenvolver uma metodologia baseada numa estratégia de ensino que

valorize aspectos construtivistas;

• Validar a metodologia preconizando as características de um ambiente

virtual Web;

• Implementar e validar o ambiente proposto.

1.4 Justificativa

A presente dissertação deriva do resultado de uma análise sobre as

propostas de vários pesquisadores para amenizar os problemas do processo de

ensino e aprendizagem de programação. Tal resultado indica que adotar uma

metodologia combinada com o uso de recursos computacionais que promovam a

comunicação, interação, colaboração e construção do conhecimento produzem

Page 19: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

6

melhores resultados no aprendizado do conteúdo e conseqüente redução da evasão

e repetência.

Assim, foi proposto o Ambiente Virtual para Ensino de Programação (AVEP) que se fundamenta e guia uma metodologia, o que representa seu

diferencial em relação a muitas outras ferramentas não apoiadas ou integradas com

estratégias pedagógicas.

O ambiente foi desenvolvido para ser utilizado na Web. Assim, estará

sempre disponível em qualquer lugar onde haja possibilidade de acesso a Internet,

além de considerar um custo mínimo de hardware e software para os padrões

atuais.

1.5 Estrutura da Dissertação

Esta dissertação está estruturada em quatro capítulos além da presente

introdução.

No Capítulo 2 é realizada uma análise crítica da literatura sobre o processo

de ensino e aprendizagem de algoritmos e programação, a partir de uma síntese de

problemas e de propostas de pesquisadores para amenizá-los.

No Capítulo 3 é apresentada uma metodologia construtivista e um conjunto

de ferramentas computacionais que arquitetam o pressuposto ambiente validadas a

partir de uma Oficina de Lógica de Programação aplicada à alunos do Ensino Médio.

No Capítulo 4 é descrito a arquitetura do ambiente de aprendizagem

proposto e discutido os resultados de uma validação à distância com alunos do

Ensino Superior.

No Capítulo 5 serão feitas algumas considerações finais em torno dos

objetivos definidos nesta dissertação e de propostas para trabalhos futuros.

Page 20: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

Capítulo 2 – Análise Crítica da Literatura

Obter o grau de conhecimento necessário em programação é considerado

por muitos alunos um obstáculo muito difícil de ser superado ou até mesmo

impossível. Este pensamento é fruto de vários fatores que os alunos enfrentaram ou

que ainda enfrentam dentro de um ambiente de aprendizagem.

Em muitos casos, o professor não consegue contornar este pensamento em

grande parte destes alunos criando a necessidade de mudar a forma de trabalho.

Esta mudança representa a geração de outros problemas num ciclo intermitente, ou

seja, uma nova proposta didática que pretende minimizar a problemática do ensino

de programação acaba criando novas dificuldades, o que é comum neste caso.

Assim, não é um caso isolado o professor não conseguir auxiliar os alunos a

adquirirem o conhecimento necessário para desenvolver programas. Na verdade, o

processo pode ser bem mais complexo do que uma mudança de visão do aluno.

Pode-se levantar uma série de questionamentos a respeito desta temática,

como:

• Que dificuldades os alunos possuem para aprender a programar?

• Em que ponto do processo estas dificuldades começam a aparecer?

• De onde provêem estas dificuldades?

• Do próprio aluno que já traz dificuldades de aprendizagem oriundas de

outros níveis educacionais?

• De uma metodologia que não desperta a curiosidade ou a vontade de

aprender?

• Do professor que não consegue se relacionar com os alunos ou aplicar

uma metodologia para motivá-los?

Estas e muitas outras questões devem ser consideradas como tema de

trabalhos de pesquisa de forma a melhorar os resultados deste processo em nível

Page 21: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

8

de aprendizado uma vez que programar computadores é uma atividade importante

para profissionais de computação e engenharia.

De forma a analisar o que tem sido pesquisado sobre o processo de ensino

e aprendizagem de algoritmo e programação, um amplo levantamento bibliográfico

foi realizado tendo como principais fontes de consulta anais dos eventos

patrocinados pela Sociedade Brasileira de Computação (SBC), em âmbito nacional,

e, no internacional, a Scientific Literature Digital Library (CiteSeer.IST), Association

for Computing Machinery (ACM), IEEE Computer Society e Artificial Intelligence

Group (CISUC). É interessante notar que a maioria destas fontes são área da

computação, o que não é difícil para se justificar pois é exatamente nesta área que

mais se afloram os problemas do processo e, neste caso, inferir propostas para

amenizá-los é de extrema importância como foi dito anteriormente.

Figura 2.1: Levantamento da literatura nacional e internacional (105 artigos)

Neste levantamento bibliográfico foram identificados 105 artigos nos quais é

possível identificar os potenciais problemas inerentes ao processo, verificar a

existência de propostas que busquem minimizar tais problemas e analisar o foco

destas propostas com o objetivo de indicar, de modo geral, o que promove melhores

resultados.

A Figura 2.1 mostra que existe boa quantidade de trabalhos nacionais

disponíveis quando comparado com a literatura internacional, para a qual os autores

que contribuem provêm de vários países e diferentes línguas. Ressalta-se, no

40

65

Nacionais

Internacionais

Page 22: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

9

entanto, a necessidade de ampliar estudos sobre a educação na computação,

particularmente no que diz respeito ao processo de ensino e aprendizagem de

algoritmos e programação considerando-se o nível de dificuldade que este tema

suscita.

2.1 Alguns Desafios Relativos ao Processo de Ensino e Aprendizagem de Algoritmos e Programação

De que forma instruir o computador para realizar uma determinada tarefa?

Um algoritmo é como um guia que descreve como chegar a solução de um

determinado problema e que pode ser descrito sem o uso de algum formalismo

desde que seja compreendido pelo maior número possível de pessoas. Isto já não

ocorre com a linguagem de programação de computadores, a qual se utiliza de um

formalismo rígido para expressar as instruções que um computador deve executar

para solucionar um problema.

Pelo menos no Brasil é comum professores de algoritmo e programação

adotarem o algoritmo com estrutura de linguagem de programação. O que se busca

é a descrição dos passos a serem executados pelo computador na língua nativa,

pois as linguagens de programação geralmente são em inglês. Isto acarreta num

aprendizado com foco na linguagem e com menor atenção à descrição de como

resolver um problema. Segundo Pane, Ratanamahatana e Myers (2001), a

programação pode ser mais difícil que necessário porque requer que soluções sejam

expressas de forma não familiar ou natural pelos iniciantes. O aluno pode não

compreender como transpor seu raciocínio numa descrição formal rígida e a falta

desta competência pode ser a principal razão pelo alto índice de reprovação nas

disciplinas com este tema e, em alguns casos, pela desistência de um curso.

Em parte isto decorre da dificuldade encontrada pelos professores para

acompanharem efetivamente as atividades laboratoriais de programação, dado o

grande número de estudantes geralmente sob sua supervisão (Tobar et al, 2001).

Além disso, alguns alunos podem apresentar elevado grau de timidez para

esclarecer alguma dúvida perante a turma e outros se dispersam com facilidade, não

Page 23: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

10

prestando atenção à explicação fornecida pelo professor, o que dificulta ainda mais

a orientação do aprendizado.

Também se pode considerar nesta questão a forma como os alunos

estudam para a disciplina, geralmente memorizando, e a falta de pré-requisitos em

conteúdos relacionados. A título de exemplo, alguns autores preconizam a

necessidade de domínio de habilidades matemáticas prévias ou ao menos

integradas (Henderson, 1987) ou pelo menos desejável (Koliver, Dorneles e Casa,

2004) sendo considerado até um bom indicador de sucesso para o processo

(Winslow, 1996) por auxiliar na interpretação e resolução de problemas. Já para

outros (Baeza-Yates, 1995) o próprio nível de conhecimento prévio de lógica

matemática é discutido.

De acordo com Kozak e Eberspächer (2000), estudantes de ciência da

computação e engenharia da computação geralmente possuem um perfil distinto das

outras engenharias. Segundo estes autores, uma parte significativa destes

estudantes ingressa na universidade com melhor preparação sobre a utilização de

computadores do que os outros. Neste ponto considera-se também uma

diferenciação do conteúdo abordado na disciplina para cursos com enfoques

diferentes.

Entretanto, o professor de outra engenharia pode ser também da área de

computação e não fazer diferenciação de conteúdo e metodologia adotada, mesmo

tendo o conteúdo programático a ser cumprido definido pela instituição de ensino.

Até mesmo na computação alguns professores extrapolam o conteúdo considerado

básico para o aprendizado de programação priorizando fornecer uma visão geral ao

invés de uma base de conhecimento sólida.

Como conseqüência deste fato, o aluno passa para a próxima etapa do

curso com deficiência de aprendizagem e provavelmente se formará sem nenhuma

oportunidade ou desejo de recuperação, pois o professor desta etapa já o considera

com competência para assimilar um conteúdo mais avançado e não haveria tempo

para uma recuperação eficiente.

O aluno se sentirá fragilizado para aprender tal conteúdo, o que favorece o

aumento do grau de dificuldade desenvolvendo até mesmo um sentimento de pavor

Page 24: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

11

em relação à disciplina (Rodrigues, 2002; Schultz, 2003; Chaves de Castro et al,

2003; Delgado et al, 2004). Desta forma, os alunos passam a comentar as suas

dificuldades de aprendizagem de programação influenciando negativamente os

novos alunos, gerando desânimo com a crença de que a disciplina é um obstáculo

extremamente difícil de ser superado (Rodrigues, 2002).

Além da falta de motivação criada pelo despreparo e pelo desânimo,

Rodrigues (2002) relata outros problemas associados a este processo:

• O processo tradicional de avaliação pode prejudicar o aprendizado, pois

geralmente os alunos procuram estudar na véspera da prova.

• O relacionamento entre professor e aluno pode ser um problema quando o

primeiro preocupa-se em mostrar o que sabe, desconsiderando um ambiente

de aprendizagem descontraído e colaborativo. Muitos professores foram

alunos com facilidade de aprender tal conteúdo e atualmente são

profissionais que atuaram por alguns anos na área e, portanto, possuem uma

visão bastante técnica com pouca estrutura educacional.

• A didática inadequada ou falta de metodologia de ensino dificulta o

aprendizado dos novos e diversos conceitos. Inclui-se aqui a grave falta de

comunicação entre os professores das várias disciplinas que permitiria

identificar conteúdos afins ou superposição de tópicos tornando o trabalho

realizado mais integrado auxiliando o processo de ensino e aprendizagem

(Giraffa, Marckak e Almeida, 2003; Pimentel, França e Omar, 2003).

Segundo Menezes e Nobre (2002 apud Schultz 2003), algumas das

dificuldades vivenciadas pelo professor no processo envolvem: reconhecer as

habilidades inatas de seus alunos; apresentar técnicas para soluções de problemas;

trabalhar a capacidade de abstração do aluno, tanto na busca das possíveis

soluções como na escolha da estrutura de dados a ser utilizada; promover a

cooperação e colaboração entre os alunos.

O professor pode não conseguir aplicar uma determinada metodologia de

ensino, principalmente quando não possui alguma estrutura educacional ou

desempenha uma atividade que difere de sua vocação. Neste casos, o

Page 25: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

12

descontentamento dos alunos é extremamente elevado, excitando problemas como

os já apresentados. Assim como os alunos, o professor também deve atender à

certos pré-requisitos para que possa propor soluções que contornem os diversos

desafios do ensino de programação.

Pode-se questionar que este problema ocorre em qualquer disciplina, que

este é um problema intrínseco ao ambiente educacional. Entretanto, no ensino de

algoritmos e programação o desafio é muito maior, pois como já foi citado, o aluno

deve ser estimulado a desenvolver sua capacidade de resolver as mais diversas

classes de problemas e de representar sua proposta de solução numa descrição

não-natural, atividade que não ocorre com tanta intensidade previamente ao estudo

de programação e que geralmente é realizada num período de no máximo dois

semestres.

Como exemplo, é possível citar o estudo da matemática que é aplicado ao

aluno deste a infância e mesmo que ele esteja na graduação é possível que tenha

elevado índice de dificuldade nesta disciplina. Como citado, a matemática pode até

ser considerada um pré-requisito para o estudo de programação. Portanto, este

estudo necessita de um espaço de conhecimento muito maior, o que indutivamente

dispõe de maiores dificuldades no processo de ensino e aprendizagem a serem

questionadas pelo professor.

O processo de ensino e aprendizagem de programação apresenta diversos

outros problemas além dos supracitados que fazem parte de um ciclo intermitente

entre professor, aluno e a metodologia aplicada.

2.2 Propostas na Literatura para Minimização dos Problemas

A partir de tais problemas associados ao processo de ensino e

aprendizagem de programação, uma boa parcela da comunidade científica passou a

se preocupar com a questão produzindo projetos de pesquisa que visam à melhoria

deste processo uma vez que esta área é em muitos casos base para o

desenvolvimento profissional do aluno.

Page 26: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

13

Como é possível perceber, os questionamentos em relação a estes

problemas parecem não ter fim. Não se pode garantir alguma solução, mas

consegue-se um conjunto de boas propostas que produzam resultados razoáveis em

determinadas circunstâncias.

A análise da bibliografia encontrada, independente de ser nacional ou

internacional, mostrou que há três vertentes na busca de soluções para os

problemas apontados na seção anterior:

• Ferramentas – inclui trabalhos que apresentam ferramentas ou

ambientes computacionais visando facilitar o processo de ensino e

aprendizagem.

• Estratégias – inclui trabalhos que discutem estratégias de ensino e/ou

de avaliação de competências.

• Ferramentas e Estratégias – são os trabalhos que discutem alguma

estratégia suportada por ferramentas computacionais ou integradas com

as mesmas.

Na subseção a seguir é apresentada uma breve síntese das ferramentas

computacionais identificadas na literatura. Na subseção 2.2.2 é apresentada uma

breve síntese de estratégias pedagógicas propostas (sejam elas associadas ou não

as ferramentas computacionais). Finalmente, na seção 2.3 uma breve análise crítica

da literatura é apresentada.

2.2.1. Ferramentas

“A programação é caracterizada por ser mais prática do que teórica. É um

tópico que deve ser aprendido mais 'por fazer' do que por memorização” (Vizcaíno et

al, 2000).

A partir deste comentário, considera-se que a ferramenta básica para a

prática de desenvolver algoritmos é a resolução de uma lista de exercícios e

projetos, cujas soluções são dispostas em papel formalmente descritas segundo as

orientações do professor.

Page 27: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

14

Na verdade, a composição de passos que forma um algoritmo não requer

necessariamente alguma formalidade. Entretanto, é comum atribuir à descrição

algorítmica um conjunto de regras e palavras chaves de modo a fornecer um

aspecto formal característico de linguagens e, assim, promover a compreensão dos

usuários que de certa forma entendem tal descrição.

Com isto, o ensino do raciocínio algorítmico, que será a base do

desenvolvimento de programas a posteriori, é uma tarefa árdua principalmente

porque o aluno não consegue enxergar no algoritmo o funcionamento da lógica que

ele tenha desenvolvido (Pinheiro, 2003). Neste caso é importante demonstrar, ou

verificar, que o algoritmo, ou programa, realmente resolve o problema proposto

(Schultz, 2003).

A utilização de uma ferramenta computacional para a prática da

programação, ao invés do desenvolvimento de algoritmo no papel, torna-se um

referencial importante para o processo de ensino e aprendizagem (Menezes e

Nobre, 2002 apud Schultz, 2003).

Segundo Pollard e Forbes (2003), o recurso da visualização permite a

disposição de problemas mais complexos, atuando fortemente sobre a motivação

dos alunos. Problemas triviais são interessantes no início, mas depois tendem a

entediar os alunos, sobre tudo os possuem maior facilidade de aprender tal

conteúdo.

A visão destes diferentes autores confirma o auxílio que as ferramentas

computacionais de desenvolvimento podem promover, no sentido de fornecer ao

aluno a possibilidade de executar uma atividade prática contínua em busca de

assimilar a lógica de programação, principalmente quando se está considerando um

leigo ou iniciante. Além disso, é notável o interesse que os alunos possuem em

visualizar a execução de seu código na máquina, ou seja, uma ferramenta de

desenvolvimento torna-se um instrumento motivador do estudo de programação.

Espera-se que os alunos desenvolvam um conjunto de habilidades

cognitivas para que possam efetivamente aprender a resolver problemas utilizando o

computador como ferramenta. A escolha da ferramenta influencia diretamente a

Page 28: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

15

forma de elaborar e estruturar a solução de um problema (Giraffa, Marczak e

Almeida, 2003 p.1).

Conforme dito anteriormente, a descrição algorítmica para representar o

raciocínio envolvido na solução de um problema geralmente utiliza uma estrutura de

linguagem, uma pseudo-linguagem.

Algoritmo Epositivo;

Var A: numérica;

Início

Leia(A);

Se A>0 então

Escreva(“É positivo”)

Senão

Escreva(“É negativo ou nulo”);

Fim Se;

Fim.

(A) PSEUDO-CÓDIGO (B) FLUXOGRAMA

(C) DIAGRAMA DE CHAPIN

Figura 2.2: Formas mais utilizadas de representação algorítmica.

Segundo Cares e Dazzi (2002), a pseudo-linguagem mais utilizada no caso

brasileiro é o Portugol, ou português estruturado, que utiliza uma descrição em

língua portuguesa, chamada pseudo-código (Figura 2.2a), com estrutura sintática

semelhante a da linguagem de programação Pascal que, por sua vez, é uma das

mais utilizadas para o estudo de programação. É interessante observar que a

utilização da língua nativa para descrição do código favorece o aprendizado. Os

autores também comentam que outra forma bastante utilizada para descrever

Page 29: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

16

algoritmos é através de fluxogramas (Figura 2.2b), os quais fazem uso de símbolos,

como figuras geométricas, para representar as diferentes estruturas da descrição.

Existe também o diagrama de Chapin criado por Ned Chapin a partir de trabalhos de

Nassi & Shneiderman (Figura 2.2c).

A principal justificativa para se utilizar o pseudo-código é que o mesmo se

assemelha bastante com a forma como os programas são escritos. Já no caso do

fluxograma, alguns autores defendem ser a forma de representação mais eficaz por

trabalhar habilidades espaciais (Werth et al, 1985; Cares e Dazzi, 2002).

Segundo relato de Dave Scalan (Werth et al, 1985), pesquisas mostram que

bons programadores possuem habilidades processadas pelo hemisfério direito do

cérebro bem desenvolvidas, como as habilidades espaciais. Como o fluxograma

apresenta a informação ao cérebro em uma forma altamente espacial, pode-se

chegar a conclusão de que trabalhar com ele irá facilitar o aprendizado.

Porém, Pane e Myers (1996) advertem que o trabalho com fluxogramas

requer esforço de rearranjar o layout quando há necessidade de mudanças e faz uso

ineficiente de espaço da tela.

Além disso, induz a programação não-estruturada e o procedimento de

tradução do fluxograma para o código-fonte de um programa pode ser bastante

problemático, pois a linguagem de programação requer uma descrição formal rígida

que o fluxograma não possui. Por exemplo, ao definir uma estrutura de seleção

entre dois casos possíveis, o fluxograma utiliza uma simples representação

geométrica enquanto a linguagem de programação necessita de certos requisitos

sintáticos mais elaborados para que esta estrutura seja reconhecida. Logo, a falta de

adaptação com uma formalização rígida poderá dificultar o desenvolvimento de

programas.

Pode-se questionar a razão pela qual ainda pode ser utilizada a descrição

algorítmica em linguagem natural ao invés da pseudo-linguagem ou de uma

linguagem de programação mais didática como Pascal, proposta apoiada por Gries

(1974). Como resposta, Winslow (1996) presume que o algoritmo permite concentrar

características importantes da solução e ignorar detalhes que podem ser tratados

posteriormente. Neste contexto, pode-se citar o grande número de detalhes

Page 30: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

17

sintático-semânticos que nem sempre permitem a abstração de aspectos da

máquina quando da codificação da solução.

Uma alternativa nesse sentido é citada por Warren (2004) ao propor o uso

de linguagens script como JavaScript considerando-as poderosas para ensinar a

base de programação sem a necessidade de complicação. Entretanto, a

programação através de scripts visa o controle de alguma aplicação na qual o

usuário deve ter algum domínio de seus componentes. Esta observação parece

desfavorecer tal aprendizado, mas na verdade em determinados casos poderá

ocorrer certa contribuição.

O estudo de HTML (HyperText Markup Language), linguagem de marcação

utilizada para construção de páginas para Internet, é uma atividade

reconhecidamente motivadora e de fácil aprendizado, principalmente pela

possibilidade do aluno dispor seu trabalho para várias outras pessoas. A linguagem

JavaScript pode complementar tal estudo de forma a controlar os componentes da

página e, deste modo, estará contribuindo para o aprendizado de programação. Um

modelo semelhante a este é utilizado no curso de tecnologia em sistemas de

computação da Fundação CECIERJ/Consórcio CEDERJ, no qual os alunos

possuem uma disciplina de projeto e desenvolvimento de algoritmos (Cruz e

Knopman, 2005) em paralelo com a disciplina de construção de páginas web (Assis

e Conci, 2005) a qual inclui em seu conteúdo programático a linguagem JavaScript.

No questionamento do uso de linguagens pode-se também discutir o

paradigma associado à esta. O relatório da força tarefa da IEEE e ACM (2001)

afirma que o estudo de algoritmos deve fornecer o discernimento da natureza

intrínseca do problema e técnicas de solução independentes de qualquer paradigma,

linguagem de programação ou hardware. Segundo a força tarefa, deve-se portanto,

tratar o problema independente da forma de sua implementação. Esta visão é

corroborada por autores como Henderson (1986) e Koliver, Dorneles e Casa (2004).

Alguns autores vão mais longe ao afirmar que a introdução de paradigmas como

orientação a objetos nos cursos iniciais sobre algoritmos não fornece evidências

significativas de facilitar o aprendizado (Marion, 1999; Perego, Lisboa e Bertagnolli,

2002; Burton e Bruhn, 2003). Já outros autores preconizam que certos paradigmas,

como o funcional, podem facilitar o processo (Chaves de Castro et al, 2003). Outros

Page 31: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

18

defendem o próprio paradigma imperativo, preferencialmente orientado a objeto

(Baeza-Yates, 1995) ou o estruturado clássico (Delgado et al, 2004).

De qualquer modo é válido e importante reconsiderar a necessidade de

visualização dos resultados da execução do algoritmo. Tal operação através de

linguagem natural é muito difícil de ser processada pela máquina, pois cada aluno

irá propor uma variação muito grande de soluções em diferentes formatos. Fazer

uso da inteligência artificial nas propostas dos alunos em linguagem natural para

identificar padrões encontrados em soluções corretas é uma sugestão interessante,

porém muito complexa para implementação e com nível de asserção muito variante.

A gama de ferramentas computacionais propostas para apoio ao processo

de ensino e aprendizagem de algoritmos e programação decorre de diferentes áreas

da própria computação, seja a inteligência artificial na proposição de tutores

inteligentes, seja na computação gráfica para animação do acompanhamento de

estruturas e execução dos algoritmos, seja na própria construção de ferramentas de

apoio as fases de elaboração de algoritmos como o teste de mesa.

A seguir são apresentadas algumas das ferramentas mencionadas na

literatura relacionadas a este escopo:

• Animação e Simulação de Algoritmos (ASA) é uma ferramenta composta

por um tutorial sobre lógica de programação e um módulo de construção

do algoritmo, denominado “Constructor”, que agrupa o Pseudocódigo

(Portugol) com fluxogramas (Santiago e Dazzi, 2003; Schultz, 2003) .

Figura 2.3: Constructor

Page 32: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

19

• Aplicação Web para realizar Teste de Mesa em Algoritmos (AWTM)

trata-se de um conjunto de ferramentas que trabalham integradas,

permitindo desenvolver algoritmos em português estruturado, executá-

los, disponibilizando informações sobre análise de algoritmos e

realizando teste de mesa (Medeiros e Dazzi, 2002; Santiago e Dazzi,

2003).

Figura 2.4: Aplicação Web para realizar Teste de Mesa em Algoritmos (Medeiros e Dazzi, 2002)

• Ambiente para Teste de Mesa Utilizando Fluxograma (ATMUF) é uma

ferramenta para o usuário montar a lógica utilizando símbolos da

estrutura de Fluxogramas, propiciando sua execução e visualização do

passo-a-passo, bem como dos resultados (Cares e Dazzi, 2002;

Santiago e Dazzi, 2003).

Page 33: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

20

Figura 2.5: Ambiente para Teste de Mesa Utilizando Fluxograma (Cares e Dazzi, 2002)

• Portugol/Plus é uma ferramenta de apoio ao ensino da lógica de

programação baseado no Portugol, sem reduzir o estudo teórico, que

estimula os alunos a praticar e exercitar o desenvolvimento de

algoritmos (Esmin, 1998).

Figura 2.6: Portugol/Plus (Esmin, 1998)

Page 34: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

21

• HabiPro (Habits of Programming) é um software pedagógico e

colaborativo projetado para desenvolver em estudantes novatos bons

hábitos de programação tais como eficiência, estruturação, economia de

recursos, inserção de comentários, entre outras. Considera-se aspectos

pedagógicos como habilidades, preferências e dificuldades de um grupo;

bem como aspectos sociais incluindo motivação e colaboração (Vizcaíno

et al, 2000).

Figura 2.7: HabiPro (Vizcaíno et al, 2000)

• ToonTalk é um sistema genérico de programação concorrente no qual o

código-fonte é animado e o ambiente de programação é um jogo de

vídeo. Todos os pormenores da computação abstrata foram

concretizados em metáforas específicas. A animação adequa-se muito

melhor à dinâmica dos programas de computador do que diagramas ou

ícones estáticos (Kahn, 1995).

Page 35: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

22

• UAL (Unesa Algorithmic Language) é um interpretador animado com

base no Portugol na qual o aluno, utilizando recursos gráficos

(animações), pode compreender de forma rápida e dinâmica como as

estruturas envolvidas se comportam (Ual, 2004).

• ILA não é propriamente um ambiente de desenvolvimento, mas sim um

interpretador que trabalha com algoritmos definidos em português

estruturado, permitindo que sejam testados e executados (Ila, 2004).

Figura 2.8: ILA

• BACCII++ é uma ferramenta na qual toda a construção do programa é

baseada em ícones. O estudante poderá gerar um código sintaticamente

correto do programa para uma das várias linguagens baseada em texto

permitindo sua execução e teste. Segundo Ziegler e Crews (1999) os

alunos que utilizam esta ferramenta executam melhor a tarefa de

programação (Baccii++, 2004).

Page 36: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

23

Figura 2.9: BACCII++ (Baccii++, 2004)

• FLINT é um ambiente de desenvolvimento, teste e depuração de

algoritmos através de fluxogramas (Ziegler e Crews, 1999).

Figura 2.10: FLINT (Ziegler e Crews, 1999)

Page 37: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

24

• FADIX visa desenvolver algoritmos representados em pseudocódigo

sem decorar as estruturas intrínsecas, bastando indicar as ações lógicas

e a ordem que devem tomar. Após tais ações serem definidas, cabe a

ferramenta representá-la textualmente (Pseudocódigo) ou graficamente

(Fadix, 2004).

• Pascal-Logo é uma adaptação feita ao ambiente Logo através da

inclusão de um compilador Pascal permitindo que o aluno passe de um

estágio de “acumular comandos” para a programação efetiva. O Logo é

um ambiente de aprendizado que consiste em um robô-tartaruga que

funciona com um instrumento de desenho. A abordagem de associar o

apelo visual do Logo a uma linguagem de programação como o Pascal

foi proposta inicialmente por Harvey (1997 apud Pinheiro, 2003).

Figura 2.11: Pascal-Logo (Guimarães, 2002)

• RoboProf é um sistema de ensino baseado em Web que apresenta um

conjunto de tópicos fechados e exercícios buscando ensinar uma

linguagem, bem como a elaboração do projeto de um programa. Busca

incrementar a motivação por se assemelhar a um jogo eletrônico (Daly,

1999).

Page 38: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

25

• AnimPascal é um ambiente educacional de programação baseado em

animação que permite editar e compilar programas baseados em

Pascal, armazenando o caminho para a solução do problema feita pelo

aluno, ajudando-o a entender todas as fases da construção do algoritmo

e ao professor detectar os erros de seus alunos (Satratzemi, Dagdilelis e

Evagelidis, 2001).

É importante notar que as ferramentas computacionais não se limitam as de

desenvolvimento, mas consideram-se também os ambientes virtuais de

aprendizagem que são utilizados no ensino de programação. Neste cenário nem

sempre há um ambiente que ensine tal conteúdo, mas este é utilizado para apoiar o

processo de aprendizagem através de recursos como quadro de avisos, bate-papo

(chat), fórum de discussões e correio eletrônico que permitem maior interatividade e

colaboração principalmente no que se refere a resolução de exercícios e

esclarecimento de dúvidas entre os próprios alunos. Exemplos de tais ambientes:

TelEduc (http://hera.nied.unicamp.br/teleduc/); Moodle (http://www.moodlebrasil.net);

AulaNet (http://www.eduweb.com.br/portugues/aulanet_o_aulanet.html).

Nota-se a necessidade de uma metodologia para guiar todo o processo de

aprendizagem e, assim, a ferramenta deixa de ser o foco para ser um complemento

à metodologia.

Pode-se citar como exemplo de ambiente com foco na ensino de

programação o Ambiente de Aprendizagem Adaptado para Algoritmos (A4) proposto

por Falkembach et al (2003). O objetivo deste é auxiliar o aprendizado de

desenvolvimento de algoritmos e programas em Pascal utilizando uma estratégia ascendente de resolução de problemas. Sua utilização requer uma participação

muito ativa do professor, principalmente pela melhor condução do processo de

aprendizagem. É interessante destacar que o ambiente se adapta as necessidades

do aluno e que faz uso de animações para ampliar a interação com o mesmo e,

assim, facilitar o aprendizado.

Page 39: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

26

Figura 2.12: Ambiente de Aprendizagem Adaptado para Algoritmos (A4)

Um outro exemplo é o ambiente SAmbA - Suporte à Cooperação em um

Ambiente de Aprendizagem para Programação (Menezes e Nobre, 2002) que

constitui uma facilidade ao Ambiente Cooperativo de Aprendizagem (AmCorA). Tem

na sua concepção fornecer suporte inteligente na solução de problemas,

reforçando a colaboração e cooperação. Apesar deste ambiente também não guiar

a aprendizagem fornece bons recursos que promovem a cooperação quanto ao

desenvolvimento de soluções.

Page 40: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

27

Figura 2.13: Ambiente Cooperativo de Aprendizagem

Pode-se, ainda, citar muitos outros ambientes como o Eureka referenciado

em (Kozak e Eberspächer, 2000) e PROOGRAMA de (Giraffa, Marczak e Almeida,

2003).

A variedade de ferramentas demonstra a tentativa dos pesquisadores em

melhorar ou amenizar os problemas associados ao ensino de programação a partir

do uso destas. Porém, a restrição a fazer é que muitas delas foram desenvolvidas

sem base pedagógica intrínseca. É o que ocorre, por exemplo, com as ferramentas

que visam apenas o desenvolvimento.

2.2.2. Estratégias

A principal dificuldade que os programadores novatos têm quando

programam computadores é o gap entre as representações que o cérebro usa

quando pensa sobre um problema e a representação que um computador aceitará

(Baldwin e Kuljis, 2001).

O aprendiz tem mais dificuldade de colocar as partes de um programa juntas

do que aprender os conceitos de uma linguagem de programação (Spohrer e

Page 41: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

28

Soloway, 1986 apud Kaasbøll. 1998), ou seja, conhecer onde e como combinar

instruções que gerem o resultado desejado (Winslow, 1996).

Expressar a solução de um problema via algoritmo requer que o aluno saiba

analisar o problema, o que muitas vezes exige conhecimento de domínio específico,

e abstraí-lo num contexto mais amplo. Para isto, o aluno deve ser capaz de

perceber os componentes do problema, conhecer a solução esperada de forma bem

definida, identificar os dados a serem computados e, finalmente, desenvolver uma

estratégia de solução.

Rodrigues (2002) afirma que o professor deve ser capaz de fazer o aluno

compreender a abstração envolvida com toda simbologia utilizada. E que para isto

deve utilizar sua criatividade e tentar resolver cada problema baseando-se em

situações do cotidiano e, assim, o aluno começa a ter raciocínio lógico e ordem de

pensamento.

Para a atividade de desenvolvimento, o aluno deverá ler atentamente o

enunciado buscando entender bem o problema, decompor o problema em partes,

combinar soluções das partes num todo, instanciar o algoritmo para um programa,

testar e reexaminar o resultado do programa (Woodson, 1998; Schultz, 2003;

Maccracken et al, 2001; Irons, 1982).

No ensino de programação, e por conseqüência no ensino de Algoritmos,

deve-se buscar condições para que o aluno intencionalmente conheça o seu estilo

de raciocinar e solucionar problemas. O desafio do professor é auxiliá-lo a

sistematizar e organizar a estratégia de solução para os problemas na forma de um

algoritmo (Giraffa, Marczak e Almeida, 2003). Para isto, a organização das aulas

pelo professor deve ser apoiada por metodologias e estratégias de ensino que

promovam tal condição.

Identificar o nível de maturidade do aluno é importante neste ponto para que

o professor possa adequar o processo pedagógico no sentido de acompanhar o

amadurecimento do aluno e permitindo aplicar técnicas de ensino e aprendizagem.

Os métodos atuais de ensino de programação incluem sessões com e sem

laboratório nas quais os estudantes reforçam o que eles aprenderam na teoria por

desenvolver pequenos programas.

Page 42: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

29

Nas aulas fora do laboratório os alunos podem utilizar um material escrito

fornecido previamente pelo professor através da internet, se for possível. Deste

modo evita-se o consumo de tempo do processo "copiar e colar" de todo o conteúdo

do quadro negro para o caderno (Kozak e Eberspächer, 2000). É possível que

ocorra até o pré-preparo do aluno para a aula, o que vai depender da motivação do

mesmo para antecipar o trabalho com os conteúdos. Além disso, o aluno poderá

rever o conteúdo quando achar necessário e a redução do consumo de tempo

favorece o desenvolvimento da mais atividades práticas em laboratório.

Estas aulas podem se basear em explanações seguidas por atividades

práticas através de uma lista de exercícios em ordem crescente de complexidade

que também poderão ser disponibilizados previamente.

Com o objetivo de motivar os alunos poderá ser criada uma dinâmica em

sala de aula quanto à resolução dos exercícios. Para isto o professor deve evitar sua

participação na resolução e designar alunos para apresentarem suas contribuições,

mesmo que estas não estejam corretas, visando criar um ambiente colaborativo

através de discussões com seus colegas sobre possíveis correções e

melhoramentos. Segundo Baldwin e Kuljis (2001), a aprendizagem efetiva ocorre no

lugar onde o aprendiz tem oportunidade de interagir e cooperar.

Cada indivíduo é um ser único que possui origem, experiências e

habilidades distintas o que justifica a apresentação de resultados diferentes pela

maioria dos alunos. Assim, as soluções apresentadas podem ser disponibilizadas na

Internet de modo a fazer com que os alunos percebam que para um mesmo

problema é possível haver diferentes modelos de solução e instigar a construção de

outros modelos.

É importante destacar o papel do professor que, neste caso, deixa de ser o

transmissor de informações, o guia de soluções passo-a-passo, para apresentar um

papel de mediador, ou facilitador, permitindo que o aluno tenha a oportunidade de

construir seu conhecimento. Portanto, o professor é o agente que organiza a

informação para que o aluno a transforme em conhecimento (Ausubel,1980 apud

Giraffa, Marczak e Almeida, 2003).

Page 43: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

30

Em aulas fora do laboratório, Delgado et al (2004) incluem uma fase inicial

do processo denominada “Iniciação Lúdica” que trata de resolução de problemas de

diversos domínios como jogos, charadas, quebra-cabeças lógicos e simbólicos, com

o objetivo de desenvolver a autonomia na busca de soluções próprias para os

problemas apresentados.

As aulas práticas, desempenhadas em laboratórios, propiciam tempo para o

aluno explorar, consolidar e aprimorar o conhecimento adquirido durante a fase

teórica. Segundo Woodson (1988), os estudantes necessitam a todo tempo ter

tarefas que podem ser desempenhadas e que contribuam para a aprendizagem. É

pertinente que tópicos principais do conteúdo já apresentado sejam reforçados para

melhor aproveitamento do aprendizado durante a prática em laboratório.

As atividades neste ponto podem ser realizadas individualmente ou em

grupo. Este último pretende promover a motivação dos alunos, principalmente

aqueles mais dispersos. Considera-se a possibilidade de fazer todos entenderem

que o comprometimento com as atividades é refletido em suas avaliações buscando

mantê-los o mais próximo possível do ritmo médio da turma.

Para os alunos com maior facilidade de aprendizagem ou que já trazem

alguma experiência anterior com o conteúdo poderão ser disponibilizados tarefas

mais complexas e desafiadoras. Estes alunos podem desempenhar o papel de

monitores, função que visa esclarecer dúvidas aos colegas menos experientes ou

com dificuldades de compreensão, auxiliando muito o processo. Em muitas

situações os monitores conseguem promover a mediação melhor que o professor.

Estes alunos monitores podem ser identificados pela avaliação do estado mental do

aprendiz proposta em Pimentel, França e Omar (2003). Em todo este contexto o

papel do professor continua a ser de facilitador, auxiliando quando necessário.

No estágio final de todo este processo de ensino busca-se avaliar se

realmente o aluno adquiriu o conhecimento necessário. Pimentel, França e Omar

(2003) descrevem um modelo de acompanhamento da aprendizagem que permite o

professor recuperar alunos com deficiência. Mccracken et al (2001) apresentam uma

metodologia de avaliação de aprendizagem a partir de uma estrutura de

expectativas.

Page 44: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

31

2.3. Uma Análise Crítica da Literatura

Conforme já citado, a abordagem para o ensino de programação e

algoritmos na literatura aponta para três vertentes: i) proposição de ferramentas

computacionais de apoio, de ii) estratégias pedagógicas para o desenvolvimento de

competências ou iii) na combinação de ambas. A partir desta classificação obtêm-se

dados estatísticos (Figura 2.14) sobre a importância que se tem dado a cada uma

destas vertentes.

54

31

20

Ferramentas

Estratégias

Ferramentas e Estratégias

Figura 2.14: Vertentes das soluções para o problema do ensino de algoritmos e programação (105 artigos)

Nota-se que a preocupação maior está em desenvolver ferramentas

computacionais do que agregá-las a estratégias(s) que forneça(m) apoio

pedagógico. Pode-se considerar natural, em certa medida, a existência de uma

maior preocupação para desenvolver ferramentas. Isto se deve, entre outros fatores,

provavelmente ao fato de que muitos professores inclusos neste processo não

possuem preparação pedagógica, preocupando-se em exaltar o lado técnico que já

possui sua prática.

Para representar o quadro brasileiro, foram levantados os anais de 1999 a

2003 de dois dos maiores eventos nacionais que envolvem Educação e Informática,

Page 45: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

32

o Workshop de Educação em Computação (WEI) e o Simpósio Brasileiro de

Informática na Educação (SBIE).

O Workshop de Educação em Computação (WEI) tem por objetivo

debater os diferentes temas relacionados com o ensino de computação e

informática. Dessa forma,o WEI tem se tornado um importante fórum de debate para

professores, alunos, coordenadores de cursos e demais interessados no

aprimoramento do ensino das diversas áreas da computação e informática.

O Simpósio Brasileiro de Informática na Educação (SBIE) tem como

objetivo divulgar a produção científica nacional nesta área e proporcionar um

ambiente para a troca de experiências e idéias entre profissionais, estudantes e

pesquisadores nacionais e estrangeiros.

Considerar na avaliação os trabalhos do SBIE parte da hipótese de que os

pesquisadores têm se preocupado com soluções computacionais para o processo

em diversas áreas de domínio muitas vezes negligenciando a própria área de

Computação e Informática.

Tanto o WEI quanto o SBIE fazem parte do conjunto de eventos anuais

promovidos pela Sociedade Brasileira de Computação (SBC), uma instituição que

fomenta e desenvolve pesquisa científica na área da Computação. A SBC promove

mais de 30 eventos anuais de cunho tecnológico em computação.

A partir dos dados apresentados na Figura 2.15 é possível constatar que

pelo menos um artigo por ano sobre o ensino de programação é publicado em um

dos eventos. Como era de se esperar, o WEI é o evento que apresenta o maior

índice de publicações e este valor gira em torno de duas por ano, em média. Apesar

do SBIE não ter foco específico para tratar de temas da educação em computação e

informática é perceptível que há alguma penetração dessa temática no evento, o

que poderia ser ampliado, reforçando o caráter interdisciplinar de propor soluções da

computação e informática para o processo de ensino e aprendizagem da própria

área.

Page 46: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

33

Figura 2.15: Publicações sobre o Ensino de Fundamentos de Programação no WEI e SBIE – 1999 a 2003

Com base nestes resultados quantitativos observa-se que a preocupação

com o ensino de programação tem se demonstrado crescente para o WEI e estável

para o SBIE. Assim, comprova-se que a comunidade de computação brasileira se

mostra ciente e busca soluções referentes aos problemas do ensino-aprendizagem

de programação.

De forma a assinalar qual é o foco de interesse das pesquisas a partir da

classificação apresentada anteriormente, considera-se os anais dos três últimos

anos do período selecionado (1999 a 2003). Nota-se também que o resultado não

difere muito do quadro geral, ou seja, a preocupação maior está em desenvolver

ferramentas computacionais isoladamente (Figura 2.16).

2

0

1 1 1

0

2

1

5

3

0

1

2

3

4

5

6

1999 2000 2001 2002 2003

Ano

Qua

ntid

ade

de A

rtig

os

SBIEWEI

Page 47: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

34

Figura 2.16: Foco das publicações dos eventos em 2001 e 2003.

Valente (1999) e Almeida (2001) têm mostrado a pertinência de uso de

recursos computacionais no processo de ensino e aprendizagem, sobretudo quando

associados a estratégias pedagógicas adequadas. Assim, sugerir estratégias

apoiadas por um ambiente virtual que proporcione a colaboração e ferramenta de

desenvolvimento que permita a execução e visualização de resultados parece ser

uma proposta a ser analisada com atenção.

Porém, de uma forma geral, o que se observa é uma preocupação em tratar

as estratégias e ferramentas computacionais separadamente. Tais recursos

proporcionam alguns resultados positivos (por exemplo, a redução da evasão e a

melhoria das notas), mas a união entre eles poderia produzir resultados melhores.

5

4

3

FerramentasEstratégiasEstratégias e Ferramentas

Page 48: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

Capítulo 3 – Uma Metodologia para Ensinar Programação

Um ambiente de aprendizagem é um lugar onde ocorre a aprendizagem

através do desenvolvimento de atividades e das interações dos alunos entre si e

com o ambiente. Portanto, este ambiente deve proporcionar, além de uma

comunicação eficaz, o compartilhamento e a troca de experiências entre o grupo de

alunos, ou seja, promover a construção do conhecimento através da colaboração.

A interação e a colaboração parecem ser atividades que sutilmente estão

associadas à aprendizagem de programação. Viscaíno et al (2000) destacam que

durante o estudo de programação, além dos livros, muitos alunos buscam cursos e,

quando possuem acesso a Internet, ingressam em listas e grupos de discussão para

questionar outros estudantes e programadores.

É possível perceber, portanto, que de algum modo os alunos de

programação estão buscando um contato para discutir os problemas e soluções,

para adquirir novas e motivadoras experiências e obter certa vivência que são

elementos pertinentes aos ambientes de aprendizagem colaborativos conforme a

perspectiva construtivista.

Segundo Goulart (1998, p.14 apud Martins, 2002), “o construtivismo explica

os processos de desenvolvimento e aprendizagem como resultado da atividade do

homem na interação com o ambiente. Piaget explica essa interação valendo-se dos

conceitos de assimilação, acomodação e adaptação”.

Logo, pensar no princípio construtivista de que o indivíduo é o responsável

pela construção de seu próprio conhecimento a partir de experiências e vivências,

sugere a construção de ambientes colaborativos de ensino.

Cunningham et al (1993 apud Struchiner et al, 1998) mencionam que, do

ponto de vista pedagógico, os ambientes construtivistas de aprendizagem possuem

características de:

Page 49: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

36

• Possibilitar que o aluno experimente o processo, assumindo a

responsabilidade de decisão sobre tópicos e subtópicos do domínio a serem

cobertos;

• Possibilitar que os alunos avaliem soluções alternativas e testem suas

decisões já que no mundo real dificilmente existe uma única solução correta

para um problema;

• Envolver a aprendizagem em contextos realistas e relevantes;

• Encorajar a “apropriação” do processo de aprendizagem tornando o professor

um consultor que os orienta ao invés de conduzi-los;

• Envolver a aprendizagem em experiências sociais;

• Encorajar o uso de múltiplas formas de representação;

• Encorajar ações reflexivas, ou seja, fornecer condições com que o aluno

compreendendo certo conteúdo seja capaz de explicar porque e como um

determinado problema foi resolvido.

Conforme comentado no capítulo anterior, o ensino de programação

representa um grande desafio para os professores devido aos vários fatores que

dificultam a assimilação do conteúdo. A partir desta constatação, torna-se

imprescindível considerar que a metodologia a ser aplicada neste processo de

ensino e aprendizagem deve buscar meios para estimular o desenvolvimento

cognitivo e a compreensão de conceitos, o que submete a criação de um ambiente

de aprendizagem colaborativo segundo as características apresentadas.

Designa-se neste contexto, portanto, a abordagem da Aprendizagem

Baseada em Problemas (ABP) pelo fato de que a atividade de resolver problemas,

que envolve habilidades operacionais formais, tais como o raciocínio e o

pensamento lógico-dedutivo, remete diretamente a proposta da própria

programação. Esta idéia é corroborada por Falkembach et al (2003) quando a cita a

diferença entre um exercício e um problema, onde o primeiro exige uma mera

aplicação de alguma habilidade e/ou conhecimento matemático previamente

Page 50: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

37

assimilado; já o segundo é uma situação nova que necessariamente envolve a

criação de algum procedimento para chegar à solução.

Delgado et al (2004) propuseram uma metodologia baseada na resolução de

problemas na qual é possível identificar características construtivistas que

conduzem, segundo os autores, à atitude de motivar, estimular e orientar o aluno a

conquistar o seu próprio conhecimento, desenvolver as suas próprias técnicas e

estratégias e obter soluções de sua autoria, em lugar de tentar absorver aquelas

organizadas e apresentadas pelo professor como acontece tradicionalmente.

Para tanto, considera-se a atuação do professor como facilitador, o papel

pró-ativo do aluno e o uso de recursos didáticos voltados para o desenvolvimento da

capacidade de abstração, do raciocínio lógico, da solução de problemas e da

autonomia cognitiva.

A análise da literatura apresentada no capítulo anterior orienta que para o

ensino de algoritmos e programação é necessário associar estratégia e ferramentas

computacionais de modo a obter melhores resultados em termos de motivação do

aluno e conseqüente redução do índice de repetência e evasão. Como a

metodologia de Delgado et al (2004) apresenta as características almejadas

segundo a pesquisa relacionada a esta tese, a estratégia incorporada a esta

metodologia foi utilizada como referência para a concepção de uma nova proposta

que agrega o suporte de diferentes ferramentas computacionais em sua aplicação,

descrita na próxima seção.

De modo a realizar uma atividade prática para averiguar os resultados da

aprendizagem com esta nova perspectiva da metodologia, optou-se por desenvolver

uma oficina de programação com alunos do ensino médio, adotando uma proposta

do Grupo de Trabalho de Licenciatura em Computação (GT3) da SBC. Esta

validação apresentou resultados positivos e incentivou o desenvolvimento de um

ambiente virtual baseado na web que é apresentado no próximo capítulo.

Page 51: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

38

3.1. A Metodologia

A metodologia descrita por Delgado et al (2004) é constituída de três fases.

Cada uma representa uma evolução no processo cognitivo sobre programação e

possui atrelado um conjunto de competências que devem ser alcançadas ao

transpor da fase. A definição destas competências tem base no trabalho de Delgado

et al (2005).

A primeira fase trabalha a resolução de problemas com o objetivo de

desenvolver a autonomia na busca de soluções próprias. Estes problemas são de

diversos domínios do conhecimento e incluem quebra-cabeças lógicos, jogos,

problemas simples de aritmética e geometria. O professor age como facilitador das

atividades, sugerindo exercícios para explicitar questões despercebidas e indicando

formas alternativas de interpretar o problema e encaminhar as tentativas de solução.

Sugere também material suplementar para consulta e propõe formação de pequenos

grupos para discussão de temas com entendimento ainda superficial.

Na segunda fase, o professor conduz o aluno pela experiência da

formalização, valorizando a concisão e a precisão da linguagem utilizada. Para

tanto, esta fase é dividida em duas etapas.

A primeira tem por objetivo a formalização em linguagem natural. Nesta

etapa, o aluno expõe verbalmente sua solução a um grupo de colegas que são

estimulados pelo professor a questioná-la e validá-la. Esta discussão em grupo é um

instrumento de percepção de fragilidades da linguagem natural.

Na segunda etapa é feita a transcrição da solução que o aluno ou grupo

julga estar formalizada para o quadro negro. A partir disto, surge um debate com

correções e outras propostas do que foi transcrito. Ao identificar uma proposta

consistente, o professor finaliza a discussão e transcreve a respectiva solução.

A terceira fase visa a construção de algoritmos. Gradativamente o aluno irá

focar o processo de solução, construindo procedimentos sistemáticos que possam

ser seguidos por outra pessoa. O professor neste processo induz a adoção de

estruturas próximas daquelas utilizadas nas linguagens de programação.

Page 52: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

39

A primeira versão desta metodologia foi adotada a partir do segundo

semestre de 2003 e desde então tem demonstrado bons resultados como a redução

quase total da evasão e o aumento do nível de motivação. Entretanto, conforme

informam Deltado et al (2004), o nível de reprovação foi mantido.

Como é possível perceber, não há menção em relação ao uso de

ferramentas computacionais durante as fases, o que segundo a análise da literatura

proporcionaria uma melhor aprendizagem, e a aplicação desta metodologia culmina

no desenvolvimento de algoritmos que não fornecem recursos para visualização dos

resultados.

Devido a estes fatores, foi proposta uma metodologia com base na

estratégia de ensino de Delgado et al (2004) de modo a vislumbrar o uso de

ferramentas computacionais durante as fases e tendo como meta o desenvolvimento

de programas.

Esta metodologia continua sendo constituída por três fases: a primeira fase

visa desenvolver o raciocínio lógico e a criatividade dos alunos a partir da resolução

de problemas; a segunda busca a formalização gradual de soluções até o

desenvolvimento de algoritmos e, por fim, estes algoritmos serão traduzidos para

uma linguagem de programação.

Como descrito, o conteúdo que vislumbra a construção de algoritmos

correspondente a última fase da metodologia apresentada por Delgado et al (2004)

foi agregado à segunda fase nesta nova concepção de modo a incluir a tradução

destes algoritmos numa linguagem de programação como terceira fase.

Cada fase desenvolve atividades que contemplam uma ferramenta

computacional e promovem o desenvolvimento de competências almejadas para

programar, conforme apresentado na Tabela 3.1. Uma descrição detalha das fases

da metodologia e dos recursos computacionais utilizados são apresentadas nas

próximas subseções.

A partir do trabalho de Kozak e Eberspächer (2000) foi comentado no

capítulo anterior que se deve levar em consideração uma diferenciação do conteúdo

abordado em disciplinas introdutórias de programação para cursos com enfoques

diferentes. Por este motivo, o conteúdo programático atribuído a metodologia é

Page 53: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

40

considerado básico para o tema em questão permitindo ser aplicado

independentemente se o aluno está cursando engenharia ou computação.

Fase Atividade Ferramenta Competências

I – Iniciação

Lúdica

Resolver

Problemas

Jogos Computacionais Interpretar problemas, elaborar e

analisar soluções

II – Falando

Sério

Formalizar

Soluções

Fórum Virtual Compreender e propor

descrições formais segundo

modelo computacional

III – E agora? Desenvolver

Programas

Ferramenta de

Desenvolvimento Pascal

Transcrever as descrições

formais numa linguagem de

programação

Tabela 3.1: Estrutura da Metodologia.

A disposição de conceitos está organizada de modo a favorecer a evolução

cognitiva, amenizando os impactos do aprendizado de programação, como o uso de

uma linguagem formal rígida. Para tanto, tem-se a seguinte prescrição:

Primeira Fase – Iniciação Lúdica – Resolução de Problemas

• Resolução de problemas de diversos domínios

Segunda Fase – Falando Sério – Formalização

• Representação de soluções em linguagem natural

• Formalização de soluções (Construção de Algoritmos)

o Divisão em casos (estrutura de seleção – “Se”)

Terceira Fase – E agora? – Construção de Programas

• Tradução dos Algoritmos para uma Linguagem de Programação (Pascal)

• Estruturas de Repetição

Page 54: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

41

Os problemas a serem aplicados aos alunos em cada fase devem ser

disponibilizados pelo professor de modo que o aprendiz possa trabalhar a

capacidade de abstração e utilize o conhecimento adquirido em uma fase na outra.

Para estimular a abstração e a construção do conhecimento é interessante

se basear em contextos do cotidiano dos alunos tentando fazê-los utilizarem do

conhecimento prévio para chegar à solução de um problema, o que influencia

positivamente na aprendizagem como indicam Moreira e Masini (2001 apud

Pimentel, França e Omar, 2003), além de ser característico de ambientes

construtivistas.

É importante fazer com que os alunos entendam todo o processo de

aprendizagem a ser vivenciado para não gerar um descontentamento durante o seu

desenvolvimento, pois a ânsia inicial se deve ao desejo da programação

propriamente dita cuja atividade só será realizada na última etapa do processo.

Deve-se tentar aproveitar este momento de ansiedade que o aluno se

encontra para aumentar o seu interesse pelo resultado final desejado. A motivação é

um elemento chave que precisa ser visado durante todo o processo. Para tanto,

relembrar ao aluno a diferença e dependência intrínseca entre hardware e software,

descrever o papel do software dentro de várias atividades profissionais e referenciar

o diferencial do profissional que detêm o conhecimento de programação podem

produzir a motivação primária proposta.

3.1.1. As Fases

3.1.1.1. Primeira Fase – Iniciação Lúdica – Resolução de Problemas

Num primeiro momento desta fase os alunos resolvem problemas,

disponibilizados em uma lista de questões, que envolvem situações do cotidiano e

que não demandam grande conhecimento prévio de algum conceito ou propriedade

matemática. Por exemplo:

Page 55: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

42

“Exemplo1) Um aluno tirou notas 4.0 na primeira prova e 5.2 na segunda.

Levando em conta o critério para cálculo de média do local onde você estuda,

quanto ele deve tirar na prova final para que não seja reprovado?”

“Exemplo2) Sobre um dia escolar do Simão, os seus irmãos disseram o

seguinte:

Irmão 1:

o Foi à aula de Matemática.

o Não foi à aula de História.

o Não foi à aula de Biologia.

Irmão 2:

o Foi à aula de História.

o Foi à aula de Inglês.

o Não foi à aula de Matemática.

Irmão 3:

o Foi à aula de Matemática.

o Foi à aula de História.

o Não foi à aula de Inglês.

Assumindo que cada criança mentiu exatamente uma vez, quais são as

aulas que Simão assistiu?”

Os problemas são propostos de modo que possam ser reutilizados nas fases

seguintes para aprender conceitos pertinentes ou reforçar o aprendizado.

No caso do Exemplo1 (cálculo da média), este poderá ser utilizado na Fase

2 (formalização) para ensinar conceitos de dados de entrada e saída ao questionar

quais dados serão necessários para se calcular a média, por exemplo. Também se

pode estudar a aplicabilidade da estrutura de seleção “Se” através da avaliação da

condição de aprovação, ou seja, se a média necessária for alcançada então o aluno

Page 56: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

43

estaria aprovado, senão o aluno faria a prova final e seria calculada a nota

necessária para aprovação. Nota-se que a partir da nota final tem-se a possibilidade

de trabalhar a estrutura de seleção novamente, de forma aninhada, para decidir se o

aluno foi ou não aprovado. Finalmente, este problema poderá ser utilizado na Fase 3

(programação) para aprender a utilizar estruturas de repetição quando for

necessário calcular a média de vários alunos de uma turma.

No caso do Exemplo2 (aulas do Simão), como este necessita da construção

de uma tabela verdade para se chegar à solução, poderá ser utilizado para entender

a lógica matemática utilizada nas condições das estruturas de seleção e repetição.

Como é possível perceber, estas atividades proporcionam ao aluno

desenvolver novos esquemas mentais de forma gradual que o capacita a chegar à

solução de outros problemas a partir de situações análogas. Durante todo o

processo de aprendizagem, o professor atua como facilitador auxiliando em pontos

que ficaram despercebidos e sugerindo formas alternativas de propor soluções.

Estimula-se a busca de soluções em grupo. No entanto, nada impede que

um problema seja solucionado individualmente e discutido com os colegas. Neste

momento é interessante disponibilizar a internet para que os alunos pesquisem.

Caso os alunos recorram ao professor, este deve tentar se assegurar que foi

investido certo grau de esforço quanto à busca de soluções.

Após a resolução dos problemas, os alunos expõem oralmente para a turma

as propostas de solução criando um ambiente de debate quanto à validação da

solução e a melhor proposta. Neste momento inicial ocorre certa timidez em alguns

alunos, porém, com a interação com os outros se busca aumentar o contato com a

turma deixando-os livres para expressar suas idéias, ou seja, os alunos percebem

que uma solução errônea agrega valor para encontrar a melhor solução e que esta

não é encarada como um fator que exprime suas capacidades intelectuais. O erro,

no caso, não é necessariamente visto como um problema, mas como uma etapa

para construção da solução.

Concluída a resolução da lista de questões, como um segundo momento

desta fase, os alunos passam para a busca de soluções de diversos problemas

através de jogos lógicos de computador. Assim, os alunos se sentem mais

Page 57: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

44

motivados no desenvolvimento das tarefas e, conseqüentemente, desenvolvem o

raciocínio, pois estes jogos agregam um conjunto de elementos multimídia que

prendem mais a atenção do que questões em papel.

Figura 3.1: Jogo “Histórias das 1001 Noites”

Um exemplo é o jogo “Histórias das 1001 Noites” (Figura 3.1) que conta a

história de um Xeique que oferece a mão de sua filha para quem consiga 8 litros de

vinho em duas porções de 4 litros considerando que há somente três vasos: um com

capacidade para oito litros, outro para cinco litros e, o último, para três litros.

Neste jogo há um contador de tempo e da quantidade de transvasos de

modo a motivar o aluno a encontrar diferentes soluções para o mesmo e a

compartilhar resultados com os colegas, como: “Quem conseguiu o menor número

de transvasos?”, “Quem resolveu em menor tempo?”, etc.

A partir deste jogo pode ser explicado, na fase seguinte, o conceito de

atribuição quando se considerar, por exemplo, que cada vaso corresponde a uma

variável (v8, v5, v3) e ao realizar o transvaso do todo o vinho em v3, que está cheio

(três litros), para o v8, que já está com 2 litros, se está atribuindo a v8 cinco litros de

vinho conforme resultado da operação v8 ← v8 + v3.

Page 58: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

45

Na fase três, este conceito de atribuição a partir dos vasos com vinho pode

ser utilizado durante o aprendizado de estruturas de repetição para explicar como é

realizado um somatório.

Durante o uso dos jogos, o professor deve solicitar a descrição do caminho

feito pelos alunos na busca da solução. Eles com certeza irão procurar uma maneira

de representar o raciocínio envolvido, seja através de um texto do tipo dissertativo

ou utilizando uma simbologia. Este resultado poderá ser utilizado na Fase 2 para

demonstrar a importância e a necessidade da formalização. É um momento de

transição para o aprendizado inserido nesta próxima fase da metodologia.

3.1.1.2. Segunda Fase – Falando Sério – Formalização

Antes de programar um computador é necessário conhecer como

desenvolver uma especificação formal que nada mais é do que um conjunto de

instruções a serem seguidas, as quais possam indicar alguma solução de um

problema. Neste caso, trata-se de utilizar uma linguagem que seja bem interpretada,

sem ambigüidades, ou seja, uma linguagem formal.

Devido à formalização representar uma dificuldade do aluno, esta fase

concentra-se neste processo de forma gradual. Ou seja, inicialmente os alunos

devem propor soluções utilizando sintaxe proposta por eles próprios, a partir de

simplificação da linguagem natural. A cada momento o aluno melhora sua

especificação até conseguir descrever um algoritmo independente de seu estilo

cognitivo e independente das regras do português estruturado. Esse nível somente

será desenvolvido um pouco mais adiante.

Um instrumento utilizado para propor soluções é fórum de discussão na

Internet (Figura 3.2). É uma oportunidade para conhecer uma determinada

tecnologia disseminada, além de criar um ambiente colaborativo para o

desenvolvimento de bons procedimentos. Além disso, o fórum deixa registrado o

histórico das contribuições, permitindo ao próprio aluno avaliar seu processo de

crescimento.

Page 59: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

46

Figura 3.2: Fórum na Internet

A idéia é trabalhar com os alunos divididos em grupos para validar,

questionar, comentar e propor descrições dos procedimentos para encontrar

soluções de determinados problemas num clico interativo e motivador. O professor

induz estas ações a serem aplicadas em todos os grupos até chegar a um consenso

quanto à formalização. O que se propõe é diminuir a competição e aumentar a

colaboração visando à percepção gradativa do processo de formalização.

A proposta intrínseca dos problemas da Fase 1 podem ser retomadas de

modo que os alunos façam uso do conhecimento prévio adquirido na etapa anterior.

Por exemplo, o raciocínio envolvido na resolução do problema supracitado do

cálculo da nota final para aprovação (Exemplo1) poderá ser reaproveitado para

solucionar o seguinte problema:

“Dadas as notas do primeiro e segundo bimestre de um aluno, descreva o

procedimento que um funcionário da secretaria deve seguir para calcular a média

deste aluno, e dizer se ele já foi aprovado.”

Page 60: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

47

Como já comentado, este problema poderá ser utilizado para aprender

diversos conceitos em programação, bem como, a partir das soluções propostas

pelos alunos, identificar a necessidade da formalização. Neste sentido, também

poderá ser aproveitada a solução de um aluno para um determinado jogo como uma

questão a ser discutida:

“Um aluno propôs a seguinte solução para o jogo dos Vasos de Vinho :

‘Primeiramente tirei 5L do vaso de 8L e passei para o vaso de 5L, depois retirei 3L do vaso de

5L e passei para o vaso de 3L, depois passei 3L do vaso de 3L para o vaso de 8L, onde o mesmo ficou

agora com 6L, depois passei os 2L que estavam no vaso de 5L para o vaso de 3L que passou a ficar

com 2L, depois passei 5L do vaso de 8L para o vaso de 5L que passou a ficar cheio, depois passei 1L

do vaso de 5L para o vaso de 3L que ficou cheio, logo o vaso de 5L ficou com 4L, por último passei os

3L que estavam no vaso de 3L para o vaso de 8L que estava apenas com 1L e agora passa a ter 4L,

ficando assim os vasos de 8L e 5L cada um com 4L e o vaso de 3L vazio’.

A solução apresentada está correta? Devido ao fato de expressar a

quantidade em litros que será transferida de um vaso para outro, a solução proposta

pode gerar confusão. Você concorda? Proponha alguma representação que deixe

mais sucinto o caminho para se chegar à solução”.

Se houver grande dificuldade, o professor poderá apresentar um exemplo de

como seria um procedimento formal em linguagem natural para que os alunos não

julguem erroneamente a melhor proposta. Estes geralmente tendem a se basear em

exemplos de outros colegas ou do professor no desenvolvimento inicial. Assim, o

exemplo dado definiria pontos estratégicos não percebidos pelos alunos quanto a

definição de um bom procedimento.

Após a interação no fórum e com a convicção de é preciso formalizar, a

aprendizagem segue no sentido de tornar as especificações mais rígidas

formalmente e mais adequadas para a meta final: programar o computador. Este

processo é gradual e extremamente lento.

Busca-se utilizar um exemplo simples do cotidiano, como o cálculo da média

aritmética das notas dos alunos, para descrever um procedimento no qual será

aplicada esta formalização gradativa. A estratégia neste ponto implica em estimar

que materiais ou elementos se fazem necessários para a realização do

Page 61: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

48

procedimento; em identificar tais materiais com um nome subjacente (nota1, nota2,

média); em classificar os dados dentro de um procedimento (dados de entrada,

dados calculados e dados de saída) e, finalmente, em utilizar uma linguagem precisa

para representar tal procedimento conforme adota uma linguagem de programação.

É interessante notar que este passo referencia a definição futura das variáveis de

um programa. Estabelecem-se aqui também alguns tópicos para a organização de

um procedimento ou especificação. Exemplo:

“material

nota1 (nota do primeiro bimestre) – dado de entrada

nota2 (nota do segundo bimestre) – dado de entrada

média (média bimestral do aluno) – dado calculado

início

pergunte ao usuário as notas do primeiro e segundo bimestre do aluno,

nota1 e nota2.

média = ( nota1 + nota2 ) / 2.

Informe ao usuário o valor da média.

fim”

É importante notar que cada etapa desta estratégia é acompanhada de

diversas atividades. Assim, por exemplo, antes de utilizar a linguagem precisa são

propostos diversos problemas para identificar os “materiais” e os tipos de dados.

Seguindo o processo, a próxima etapa será definir tempo de elaboração e

tempo de execução e discutir a divisão de casos formalizando a estrutura de seleção

“Se”. O conhecimento dos conectivos lógicos e a definição de condições lógicas são

de extrema importância para a avaliação dentro da estrutura de seleção “Se”. A

formalização desta estrutura não deverá ser uma atividade de alto grau de

dificuldade, pois os alunos provavelmente devem possuir certo conhecimento da

estrutura em linguagem natural no início desta fase. Com isto teríamos:

Page 62: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

49

“Calcula Média Final

Material

nota1, nota2, média: números

início

pergunte ao usuário as notas do primeiro e segundo bimestre do aluno

média = (nota1 + nota2)/2

Se média >= 7

então

O aluno está aprovado

senão

O aluno ficou em prova final

fim”.

Ao final desta fase os alunos já devem ser capazes de desenvolver

algoritmos com certo grau de formalização que não representam procedimentos

difíceis de serem traduzidos para uma linguagem de programação procedural. Isso é

realizado na fase a seguir.

3.1.1.3. Terceira Fase – E agora? – Construção de Programas

O objetivo principal desta fase é justamente permitir que os alunos vejam o

resultado do trabalho desenvolvido. Neste momento, pode-se questionar a

existência de ferramentas que apresentam tal resultado utilizando algoritmos, porém

uma linguagem de programação propriamente dita irá representar a realidade de

como é realizado o desenvolvimento profissional de programas de computador e

permite aumentar a proficiência dos alunos. No caso, optou-se em utilizar a

linguagem Pascal por ser bastante comum para esta aprendizagem em cursos de

graduação e pela facilidade da tradução dos algoritmos propostos.

Page 63: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

50

Figura 3.3: Ferramenta ‘Turbo Pascal’

No momento inicial o professor poderá solicitar aos alunos a descrição

formal de um procedimento simples como o de calcular a média aritmética das

notas, apresentado nas fases anteriores. O exemplo permitirá comparar algoritmo e

programa, além de introduzir a tradução para a linguagem de programação. Então,

uma pequena descrição de como trabalhar com o compilador é feita e também uma

apresentação da estrutura básica de um programa em Pascal definindo alguns tipos

de variáveis e alguns comandos ou instruções simples como as de leitura e escrita

de dados. A formalização utilizada na linguagem de programação trará certas

dificuldades para os alunos por ser bem mais rigorosa, mas num breve tempo estas

serão superadas.

Neste momento é importante utilizar o algoritmo e realizar a tradução para

deter o uso das instruções da respectiva linguagem. Após certo período utilizando-se

de traduções prossegue-se para o desenvolvimento utilizando a linguagem somente.

O número de instruções a serem aprendidas e a forma de apresentação destas varia

com a necessidade e disponibilidade do professor. No caso desta tese, sugere-se

Page 64: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

51

finalizar o estudo com o aprendizado das estruturas de repetição, pois é conteúdo

inerente dos cursos de computação e engenharia. Portanto, é desejável ao final

desta fase que os alunos detenham pelo menos a capacidade de desenvolver

programas que envolvam comandos de entrada e saída de dados, estruturas de

seleção e de repetição, ou seja, as primitivas básicas de qualquer programa.

3.2. A Proposta do Grupo de Trabalho sobre Licenciatura em Computação

Conforme já citado, estamos vivendo numa sociedade informacional

caracterizada pela constante necessidade de transformação da informação em

conhecimento. Nesta vivência, onde informação, conhecimento e inovação são

fundamentais, a educação é elemento chave e a computação e informática tem sido

um recurso elementar do processo educacional.

É importante preocupar-se com o crescimento do número de profissionais

desta área e consequentemente com a formação destes. Com esta visão, os Grupos

de Trabalho da Comissão de Educação da Sociedade Brasileira de Computação

(SBC) atuam na elaboração de currículos e discutem questões relacionadas à

avaliação de cursos desta área de conhecimento.

Dentre estes grupos, o Grupo de Trabalho de Licenciatura em Computação

(GT3), que se preocupa em pautar questionamentos a respeito do curso de

licenciatura em computação de modo a complementar o currículo de referência da

SBC, discutiu e aprovou em assembléia em Salvador, durante o XXIV Congresso da

SBC no ano de 2004, a proposta de incluir conteúdos de computação no Ensino

Médio (Formação Geral).

Com isto, o grupo propõe desenvolver competências em computação desde

cedo, de forma a facilitar a integração do computador nas mais diversas profissões e

áreas do conhecimento e, conseqüentemente, ampliar o campo de trabalho dos

licenciados. Além disso, a introdução da computação no ensino médio pode

fomentar o interesse pela área aumentando o número de profissionais no país, fato

muito almejado como já comentado.

Page 65: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

52

A questão que se pode ressaltar neste ponto está relacionada a definição de

qual o conteúdo a ser abordado em primeira instância, uma vez que os cursos de

computação e informática são compostos de diferentes e interligadas áreas de

conhecimento desenvolvendo diversas competências e habilidades.

Conforme descrito no Capítulo 2, entre as competências mais difíceis de

serem desenvolvidas estão as relacionadas ao desenvolvimento de algoritmos e

programas. Esta é uma forte razão para incluir tal temática no ensino médio, pois se

pressupõe que os futuros alunos dos cursos de computação teriam menos

dificuldade nessa área por já assimilarem certo conhecimento. E aqueles que se

dirigissem para outros ramos profissionais teriam desenvolvido competências de

resolução de problemas e formalização dos mesmos que seriam úteis em suas

respectivas áreas do conhecimento.

Segundo Valente (1999), fazer o aluno utilizar a máquina de modo a adquirir

conceitos computacionais, como princípios de funcionamento do computador,

noções de programação e implicações do computador na sociedade é uma

abordagem que tem sido bastante divulgada nos Estados Unidos da América como

“computer literacy” e tem sido a solução encontrada por muitas escolas no Brasil

para inserir o computador no processo ensino-aprendizagem.

O autor ainda informa que o valor educacional da programação de modo

geral, está no fato de que um programa representa descrições escritas de um

processo de pensamento, o qual pode ser examinado, discutido com outros e

depurado. Neste sentido, este aprendizado influi no desenvolvimento de

competência associadas à resolução de problemas e estimula a interação e

colaboração que são ações características de ambientes de aprendizagem

construtivistas.

Assim, tem-se mencionado interessante ensinar o computador através da

programação, utilizando-o como uma ferramenta de aprender. Mas é importante

ressaltar novamente que o objetivo deste estudo é a inclusão de conteúdo de

computação para futuro aproveitamento no desenvolvimento profissional e, para isto,

deve-se promover o conhecimento básico que remete diretamente ao estudo de

programação dos primeiros períodos do ensino superior. Mesmo que o aluno não

Page 66: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

53

venha a cursar computação, ele poderá aproveitar o aprendizado para aplicá-lo no

desenvolvimento de projetos de sua formação.

Este fato demonstra que se deve preocupar em usufruir do desenvolvimento

de competências em computação para motivar, aprofundar e até mesmo facilitar a

aprendizagem das mais diversas áreas do conhecimento, ou seja, promover a

interdisciplinaridade.

3.3. O projeto de uma Oficina

Com o objetivo de avaliar se a nova metodologia estimula e facilita o

aprendizado de programação e de averiguar os possíveis impactos da proposta feita

pelo GT3, foi desenvolvido o projeto de uma oficina de programação com uma carga

horária total de trinta e seis horas para ser realizada no final do ano letivo de 2004.

A proposta para realizar a oficina foi apresentada à direção do Colégio

Estadual Baltazar Carneiro localizado em Cardoso Moreira, um município da região

norte do Estado do Rio de Janeiro. O local foi escolhido principalmente pelo público

alvo que é composto por alunos com pouco acesso a recursos tecnológicos. É um

colégio pólo que possui um laboratório de informática com 10 computadores cedidos

em parte pelo Programa Nacional de Informática Educativa (ProInfo) e outros

adquiridos pela própria unidade escolar.

As ferramentas computacionais consideradas na oficina estavam disponíveis

na Internet e não demandavam de grandes recursos dos computadores do

laboratório. Os jogos da Fase 1 em sua maioria são desenvolvidos em Macromedia

Flash®. O fórum da Fase 2 foi criado a partir do PhpBB, uma ferramenta livre para

criação e gerenciamento de fóruns virtuais. Por fim, a ferramenta da Fase 3 foi o

Borland Turbo Pascal que é bastante utilizada em cursos de gradução.

No ensino médio, o estudo de lógica matemática (conectivos lógicos: e, ou e

não) não é explicitamente explorado como ocorre no nível superior. Assim, antes de

ingressar na formalização propriamente dita, ou seja, na segunda etapa da Fase 2,

foi incluído um conteúdo introdutório para tal estudo com o objetivo de capacitar os

Page 67: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

54

alunos a desenvolver e avaliar condições lógicas que estarão presentes em seus

futuros programas.

Grande parte do material didático utilizado na oficina foi uma contribuição da

pesquisadora Carla Delgado, uma das autoras da estratégia proposta em Delgado et

al (2004) que foi utilizada como base para propor a nova metodologia aplicada na

oficina.

Para esta oficina, trabalhar com os alunos do segundo ano é a melhor opção

uma vez que os do primeiro ano talvez tenham menor nível de maturidade e os dos

terceiro estejam preocupados com o vestibular.

A argumentação do GT3 em relação ao objetivo da oficina incluía

desenvolver competências para a construção de soluções estruturadas para

problemas utilizando o computador. Com os alunos capacitados a aprender

ensinando o computador, ou seja, a programar, possibilitam aos professores

solicitarem a construção de programas de forma a fixar e aprofundar os conteúdos

abordados, bem como, utilizar-se de tais programas em sala de aula de forma

interativa contribuindo para a aprendizagem significativa1 e promovendo a

interdisciplinaridade.

O colégio consentiu a realização da oficina, a qual ocorreu entre os meses

de novembro e dezembro de 2004. A meta com foco na unidade escolar era avaliar

a capacidade dos alunos desenvolverem o conteúdo e a estratégia aplicada de

forma a incluir o ensino de algoritmos e programação como uma disciplina na matriz

curricular e com isto obter resultados mais realistas, pois os alunos que participam

de uma oficina possuem a intenção de estudar o conteúdo oferecido, o que na

realidade de uma turma nos padrões deste nível escolar poderia prover resultados

diferentes porque nem todos estão propensos a se submeter a este estudo.

De modo a diagnosticar o nível dos usuários do laboratório de informática foi

desenvolvido pelos responsáveis do mesmo um pequeno questionário aplicado aos

alunos do Ensino Médio. Em relação aos alunos das três turmas do segundo ano,

público-alvo da oficina, o questionário apontou que 56% (40 alunos) do total de 71

1 A aprendizagem significativa é um processo por meio do qual uma nova informação se relaciona, de maneira substantiva (não-literal) e não-arbitrária, a um aspecto especificamente relevante da estrutura cognitiva do indivíduo (Moreira, 1999, p. 13). É o processo aprendizagem sob a perspectiva construtivista.

Page 68: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

55

alunos possuem conhecimentos de informática, o que parece indicar que haverá boa

participação na oficina principalmente pelo fato de melhorar o currículo dos mesmos

neste quesito. Apesar deste resultado, 47,5% (19 alunos) dos alunos que possuem

conhecimentos de informática, não possuem noções de internet as quais se fazem

necessárias para o desenvolvimento da oficina. Entretanto, este fator não é de

grande dificuldade de ser superado.

Qualquer aluno do segundo ano do ensino médio da escola podia se

inscrever para participar da oficina, dado que ela seria realizada no turno da tarde e

as turmas existentes estudavam nos períodos matutino e noturno. Foram ofertadas

16 vagas e todas elas foram preenchidas no primeiro dia de divulgação.

3.4. Análises de Resultados Obtidos

Embora a oficina tenha iniciado com todas as 16 vagas disponíveis

preenchidas, a mesma finalizou com uma turma composta por apenas 5 alunos.

Este alto índice de evasão se deve a vários fatores:

• Alguns alunos compareceram apenas os dois primeiros dias da oficina,

indisponibilizando a vaga para outros que estavam interessados em

participar. Não seria desejável incluir novos alunos, pois a aplicação da

metodologia já estava em andamento e, caso fosse feito, poderia dificultar o

andamento do processo. Poderia ser sugerida uma aula inaugural para

averiguar esta questão, mas infelizmente não havia tempo disponível para tal,

uma vez que a oficina foi realizada nos dois últimos meses do período letivo

• Na ficha de inscrição era informado que o certificado seria entregue somente

aos alunos que tivessem presença mínima de 75%. Neste caso os alunos

poderiam ter somente 3 faltas injustificadas, o que acarretou a desistência de

alguns após já terem as 3 faltas.

• Alguns alunos ingressaram na oficina já trabalhando e outros obtiverem um

emprego no decorrer de sua realização. Este fato contribuiu para a falta de

estudos extra-classe e da presença.

Page 69: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

56

• A época em que a oficina foi realizada contribuiu para que alguns alunos não

comparecessem as aulas e, conseqüentemente, prejudicou o aprendizado,

pois muitos estavam preocupados com as provas finais e as recuperações.

O gráfico da freqüência (Figura 3.4) mostra que a presença diária dos alunos

começou a se estabilizar na transição da primeira para a segunda fase. Observar

que cada uma das barras significa um dia de aula, com carga horária de 3 horas. O

maior índice de não comparecimento ocorreu no final da segunda fase quando o

colégio promoveu um evento no qual a maioria dos alunos estava participando. A

realização deste evento não foi considerada no planejamento do cronograma da

oficina e não havia mais como estendê-lo, pois o colégio entraria em recesso ao

final, o que acabou prejudicando em parte o aprendizado de alguns alunos.

Figura 3.4: Gráfico da Freqüência diária na oficina.

Durante a realização da primeira e segunda fase ocorreu elevado grau de

interação principalmente durante a discussão das soluções propostas, na utilização

dos jogos computacionais e no trabalho com o fórum. Esta abordagem de promover

o trabalho coletivo aumentou o desejo pela resolução os problemas propostos,

acarretando o desenvolvimento cognitivo quanto a este quesito sem a percepção

dos alunos.

10 12 17 19 24 26 01 03 10 15 17 22 Novembro Dezembro

Page 70: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

57

As dificuldades apresentadas pelos alunos durante a oficina não diferiram

muito das apontadas na literatura e presentes no ensino superior. Destacam-se a

dificuldade de descrever formalmente condições lógicas em uma estrutura de

seleção, por exemplo; desenvolver programas que envolviam determinados

conteúdos de matemática; e em se adaptarem a formalização rígida da linguagem

de programação.

Ao final da oficina os alunos concluintes passaram por uma avaliação do

aprendizado através da resolução de problemas utilizando programas desenvolvidos

por eles próprios. O resultado desta avaliação mostrou que dos 5 alunos concluintes,

4 alcançaram capacidade satisfatória de programar.

Portanto, esta experiência demonstrou que a aplicação da metodologia

colabora para obtenção de melhores resultados. As dificuldades apresentadas não

se referem a todos os alunos e não interferiram negativamente no objetivo final,

conforme observado.

Alguns problemas propostos que envolviam conteúdo de matemática foram

questionados por um aluno que ao final se destacou no desenvolvimento de

programas, ou seja, o problema era em relação ao conhecimento de matemática e

não ao de programar o computador.

O processo de formalização gradual facilitou o desenvolvimento desta

competência, pois os alunos conseguiram expressar suas idéias nos algoritmos e

códigos-fontes que apresentavam. Os problemas que ocorriam nesta etapa se

referem a pequenos erros sintáticos que no geral são comuns até mesmo em

programadores experientes.

Além disto, a aplicação da metodologia promove atividades interativas e

colaborativas, elementos chaves de ambientes de aprendizagem construtivistas, que

tornam o aprendizado mais interessante e divertido.

Apesar disto, o professor é o principal responsável pelos resultados e por

isto este deve ter o perfil necessário para aplicar a metodologia, criar um ambiente

colaborativo e atuar como facilitador do processo.

Page 71: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

58

Um questionário de avaliação do curso aplicado aos alunos mostrou que o

interesse pela computação aumentou excitando até mesmo o desejo de cursar o

nível superior e freqüentar outros cursos dentro da área. Os alunos também

informaram que a oficina contribuiu para um melhor aprendizado da matemática e da

física, fato este que levanta a questão da interdisciplinaridade proposta no ensino de

programação. Por fim, a metodologia também contribuiu com os objetivos do GT3 e

comprovou a direção do colégio que pode ser proveitoso utilizar conteúdos de

computação na formação dos alunos.

A experiência com a oficina permitiu desenvolver uma proposta, descrita no

Anexo I, de inclusão do conteúdo de computação na matriz curricular do ensino

médio.

Com o resultado positivo do uso das ferramentas computacionais sugeridas

aplicadas com uma metodologia baseada na resolução de problema incita o

desenvolvimento de um ambiente virtual que agregue toda a proposta discutida

neste capítulo. Para tanto, o Capítulo 4 apresenta o Ambiente Virtual para Ensino de

Programação como conseqüência de todo este estudo.

Page 72: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

Capítulo 4 – O Ambiente Virtual para Ensino de Programação

De acordo com Giraffa, Marczak e Almeida (2003), nos dias atuais, com o

advento da Internet, as aulas puramente presenciais estão deixando de existir. A

sala de aula tradicional está sendo ampliada e enriquecida pelos recursos

disponibilizados para Educação a Distância.

A natureza hipermídia da internet permite criar materiais altamente

interativos, com ligações a diferentes conteúdos espalhados pelo mundo. Além disto,

têm-se facilidades de introdução de materiais hipermídia para ensino e de

intercâmbio de informações entre aprendizes em locais distantes entre si (Tori e

Mainente, 2002).

Assim, se mostra interessante mapear as características de um ambiente de

aprendizagem construtivista numa plataforma de ensino a distância ou, como é

possível chamar, ambiente virtual de ensino a distância. Este tipo de ambiente,

segundo Morgan (1995 apud Struchiner et al, 1998), deverá proporcionar um

contexto motivacional positivo, alto grau de atividade e interação dos alunos e uma

base de conhecimento bem estruturada a partir do qual eles possam partir.

Através de uma plataforma virtual os alunos podem estudar no momento que

considerar apropriado, segundo o ritmo de cada um e com disponibilidade do

material didático a qualquer momento.

Conforme mencionado nos capítulos anteriores, existem diversos problemas

associados ao ensino de algoritmos e programação. Tal conteúdo está presente em

cursos de engenharia e computação e visa a facilitação e aplicação de processos na

resolução de diversos problemas.

A constatação de que trabalhar uma metodologia associada com um

conjunto de ferramentas produziria resultados positivos quanto ao processo de

aprendizagem incentivou a criação da oficina de programação.

Page 73: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

60

O bom resultado da validação da metodologia proposta através da oficina

demonstrou que é possível ampliar a motivação e criar novas expectativas dos

alunos.

Neste contexto, considera-se o Ambiente Virtual para Ensino de

Programação – AVEP, aplicável ao ensino a distância bem como no apoio ao

presencial, fruto da integração das ferramentas utilizadas na oficina com a

metodologia. Destaca-se que este ambiente é uma ferramenta computacional de

apoio ao ensino de programação que se fundamenta e guia uma metodologia, o que

representa seu diferencial, pois geralmente as ferramentas que são desenvolvidas

visam à execução de código ou possuem uma metodologia intrínseca a qual o

professor fica com a decisão de adotá-la ou não e, neste caso, ele nem sempre sabe

como fazê-lo, conforme comentado no Capítulo 2.

4.1. O Ambiente Virtual para Ensino de Programação (AVEP)

O Ambiente Virtual para Ensino de Programação foi desenvolvido de forma a

agregar as ferramentas computacionais propostas para suportar a metodologia e

guiar o conteúdo teórico do processo de aprendizagem.

A metodologia prevê o uso do computador a maior parte do tempo e o

ambiente proporciona num só lugar um contato maior para a realização das

atividades além de incluir o conteúdo teórico ampliando a margem de aceitação da

proposta por parte dos alunos.

Entre as atividades possíveis está a resolução de problemas através de

jogos computacionais, interação por meio de um fórum de discussão e o

desenvolvimento de código-fonte utilizando uma linguagem de programação.

O ambiente foi desenvolvido para funcionar numa plataforma com recursos

Web. Deste modo, o acesso poderá ser realizado em qualquer máquina conectada a

Internet ou numa Intranet dependendo do público alvo e o propósito ao qual se

destina. É interessante destacar que os requisitos para uso do ambiente são

mínimos em questão de hardware e software para os padrões atuais, uma vez que

Page 74: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

61

necessita apenas de uma máquina capaz de executar os programas básicos para

acessar e utilizar serviços web. A figura 4.1 apresenta a página inicial do ambiente.

Figura 4.1. Tela de abertura do AVEP

O AVEP foi desenvolvido utilizando HTML (HyperText Markup Language),

JavaScript e PHP (acrônimo recursivo PHP: Hypertext Preprocessor). Alguns objetos

de aprendizagem, como os jogos, foram desenvolvidos em Adobe® Flash. Para o

armazenamento e gerenciamento das informações foi utilizado o sistema

gerenciador de banco de dados MySQL.

Assim, os requisitos mínimos para instalação e utilização do ambiente

compreendem a sua disponibilização num servidor web como o Apache ou o Internet

Information Service (IIS) com suporte ao PHP, a instalação do MySQL e um

navegador web com o plug-in Adobe® Flash Player instalado (disponível em:

http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=Shock

waveFlash&promoid=BIOW).

Page 75: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

62

A Figura 4.2 apresenta a arquitetura do ambiente que é composta pelos

Componentes de Aprendizagem (Fase 1, Fase 2 e Fase 3), pelos Componentes de

Comunicação (Chat, Fórum, E-mail, Recados), pelo Componente de Armazenagem

e por um grupo de Atores (Aluno, Tutor e Administrador). Cada componente é

detalhado nas próximas subseções.

Figura 4.2. Arquitetura do AVEP

A aprendizagem irá fluir principalmente através da transição entre os

Componentes de Aprendizagem, ou seja, de uma fase para a outra segundo a

metodologia considerada. Neste processo, o Componente de Comunicação está

presente e contribui em todas as fases para que a aprendizagem seja mais eficaz,

organizada e tenha aspecto colaborativo, pois permite que os atores troquem

informações, se ajudem na partilha de questões, discernimentos e soluções; e

passem a confiar uns nos outros para atingir o objetivo proposto. O Componente de

Armazenagem permite fornecer material de apoio agregando maior valor à teoria

inclusa no ambiente.

Page 76: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

63

4.1.1. Atores

Um ator é considerado neste contexto como um indivíduo que age ou

interage através do ambiente. A ação ou atuação do ator sobre o ambiente irá

depender da sua classificação no grupo de atores que é composto pelo Aluno,

considerado o agente da aprendizagem; pelo Tutor, que elabora os problemas e

busca manter a motivação; e pelo Administrador que gerencia tutores e mantém a

disponibilidade e a funcionalidade do ambiente. Assim, a atuação segue uma

hierarquia na qual o nível mais alto é representado pelo Administrador, o ator

mediador é o Tutor e o nível mais baixo é ocupado pelo Aluno.

Cumpre ressaltar que essa hierarquia não pretende estar associada a

hierarquia de saberes. Ela diz respeito, sobretudo, ao acesso as funcionalidades do

ambiente, diferentes para os diversos perfis de atores.

É importante entender o papel de cada ator, pois a hierarquia delimita os

privilégios e a atuação principalmente sobre os Componentes de Aprendizagem que

são a base do processo.

4.1.1.1. Administrador

Como o Administrador está no mais alto nível da hierarquia de atores, possui

a maior gama de privilégios de acesso ao ambiente, inclusive aqueles liberados para

os atores dos outros níveis. A Figura 4.3 apresenta as ações do Administrador sobre

o ambiente.

Quando alguém deseja atuar como Tutor no ambiente, deve preencher um

cadastro que é submetido ao Administrador (Figura 4.4) o qual está incumbido de

analisar a solicitação feita e liberar o acesso. A partir dessa liberação, o tutor pode

executar suas funções, descritas na próxima subseção.

Page 77: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

64

Figura 4.3. Ações do Administrador

A atuação do Administrador envolve o acesso a todos os componentes do

ambiente. Quando há algum tópico inadequado no Componente de Comunicação

Fórum ou um arquivo no Componente de Armazenagem que não condiz com o

processo de aprendizagem em questão é de responsabilidade do Administrador

editá-los ou eliminá-los, conforme o caso, e de advertir os responsáveis pelo fato de

modo a manter a seriedade da proposta.

Figura 4.4. Gerência de Tutores

Page 78: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

65

Quando o Aluno ou Tutor detecta qualquer espécie de erro durante o

trabalho com o ambiente como, por exemplo, defeitos na aparência, dificuldades

para dispor problemas e soluções, indisponibilidade de serviços de banco de dados

e web, ou seja, problemas que necessitam da manipulação da estrutura interna que

interferem no perfeito funcionamento do ambiente; eles devem comunicar o fato ao

Administrador, pois este detém privilégios para procurar e proporcionar possíveis

soluções, ou seja, ele também é responsável por realizar a manutenção do ambiente

segundo os requisitos de hardware e software que se fazem necessários.

O papel do Administrador, portanto, é tanto técnico quanto pedagógico.

4.1.1.2. Tutor

O Tutor desempenha o papel do professor que num ambiente de

aprendizagem busca orientar o processo de aprendizagem e contribuir para a

motivação dos alunos. Suas ações estão dispostas na Figura 4.5.

Este ator não precisa ser necessariamente o professor de alguma turma,

pois sua atuação pode ser desempenhada por qualquer indivíduo que entenda

completamente a metodologia utilizada, que tenha um bom conhecimento do

conteúdo abordado e que seja capaz de executar com eficácia as atribuições a ele

conferidas.

Page 79: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

66

Tutor

Elaborar eGerenciar Problemas

Criar e GerenciarTurmas

Gerenciar Alunos

Orientar e Fomentara Aprendizagem

Figura 4.5. Ações do Tutor

Na hierarquia de atores, o Tutor está no nível intermediário, pois sua

atuação tem foco nos trabalhos desenvolvidos pelos seus alunos. Assim, não há

envolvimento com as atividades desenvolvidas por outros tutores, a não ser a troca

de idéias e experiências possibilitada pelo contato via Componentes de

Comunicação. Esta imposição objetiva manter a privacidade e o respeito aos

tutores, além de contribuir para a segurança do ambiente.

Uma das ações do Tutor é o desenvolvimento e a gestão dos problemas que

são disponibilizados para os alunos e que seguem o conteúdo definido nos

Componentes de Aprendizagem. A Figura 4.6 apresenta a tela da gestão de

problemas.

É importante destacar que ao definir um problema deve-se buscar manter o

aspecto construtivista do ambiente através do reaproveitamento de questões e

soluções dos próprios alunos, de uma fase para outra, durante o processo de

aprendizagem. Este direcionamento deve ser considerado pelo Tutor em sua

atuação.

Page 80: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

67

Figura 4.6. Gestão de Problemas

Para iniciar o estudo com o ambiente, o Aluno deve ser atribuído a uma

turma definida pelo Tutor (Figura 4.7). Deste modo haverá uma melhor organização,

gestão de alunos e conseqüente atuação.

Page 81: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

68

Figura 4.7. Atribuição de Alunos a Turma

O Tutor deve orientar a aprendizagem propondo prazos para realização de

atividades através do Componente de Comunicação Recados, analisando as

soluções dos alunos e direcionando-os para que as competências definidas em cada

fase sejam alcançadas, tendo em vista deixar o aluno ser responsável pelo seu

próprio desenvolvimento cognitivo (Figura 4.8).

Com o objetivo de ampliar o interesse pelo conteúdo distribuído nos

Componentes de Aprendizagem, os tutores podem disponibilizar vários materiais de

apoio no Componente de Armazenagem. Neste ponto é válido enaltecer que

fomentar a aprendizagem é uma questão chave para melhorar os resultados com o

ambiente. O Tutor é o elemento chave neste processo.

Page 82: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

69

Figura 4.8. Análise da Solução do Aluno

Page 83: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

70

4.1.1.3. Aluno

O Aluno apesar de estar no último nível na hierarquia de privilégios de

acesso ao ambiente é o principal ator do ambiente, pois o mesmo foi proposto para

proporcionar e facilitar o aprendizado deste ator no que se refere à programação de

computadores. A Figura 4.9 apresenta as ações referentes ao Aluno quanto a

utilização do ambiente.

Coordenar aAprendizagem

Construir oConhecimento

Aluno

Interagir eColaborar

Figura 4.9. Ações do Aluno

É através de sua atuação sobre os Componentes de Aprendizagem que o

mesmo deve desenvolver um conjunto de subcompetências necessárias para a

construção de algoritmos e programas. Durante este processo, o Aluno recorre ao

Tutor que o auxilia a todo o momento.

A partir dos Componentes de Comunicação disponíveis durante a

aprendizagem, o Aluno poderá agregar maior conhecimento através da troca de

experiências vivenciadas por outro aluno e da comunicação com o tutor. No

Componente de Armazenagem deve haver material de apoio que também contribua

para o aumento do conhecimento e, portanto, o Aluno deverá fazer uso deste.

É possível notar que apesar do ambiente de certa forma conduzir o processo

de aprendizagem organizado pelo Tutor, o Aluno detém a responsabilidade de

agregar valor ao próprio conhecimento a partir de todo o ferramental disponível, se

Page 84: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

71

coordenando de acordo com as orientações a ele fornecidas. Assim, ele é livre para

atuar no momento que desejar, mas seguir as sugestões do Tutor de prazos e

vertentes de solução tornam o aprendizado mais eficiente. A interface do ambiente

segundo a visão do Aluno é apresentada na figura a seguir.

Figura 4.10. Interface do Aluno

4.2. Componentes

Um componente é uma composição de elementos que possuem um objetivo

comum. No caso do AVEP, cada componente contribui de certa forma para a

aprendizagem de programação. Assim, propõem-se:

Page 85: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

72

• Componentes de Aprendizagem que fornecem todo o conteúdo e

estrutura necessária para o aprendizado;

• Componentes de Comunicação que disponibilizam mecanismos para a

convivência entre os participantes do processo de ensino e

aprendizagem, representados pelos Atores;

• Componente de Armazenagem que virtualiza um depósito de material

de apoio que geralmente é fornecido pelo professor em suas aulas.

Como é possível perceber, tais componentes compõem a arquitetura do

ambiente, compreendendo toda a estrutura metodológica apresentada no capítulo

anterior. A Figura 4.11 exibe como estão dispostos os componentes no AVEP.

Figura 4.11. Componente no AVEP

Componente de Armazenagem

Componentes de Comunicação

Componentes de Aprendizagem

Page 86: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

73

4.2.1. Componentes de Aprendizagem

Como o próprio nome indica, os Componentes de Aprendizagem são

responsáveis por fornecer os elementos necessários para que ocorra a

aprendizagem. Cada componente representa uma fase da metodologia considerada.

Para o Administrador e o Tutor não existem restrições quanto à interação

com os componentes de aprendizagem, o que difere da situação do Aluno, cuja

interação é gradual, ou seja, ele inicia a aprendizagem a partir do primeiro

componente (Fase 1) de aprendizagem e, na medida em que desenvolve as

atividades propostas e adquire as competências estabelecidas para o mesmo, passa

para o próximo componente e assim por diante até ter concluído a aprendizagem do

conteúdo proposto.

A transição entre fases é liberada pelo Tutor, o qual avalia as soluções

apresentadas pelo aluno e, a partir disto, tenta identificar se as competências

almejadas para uma determinada fase estão sendo alcançadas.

Aluno

Fase 1

Fase 2

Fase 3

Lista de Problemas

Jogos

Fórum

Formalização

Programação

Figura 4.12. Seqüência da Aprendizagem

Page 87: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

74

Cada fase apresenta um conjunto de etapas a serem cumpridas seguindo

uma seqüência de aprendizagem (Figura 4.12). Na Fase 1, o Aluno deverá cumprir

uma etapa composta por uma lista de problemas e uma outra etapa constituída de

um conjunto de jogos computacionais. Na Fase 2, há um fórum virtual de discussão

num primeiro momento, passando posteriormente para um processo de fomalização.

Finalmente, na fase três há uma etapa única que compreende a atividade de

programação propriamente dita. Grande parte das atividades e conteúdo teórico

disponibilizado no ambiente foi contribuição de Carla Delgado, uma das autoras da

proposta inicial da metodologia.

Pode-se questionar aqui a necessidade de seguir o padrão de etapas

segundo uma abordagem comportamentalista, isto é, não deixando o aluno decidir a

etapa que deseja desenvolver num determinado momento. Entretanto, a

aprendizagem visa à construção do conhecimento pela própria interação do aluno

com o ambiente, o qual irá proporcionar um conjunto de elementos do cotidiano nos

problemas propostos de modo ao aluno vivenciar tal experiência e que será

reaproveitada numa determinada etapa posteriormente. Neste vertente

construtivista, o tutor pode propor, por exemplo, um problema que envolva cálculo

da média aritmética em alguma etapa da Fase 1, que pode ser aproveitado na Fase

2 para desenvolver a formalização e utilização de novas estruturas, como a estrutura

de seleção “Se” para verificar se um aluno foi ou não aprovado a partir da média,

culminando na tradução deste problema durante a Fase 3 num programa escrito em

linguagem Pascal.

Page 88: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

75

Solicitar Problema

Solucionar Problema

Verificar “status” e{Comentário}

Aluno

Solicitar Problema

Solicitar eAnalisar Solução

{Comentar} eDefinir “status”

Soluções e Comentários

Problemas

Tutor

1

2

3

45

6

Figura 4.13. Avaliação dos Problemas

A transição entre as etapas e fases é realizada a partir do cumprimento de

todas as tarefas de uma determinada etapa ou fase, dependendo do caso, segundo

a avaliação do tutor. A Figura 4.13 mostra que, em cada fase, o aluno solicita o

problema referente à etapa na qual se encontra (1), propõe sua solução (2) e

aguarda a avaliação do tutor. Este também solicita os problemas de uma

determinada etapa da fase onde o aluno se encontra (3), analisa a solução

apresentada (4). Se for o caso, faz um comentário (5) de modo a orientar o aluno.

De qualquer maneira, deve-se atribuir um “status” (5) que indica a conclusão ou a

necessidade de revisar a solução. A partir disto, o aluno verifica o “status” (6) de sua

solução e, caso seja necessário, propõe uma outra (2) conforme os comentários do

tutor.

Segundo Tobar et al (2001), um dos problemas no processo de ensino de

programação é a dificuldade encontrada pelos professores para acompanhar

efetivamente as atividades laboratoriais, dado o grande número de estudantes

geralmente sob sua supervisão. Ao analisar e comentar a solução do aluno, o tutor

estará orientando-o individualmente, ou seja, acompanhando efetivamente a

aprendizagem de cada aluno. Ainda que não diminua o trabalho do professor (ao

contrário, aumenta, na medida em que cada aluno espera o feedback do professor

no ambiente), permite atendimento a todos. Também deve-se considerar que o tutor

Page 89: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

76

agora dispõe de um tempo maior para fazer este acompanhamento do que

aproximadamente 2 horas de uma aula presencial, mas tempo esse multiplicado

pela quantidade de alunos da turma.

A avaliação do tutor é realizada a partir das competências a serem

adquiridas numa determinada fase, conforme comentado no capítulo anterior. A

seguir cada componente é descrito e as competências correspondentes são

indicadas.

4.2.1.1. Fase 1 – “Resolução de Problemas”

O objetivo deste componente é permitir ao Aluno trabalhar aspectos

cognitivos da resolução de problemas. Este componente possui dois elementos:

uma lista (ou questionário) de problemas (Figura 4.14) envolvendo matemática

básica e lógica; e um conjunto de jogos computacionais (Figura 4.15) que envolvem

raciocínio lógico dispostos num repositório, permitindo uma breve descrição da

estratégia utilizada o que de forma imediata auxiliará o processo de aprendizagem

proposto na próxima fase. Ao final o Aluno terá exercitado sua capacidade de

resolver problemas.

Figura 4.14. Etapa 1 da Fase 1 – Lista de Problemas

Page 90: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

77

Todos os jogos utilizados no ambiente foram fornecidos por Santos (2006),

cujo trabalho apresenta uma descrição completa de cada um deles e de utilizá-los

no ensino de programação.

Figura 4.15. Etapa 2 da Fase 1 – Jogos

Além dos alunos desenvolverem a cognição para resolução de alguns

problemas a partir destes jogos, estes apresentam de forma intrínseca conteúdos

teóricos que poderão ser aproveitados nas outras fases conforme previsto na

metodologia. Retomando ao exemplo do jogo dos vasos de vinho apresentado no

capítulo anterior: “Dividir 8 litros de vinho em 2 porções de 4 litros manipulando

apenas três vasos de 8, 5 e 3 litros, respectivamente” que pode ser utilizado para

explicar o conceito de variável e de atribuição de valores.

Page 91: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

78

4.2.1.2. Fase 2 – “Formalização”

O objetivo é capacitar o Aluno a descrever formalmente seu raciocínio. Este

processo ocorre de forma gradual, partindo da linguagem natural e finalizando com a

construção de algoritmos em pseudo-código.

Este componente de aprendizagem baseia-se na disponibilização de

problemas, durante a primeira etapa através de um fórum (Figura 4.16), no qual o

Aluno propõe sua solução a ser avaliada por outras instâncias de Aluno e pelo Tutor.

É pretendido que toda a comunicação associada ao problema seja realizada através

deste fórum para incentivar competências como:

1. O aperfeiçoamento da descrição formal de processos;

2. Correção de soluções;

3. Identificação de diferentes soluções para o mesmo problema e da

importância da formalização.

Figura 4.16. Etapa 1 da Fase 2 - Fórum

Page 92: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

79

Figura 4.17. Etapa 2 da Fase 2 - Formalização

A partir da segunda etapa (Figura 4.17) desta fase é apresentado um

conteúdo teórico associado a diversos problemas divididos em tópicos que direciona

o aluno a descrição em pseudo-código. De forma gradual, utilizando o exemplo

Page 93: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

80

clássico de cálculo de média aritmética, conceitos de variáveis, estrutura básica,

seqüenciamento, estrutura de seleção, aninhamento, entre outros são trabalhados.

4.2.1.3. Fase 3 – “Construção de Programas”

Este componente visa o processo de tradução dos algoritmos desenvolvidos

na Fase 2 para uma linguagem de programação, no caso, Pascal. Fornece recursos

para a aprendizagem básica da linguagem como conteúdo didático e ambiente de

construção, depuração e execução de programas (Figura 4.18).

Figura 4.18. Desenvolvimento de Programas (Fase 3)

Page 94: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

81

Neste componente os alunos irão consolidar as competências da fase

anterior, incluindo o reconhecimento e utilização de estruturas de repetição,

identificar e até mesmo utilizar estruturas e definições não consideradas no

ambiente.

4.2.2. Componentes de Comunicação

Chat, fórum, e-mail e recado são os Componentes de Comunicação do

ambiente. A função destes componentes é permitir a comunicação entre os atores

do ambiente.

Figura 4.19. AVEP Fórum

Page 95: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

82

Figura 4.20. AVEP E-mail

O chat é o componente que permite a comunicação síncrona entre os

atores. O fórum (Figura 4.19) é um espaço de discussão assíncrono, ou seja, que

não é feita em tempo real. E o e-mail (Figura 4.20) permite a troca de mensagens

através do correio eletrônico. O componente recado (Figura 4.21) é utilizado pelo

Tutor para fornecer informações a todos os alunos de uma determina turma.

Figura 4.21. AVEP Recado

Page 96: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

83

4.2.3. Componente de Armazenamento

Este componente (Figura 4.22) é um repositório de dados para a inclusão de

material de apoio, tais como livros eletrônicos, apostilas e links, que auxiliem o

processo de aprendizagem, ou seja, qualquer material que agregue valor a

aprendizagem. Está sempre disponível, porém a inclusão de conteúdo está atribuída

ao Tutor e ao Administrador evitando assim que qualquer outro tipo de material que

foge ao conteúdo abordado seja disponibilizado.

Figura 4.22. AVEP Armazenamento

Page 97: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

84

4.3. Validação do Ambiente

A oficina de programação realizada com alunos do ensino médio, descrita no

capítulo anterior, demonstrou bons resultados no que se refere a aplicação da

metodologia. As expectativas iniciais foram as mesmas com o ambiente.

Para tanto, foi proposto um curso a distância de algoritmos e programação

com alunos do primeiro período do curso de graduação em Ciência da Computação

do Centro Universitário Metodista Bennett (UniBennett).

O curso foi realizado no período de fevereiro a abril de 2006 e iniciou com 23

alunos inscritos dos quais 5 não chegaram a freqüentar e 2 apenas acessaram o

ambiente, mas não se propuseram a resolver algum problema. Logo, houve um total

de 16 alunos que participaram do curso. Este público alvo em sua maioria é

masculino, 12 homens e 4 mulheres, com idade média de 27 anos.

De modo a avaliar o perfil destes alunos e o conhecimento de programação

foi fornecido um pequeno teste que constava de duas questões:

1. Dado que: X = 0; Y = 0; Enquanto X<10 faça Qual será o valor de Y ao final deste procedimento? _______ 2. Considerando apenas as seguintes instruções: a) X = 0; b) X = X + 1; c) Z = X; d) Repita Y vezes Onde X, Y e Z representam, cada uma, um número inteiro qualquer. Descreva um procedimento utilizando as instruções indicadas para calcular o valor de Z dado que Z = X + Y.

X = X + 1; Y = Y + X;

Page 98: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

85

A primeira tinha o objetivo de avaliar a capacidade interpretação e execução

de um procedimento no modelo computacional. A segunda questão propôs o

desenvolvimento de um pequeno procedimento a partir de um conjunto de

instruções pré-estabelecidas tendo em vista avaliar a competência de estruturar o

código de um programa dada a dificuldade identificada no público alvo em relação

as competências associadas a algoritmos e programação.

O resultado desta avaliação mostra que apenas 3 alunos conseguiram

interpretar corretamente o primeiro problema e a maior dificuldade estava em utilizar

a estrutura de repetição. A maioria não soube como resolver a segunda questão.

Com isto, pôde-se pressupor que haveria certo grau de favorecimento para análise

do ambiente, ou seja, que a validação proposta produziria resultados mais realísticos

em termos de aprendizagem.

Freqüência do AVEP

0 5 10 15 20 25

FEV

MAR

ABR

Média de Acessos

Figura 4.23. Gráfico da Freqüência do AVEP

O gráfico da Figura 4.23 exibe dados com relação à freqüência ao AVEP

representada pela média de acessos para cada aluno durante o mês. Cada fase da

metodologia durou aproximadamente um mês, assim fevereiro corresponde a Fase

1, março a Fase 2 e, por fim, abril a última fase.

Page 99: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

86

É natural a Fase 2 compreender um número maior de acessos, pois o

processo de formalização é lento e por isto havia uma quantidade maior de

problemas a serem resolvidos pelos alunos e revisados pelo tutor.

Durante a validação ocorreram vários problemas de conexão do servidor

com a Internet e isto acarretou muito transtorno aos alunos que em certo ponto se

sentiram desmotivados ao estudo de tal conteúdo com o ambiente.

Por outro lado, no decorrer do curso os alunos foram demonstrando que

estavam adquirindo as competências relacionadas à etapa em que estavam. Ao final

da primeira fase foi observado que os alunos aprimoraram a capacidade de

descrever melhor a solução de problemas em linguagem natural e até mesmo

procurar certa simbologia para facilitar tal descrição. Por exemplo: o jogo dos

Limpadores de Vidro (Figura 4.24) fornecido durante a segunda etapa desta fase,

cujo objetivo é posicionar os 5 limpadores entre o 21° e o 25° andar, inclusive, para

que eles possam sair para o almoço, mas deve ser considerado que a roldana

estava com problemas e que a cada movimentação, 2 limpadores sobem 8 andares

ou descem 13.

Figura 4.24. AVEP: Exemplo de Jogo – Limpadores de Vidro

A partir deste jogo um aluno propôs a seguinte solução: “Primeiro subi os

limpadores que estavam nos andares 17 e 19 e os mesmos foram para os andares

Page 100: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

87

25 e 27, depois subi os limpadores que estavam nos andares 27 e 31 ...”; já outro

aluno B propôs para o mesmo jogo: “[Nomeei os elevadores; 1 - 2 - 3 - 4 - 5];[S:

subir, D: Descer] INICIO D2,3 | D4,5 | D1,5 | S2,3 | S3,4 ...”. É interessante notar que

eles procuram certa simbologia para descrever sua estratégia, o que remete ao

conceito de variáveis.

Outro exemplo é o jogo dos vasos de vinho. A resposta de um aluno foi: ”Do

vaso 8 para o vaso 5; do vaso 5 para o vaso3; do 3 para o 8; do 5 para o 3; do 8

para o 5; do 5 para o 3 e do 3 para o 8. Assim terei 4 no vaso 8 e 4 no vaso 5”.

Enquanto outro aluno apresentou uma descrição diferente: “v8--> v5, v5 -->v3, v3 -->

v8, v5-->v3, v8-->v5, v5-->v3, v3-->v8”.

Quando os alunos erram a proposta de solução, eles passam a

compreender seguindo a própria descrição que existe a necessidade de agregar

uma determinada riqueza de informações de modo a não haver dúvidas durante a

execução. O aluno C chegou a esta conclusão ao participar do fórum da fase 2:

“Realmente vendo por este lado a economia de palavras tornou confusa a seqüência

de informações, mas vou tentar explicar....”.

Na fase 3, os alunos apresentaram os erros que são comuns nesta etapa

como definir os tipos de variáveis de forma errada ou esquecer certos requisitos

sintáticos como o ponto-e-vírgula. Porém a lógica dos programas já se apresentou

bastante coerente, o que neste ponto do curso pode ser considerado um bom

indicador de sucesso.

Quantidade de AlunosEtapa 1 - Problemas 4Etapa 2 - Jogos 0Etapa 1 - Fórum 0Etapa 2 - Formalização 9

Fase 3 Programação Pascal 3TOTAL 16

Fase 1

Fase 2

Tabela 4.1. Resultado da Oficina

Page 101: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

88

Como resultado, dos 16 alunos atuantes, a metade obteve acima de 70% de

aproveitamento do curso (Tabela 4.1), isto é, conseguiram praticamente finalizar a

segunda fase. Isto é animador quando se compara com o resultado da oficina

realizada presencialmente com alunos do ensino médio, pois mostra que em

qualquer um dos modos de apresentar o conteúdo e gerir a metodologia há uma

melhoria significativa na aprendizagem. Basta notar que num mesmo período de

tempo ao qual foram realizadas as oficinas, muitos professores que não utilizam a

metodologia considerada não conseguem obter 50% de aproveitamento da turma

para o mesmo conteúdo.

Ao final do curso foi fornecida uma ficha de avaliação do ambiente para os

alunos, que está disponibilizada no Anexo II. Esta ficha é constituída de 3 blocos de

avaliação: o primeiro visa obter informações sobre o objetivo do ambiente, ou seja,

se o mesmo contribui de algum modo para o aprendizado de programação; o

segundo bloco busca avaliar a aparência (“layout”) do ambiente; por fim, preocupa-

se em identificar se os recursos utilizados atendem as expectativas dos alunos.

Esta avaliação revelou que há necessidade de rever os Componentes de

Comunicação, pois os mesmos não apresentam todas as funcionalidades

desejadas. Por exemplo, o E-mail permitia apenas o envio de mensagens não

havendo uma gestão destas como qualquer gerenciador. Pequenos detalhes

técnicos também foram questionados, como o tamanho da fonte e a padronização

de botões.

Apesar destes questionamentos, a maioria dos alunos demonstrou que os

Componentes de Aprendizagem contribuem ao estudo de programação e que o

ambiente em certo ponto atendeu as expectativas. Portanto, a estratégia

considerada favorece o aprendizado de programação e que a continuidade deste

trabalho poderá fornecer melhores resultados.

Page 102: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

Capítulo 5 – Considerações Finais

A computação ocupa uma posição privilegiada na atual sociedade. Para

tanto, considera-se que uma forma fundamental para que um país seja

desenvolvedor de tecnologia de informação é o desenvolvimento de recursos

humanos com amplas competências nessa área.

É fundamental que se aprimore a qualidade do processo de ensino e

aprendizagem nos cursos da área de computação e informática. Um dos gargalos

destes cursos é o alto índice de reprovação e/ou evasão, desde o início do curso,

em disciplinas relacionadas a algoritmo e programação. Este é um dos fatores que

fazem com que a quantidade de egressos concluintes seja consideravelmente

inferior à quantidade de entradas nesses cursos.

A partir deste fato foi realizado um levantamento literário em âmbito nacional

e internacional a fim de apresentar uma visão crítica do que tem sido proposto por

algumas das pesquisas envolvidas na melhoria do processo de ensino e

aprendizagem de algoritmos e programação. Foram encontrados 105 artigos

relacionados e a análise destes indica que há três vertentes na busca de soluções

para os problemas do processo: Ferramentas, Estratégias e a união de ambas. O

resultado desta análise mostra que há evidências de que a união de ferramentas

computacionais e estratégias pedagógicas adequadas culminam em melhores

resultados. Porém, o que se observa é uma tendência em tratá-las separadamente.

A partir destas constatações foi definida uma metodologia baseada na

resolução de problemas, que agrega um conjunto de ferramentas computacionais, e

que foi validada através de uma oficina com alunos do ensino médio, seguindo uma

proposta do Grupo de Trabalho em Licenciatura em Computação (GT3) da

Sociedade Brasileira de Computação (SBC).

A oficina permitiu comprovar que a idéia do GT-3 é factível, ou seja, que

alunos do ensino médio são capazes de desenvolver tal conteúdo sem

necessariamente estarem inseridos num curso técnico, o que pode estimular o

Page 103: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

90

professor a aproveitar a nova competência do aluno para promover o

aprofundamento de conteúdos de sua disciplina e, conseqüentemente, a

interdisciplinaridade.

Além disso, a oficina contribuiu para ampliar o interesse pela área da

computação e contribuiu para o aprendizado de outros conteúdos conforme relatado

pelos próprios alunos e que poderá ainda ser mais explorado.

O resultado obtido na avaliação dos concluintes da oficina permitiu também

projetar as expectativas da inclusão do tema algoritmos e programação na matriz

curricular. Neste caso, os alunos terão, em princípio, maior comprometimento com o

processo considerando-se a obrigatoriedade de cumprimento das atividades e o

professor terá disponibilidade para abordar melhor o conteúdo devido à carga

horária superior. O mais importante, porém, da integração na matriz curricular é a

possibilidade de fazer algum trabalho envolvendo temas de outras áreas do

conhecimento.

A partir destas constatações com a oficina foi desenvolvido o Ambiente

Virtual para Ensino de Programação (AVEP) composto por conjunto de ferramentas

computacionais e com o objetivo de guiar a aplicação da metodologia.

O AVEP é uma proposta com base em princípios construtivistas, ou seja,

busca proporcionar um contexto motivacional positivo, alto grau de atividade e

interação dos alunos e uma base de conhecimento bem estruturada. Neste

ambiente, o aluno é responsável pela construção de seu conhecimento e o professor

deixa de ter um papel de instrutor para ser o facilitador do processo.

Uma validação do ambiente com alunos de graduação em ciência da

computação demonstrou que 50% dos alunos inscritos num curso de programação

com duração de 3 meses alcançaram rendimento superior a 70%. Este é um

resultado positivo já que muitas vezes os alunos não conseguem alcançar tal

aproveitamento em um período letivo que geralmente é de 4 meses.

Page 104: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

91

5.1. Contribuições

Com resultado interessante o AVEP promoveu certas contribuições no que

tange aos problemas do processo de ensino e aprendizagem de programação. Entre

eles podemos citar:

Problema Solução

O professor preocupa-se em mostrar o

que sabe ou utiliza uma didática

inadequada ou há falta de metodologia.

O próprio AVEP guia o processo de

aprendizagem e o trabalho do professor,

que é chamado tutor, visa facilitar este

processo.

O professor não reconhece as

habilidades inatas dos alunos.

O AVEP permite um contato direto do

tutor com a solução do aluno, o que

permite demonstrar o que ele realmente

sabe.

Dificuldades em promover a cooperação

e a colaboração.

Os Componentes de Comunicação

promovem tais atividades.

O aluno não consegue descrever uma

proposta de solução com a formalidade

rígida da linguagem de programação.

O processo de formalização é gradual,

isto é, o aluno inicia sua descrição em

linguagem natural e aos poucos irá

tornando-a formalizada segundo um

modelo computacional.

O professor tem dificuldade de

acompanhar efetivamente as atividades

dos alunos.

Um dos comprometimentos do tutor é

avaliar as atividades de cada aluno.

Elevado grau de timidez dos alunos e

facilidade de se dispersarem durante a

aprendizagem.

O aluno terá uma concentração maior,

pois estará interagindo com o AVEP.

Tabela 5.1. Contribuições do AVEP

Page 105: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

92

Problema Solução

Crença de que a disciplina é um

obstáculo difícil de superar.

Os jogos divertem e contribuem para

que a disciplina não seja vista desta

forma. Além disto, ferramentas como o

Fórum permitem o trabalho coletivo no

sentido de superar as dificuldades.

O aluno estuda na véspera. As resoluções das atividades irão

dependerem do estudo periódico do

aluno, acompanhando as fases da

metodologia.

5.2. Dificuldades

Não foi possível realizar a validação do ambiente com alunos da Engenharia

de Produção da Universidade Estadual do Norte de Fluminense devido a não

disponibilização de um laboratório de computadores com Internet. Por este motivo

que esta validação foi realizada em outra instituição de ensino superior.

Também não foi possível disponibilizar o AVEP num servidor na

universidade, pois o tempo disponível para iniciar a validação não era suficiente para

resolver a parte burocrática para tal. Por tanto, o ambiente foi instalado e

configurado numa máquina residencial com acesso em banda larga.

Quanto ao uso do ambiente, a maior dificuldade se concentrava em avaliar

as soluções dos alunos. Basta imaginar que em uma turma com 16 alunos, se para

cada um fosse distribuídas 10 atividades, o tutor teria que avaliar 160 propostas de

solução. É um trabalho árduo e que ocupa muito tempo.

Page 106: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

93

5.3. Trabalhos Futuros

Apesar do bom resultado do curso com os alunos do nível superior, foi

realizado apenas um único experimento até o presente momento e, portanto, não se

pode generalizar conclusões deste estudo. Neste caso, considera-se que existe

necessidade de melhorar os resultados e como a base do processo de

aprendizagem é a motivação do aluno, esta pode ser favorecida pela utilização de

agentes ou assistentes inteligentes animados.

A proposta é fazer com que os agentes comparem as soluções dos alunos

com modelos de soluções fornecidas pelo tutor e dependendo do resultado será

disparada uma ação de modo a orientar e motivar o aluno. Assim, o uso de agentes

pode aumentar a confiança do usuário e melhorar a comunicação entre o homem e

máquina de modo a facilitar o aprendizado.

A validação do ambiente permitiu também identificar diversas características

que se fazem necessárias para um melhor aproveitamento do mesmo.

Existe a necessidade de separar os alunos em grupos principalmente

quando se está utilizando o fórum da etapa 1 da Fase 2 e está sendo fornecido um

curso a distância. A justificativa para tal divisão se deve ao fato de que o ingresso

para a próxima etapa será permitido se o tutor considerar que os alunos adquiriam a

competência definida para tal etapa que, neste caso, é a percepção da necessidade

da formalização. Como é uma atividade coletiva, os alunos com maior facilidade irão

concluir a etapa e os que tiverem mais dificuldade ou estiverem iniciando a etapa

não terão mais atividade para completar, sendo encaminhados diretamente para a

etapa seguinte.

Por isto, fica a critério do tutor definir os grupos de alunos de modo que os

alunos realmente alcancem tal competência. Se mesmo assim ocorrerem

dificuldades, os alunos poderão ser liberados e as competências associadas

poderão ser trabalhadas nas etapas seguintes. Num curso presencial esta

necessidade de divisão em grupos é menor, pois os alunos estarão trocando

informações praticamente num mesmo momento havendo um acompanhamento da

turma de forma geral.

Page 107: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

94

Acompanhar o aprendizado individual de cada aluno em uma turma grande é

uma tarefa dispendiosa para o tutor, pois é necessário muito tempo para analisar as

soluções propostas para os diversos problemas. Muitas vezes o tutor não tem tempo

disponível para tal e, portanto, faz-se necessário que o ambiente permita o

acompanhamento do processo por mais de um tutor ou que sejam identificados

vasonciais alunos-monitores para atuarem no ambiente fazendo a mediação desta

tarefa. A inserção de agentes inteligentes também contribui na redução do trabalho

do tutor.

Com isto, o tempo para tutoria dos alunos poderá ser menor uma vez que o

atendimento será mais eficiente considerando que os alunos com maior facilidade

poderão desenvolver o conteúdo mais rapidamente.

Na Fase 3, ao invés de utilizar um software externo ao ambiente para

execução dos programas em Pascal, seria interessante adaptar um compilador que

fornecesse a possibilidade do aluno fazer o download de seu programa compilado

ou até mesmo uma execução on-line, uma vez que os programas nessa fase (nível

introdutório) apresentam poucos comandos.

Pode-se questionar a sobrecarga de processamento quando muitos alunos

compilam o código ao mesmo tempo. Neste caso, deve-se analisar o público que irá

usufruir do ambiente e a capacidade dos dispositivos de hardware do servidor para

indicar que alternativa usar.

Outro ponto interessante a incluir no AVEP são recursos da hipermídia

adaptativa. A partir do modelo do aluno seria possível adaptar os problemas de cada

fase segundo seu nível de conhecimento, alterar o layout do ambiente segundo suas

expectativas, entre outras adaptações que promovem motivação.

Page 108: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

Referências Bibliográficas

ALMEIDA, M. E. B. (2001) Tecnologia na Escola: Formação de Educadores na Ação. Programa Salto para o Futuro-série Informática na Educação. Disponível em: http://www.proinfo.gov.br/biblioteca/publicacoes/default.htm (Última consulta em março/2003).

ASSIS, J. S. S., CONCI, A. (2005) Construção de Página Web. DVD da Fundação CECIERJ/Consórcio CEDERJ.

AUSUBEL, D. (1980) Psicologia Educacional. Editora Interamericana, New York.

BACCII++ - Ben A. Calloni Coding for Iconic Interface. Disponível on-line em http://www.csusa.net/~baccii. Última consulta em agosto/2004.

BAEZA-YATES, R. A. (1995) Teaching Algorithms. SIGACT News 26, 4, 51-59.

BALDWIN, L., KULJIS, J. (2001) Learning Programming Using Program Visualization Techniques. 34th Annual Hawaii International Conference on System Sciences ( HICSS-34)-Volume 1, p. 1051. Maui, Hawaii.

BURTON, P. J. e BRUHN, R. E. (2003) Teaching Programming in the OOP Era, SIGCSE Bulletin, 35(2): 111--114.

CARES, P. L. L., DAZZI, R. L. S. (2002) Ambiente para Teste de Mesa utilizando Fluxograma. Seminário de Computação FESURV/SENAC e Feira de Informática (SECOMFS’02). Rio Verde, GO, Brasil.

CASTELLS, M., (1999) A era da informação: Economia, sociedade e cultura. Vol 1. A sociedade rede, Editora. Paz e Terra, São Paulo.

CHAVES DE CASTRO, T., CASTRO JÚNIOR, A., MENEZES, C., BOERES, M. e RAUBER, M. (2003) Utilizando Programação Funcional em Disciplinas Introdutórias de Computação, Anais do WEI 2003, Brasil.

CRUZ, A. J., KNOPMAN, J. (2005) Projeto e Desenvolvimento de Algoritmos. DVD da Fundação CECIERJ/Consórcio CEDERJ.

CUNNINGHAM, D. J., DUFFY, T. M., KNUTH, R. A. (1993) The TextBook of the Future. In McKnight, C., Dillon, A., and Richardson, J. (eds): HYPERTEXT A Psychological Perspective. New York: Ellis Horwood.

DALY, C. (1999) RoboProf and an Introductory Computer Programming Course. 4th Annual SIGCSE/SIGCUE Conference Integrating Technology into Computer Science Education (ITiCSE), P. 155-158. Cracow, Poland.

DELGADO, C., XEXEO, J. A. M., SOUZA, I. F., CAMPOS, M., RAPKIEWICZ, C. E. (2004) Uma Abordagem Pedagógica para a Iniciação ao Estudo de Algoritmos. XII Workshop de Educação em Computação (WEI'2004). Salvador, BA, Brasil.

DELGADO, C., XEXEO, J. A., SOUZA, I. F., RAPKIEWICZ, C. E., PEREIRA JR, J. (2005) Identificando competências associadas ao aprendizado de leitura e construção de algoritmos. In: XIII Workshop sobre Educação em Computação. São Leopoldo, RS.

Page 109: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

96

ESMIN, A. A. A. (1998) PORTUGOL/PLUS: Uma Ferramenta de Apoio ao Ensino de Lógica de Programação baseado no Portugol. IV Congresso da Rede Iberoamericana de Informática Educativa (RIBIE’98), Brasília, DF, Brasil.

FADIX – Sistema de Apoio as Técnicas de Programação. Disponível on-line em http://www.fadix.hpg.ig.com.br/Educacao/1/index_hpg.html. Última consulta em agosto/2004.

FALKEMBACH, G. A. M., AMORETTI, M. S. M., TAROUCO, L. R., VIERO, F. (2003) Aprendizagem de Algoritmos: Uso da Estratégia Ascendente de Resolução de Problemas. 8º Taller Internacional de Software Educativo. Santiago, Chile.

FLORES, A. M. (2002) A Informática na Educação: Uma Perspectiva Pedagógica. Monografia – Universidade do Sul de Santa Catarina (1996). Disponível em: http://www.hipernet.ufsc.br/foruns/aprender/docs/monogr.htm (nov/2002).

GIRAFFA, L., MARCZAK, S., ALMEIDA, G. (2003) O ensino de Algoritmos e Programação mediado por um ambiente na Web. Congresso Nacional da Sociedade Brasileira de Computação (SBC’2003). Campinas, SP, Brasil.

GOULART, I. B. (1998) Piaget: experiências básicas para utilização pelo professor. 14. ed. Petrópolis, RJ. Editora Vozes.

GRIES, D. (1974) What Should We Teach in an Introductory Programming Course?. In Proceed-ings of the fourth SIGCSE technical symposium on Computer science education, ACM Press, pp. 81-89.

GUIMARÃES, A. M. (2002) Introdução ao Pascal-Logo. Notas de Aula. UFMG, Belo Horizonte.

HARVEY, B. (1997) Computer Science Logo Style Vol 3: Beyond Programming. MIT Press, 2ª edição. HENDERSON, P. (1987) Modern Introductory Computer Science. In Proceedings of the eighteenth SIGCSE technical symposium on Computer science education, ACM Press, pp. 183-190.

ILA – Interpretador de Linguagem Algorítmica. Disponível on-line em http://www.exatec.unisinos.br/_professores/gerador.php?professor=crespo&id_menu=434&id_submenu=189. Última consulta em agosto/2004.

IRONS, D. M. (1982) Cognitive Correlates of Programming Tasks in Novice Programmers. Conference on Human Factors in Computing Systems. p. 219-222. Gaithersburg, Maryland, USA.

KAASBØLL, J. (1998) Exploring didactic models for programming. Norsk Informatikk-konferanse, Høgskolen i Agder.

KAHN, K. (1995) ToonTalk -- Um ambiente de programação animada para crianças. Disponível on-line em http://home.utad.pt/~leonelm/JVLC-Portugues.htm. Última consulta em agosto/2004.

KOLIVER, C., DORNELES, R. V., CASA, M. E. (2004) Das (muitas) dúvidas e (poucas) certezas do ensino de algoritmos. XII Workshop de Educação em Computação (WEI'2004). Salvador, BA, Brasil.

Page 110: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

97

KOZAK, D.V., EBERSPÄCHER, H. F. (2000) A Non-traditional Approach to Algorithms and Computer Programming Courses in Engineering Education. In: The International Conference on Engineering and Computer Education (ICECE’2000). São Paulo, SP, Brasil.

LOPES, J. J. (2004) A Introdução da Informática no Ambiente Escolar. Disponível em: http://www.clubedoprofessor.com.br/artigos/artigojunio.htm (dez/2004).

MARION, W. (1999) CS1: what should we be teaching?, Annual Joint Conference Integrating Technology into Computer Science Education ,Working group reports from ITiCSE on Innovation and technology in computer science education, pp 35-38, Polônia.

MARTINS, J. G. (2002) Aprendizagem Baseada em Problemas aplicada a Ambiente Virtual de Aprendizagem. Tese de Doutorado em Engenharia de Produção da Universidade Federal de Santa Catarina, Florianópolis, RS.

MCCRACKEN, M., WILUSZ, T., ALMSTRUM, V., DIAZ, D., GUZDIAL, M., HAGAN, D., KOLIKANT, Y. B., LAXER, C., THOMAS, L., UTTING, I. (2001) A multi-national, multi-institutional study of assessment of programming skills of first-year CS students. The 6th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE). Cunterbury, UK.

MEDEIROS, C. L., DAZZI, R. L. S. (2002) Aprendendo Algoritmos com Auxílio da Web. II Congresso Brasileiro de Computação (CBCOMP’2002). Itajaí, SC, Brasil.

MENEZES, C., NOBRE I. (2002) Suporte à Cooperação em um Ambiente de Aprendizagem para Programação (SambA). XIII Simpósio Brasileiro de Informática na Educação (SBIE). São Leopoldo, RS.

MOREIRA, M. A., MASINI, E. F.S. (2001) Aprendizagem Significativa: a Teoria de David Ausubel. São Paulo: Centauro.

MORGAN, A. R. (1995) Student Learning and Student's Experiences: Research, Theory and Preactice. In Fred Lockwood (Ed.) Open and Distance Learning Today. London and New York: Routledge.

ON COMPUTING CURRICULA IEEE COMPUTER SOCIETY ASSOCIATION FOR COMPUTTING MACHINERY, T. J. T. F. Computing Curricula (2001) Computer Science. Tech. rep., IEEE-CS and ACM.

PANE, J. F., MYERS, B. A. (1996) Usability Issues in the Design of Novice Programming Systems. Carnegie Mellon University, School of Computer Science Technical Report CMU-CS-96-132, Pittsburgh, PA.

PANE, J. F., RATANAMAHATANA, C. A., MYERS, B.A. (2001) Studying the Language and Structure in Non-Programmers' Solutions to Programming Problems. International Journal of Human-Computer Studies, vol. 54, no. 2, pp. 237-264.

PEREGO, C., LISBOA, M. e BERTAGNOLLI S. (2002) A Migração de Pascal para Java: Problemas e Propostas de Solução, Anais do WIE 2002, Brasil.

PIMENTEL, E. P., FRANÇA, V. F., OMAR, N. (2003) A caminho de um ambiente de avaliação e acompanhamento contínuo da aprendizagem em Programação de Computadores. II Workshop de Educação em Computação e Informática do Estado de Minas Gerais (WEIMIG’2003). Poços de Caldas, MG, Brasil.

Page 111: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

98

PINHEIRO, M. C. (2003) Uma Experiência no Ensino de Lógica de Programação para Cursos de Engenharia Usando o Pascal e o Logo. Workshop de Educação em Computação e Informática do Estado de Minas Gerais (WEIMIG 2003), PUC Minas. Poço de Caldas, MG, Brasil.

POLLARD, S., AND FORBES, J. (2003) Hands-on labs without computers. In Proceedings of the 34th SIGCSE technical symposium on Computer science education, ACM Press, pp. 296–300.

ROCHA, H. V. (1995) Representações computacionais auxiliares ao Entendimento de conceitos de programação. In Computadores e Conhecimento: Repensando a Educação, cap. 16. Campinas, SP, Brasil.

RODRIGUES, M. C. (2002) Como Ensinar Programação?. Informática -Boletim Informativo Ano I n° 01, ULBRA. Canoas, RS, Brasil.

SANTIAGO, R., DAZZI, R. L S. (2003) Ferramentas que auxiliam o desenvolvimento da lógica de programação. XII Seminário de Computação (SEMINCO’2003). Blumenau, SC, Brasil.

SANTOS, N. S. R. S. (2006) Utilizando Jogos Computacionais no Apoio ao Ensino de Algoritmos e Programação. Monografia de Desenvolvimento de Software, CEFET Campos, RJ, abril.

SATRATZEMI, M., DAGDILELIS, V., EVANGELIDIS, G. (2001) A System for Program Visualization and Problem-Solving Path Assessment of Novice Programmers, Proceedings of the 6th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE 2001), ACM SIGCE Bulletin, vol. 33, no. 3, pp. 137-140, Canterbury, UK.

SCHULTZ, M. R. O. (2003) Metodologias para Ensino de Lógica de Programação de Computadores. Monografia de Especialização (Ciência da Computação). Universidade Federal de Santa Catarina (UFSC), Florianópolis, SC, Brasil. 69p.

SPOHRER, J., SOLOWAY, E. (1986) Novice Mistakes: Are The Folk Wisdoms Correct? Commun. ACM, 29, 7, 624–632

STRUCHINER, M., REZENDE, F., RICCIARDI, R. M. V., CARVALHO, M. A. P. (1998) Elementos Fundamentais para o Desenvolvimento de Ambientes Construtivistas de Aprendizagem à Distância. In. Revista Tecnologia Educacional v.26 (142) Jul/Ago/Set.

TAKAHASHI, T. (Org.) (2000) Sociedade da Informação no Brasil: LivroVerde. 1. Editora Ministério da Ciência e Tecnologia. Brasília. 195p.

TOBAR, C. M., ROSA, J. L. G., COELHO, J. M. A., PANNAIN, R. (2001) Uma Arquitetura de Ambiente Colaborativo para o Aprendizado de Programação. XII Simpósio Brasileiro de Informática na Educação (SBIE’2001). Vitória, ES, Brasil.

TORI, R., MAINENTE, C. A. (2002) Aprendendo Lógica de Programação via Web. II Congresso Brasileiro de Computação (CBCOMP’2002). Itajaí, SC, Brasil.

UAL – Unesa Algorithmic Language. Disponível on-line em http://geocities.yahoo.com.br/ual_language/ual.html (Último acesso em agosto/2004).

VALENTE, J. A. (1999). Informática a Educação no Brasil: Análise e Contextualização Histórica. In: VALENTE, J. A. O computador na sociedade do conhecimento. Campinas, UNICAMP/NIED. 156p.

Page 112: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

99

VIZCAINO, A., CONTRERAS, J., FAVELA, J., PRIETO, M. (2000) An Adaptive, Collaborative Environment to Develop Good Habits in Programming. 5th International Conference on Intelligent Tutoring Systems, p. 262-271. Montreal, Canadá.

WARREN, P. (2004) Learning to Program: Spreadsheets, Scripting and HCI. In Proc. Sixth Australasian Computing Education Conference (ACE2004), Dunedin, New Zealand.

WERTH, L., BONAR, J., JONI, S., KURTZ, B., SCANLAN, D. (1985) Cognitive processes in programming (panel session). 16th Technical Symposium on Computer Science Education (SIGCSE), p.373-375. New Orleans, Louisiana, USA.

WINSLOW, L. E. (1996) Programming Pedagogy -- A Psychological Overview. ACM SIGCSE BULLETIN, Vol. 28, No. 3.

WOODSON, C. (1988) The Environment for Learning to Program. ACM 16th Annual Computer Science Conference, p. 687-689. Atlanta, Georgia, USA.

ZIEGLER, U., CREWS, T. (1999) An Integrated Program Development Tool for Teaching and Learning How to Program. 30th Technical Symposium on Computer Science Education (SIGCSE), p. 276-280. New Orleans, Louisiana, USA.

Page 113: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

Referências Bibliográficas Complementares

ALMEIDA, E. S., COSTA, E. B., SILVA, K. S., PAES, R. B., ALMEIDA, A. A. M., BRAGA, J. D. H. (2002) AMBAP: Um Ambiente de Apoio ao Aprendizado de Programação. X Workshop de Educação em Computação – WEI 2002. Florianópolis, SC, Brasil.

ANDRE, E., RIST, T., MULLER, J. (1999) Employing AI methods to control the behavior of animated interface agents. Applied Artificial Intelligence, Volume 13, Numbers 4-5, May 1999, 415-448.

BAGERT, D.J., CALLONI, B.A. (1999) Teaching Programming Concepts Using an Icon-Based Software Design Tool. IEEE Transactions on Education, Volume 42, ed. 4.

BAYMAN, P., MAYER, R.E. (1983) A Diagnosis of Beginning Programmers' Misconceptions of BASIC Programming Statements. Communication of the ACM, Vol. 26(9), p. 677-679.

BEIRA, E. J. C. (2003) Metodologias do Ensino da Programação: vinte anos depois - Anexo, FEUP. Working Paper Mercados e negócios TSI (dinâmicas e estratégias), Porto, Portugal.

BONAR, J., SOLOWAY, E. (1983) Uncovering Principles of Novice Programming. 10th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages. p. 10-13. Austin, Texas.

BORGES, M. A. F. (2000) Avaliação de uma Metodologia Alternativa para a Aprendizagem de Programação. VIII Workshop de Educação em Computação – WEI 2000. Curitiba, PR, Brasil.

BROWN, M. H. (1992) Zeus: A System for Algorithm Animation and Multi-View Editing. Compaq & DEC Technical Reports: SRC-RR-75.

BYRNE , M. D., CATRAMBONE, R., STASKO, J. T., (1996) Do Algorithm Animations Aid Learning?. Graphics, Visualization, and Usability Center, Georgia Institute of Technology, Technical Report GIT-GVU-96-18. Atlanta, GA.

BYRNE , M.D., R. CATRAMBONE, R., STASKO, J.T. (1999) Evaluating Animations as Student Aids in Learning Computer Algorithms. Computers & Education, Volume 33, Issue 4, p. 253-278.

CARBONE, A., HURST, J., MITCHELL, I., GUNSTONE, D. (2000) Principles for Designing Programming Exercises to Minimise Poor Learning Behaviours in Students. In Proceedings of the Australasian Conference on Computing education, ACM, p. 26-33.

CARVALHEIRO, F. e SETZER, V. (1995) Uma Introdução Geral aos Algoritmos. Anais do III WEI, IV Congreso Ibero Americano de Educación Superior em Computación, XV Congresso da SBC 1995, Brasil.

CASTELLS, M., (1999), A Era da Informação: Economia, Sociedade e Cultura. Vol 1. A Sociedade Rede, Ed. Paz e Terra, São Paulo.

CHAVES DE CASTRO, T. H., CASTRO JÚNIOR, A. N., MENEZES, C. S. (2002) Representando Padrões em um Ambiente de Apoio à Aprendizagem de Programação. XIII Simpósio Brasileiro de Informática na Educação – SBIE 2002. São Leopoldo, RS, Brasil.

Page 114: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

101

CIDRAL, A. (2000) Aps-Tutor: Un Ambiente Web de Aprendizagem como Soporte às Atividades Presenciais no Ensino de Análise de Sistemas. V Congresso Iberoamericano de Informatica Educativa - RIBIE'2000. Viña del Mar, Chile.

COCKBURN, A., CHURCHER, N. (1997) Towards literate tools for novice programmers. In: Proceedings of the second Australasian conference on Computer science education, ACM Press, p. 107-116.

DAVY , J., Jenkins, T. (1999) Research-led innovation in teaching and learning programming. 4th Annual SIGCSE/SIGCUE ITiCSE Conference on Innovation and Technology in Computer Science Education, p.5-8. Cracow, Poland.

DE ANGELI, A., LYNCH, P., JOHNSON, G. (2001) Personifying the e-market: A framework for social agents. Interact 2001 - Eighth IFIP TC.13 Conference on Human-Computer Interaction, Tokyo, Japan, July 9-13, 2001.

EISENSTADT, M., PRICE, B. A., DOMINGUE, J. (1993) Software Visualization as a Pedagogical Tool. Instructional Science, vol. 21, pp. 335-364.

FENICHEL (1970) A Program to Teach Programming. Communications of the ACM, Volume 13, 3ª ed., p. 141-146. New York, NY, USA.

FERNANDES, J. H. C. (2002) Ensino Introdutório de Computação e Programação: Uma Abordagem Concreta, Construtivista, Lingüística e Histórica. X Workshop de Educação em Computação – WEI 2002. Florianópolis, SC, Brasil.

FREIRE, F. M. P. (2000) A diversidade de descrições de um mesmo problema: relações entre a linguagem Logo e a língua do usuário. Disponível em: http://www.nied.unicamp.br/oea/temas.html (Último acesso: outubro/2004).

GARCIA, I. C., REZENDE, P. J., CALHEIROS, F. C. (1996) Astral: Um Ambiente para Ensino de Estruturas de Dados através de Animações de Algoritmos. Anais do V Congresso Iberoamericano de Educação Superior em Computação (CIESC’96), Cidade do México, México.

GHAFARIAN, A. (2000) Teaching Design Effectively in the Introductory Programming Courses. In Proceedings of the Fourteenth Annual Consortium on Small Colleges Southeastern Conference, The Consortium for Computing in Small Colleges, pp.201-208.

GIANNOTTI, E. (1987) Algorithm Animator: a Tool for Programming Learning. 18th Technical Symposium on Computer Science Education (SIGCSE), p. 308-314. St. Louis, Missouri, USA.

GIRAFFA, L., MARCZAK, S., ALMEIDA, G. (2003) Supporting teaching/learning activities using an environment based on virtual tools. In: INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE IN EDUCATION, 11, Sydney, Australia.

GUERREIRO, P. (1996) A mesma velha questão: como ensinar Programação?. V Congresso Iberoamericano de Educação Superior em Computação (CIESC’96). Cidade do México, México.

HAMILTON Jr., J. A. D., MURTAGH, J. L., ZOLLER, R. G. (2000) Programming Language Impacts on Learning. ACM SIGAda Ada Letters, volume XX , Issue 3. p. 12-19.

Page 115: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

102

HENDERSON, P. B. (1986) Anatomy of an Introductory Computer Science Course. In Proceedings of the Seventeenth SIGCSE Technical Symposium on Computer Science Education, ACM Press, pp. 257-264.

IRONS, D. M. (1982) Cognitive Correlates of Programming Tasks in Novice Programmers. Conference on Human Factors in Computing Systems. p. 219-222.

KAHN, K. (1999) A Computer Game to Teach Programming. National Educational Computing Conference (NECC’1999). Atlantic City, NJ.

KORTRIGHT, L. M. L. (1994) From Specific Problem Instances to Algorithms in the Introductory Course. Proceedings of the Twenty-fifth SIGCSE Symposium on Computer Science Education, ACM Press , EUA, pp 71-75.

KOSLOSKY, M. A. N. (1999) Aprendizagem Baseada em Casos: Um Ambiente para Ensino de Lógica de Programação. Tese de M.Sc., Universidade Federal de Santa Catarina (UFSC). Florianópolis, SC, Brasil.

KOZAK, D. V., EBERSPÄCHER, H. F. (2000) Uma Abordagem para o Ensino de Programação nas Engenharias. Anais do XXVIII Congresso Brasileiro de Ensino de Engenharia (COBENGE’2000). Ouro Preto, MG, Brasil.

LAU, T. A., WELD, D. S. (1999) Programming by Demonstration: an Inductive Learning Formulation. In Proceedings of the 1999 International Conference on Intelligent User Interfaces (IUI 99).

LEMOS, M. A., BARROS, L. N., LOPES, R. D. (2003) Um Biblioteca Cognitiva para o Aprendizado de Programação. XI Workshop de Educação em Computação – WEI 2003. Campinas, SP, Brasil.

LEVITIN, A. (2000) Design and Analysis of Algorithms Reconsidered. Technical Symposium on Computer Science Education, Proceedings of theThirty-first SIGCSE Technical Symposium on Computer Science Education, EUA, pp 16-20.

LIFFICK, B. W., AIKEN, R. (1996) A Novice Programmer’s Support Environment. SIGCSE/SIGCUE Conference on Integrating Technology into Computer Science Education. Barcelona, Espanha.

MATTOS, M. M. (1999) Construção de Abstrações em Lógica de Programação. VIII Seminário de Computação (SEMINCO’1999). Blumenau, SC, Brasil.

MATTOS, M. M. (2002) Learning How to Build Abstractions in Programming Logics Classes. VI Congreso Iberoamericano de Informática, IV Simpósio Internacional de Informática Educativa, VII Taller Internacional de Software Educativo (IE2002). Vigo, Espanha.

MATTOS, M. M., FERNANDES, A., LÓPEZ, O. C. (1999) Sistema Especialista para Apoio ao Aprendizado de Lógica de Programação. VII Congresso Iberoamericano de Educação Superior em Computação (CIESC’99). Asunción, Paraguai.

MAYER, R. E. (1981) The Psychology of How Novices Learn Computer Programming. ACM Computing Surveys (CSUR), v.13 n.1, p.121-141.

MAYER, R. E., DYCK, J. L., VILBERG, W. (1986) Learning to program and learning to think: what's the connection?. Communications of the ACM, v.29 n.7, p. 605-610.

MCGILL, T., VOLET, S. (1995) An Investigation of the Relationship between Student Algorithm Quality and Program Quality. SIGCSE Bull. 27, 2, 44-48.

Page 116: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

103

MCKEOWN, J. e FARRELL, T. (1999) Why We Need to Develop Succcess in Introductory Programming Courses. CCSC - Central Plains Conference, Maryville, MO.

MEC (2000) Diretrizes Curriculares de Cursos da Área de Computação e Informática. Brasília, Secretaria de Educação Superior. 24p.

MILLER, P., PANE, J., METER, G., VORTHMANN, S. (1994) Evolution of Novice Programming Environments: the Structure Editors of Carnegie Mellon University. Interactive Learning Environments (ILE), vol. 4, no. 2, pp. 140-158.

MORAES, M.C. (1997) Informática Educativa no Brasil: uma História Vivida, algumas Lições Aprendidas. Disponível em: http://www.inf.ufsc.br/sbc-ie/revista/nr1/mariacandida.html (Última consulta em novembro/2003).

MORAN, J. M. (1997). Mudar a Forma de Ensinar e de Aprender com Tecnologias: Transformar as Aulas em Pesquisa e Comunicação Presencial-Virtual. In: MORAN, J. M., MASETTO, M., BEHRENS, M., Novas Tecnologias e Mediação Pedagógica. 7ª ed. Campinas: Papirus,2003, p.11-65.

MOREIRA, M. A. (1999) Aprendizagem Significativa. Coleção Publicações Acadêmicas do CESPE/UnB. Série Fórum Permanente de Professores. Brasília: Editora da Universidade de Brasília.

MUKHERJEA, S., AND STASKO, J. T. (1993) Applying Algorithm Animation Techniques for Program Tracing, Debugging and Understanding. In Proceedings of the 15th International Conference on Software Engineering, IEEE Computer Society Press, pp. 456-465.

MULHOLLAND, P., EISENSTADT, M. (1998) Using Software to Teach Computer Programming: Past, Present and Future. In J. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization -- Programming as a Multimedia Experience, p. 399-408. The MIT Press.

NAKAMURA, A. S. (2001) Um Estudo sobre Requisitos de Ferramentas que Auxiliam o Processo de Ensino-Aprendizagem em Lógica de Programação. IX Workshop de Educação em Computação – WEI 2001. Fortaleza, CE, Brasil.

NUNES, M. P., PINTO, I. M. (2003) Uma Abordagem em Amplitude para o Ensino de Introdução a Computação Baseada na Significação Recorrente de Conceitos. XI Workshop de Educação em Computação – WEI 2003. Campinas, SP, Brasil.

PANE, J. F., MYERS, B. A. (2000) The Influence of the Psychology of Programming on a Language Design: Project Status Report. Proceedings of the 12th Annual Meeting of the Psychology of Programmers Interest Group, A.F. Blackwell and E. Bilotta, Eds. Corigliano Calabro, Italy: Edizioni Memoria, p. 193-205.

PANITZ, T. (1996) A Definition of Collaborative vs Cooperative Learning. Disponível em: http://www.city.londonmet.ac.uk/deliberations/collab.learning/panitz2.html. Última consulta em junho de 2005.

PETRE, M. (1990) Expert programmers and programming languages. In Hoc, J-M., T. R. G. Green, R. Samur~ay and D. J. Gilmore Psychology of Programming, Academic Press Ltd, London.

POLYA, G. (1957) How to solve it, Princeton Univ. Press.

Page 117: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

104

PORTER, R., CALDER, P. (2003) A Pattern-Based Problem-Solving Process for Novice Programmers. In Proc. Fifth Australasian Computing Education Conference (ACE2003), Adelaide, Australia.

PORTER, R., CALDER, P. (2004) Patterns in Learning to Program – An Experiment?. In Proc. Sixth Australasian Computing Education Conference (ACE2004), Dunedin, New Zealand.

REATEGUI, E., LORENZATTI, A. (2005) Um Assistente Virtual para Resolução de Dúvidas e Recomendação de Conteúdo. V Encontro Nacional de Inteligência Artificial (V ENIA), São Leopoldo, RS, Brasil.

REINFELDS, J. (2002) Programming as an Engineering Discipline. 32nd ASEE/IEEE Frontiers in Education Conference. Boston, MA.

RICKENBERG, R., REEVES, B. (2000) The Effects of Animated Characters on Anxiety, Task Performance, and Evaluations of User Interfaces. CHI 2000: Conference on Human Factors in Computing Systems. The Hague, Amsterdam, The Netherlands. 1-6 April, 2000.

ROBERTS, G. H. B., VERBYLA, J. L. M. (2003) An Online Programming Assessment Tool. 5th Australasian computing education conference on Computing education (ACE2003). Adelaide, Austrália.

RODRIGUES Jr., M. C. (2004) Experiências Positivas para o Ensino de Algoritmos. II Workshop de Educação em Computação e Informática Bahia-Sergipe. Feira de Santana, BA, Brasil.

ROSSO, A. e DANIELA, M. (2000) Our method to Teach Algorithmic Development, ACM SIGCSE Bulletin, Volume 32, Issue 2, ACM Press, EUA, pp 49-52.

ROY, P. V., HARIDI, S. (2002) Teaching Programming with the Kernel Language Approach. Functional and Declarative Programming in Education (FDPE02). Pittsburgh, PA, USA.

SANTOS, G., DIRENE, A. I., GUEDES, A. L. P. (2003) Autoria e Interpretação Tutorial de Soluções Alternativas para Promover o Ensino de Programação de Computadores. XIV Simpósio Brasileiro de Informática na Educação – SBIE 2003. Rio de Janeiro, RJ, Brasil.

SHERTZ, J., WEISER, M. (1981) A Study Of Programming Problem Representation In Novice And Expert Programmers. 18th Annual Computer Personnel Research Conference, p. 302-322. Washington, D.C., USA.

SLEEMAN, D. (1986) The challenges of teaching computer programming. Communications of the ACM, v.29 n.9, p.840-841.

SOLOWAY, E. (1993) Should we Teach Students to Program?. Communications of the ACM, v.36 n.10, p.21-24.

SURAWEERA, F. (2001) Getting The Most From An Algorithms Design Course: A Personal Experience. SIGCSE Bull. 33, 4, 71-74.

VIZCAINO, A., PRIETO, M. (2000) Examining the Effectiveness of New Technology in High School (number: 6). Disponível on-line em http://citeseer.ist.psu.edu/464747.html (Visitado em agosto/2004).

Page 118: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

105

WARREN, P. (2001) Teaching Programming using Scripting Languages. Journal of Computing Sciences in Colleges, Volume 17, Issue 2, p. 205-216.

WATT, D. A. (2000) Programming Languages – Trends in Education. IV Simpósio Brasileiro de Linguagens de Programação. Recife, PE, Brasil.

Page 119: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

ANEXO I - Uma Proposta para a Matriz Curricular

A experiência com a oficina permitiu desenvolver uma proposta de inclusão

do conteúdo de computação na matriz curricular do ensino médio. Com isto, os

resultados esperados pelo GT3 da SBC poderão ser mais realistas, pois os alunos

que freqüentam uma oficina têm a intenção de aprender o que está sendo

apresentado e quando se está trabalhando com uma turma, alguns alunos podem

não demonstrar interesse do mesmo modo que ocorre numa disciplina normal deste

nível escolar.

Para a inclusão do tema de desenvolvimento de algoritmos e programação

na matriz curricular considerou-se pertinente abordar um conteúdo mais amplo do

que a oficina de forma que se pudesse elevar o grau de interdisciplinaridade

intrínseco na programação, favorecendo também o trabalho no colégio. Assim,

buscando mais um elemento apelativo ao aprendizado proposto questionou-se sua

integração à internet que é fonte de informações das mais variadas áreas do

conhecimento. A internet fez parte da oficina, mas para auxiliar o processo de

aprendizagem como fonte de pesquisa e ferramenta para utilização de recursos

como fóruns. A idéia é promover competências para o desenvolvimento de sites

dinâmicos na internet de modo a permitir aos alunos não somente o consumo de

informações já prontas na Internet, mas desenvolver o senso crítico dos mesmos

habilitando-os a tornarem-se autores. Para a construção de sites dinâmico é

necessário aplicar o aprendizado de programação. Neste caso, a programação

migra do básico para um exemplo de trabalho realizado, atualmente, por

profissionais de diferentes áreas, não somente aqueles específicos de informática.

Para tanto, o plano de ação para esta proposta é composto de quatro

etapas. A primeira delas procura aplicar e desenvolver o conteúdo básico visando

estabelecer um nivelamento dos alunos de cada turma, além de ser pré-requisito

para desempenhar as atividades propostas na atividade ao longo do ano. Em certa

medida, é necessário um esforço para a inclusão digital do público-alvo. O conteúdo

proposto é composto por definições e apresentação de vários dispositivos de

hardware e software. Na segunda etapa os alunos irão aprender a utilizar a Internet

Page 120: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

107

e a desenvolver suas próprias páginas através da HTML (“HyperText Markup

Language”). Notar que nesta etapa não são necessárias competências relacionadas

a construção de algoritmos e programação em si. Já na terceira o foco é o

aprendizado de algoritmos e programação culminando com o desenvolvimento de

alguns programas em Pascal. Por fim, a última etapa também tem por objetivo a

aplicação de programação para desenvolvimento de sites dinâmicos. No caso, o

foco está no desenvolvimento de conteúdo para a web, através da utilização de uma

linguagem script que, no caso do plano aqui apresentado, é o JavaScript.

Ao final de todo este processo almeja-se que os alunos estejam capacitados

a utilizarem o computador como ferramenta de trabalho para desempenhar suas

atividades cotidianas; para a construção de conteúdos digitais contextualizados à

sua realidade; e para construir soluções estruturadas para problemas.

Etapa 1: Ensino de Informática Básica

Etapa 2: Ensino Básico de Construção de Sites

Etapa 3: Ensino de Algoritmos e Programação

Etapa 4: Ensino de Programação para Web

Etapa 1 5Etapa 2 3Etapa 3 2 6Etapa 4 4 (Extra Classe)

Legenda: Possível Ideal

Semanas

Figura A.1: O cronograma da disciplina

O cronograma de atividades (Figura A.1) prevê uma carga horária total ideal

de 73 horas, entretanto, foi estabelecido um total de 63 horas dentro das

possibilidades do ano letivo considerando prazos para possíveis contratempos a

serem ultrapassados ao longo deste período. Além disso, o cronograma também

Page 121: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

108

prevê que a última etapa do plano de ação seja uma atividade extra-classe uma vez

que os alunos já detêm o conhecimento de programação adquirido na etapa anterior

possibilitando um aprendizado autodidata.

Page 122: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

ANEXO II - Ficha de Avaliação do AVEP

FICHA DE AVALIAÇÃO DO AMBIENTE VIRTUAL PARA ENSINO DE PROGRAMAÇÃO – AVEP

AVALIADOR: __________________________________________DATA: ____/___/__

Por favor, responda as questões a seguir, conforme indicação da legenda:

LEGENDA

S: Sim P-: Parcialmente com MUITAS restrições

P+ :Parcialmente com POUCAS restrições N: Não

P: Parcialmente NA: Não se Aplica

Bloco A: Objetivos S P+ P P- N NA

A1 O ambiente contribui para o aprendizado de

algoritmos e programação?

A2 O ambiente motiva o estudo de algoritmos e

programação?

A3 O ambiente permite boa interação com outros

alunos e com o tutor?

A4 O ambiente atendeu suas expectativas?

A5 A metodologia utilizada facilita o aprendizado de

programação?

Page 123: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

110

Bloco B: Interface - Usabilidade – Alfabetização Visual – Interatividade

S P+ P P- N NA

B1 As cores são utilizadas com equilíbrio evitando a

poluição visual?

B2 Os textos são bem explicativos?

B3 As representações das funções da interface

(botões, ícones, etc) são fáceis de serem

entendidas?

B4 As representações das funções da interface

(botões, ícones, helps ,etc) são padronizadas?

B5 O ambiente apresenta boa navegabilidade?

B6 As imagens presentes estão coerentes com o

conteúdo ?

Page 124: AVEP - UM AMBIENTE VIRTUAL PARA APOIO AO ......requisitos necessários para a obtenção do grau de Mestre (M.Sc.) em Engenharia de Produção. AVEP - UM AMBIENTE VIRTUAL PARA APOIO

111

OBS: Enviar esta ficha respondida para: [email protected]

Sugestões: _________________________________________________________________________________________________

_________________________________________________________________________________________________

_________________________________________________________________________________________________

_________________________________________________________________________________________________

_________________________________________________________________________________________________

Bloco C: Características Pedagógicas S P+ P P- N NA

C1 O nível de dificuldade para a resolução dos

problemas é adequado?

C2

Os problemas da primeira etapa da Fase I são

de fácil interpretação?

C3 Os jogos da segunda etapa da Fase I auxiliam o

estudo de algoritmos e programação?

C4 Os jogos permitem desenvolver a abstração de

problemas?

C5 O fórum da Fase II permitiu concluir que há

necessidade de fazer uma descrição formal da

solução?

C6 O fórum da Fase II permite chegar a conclusão

que um problema possui diversas formas de

solução?

C7 A explicação sobre a divisão de casos (“Se”) é

clara permite fácil identificação de quando utilizá-

la?

C8 A explicação sobre as estruturas de seleção (If,

Case) na Fase III é clara e permite fácil

identificação de quando utilizá-las?

C9 A explicação sobre as estruturas de repetição

(While, For, Repeat) na Fase III é clara e permite

fácil identificação de quando utilizá-las?