Experimento sobre o Uso de Tecnologias para o
Aprendizado de Algoritmos e Estruturas de Dados
Raquel Oliveira Prates, Luiz Chaimowicz, Jussara M. Almeida
Departamento de Ciência da Computação
Universidade Federal de Minas Gerais (UFMG)
{rprates, chaimo, jussara}@dcc.ufmg.br
Resumo. Este artigo descreve uma iniciativa de se investigar o impacto do
uso de diferentes tecnologias, a saber Tablets PC e computadores Desktop, no
ensino e aprendizado de Algoritmos e Estruturas de Dados. Embora o
experimento ainda esteja em andamento, apresentamos aqui os resultados
parciais já obtidos, destacando alguns desafios vivenciadas pelos professores
para adoção da tecnologia, realização do experimento em si bem como
aspectos relacionados à sua validação. Além disto, discutimos também o
projeto e uso de quatro sistemas de apoio ao aprendizado específicos para
algoritmos e estruturas de dados.
1. Introdução
À medida em que a tecnologia vem cada vez mais se tornando parte do cotidiano das
pessoas, ela tem se tornado mais presente também na educação. Pode-se notar um
grande crescimento do uso de cursos ou disciplinas a distância, assim como uma
tentativa de incorporar à sala de aula o uso de computadores. No entanto, o uso da
tecnologia em sala de aula na maior parte das vezes é bastante limitada e restrita a
algumas atividades, tais como a visualização de algoritmos [Lafore, 2002; JAC].
Existem vários fatores que contribuem para isto, incluindo aspectos práticos de acesso
aos computadores bem como a resistência ou dificuldade por parte dos educadores de
identificar como inovar seus métodos de ensino. Apesar dos desafios, indústria e
academia têm investido em tecnologia de hardware e software para possibilitar a efetiva
incorporação da tecnologia em sala de aula [CP, DyKnow, HP, Microsoft, UP].
Neste artigo, apresentamos alguns resultados preliminares de uma iniciativa para se
investigar o uso de tecnologia em salas de aula, organizada pelo Departamento de
Ciência da Computação (DCC) da Universidade Federal de Minas Gerais (UFMG) em
parceria com a Hewlett-Packard (HP). Recentemente, o DCC/UFMG se tornou parte de
um projeto da HP de apoio à educação superior [HP]. Neste projeto, a HP doou 21
Tablet PCs para o DCC, com o objetivo de que fossem utilizados no ensino de uma
disciplina básica da área de Ciência da Computação. Iniciou-se então um experimento
de uso dos Tablets PC na disciplina de Algoritmos e Estruturas de Dados II (AEDS II),
além de uma comparação entre o uso de diferentes tecnologias em sala de aula e, na
medida do possível, do uso ou não de alguma tecnologia. Embora o experimento ainda
esteja em andamento, apresentamos aqui os resultados parciais já obtidos. Estes
resultados são relevantes para a comunidade uma vez que abordam alguns desafios
vivenciadas pelos professores para adoção da tecnologia, realização do experimento em
si bem como aspectos relacionados à sua validação. Além disto, o desenvolvimento e
uso de quatro sistemas de apoio ao aprendizado específicos para algoritmos e estruturas
de dados são apresentados.
O restante deste artigo é organizado da seguinte forma. A Seção 2 descreve o
experimento sendo realizado, explicitando os passos adotados bem como os desafios
enfrentados até então. Os sistemas de apoio ao aprendizado já desenvolvidos são
apresentados na Seção 3. As conclusões sobre os resultados obtidos até então bem como
próximos passos são sumarizados na Seção 4.
2. O Experimento – Desafios e Proposta
Em 2006, o DCC/UFMG firmou uma parceria com a HP com o objetivo de investigar o
uso da tecnologia de Tablet PC na modernização de disciplinas básicas do curso de
Ciência da Computação. Para isso a HP doou ao DCC vinte Tablet PCs para alunos e
mais um para o professor, além de projetor, impressora e outros recursos para iniciar a
manutenção do equipamento para sala de aula.
O Tablet PC nada mais é do que um laptop com suporte para uma maior interatividade
do usuário. Além da comunicação via rede sem fio, o que facilita a mobilidade dos
usuários, ele permite um estilo de interação com uma caneta digital, possibilitando o
reconhecimento de manuscritos. Enfim, ele pode ser visto como um caderno eletrônico
com acesso à Internet. Logo, o Tablet PC é uma tecnologia móvel que facilita a
interação entre alunos e com o professor, oferecendo formas simples de fazer anotações
e troca entre os participantes [Anderson et al., 2006; Willis e Miertschin, 2004]. É,
portanto, uma tecnologia que tem um grande potencial para uso em sala de aula.
A disciplina selecionada para o estudo foi Algoritmos e Estruturas de Dados II, uma
disciplina básica que consta do currículo de vários cursos oferecidos na UFMG. O seu
conteúdo pode ser dividido em 3 grandes módulos: (a) Conceitos de Tipos Abstratos de
Dados, Análise de Complexidade, Recursividade e Listas, Pilhas e Filas (b) Algoritmos
de Ordenação e (c) Algoritmos de Pesquisa.
O experimento com os Tablet PCs tem por objetivo identificar os benefícios de se usar
mais tecnologia em sala de aula. Para isso, o objetivo era comparar não apenas o uso do
Tablet PC em relação aos recursos normalmente utilizados (transparências ou canhão de
projeção), mas também em relação a outras tecnologias, especificamente computadores
Desktop. Assim, o experimento previa o ensino e posterior avaliação de 3 turmas de
Algoritmos e Estruturas de Dados II, cada uma fazendo uso de uma tecnologia distinta.
Para que a comparação fosse possível, cada um dos 3 módulos da disciplina foi
ministrado pelo mesmo professor às 3 turmas. O material a ser utilizado pelo professor
deveria ser, senão o mesmo, tão próximo quanto possível nas 3 turmas.
Um dos desafios previstos seria a reformulação da maneira como a disciplina era
ministrada, até então simplesmente através de aulas expositivas, listas de exercícios e
trabalhos feitos em horário extra-classe. Em preparação para o experimento, em 2006-2
(antes dos Tablets PC serem recebidos) tentamos ministrar a disciplina utilizando
laboratórios de computadores, fazendo o revezamento de professores. No entanto, a
tentativa foi frustrada em alguns pontos, permitindo a identificação de problemas a
serem resolvidos. Embora tenha sido reservado um laboratório de ensino da graduação
do Instituto de Ciências Exatas (ICEx) da UFMG, os atrasos causados pela
configuração inicial dos equipamentos além de eventuais problemas que afetavam e/ou
inviabilizavam temporariamente o seu uso resultou na desistência do uso do laboratório
e o retorno para o uso de transparências em sala de aula. Claramente, a disponibilidade
da tecnologia por si só não foi suficiente para que seu uso fosse efetivo. Além disto, foi
verificado que o material disponível (transparências) para a disciplina era bastante
direcionado à aula expositiva, e, logo, não tirava proveito do uso da tecnologia. Ainda
assim, tentou-se tornar o curso mais interativo com maior participação dos alunos, o que
também se mostrou um desafio.
Em 2007-1, mesmo já estando os Tablet PCs disponíveis para o experimento, optou-se
por adiar o seu início efetivo, usando o semestre para uma melhor preparação das
limitações identificadas visando fazer melhor uso da tecnologia. Assim, neste semestre
investiu-se em:
•
Geração de sistemas específicos ao conteúdo de Algoritmos e Estruturas de
Dados II que pudessem ser utilizados dentro e fora de sala de aula pelos alunos.
•
Contínua alteração do curso para torná-lo mas interativo. Para isso, cada
professor tentou em suas turmas de AEDS II incorporar mais atividades a serem
feitas pelos alunos, como exercícios e discussões.
•
Preparação dos professores para a nova tecnologia, através do uso do Tablet PC
(pelo professor) para ensino de AEDS II e do oferecimento de uma disciplina
optativa para avaliação e desenvolvimento de sistemas para o Tablet PC.
•
Realização de uma pesquisa sobre os sistemas de apoio ao ensino em sala de
aulas com uso de computadores, mais especificamente Tablet PCs.
•
Definição da logística para uso e manutenção dos Tablet PCs.
Foram identificados três sistemas de apoio ao uso de computadores, particularmente
Tablet PCs, em sala de aula, a saber o Classroom Presenter [CP, Anderson et al., 2006],
o Ubiquitous Presenter [UP] e o DyKnow [DyKnow]. Estes sistemas permitem ao
professor escrever direto sobre a apresentação (utilizando a caneta do Tablet PC) e
imediatamente suas anotações são disponibilizadas a todos os alunos , e ao aluno fazer
suas próprias antoações e também enviar trabalho sendo feito em aula para discussão ou
correção em sala. Os trabalhos podem ser corrigidos anonimamente, o que permite a
ilustração de problemas vivenciados por alguns alunos, sem criar constrangimentos para
estes alunos. Isto permite também ao professor ter um melhor conhecimento das
dúvidas que os alunos têm tido. Os três sistemas identificados foram avaliados
localmente. Escolhemos o Classroom Presenter por ser gratuito e poder ser instalado e
gerenciado localmente.
Finalmente, iniciamos o experimento em 2007-2. Duas turmas de AEDS II foram
selecionadas para serem ministradas com uso de tecnologia, uma com os Tablets PCs e
a outra com desktops. Devido ao número restrito de Tablet PCs e ao tamanho dos
laboratórios limitou-se cada turma a 20 alunos. Infelizmente, devido ao grande número
de turmas de AEDS II, não foi possível ministrar também uma turma sem uso de
tecnologia com o mesmo número de alunos (turmas regulares têm entre 40 e 55 alunos).
De todo jeito, cada um dos três professores está responsável também por uma turma
regular. O sistema Classroom Presenter está sendo utilizado para acompanhamento e
anotações dos alunos sobre as aulas tanto no Tablet PC, quanto no laboratório.
Um dos pontos relevantes sobre o experimento é como ele será avaliado para se obter os
indicadores desejados. Assim, apresentamos o que pretendemos observar com o
experimento, e como pretendemos coletar os dados que gerem indicadores sobre os
pontos desejados.
1. O uso de tecnologias permite um melhor desempenho do aluno? Alguma
tecnologia específica (Tablet PC ou desktop) favorece mais o desempenho?
Para avaliar estes pontos serão comparados o desempenho dos alunos entre as
turmas usando cada tecnologia com o desempenho das turmas regulares.
Prevemos a obtenção de apenas indicadores preliminares, uma vez que as turmas
participando do experimento são de cursos diferentes e não necessariamente têm
o mesmo perfil. Além disso, a comparação com o desempenho de turmas
regulares não poderá ser conclusiva, uma vez que o número de alunos em sala de
aula pode ser um fator relevante no desempenho da turma.
2. O uso da tecnologia aumenta a motivação ou satisfação do aluno com a
disciplina?
Este ponto será avaliado a partir da coleta da opinião dos alunos sobre a sua
experiência e satisfação em assistir a aula fazendo uso da tecnologia.
3. O uso da tecnologia facilita o trabalho do professor para preparar e/ou
ministrar a aula? O professor percebe melhorias no ensino e aprendizado
da disciplina com o uso da tecnologia?
Estes pontos serão avaliados a partir da coleta das opiniões dos professores
sobre as suas experiências para preparar e ministrar a disciplina em cada turma.
A partir dos indicadores obtidos pretendemos definir os próximos passos na
investigação sobre o impacto do uso da tecnologia em sala de aula.
3. Sistemas de Apoio à Disciplina de Algoritmo e Estrutura de Dados
Para que se pudesse fazer um maior uso da tecnologia em sala de aula foi identificada a
necessidade de tornar disponível aos alunos alguns sistemas que os permitissem
executar os exercícios desejados durante a aula usando a tecnologia disponível. Embora
o Classroom Presenter facilite a discussão com a turma de exercícios resolvidos
individualmente (usando caneta ou teclado), e ambientes de programação permitam a
resolução de alguns exercícios de implementação, o objetivo era que fosse possível ter
sistemas que focassem em conteúdos específicos da disciplina e permitissem a
exploração de novas atividades de aprendizado com os alunos. Desta forma, optou-se
pelo desenvolvimento de ambientes de apoio ao aprendizado específicos aos conteúdos
de AEDS II.
Antes de apresentarmos a descrição de cada sistema desenvolvido, descrevemos
brevemente algumas considerações feitas na definição e modelagem dos sistemas.
Primeiramente, o objetivo é que desenvolvêssemos ambientes de aprendizado, ou seja,
ambientes que dão apoio ao trabalho feito para se alterar o conhecimento do aluno sobre
um assunto [Carey et al. 1998]. Desta forma, o objetivo dos sistemas era permitir ao
aluno interagir com conceitos e métodos relevantes de forma a auxiliá-los na
consolidação destes. Foram selecionados dois tipos de sistemas a serem desenvolvidos:
1. Jogos: jogos que permitissem aos alunos consolidar conceitos apresentados em sala
de forma lúdica;
2. Apoio ao aprendizado: ambientes que permitissem aos alunos colocar em prática
conceitos ou métodos vistos em sala, e que lhes oferecessem apoios (ou scaffolds)
que auxiliassem no aprendizado. Este tipo de apoio é oferecido enquanto for
necessário para auxiliar o aluno no aprendizado até que ele adquira o conhecimento
desejado [Quintana et al. 2001, Cezar et al. 2002].
Para fazer a descrição e modelagem destes sistemas foi usado o Modelo de
Representação de Apoio ao Aprendizado [Prates et al., 2005] que permite a descrição
das tarefas a serem realizadas pelo aluno para executar a atividade de aprendizado e
associado a cada tarefa, os apoios previstos a serem disponibilizados ao aluno.
Assim, foram selecionados alguns tópicos da disciplina para os quais foram então
modelados e desenvolvidos 4 sistemas. Os tópicos contemplados foram Recursividade
(sistema Belesminha), Listas encadeadas (sistema Apontando), Métodos de ordenação
(sistema ProfesSort) e Métodos de pesquisa (sistema Aventura Solo). A seguir
descrevemos cada um destes sistemas e o uso feito dele com os alunos.
Belesminha
O Belesminha é um jogo que tem por objetivo permitir aos alunos exercitar conceitos de
recursividade vistos em sala de aula. Basicamente, o jogador controla uma “lesma”
chamada “Belesminha” que deve passar por vários desafios para encontrar a sua amada,
a “Belesmoca”. Cada desafio é composto por uma seqüência de posições em um grid
2D que a “belesminha” deve percorrer coletando folhas. Em cada desafio, existe um
número máximo de comandos e chamadas de subprogramas (dado por um tamanho
máximo da pilha de execução) que podem ser executados. O controle da lesma é feito
através de comandos (frente, direita, esquerda), que podem ser agrupados em funções e
chamados recursivamente. O aluno deve portanto elaborar uma estratégia para a correta
execução de comandos e chamadas recursivas de forma a coletar todas as folhas, sem
ultrapassar o limite máximo de comandos ou estourar a pilha de execução. Durante a
execução, o aluno pode observar o movimento da lesma pelo cenário bem como o
conteúdo da pilha à medida que as chamadas recursivas são efetuadas. Com isso, ele
tem a oportunidade de exercitar conceitos importantes como chamadas recursivas,
condição de parada, pilha de execução, etc. A Figura 1 mostra uma tela do jogo.
Figura 1: Tela do jogo “Belesminha".
O Belesminha foi utilizado em sala de aula através de uma competição, onde os alunos
trabalhando individualmente no computador tentavam superar o maior número possível
de desafios. Além da competição, o sistema foi disponibilizado na página da disciplina
para o uso fora de sala de aula.
Apontando
O Apontando é um sistema desenvolvido com o objetivo de auxiliar o ensino de listas
encadeadas e apontadores. O sistema permite que o aluno manipule células e ponteiros
de uma lista encadeada de forma visual, o que permite uma melhor compreensão da
forma como as operações são executadas. A partir de uma lista encadeada inicial o
usuário poderá retirar e inserir elementos na lista movimentando os ponteiros. Isso pode
ser feito através do mouse ou, no caso do Tablet PC, usando os recursos da caneta. A
cada interação correta o sistema gera um pseudo-código relativo à modificação
efetuada. Já em caso de erros, o sistema gera questões de ajuda disponibilizadas por um
assistente. O aluno pode utilizar também um menu com várias questões sobre o sistema
e sobre a matéria podendo assim tirar dúvidas. A Figura 2 mostra uma tela do sistema.
Figura 2: Tela do Apontando.
ProfesSort
O ProfesSort é um sistema que tem por objetivo auxiliar os alunos no aprendizado dos
algoritmos de ordenação. Através da execução passo a passo dos algoritmos, os alunos
têm a oportunidade de compreender melhor e exercitar alguns dos algoritmos de
ordenação estudados em sala. O sistema permite que os alunos observem e controlem a
execução do algoritmo indicando, por exemplo, qual é o próximo passo que deve ser
executado, quais elementos devem ser escolhidos para troca, etc. Durante a execução,
são oferecidos quatro tipos de apoio (scaffolds) aos alunos:
1. Perguntas sobre o método – A cada passo do método o sistema oferece a
possibilidade de tirar suas dúvidas através do uso de perguntas pré-determinadas
sobre o conteúdo sendo aprendido.
2. Mensagens de erro graduais – O aluno é encorajado a refletir sobre o erro
cometido, recebendo aos poucos dicas sobre a resposta correta, ao invés de receber a
resposta diretamente.
3. Visão completa das opções – Todos os passos possíveis no algoritmo são exibidos
para que o aluno faça a escolha do próximo passo a ser executado. O vetor sendo
ordenado também é visualizado com a utilização de diferentes cores para indicar ,
por exemplo, qual sub-vetor está em execução, qual já foi ordenado, etc.
4. Botões de auxílio – Permite ao aluno retornar ao passo anterior, ver qual passo deve
ser executado ou executar um ou mais passos automaticamente.
Uma tela do sistema pode ser vista na Figura 3.
Perguntas
Vetor em
manipulação
Visualização
do código e
do histórico
de execução
Mapa de
opções
Botões de
ajuda
Esquema
de cores
Figura 3: Tela do Professort.
Além do uso em sala de aula e da disponibilização do software para uso pelos
alunos, também foram realizados testes com alunos em laboratório de usabilidade.
Observou-se nesses experimentos que os alunos tiveram facilidade no uso do
software e que após uma ou duas ordenações eles passaram a cometer menos erros.
Além disso, uma análise dos questionários respondidos pelos alunos mostraram
que o sistema foi bem avaliado, principalmente com relação aos scaffolds
presentes.
Aventura Solo
De forma geral Aventuras-Solo são estórias segmentadas nas quais o leitor possui uma
participação ativa nas decisões do personagem principal. Assim, a estória não pode ser
considerada linear, pois a mesma apresenta vários desfechos e fluxos possíveis. Nesse
contexto, foi desenvolvido um aplicativo Web que permite a criação de uma estória
fictícia na qual o aluno estará envolvido. Para avançar na estória ele deverá resolver
desafios relacionados à matéria lecionada. Dependendo do sucesso na resolução dos
desafios, o aluno será direcionado à novos desafios ou a páginas de auxílio / revisão da
matéria contendo dicas de como resolvê-los. Portanto, trata-se de uma ferramenta que
pode ser usada em qualquer um dos módulos da disciplina. Essa ferramenta está em fase
final de desenvolvimento e será utilizada durante o ensino dos algoritmos de pesquisa.
4. Conclusões
Este artigo discutiu o projeto e a execução (ainda em andamento) de um experimento
de uso de tecnologias, particularmente de Tablet PCs, no ensino de algoritmos e
estruturas de dados. Os desafios enfrentados pelos professores, particularmente no que
tange a adoção da nova tecnologia e adequação do curso e material utilizado à mesma
foram apresentados. Quatro novos sistemas de auxílio ao ensino de tópicos específicos,
particularmente recursividade, listas encadeadas e apontadores, algoritmos de
ordenação e de pesquisa, foram desenvolvidos. Avaliações preliminares do uso destes
sistemas pelos alunos geraram indicadores positivos quanto à utilidade dos mesmos no
aprendizado bem como no interesse e motivação despertados nos alunos.
O experimento está em fase de conclusão com o final do semestre corrente.
Pretendemos coletar dados junto aos alunos e professores visando explorar as questões
discutidas na Seção 2. Como resultado desta análise, iremos reavaliar a metodologia
aplicada no experimento visando uma nova instância no próximo semestre.
5. Referências
[Anderson et al., 2006] Anderson, Richard; Anderson, Ruth; Chung, Oliver; Davis, K. M.;
Davis, Peter; Prince, Craig; Razmov, Valentin and Simon, Beth. Classroom Presenter - A
Classroom Interaction System for Active and Collaborative Learning, Proc. WIPTE 2006
[Carey et al., 1998] Carey, T.T., Harrigan, K.A. & Palmer, A. (1998). “Mediated Conversations
for Cognitive Apprenticeship”. Proc. of the International Conference of the Learning
Sciences, Atlanta, GA. (pp. 299-301).
[Cezar et al., 2006] Cezar, E. S., Santos, N., Prates, R. O. . O Uso de Scaffolds no Projeto de
Software Educacional. Cadernos do IME, Vol. 22, p. 21-32.
[CP] UW Classroom Presenter. http://www.cs.washington.edu/education/dl/presenter/ (Última
visita Fev 2007)
[DyKnow] DyKnow. Disponível em http://www.dyknow.com/ (Última visita Fev 2007)
[HP] http://www.hp.com/hpinfo/grants/us/programs/tech_teaching/hied_global.html
[JAC]
Java
Applet
Centre,
University
of
Canterbury.
Disponível
em
http://www.cosc.canterbusy.ac.nz/people/mukundan/dsal/appldsal.html (Última visita 02/07)
[Lafore, 2002] Lafore, Robert. Data Structures and Algorithms in Java, SAMS, 2a. edição.
Visualização
de
algoritmos
de
visualização
disponíveis
em:
http://mainline.brynmawr.edu/Courses/cs206/spring2004/lafore.html (Última visita Fev 2007)
[Microsoft] http://research.microsoft.com/ur/us/fundingopps/RFPs/TabletPC_RFP_2006.aspx
[Prates et al., 2005] Prates, R. O.; Figueiredo, R. M. V. (2005) An Experience with an Enriched
Task Model for Educational Software. Proceedings CHI 2005, New York: ACM, 2005.
[Quintana et al., 2001] Quintana, C., Carra, A., Krajcik, J. and Soloway, E. Learner-Centered
Design: Reflections and New Directions. In J.M. Carroll (Ed.) Human Computer Interaction
in the New Millennium, ACM Press (2001), 605-626.
[UP] Ubiquitous Presenter. Disponível em: http://up.ucsd.edu/ (Última visita Fev 2007)
[Willis e Miertschin, 2004] Willis, C. e Miertschin, L. Tablet PC's as instructional tools or the
pen is mightier than the 'board!. Proc. 5th Conf. on Information Technology Education.
Download

Experimento sobre o Uso de Tecnologias para o Aprendizado de