Arquitetura pedagógica do sistema Gene de apoio ao
aprendizado de genética
Henrique da Mota Silveira1, Marcos Augusto Francisco Borges1, 2
¹Centro Superior de Educação Tecnológica – CESET
Universidade Estadual de Campinas (UNICAMP) – Limeira, SP - Brasil
²Núcleo de Informática Aplicada a Educação – NIED
Universidade Estadual de Campinas (UNICAMP) – Campinas, SP – Brasil
[email protected], [email protected]
Palavras Chave: Genética, Jogo, Tamagotchi, Interatividade.
Resumo. A primeira versão do sistema Gene foi concluída no ano de 1999
tendo como objetivo servir no apoio ao aprendizado de conceitos de genética.
O sistema demonstrou capacidade de apoiar seus usuários no entendimento
dos mesmos, porém foi pouco utilizado, entre outros motivos, por possuir uma
arquitetura fechada e necessitar de instalação. Este projeto contempla a
atualização do sistema Gene explorando tecnologias mais modernas,
condução de dinâmicas de aprendizagem e pesquisar formas de torná-lo mais
motivador. A interatividade proposta no projeto é um dos meios de evolução
do jogo, em que o usuário vai se desenvolvendo a partir de relacionamentos
com outros usuários. O projeto viabiliza seu uso livre através da Internet.
Abstract. The first version of the Gene system was completed in 1999 with the
purpose to support the learning of genectis concepts. The system demonstrated
capacity to support it's users on their understanding, however it was not used
very often, amongst other reasons, for having a closed architecture and
requiring installation. This project contemplates the update of the Gene system
exploring more modern techonologies, learning dynamics and reasearching
ways to make ir more appealing. The interactivity proposed on this project is
one of the ways of game evolution, where the user starts in a primary state and
develops according to relationships with other users. The project enables it's
free use over the internet.
1. Introdução
De um jogo de muito sucesso da década de 1990, o “tamagotchi” ou “Bichinho Virtual”,
derivou-se a proposta de uma ferramenta de apoio à aprendizagem para formação em
genética (Borges, 2000). Tal ferramenta é um ambiente de aprendizado interativo,
chamado Gene, sendo o foco principal a aprendizagem de conceitos de genética. Nele, o
usuário manipula os genes de um “bichinho virtual” e depois simula a criação do
“bichinho” resultante das manipulações genéticas.
Devido a algumas desvantagens que a primeira versão do Gene apresentava,
sendo elas, multimídia não muito atraente, dificuldade de instalação e não evolução do
jogo, deixando-o pouco motivador, a proposta para a segunda versão do Gene surgiu
para acrescentar recursos ao projeto original. Porém foi mais viável a reconstrução da
ferramenta, desde sua arquitetura a sua interface visual.
Entre os complementos estão melhorias na parte multimídia (sons, imagens e
animações), melhorias na parte de apoio ao aprendizado da genética e ainda um sistema
disponível para a Internet, livre de instalação.
2. Embasamento teórico
Segundo Valente (1995), o uso de computadores na educação tem provocado uma
verdadeira revolução na concepção de ensino e de aprendizagem. A quantidade de
programas educacionais e funcionalidades diferentes que o computador tem na educação
deixam mais evidentes que essa tecnologia pode ser bastante útil no processo de
aprendizagem.
No entanto, o foco da utilização dos computadores na educação não é mais como
“máquina de ensinar”, mas sim um complemento para ensino. Cada vez mais o mundo é
dominado pela informação e por processos que acontecem de forma imperceptível. Não
basta aos estudantes apenas decorar informações, mas sim entendê-las, sendo
estimulados a buscar e utilizar as informações compreendidas. (Valente, 1995)
Em confronto a alguns paradigmas tradicionais de ensino/aprendizagem que
sugerem que o conhecimento seja repassado de uma pessoa para outra pelo contato entre
elas, existem outros paradigmas, que são o construtivismo de Piaget e o
construcionismo de Papert. Para Ackermann (2008) os pontos chaves do construtivismo
de Piaget são que as visões evoluem continuamente e que o conhecimento expande e se
estabelece (transforma-se e reconfigura-se), internamente, enquanto o construcionismo
de Papert trabalha mais com as dinâmicas de mudança.
Uma forma interessante de se aplicar essas duas frentes é fazendo de um jogo
uma ferramenta de apoio a aprendizagem. Segundo Wang (2006), os jogos podem
motivar o aprendizado, aumentando o desejo de aprender do estudante, apresentando
oportunidades de não somente se aprender os conceitos e conteúdos tradicionais, mas
também de executar a habilidade de pensamento lógico, enquanto os usuários estão se
divertindo.
O sistema Gene tem como idéia base o tamagotchi (Besser, 1997). Naquele o
usuário age como um cientista genético que pode definir como será seu "animal" de
estimação. Inicialmente, o usuário modela seu "bichinho" (manipulando os genes).
Baseado neste modelo genético, o sistema simula a vida do "bichinho" depois de seu
nascimento. Manipulando os genes, testando os resultados e retornando para a
manipulação, o usuário estará envolvido em um processo de aprendizado conhecido
como "estética construcionista" (Valente, 1993). O paradigma de aprendizado que está
sendo almejado é o construcionismo de Papert. (Ackermann, 2008)
3. Objetivos
Este projeto tem por base a reengenharia do sistema adequando-o a tecnologias mais
modernas e a condução de dinâmicas de aprendizagem. O objetivo das dinâmicas é
validar o quanto o uso do sistema está motivador. Desta forma, optou-se por reconstruir
uma nova versão do projeto, que constitui uma parte multimídia mais didática,
acrescentar mais atividades de jogo, torná-lo mais motivador. Assim o sistema se
adequaria melhor aos modelos mentais dos usuários, seguindo o paradigma denominado
construcionismo, de Papert. Além dessas mudanças, o projeto foi construído em um
modelo disponível para web. Com esse volume de mudanças, optou-se por reconstruir o
projeto.
Como outro tipo de resultado, o sistema foi construído tentando manter-se em
conformidade com a arquitetura e-PING (ePING, 2007). Essa nova versão do Gene
ajuda a equipe que está construindo a arquitetura a identificar a viabilidade ou não de se
construir sistemas totalmente aderentes ao que se está padronizando em âmbito do
governo federal.
4. Materiais e métodos
4.1. Tecnologias utilizadas
As ferramentas e softwares utilizados são: Java 1.5, Eclipse, Tomcat 6, Struts 2,
Hibernate, DWR Ajax, Documentação Javadoc, Corel Draw X3, Gif Movie Gear .
A utilização da linguagem Java no desenvolvimento do Gene se deve a algumas
vantagens, que segundo Paulo e Graça (2003), Java é mais simples e mais fácil de ser
compreendida e foi projetada com base em 10 anos de experiência de C++, aproveitando
suas melhores características; a linguagem ainda oferece tratamento de exceções
hierárquicas e a memória dinâmica é gerenciada automaticamente, diminuindo o
potencial para erros. Programas em Java podem ser executados na maioria das
plataformas sem necessidade do código-fonte ou recompilação.
A Integrated Development Environment (IDE) escolhida para o desenvolvimento
foi o Eclipse, porque a mesma oferece um ambiente estável e agradável para o
desenvolvimento de um sistema, além do que oferece um sistema de busca de erros no
código muito boa, que na maioria das vezes aponta corretamente o defeito (Eclipse,
2007).
O servidor de aplicação do Gene é o Apache Tomcat, na sua versão 6, pois
oferece estabilidade, segurança e simplicidade ao desenvolvedor e principalmente ao
sistema. (Apache, 2007)
O framework escolhido para o desenvolvimento do Gene foi o Struts2 devido à
sua organização de arquitetura, sendo mais econômico no tempo de criação e
fornecendo um meio padronizado de fazer o sistema. Outros pontos positivos são a
validação e muita documentação disponível na internet deixando-o mais simples para o
uso. (Struts, 2008)
Para a persistência do Gene foi escolhido o framework Hibernate por ter alguns
pontos favoráveis de facilidade e simplicidade como uma melhor abstração das regras
de negócios e redução de código quando se trabalha com a Base de Dados. (Hibernate,
2008)
A Application Programming Interface (API) DWR AJAX foi escolhida devido às
suas boas funcionalidades de apoio à camada de interface, economizando tempo de
desenvolvimento e fornecendo classes padronizadas. (DWR, 2008)
O software Corel Draw X3 (Corel, 2007) foi utilizado para desenhar o bichinho
virtual e todo o layout de página, incluindo imagens estáticas que foram depois
animadas com Gif Movie Gear (Gamani, 2007). Esses programas foram usados por
possuírem grandes funcionalidades e efeitos para aplicar nas figuras e também grandes
facilidades de uso nestas ferramentas.
A documentação do projeto foi feita em javadoc. A escolha deste tipo de
documentação é devida à clareza e facilidade que a mesma permite. Em um cenário
onde o código já existente precisa de manutenção, o custo costuma ser elevado,
especialmente quando a manutenção é feita por pessoa diferente de quem desenvolveu.
Segundo Paulo e Graça (2003), javadoc tem a vantagem de deixar a documentação
próxima ao código, facilitando a sincronização entre as versões do código e as versões
da documentação. Assim, cada vez que alguma parte do código é modificada, basta
atualizar os comentários correspondentes e utilizar ferramenta correspondente para gerar
nova documentação.
4.2 Arquitetura
A arquitetura do Projeto Gene 2 é baseada no padrão MVC de camadas, onde o projeto
fica dividido por partes e estruturado de uma maneira mais lógica e fácil de
compreender. Segundo Martins (2006), MVC é dividido em três abstrações centrais:
Model, View e Controller:
•
Camada de persistência (Model): Esta camada será responsável pelo tráfego de
informações entre o sistema e fontes de dados.
•
Camada de apresentação (View): Esta camada será responsável pela interface do
sistema web para interação direta com o usuário e comunicação com a camada
de negócio para aquisição de dados.
•
Camada de controle (Controller): Esta camada será responsável por prover ao
usuário funções para a obtenção, organização e atualização de dados.
A Figura 1 abaixo mostra o Gene 2 conforme a arquitetura do padrão MVC de
camadas, mostrando em cada camada as tecnologias usadas no sistema.
O Framework Struts 2 não aparece na Figura 1, pois encontra-se entre as
camadas de Apresentação e Negócio, fazendo uma ponte de comunicação entre as
mesmas.
Figura 1 – Arquitetura Projeto Gene
A figura 2 é um exemplo de como é feito o acesso ao Gene, pela internet.
Figura 2 – Esquema de acesso Gene
O diagrama de classes parcial do projeto, mostrado abaixo na Figura 3, tem
como uma das suas principais classes a classe Bicho. Esta possui uma lista de atributos,
sendo cada nó do tipo da classe Atributo. As classes Felicidade, Calorias, Nutrientes,
Água são classes filhas de Atributos e foram classificados como de primeiro nível e de
segundo nível.
Os de primeiro nível não precisam de outros atributos para obter seu valor: por
exemplo, o atributo Calorias pode ser calculado diretamente quando o bicho ingere algo.
Os de segundo nível têm seus valores calculados com base em outros atributos: por
exemplo, o Peso (segundo nível) depende do valor de Nutrientes, Calorias e Água
(primeiro nível). A classe Atributo possui o método timer(), que é abstrato, assim cada
uma das classes que a herda precisa implementar este método. Esta estrutura foi definida
assim, pois cada uma das classes que herdam Atributo precisam implementar uma
lógica diferente no método timer().
Figura 3 – Classe Bicho e Atributos
Além dessas classes, a classe Bicho se relaciona ainda com algumas Actions
utilizadas para manipulação de tela e ainda se associa às atividades que o usuário
executa, podendo alterar os atributos do bicho. Estas são: dar banho, dar comida, dar
bebida e brincar. Existe ainda a relação entre bicho e sua lista de Genes que por sua vez
armazena em cada nó um par de alelos.
4.3 Utilização do Gene
A primeira interação que é feita é a manipulação dos genes conforme a primeira lei de
Mendel, que diz que na produção de gametas, esses fatores se separam e vai cada um
pra um gameta, para que a carga genética seja sempre constante nas espécies (Mori;
Pereira, 2008).
De acordo com Pazza (2006), uma característica que se manifesta quando há
uma combinação de dois alelos diferentes (Aa ou aA) ou dois alelos iguais (AA), é
chamada de dominante e determinada por um alelo dominante que é representado por
letra maiúscula. Quando tal característica se manifesta apenas quando dois alelos são
iguais (aa), esta é recessiva e é representada por letra minúscula.
A tabela 1 ilustra essa manipulação, apresentando um dos pares de genes
disponíveis inicialmente no jogo, o de cor do bichinho. O gene relacionado ao sexo
(letra F) é análogo ao de cor quanto a sua definição.
GENE COR
R
r
R
RR
Rr
r
rR
rr
Tabela 1 – Cruzamento de Alelos relacionados a Cor
Os genes são formados retirando a primeira letra do aspecto recessivo. Por
exemplo: se o aspecto recessivo de uma cor é a cor rosa, logo o gene da cor recessivo
será “rr” e os genes dominantes da cor serão “RR”, “Rr” e “rR”.
Um bichinho com alelos rr (definindo então sua cor como rosa) e ff (resultando
sexo feminino), terá uma interface como demonstra a Figura 4. Através
desta
é
possível observar um menu na vertical à direita com botões relacionados às ações do
bicho como comer, beber, brincar, tomar banho e gerar relatório.
Ao pressionar o primeiro botão o bichinho irá comer sendo então apresentada a
ação em Atividade, abaixo e a esquerda da imagem do bicho. É possível notar também
que a direita de Atividades há o valor atual das variáveis de segundo nível que
interferem na interface, ou seja, na aparência do bicho – neste caso, o humor está baixo,
logo, a cara do bichinho não demonstra muita felicidade.
O bichinho tem sua vida comprometida nos momentos em que ele fica sem
comida, água ou pela idade avançada. Quando isso acontece, uma tela de feedback é
mostrada ao usuário, contendo todos os dados do bichinho e oferecendo uma nova
chance de jogo. A partir daí o usuário pode definir uma nova estratégia para seu
próximo jogo.
Figura 4 – Tela do Jogo
No intuito de aumentar a motivação dos usuários, o bichinho criado
inicialmente, a partir de um determinado momento de sua vida, pode-se relacionar com
outro bichinho de outro usuário. O sistema usa um critério definido para exibir a lista de
bichinhos aptos a se relacionarem. Esta definição funciona da seguinte maneira:
bichinhos com mais de 10 anos; do sexo aposto; é dada preferência aos bichinhos de
usuários conectados no sistema.
A partir do momento que é feita a escolha de um dos bichinhos da lista, uma
mensagem é enviada para o usuário do bichinho escolhido. Com o intuito de oferecer a
opção de decisão ao usuário que recebeu a mensagem, o mesmo escolhe “Aceitar”, caso
queira que um bichinho novo mais evoluído (com mais genes e atividades) seja
disponibilizado para ele (destinatário) e para o usuário que efetuou o relacionamento
(remetente). Porém caso a opção “Recusar” seja a escolhida pelo destinatário da
mensagem, nenhuma ação acontece para os dois usuários.
O nível responsável pela evolução também controla as atividades disponíveis
para os usuários conduzirem com os bichinhos. A tabela 2 ilustra um exemplo de como
isso foi implementado.
Nível do Bichinho
Atividades
0
Comer, Beber
1
Comer, Beber, Jogar
2
Comer, Beber, Jogar, Banhar
Tabela 2 – Comparação Nível / Atividades
A Figura 5 abaixo mostra a tela de perfil do usuário depois que o mesmo já
possui uma conta no sistema. Neste caso o usuário possui dois bichinhos (esquerda e
meio) criados e um (direita) ainda pra nascer dentro do ovo. Para o funcionamento de tal
foi feito um cadastro de usuário, contendo alguns dados para uma análise posterior
como escolaridade, estado e idade, além de usuário e senha para fazer um acesso mais
seguro sobre o perfil. A persistência do bichinho foi outro atrativo incorporado ao
projeto para aumentar a motivação do jogo, pois o usuário pode salvar o estado atual do
mesmo e carregar mais tarde para continuar jogando.
Figura 5: Tela de perfil do usuário.
No perfil também é encontrado um link que quando acionado direciona o usuário
para uma parte mais educacional do sistema, como mostrado abaixo, na Figura 6. Uma
célula cortada ao meio é apresentada, assim como os respectivos nomes de suas
organelas. O nome de cada organela funciona como link para outra tela com uma
explicação detalhada sobre a mesma.
Figura 6 – Tela com amostra de uma célula
5. Resultados
Como resultado foi feito uma análise da exposição do projeto Gene 2 durante o UPA
2008 (UNICAMP de Portas Abertas). O sistema foi mostrado a alunos do ensino médio
e fundamental interessados no curso de Tecnologia em Informática do
CESET/UNICAMP.
Os usuários de faixa etária mais nova (13 a 15 anos), 8 pessoas, passaram mais
tempo fazendo as combinações genéticas e jogando. Questionavam mais sobre o sistema
em termos de como evoluir o bichinho, se o mesmo iria crescer, se haveria mais genes
disponíveis para fazer mais combinações possíveis. Porém poucos usuários dessa faixa
etária perceberam que os números de atividades do bichinho estavam aumentando
(inicialmente comer e beber, depois tomar banho e por último brincar).
Os usuários de maior faixa etária (acima de 16 anos), 25 pessoas, focaram mais
sobre o funcionamento do sistema, verificando mais vezes a funcionalidade de
informações do bichinho (Relatório). Alguns ainda tentaram por diversas vezes matar o
bichinho dando-o comida e água. Porém quando viam que em determinado momento o
bichinho não aceitava mais comida nem água me questionavam em que momento o
mesmo morria, que é quando ele fica com muita fome e sede ou quando chega a uma
certa idade.
6. Conclusão
Tendo como base bichinhos virtuais que fizeram grande sucesso na década de 1990,
surgiu a idéia de se desenvolver um projeto com “bichinho virtual”, porém com um
diferencial, o de apoiar o aprendizado de genética através de sua manipulação. Este
projeto recebeu o nome de Gene e sua primeira versão tinha recursos multimídia não
muito atraentes, dificuldade de instalação, não evolução no cruzamento de genes e nas
atividades do mesmo.
Devido a tais circunstâncias, decidiu-se fazer a reengenharia do projeto, fazendo
uso de tecnologias mais atuais, disponibilizando o sistema em ambiente web e ainda
acrescentando atividades, cruzamento de genes, etc. Visando deixar o jogo mais atrativo
e contribuindo para uma maior motivação dos usuários, os recursos de evolução e
persistência do jogo foram incorporados ao projeto. A evolução do jogo acontece de
duas maneiras: nos números de genes para se manipular e no de atividades (comer,
beber, jogar e banho) para conduzir o bichinho.
Os resultados apareceram fazendo-se uma análise do uso do sistema durante o
UPA 2008 (Unicamp de Portas Abertas), citado no capítulo 5.
Como um próximo passo, o projeto vai ser disponibilizado na Internet,
facilitando o acesso de terceiros ao conhecimento e ao uso do mesmo. Assim o sistema
ganhará maior visibilidade, possibilitando a difusão de diversos conceitos de genética de
uma forma divertida e motivadora.
7. Referências
Ackermann, Edith. Construtivismo ou Construcionismo: Qual é a diferença? (MEDIA
LAB – MIT – BOSTON/EUA) http://www.cec.g12.br/artigos/artigo_004.pdf.
Acesso em: 15/02/08.
Apache. Apache Tomcat. http://tomcat.apache.org/download-60.cgi. Acesso em:
12/06/07
Besser, H. - Critical Thoughts About Tamagotchi. Disponível em:
http://www.sims.berkeley.edu/courses/is296a3/s97/Focus/Identity/FINAL/index.htm, 1997.
Borges, Marcos; Oliveira, Simony Pelicer de. Design de uma ferramenta de apoio ao
aprendizado. Publicado nos Anais do Simpósio Brasileiro de Informática na
Educação, (Ed. Costa, E.B.), Universidade Federal de Alagoas, Maceió-Al, 2000, pp.
121-127 http:/www.ic.unicamp.br/~maborges/sbie2000/sbie2000.htm.
Corel. Suíte de aplicativos gráficos, CorelDraw X3.
http://www.corel.com.br/pt/mod_produtos.asp?page=prod_draw_x3&click_idfamilia
=2&click_iditem=2 Acesso em: 20/05/07
DWR. Direct Web Remoting. http://getahead.org/dwr Acesso em: 12/01/08.
Eclipse. Eclipse, na open development platform. http://www.eclipse.org/ Acesso em:
15/03/2007
ePING, Governo Eletrônico, Apresentação e-Ping.
https://www.governoeletronico.gov.br/acoes-e-projetos/e-ping-padroes-deinteroperabilidade Acesso em: 20/08/07.
Fernandéz, M. José. Java. Parte I. 1998
http://linuxfocus.org/Portugues/July1998/article57.html
Ferreira, Luis de França. Ambiente de Aprendizagem Construtivista, 1998.
http://penta.ufrgs.br/~luis/Ativ1/Construt.html.
Gamani. Get your animation in gear. http://www.gamani.com/ Acesso em: 13/06/07
Hibernate. Relational Persistence for Java and .NET http://www.hibernate.org/ Acesso
em: 15/01/08
Macoratti, José Carlos. Padrões de Projeto : O modelo MVC - Model View Controller.
http://www.macoratti.net/vbn_mvc.htm.
Martins, Daniel Fernandes. Apresentando Model-View-Presenter, o MVC focado na
visualização, 2006. http://www.javafree.org/content/view.jf?idContent=91.
Mori, Lyria Mori; Pereira, Maria Augusta Querubim Rodrigues. Meiose e as leis de
Mendel. http://www.ib.usp.br/microgene/files/manuais-7-PDF.pdf . Acesso em
15/02/08.
Paulo, Joana Lúcio; Graça, João. Uma Introdução ao Javadoc, 2003.
http://mega.ist.utl.pt/~ic-po/2005/apoio/IntroJavadoc.html.
Pazza, Rubens. Introdução a Genética, Maio de 2006.
http://www.biociencia.org/index.php?option=com_content&task=view&id=211&Ite
mid=71
Struts. About Struts Apache 2. http://struts.apache.org/2.0.9/index.html. Acesso em:
15/01/08
Valente, J. A. Computadores e Conhecimento: Repensando a Educação. Campinas.
Gráfica Central da Unicamp, 1995.
Valente, J. A. - Por quê o computador na educação. Campinas. Gráfica Central da
Unicamp, 1993, p.24-44.
Wang, Wanderley. O aprendizado através de jogos para computador: por uma escola
mais divertida e mais eficiente. 2006.
http://www.familiaviva.org.br/artigos/artigo479.shtml
Download

Arquitetura pedagógica do sistema Gene de apoio ao