INSTITUTO FEDERAL DO PARANÁ
EDUARDO SANT’ANA CURY
GENIUS – O JOGO DE TREINO CEREBRAL
PARANAGUÁ
2012
1
EDUARDO SANT’ANA CURY
GENIUS – O JOGO DE TREINO CEREBRAL
Trabalho de Conclusão de Curso
apresentado ao Curso Técnico em
Informática do Instituto Federal do
Paraná, como requisito parcial de
avaliação.
Orientador: Emílio Rudolfo Fey Neto
PARANAGUÁ
2012
2
Dedico esse trabalho ao meu pai, que me ensinou que o futuro é feito a partir da
dedicação do presente. Sei que esteve ao meu lado durante toda a minha
formação, me apoiando nos momentos mais difíceis, e sei que vai
continuar sempre ao meu lado, durante toda minha vida.
3
AGRADECIMENTOS
Primeiramente, à aquele, que me permitiu tudo isso, e que garantirá minhas
vitórias durante toda a vida, Deus.
Aos meus amigos, pelo companheirismo, pela paciência, e pelo apoio dado
durante a formação acadêmica.
Ao orientador do trabalho, Professor Emílio Rudolfo Fey Neto, pelo
comprometimento, compreensão e disponibilidade, que fizeram esse trabalho
possível.
À minha família, pela compreensão de que minha ausência foi necessária
para aprofundar meus conhecimentos.
4
“A persistência é o menor caminho do êxito.”
Charles Chaplin
“A nossa maior glória não reside no fato de nunca cairmos,
mas sim em levantarmo-nos sempre depois de cada queda.”
Confúcio
“Construí amigos, enfrentei derrotas, venci obstáculos,
bati na porta de vida e disse-lhe: Não tenho medo de vive-la.”
Augusto Cury
5
RESUMO
A necessidade de desenvolver o raciocínio lógico nas fases primordiais da vida,
infância e adolescência, reascendeu nos educadores, devido ao rápido avanço
tecnológico que o mundo vem sofrendo. Nos dias atuais, as crianças e o jovens que
têm acesso à internet, através de computadores, celulares, ou outros equipamentos
eletrônicos, dão preferência à pratica de jogos online, chamados de games, e
também ao acesso à redes sociais, como Facebook e Twitter. Tendo em vista que o
desenvolvimento do raciocínio lógico é muito importante para a percepção e
resolução de vários problemas, surgiu a ideia de criar o Genius. Esse trabalho
consiste em um projeto acadêmico que tem como objetivo principal, apresentar o
desenvolvimento de um software que auxilie no treino do raciocínio lógico mental
através de atividades rápidas e dinâmicas. Para a elucidação do trabalho, objetivou
compreender a atual situação do problema e levantar, através de um questionário,
os requisitos desejados pelo público alvo do projeto, as crianças. Assim, verificou-se
que as exigências se dizem respeito à interface e interação do programa. Com isso,
foi feito um jogo que, ao mesmo tempo que treina o raciocínio lógico, também atua
como um ambiente de entretenimento e aprendizagem.
Palavras-Chave: Raciocínio Lógico. Cérebro. Treino Mental. Jogo.
6
ABSTRACT
The need to develop logical reasoning in key stages of life, childhood and teenage
years, reignited in the educators, due to the fast technological advances that the
world has been suffering. Nowadays, children and teenagers who have internet
access through computers, mobile phones or other electronic equipment, give
preference to the practice of playing online, games, and also, access social networks
like Facebook and Twitter. Considering that the development of logical reasoning is
very important for perception and resolution of many problems, raised the idea to
create Genius. This work consists of an academic project that has as main objective,
to present the development of software that assists in the training of logical mental
reasoning through fast and dynamic activities. It aims for understanding the current
problem's situation and for gathering, through a questionnaire, the requirements
desired by the target users of the project, the children. Thus, it was found that the
requirement pertains to the interface and interaction of the program. Then, the game
was created for that, while trains logical reasoning, also acts as an ambient for
entertainment and learning.
Key-Words: Logical Reasoning. Brain. Mental Training. Game.
7
LISTA DE FIGURAS
Figura 1 - Exemplo de Diagrama de Caso de Uso.................................................... 21 Figura 2 - Exemplo de Diagrama de Classes............................................................ 22 Figura 3 - Exemplo de Diagrama de Sequência ....................................................... 22 Figura 4 - Exemplo de Diagrama Entidade – Relacionamento ................................. 24 Figura 5 - Exemplo de Diagrama Relacional............................................................. 25 Figura 6 - GENIUS: Diagrama de Caso de Uso ........................................................ 33 Figura 7 - GENIUS: Diagrama de Classes ................................................................ 35 Figura 8 - GENIUS: Diagrama de Sequência - Incluir Jogador ................................. 37 Figura 9 - GENIUS: Diagrama de Sequência - Alterar Jogador ................................ 39 Figura 10 - GENIUS: Diagrama de Sequência - Excluir Jogador.............................. 41 Figura 11 - GENIUS: Diagrama de Sequência - Login.............................................. 43 Figura 12 - GENIUS: Diagrama de Sequência - Memória Rápida ............................ 45 Figura 13 - GENIUS: Diagrama de Sequência - Encontre o Par .............................. 47 Figura 14 - GENIUS: Modelo Entidade - Relacionamento ........................................ 49 Figura 15 - GENIUS: Modelo Relacional................................................................... 50 Figura 16 - GENIUS: Tela de Login .......................................................................... 52 Figura 17 - GENIUS: Tela Novo Jogador .................................................................. 53 Figura 18 - GENIUS: Tela Apresentação .................................................................. 54 Figura 19 - GENIUS: Tela Menu de Jogos................................................................ 55 Figura 20 - GENIUS: Tela Menu Memória Rápida .................................................... 56 Figura 21 - GENIUS: Tela Regras Memória Rápida ................................................. 57 Figura 22 - GENIUS: Tela Contagem Regressiva do Jogo ....................................... 58 Figura 23 - GENIUS: Tela Memorize Número........................................................... 59 Figura 24 - GENIUS: Tela Resposta Jogador ........................................................... 60 8
Figura 25 - GENIUS: Tela Resposta Correta ............................................................ 61 Figura 26 - GENIUS: Tela Resposta Errada ............................................................. 62 Figure 27 - GENIUS: Tela Jogo Encontre o Par ....................................................... 63 Figure 28 - GENIUS: Tela Resultados ...................................................................... 64 Figure 29 - GENIUS: Tela Ranking ........................................................................... 65 9
LISTA DE SIGLAS
SGBD – Sistema Gerenciador de Banco de Dados
SQL – Structured Query Language
UML – Unified Modeling Language
10
APÊNDICE
APENDICE A – Questionário de Funcionalidades .................................................... 69 11
SUMÁRIO
1. INTRODUÇÃO.................................................................................................... 13 1.1. Contextualização.......................................................................................... 13 1.2. Justificativa................................................................................................... 14 1.3. Objetivo Geral .............................................................................................. 15 1.4. Objetivos Específicos ................................................................................... 15 2. FUNDAMENTAÇÃO TEÓRICA .......................................................................... 16 2.1. O Estudo da Lógica...................................................................................... 16 2.2. O mundo dos Jogos ..................................................................................... 17 2.2.1. Jogos Virtuais ........................................................................................ 17 2.2.2. Jogos de Raciocínio Lógico................................................................... 18 2.3. O Mercado dos Jogos Virtuais voltados ao Raciocínio Lógico .................... 18 2.4. O que dizem os especialistas? .................................................................... 19 2.5. Desenvolvimento do Projeto ........................................................................ 19 2.5.1. Modelagem do Sistema ......................................................................... 20 2.5.1.1. UML (Unified Modeling Language) ................................................. 20 2.5.1.2. Diagrama de Caso de Uso.............................................................. 21 2.5.1.3. Diagrama de Classes...................................................................... 21 2.5.1.4. Diagrama de Sequência ................................................................. 22 2.5.2. Modelagem do Banco de Dados ........................................................... 23 2.5.2.1. SQL (Structured Query Language) ................................................. 23 2.5.2.2. Modelo de Entidade – Relacionamento .......................................... 24 2.5.2.3. Modelo Relacional .......................................................................... 25 3. METODOLOGIA ................................................................................................. 26 3.1. Levantamento de Requisitos........................................................................ 26 3.1.1. Público Alvo ........................................................................................... 27 3.1.2. Questionário .......................................................................................... 27 3.2. Análise de Requisitos................................................................................... 28 3.2.1. Requisitos Não-Funcionais.................................................................... 28 3.2.1.1. Segurança....................................................................................... 28 3.2.1.2. Usabilidade ..................................................................................... 28 3.2.1.3. Portabilidade ................................................................................... 29 12
3.2.2. Requisitos Funcionais ........................................................................... 29 3.2.2.1. Manter Jogadores ........................................................................... 29 3.2.2.2. Login ............................................................................................... 30 3.2.2.3. Escolher Jogo ................................................................................. 30 3.2.2.4. Jogar “Encontre o Par”.................................................................... 30 3.2.2.5. Jogar “Memória Rápida” ................................................................. 31 3.2.2.6. Armazenar Pontuação .................................................................... 31 3.3. Diagrama de Caso de Uso ........................................................................... 31 3.4. Diagrama de Classes ................................................................................... 33 3.5. Diagrama de Sequência............................................................................... 36 3.5.1. Incluir Jogador ....................................................................................... 36 3.5.2. Alterar Jogador ...................................................................................... 38 3.5.3. Excluir Jogador ...................................................................................... 40 3.5.4. Fazer Login............................................................................................ 42 3.5.5. Jogar “Memória Rápida” ........................................................................ 44 3.5.6. Jogar “Encontre o Par” .......................................................................... 46 3.6. Modelo Entidade – Relacionamento ............................................................ 48 3.7. Modelo Relacional........................................................................................ 50 3.8. Ferramentas Utilizadas ................................................................................ 51 3.8.1. Astah ..................................................................................................... 51 3.8.2. BrModelo ............................................................................................... 51 3.8.3. DBDesigner ........................................................................................... 51 4. DEMONSTRAÇÃO DO SISTEMA ...................................................................... 52 5. CONSIDERAÇÕES FINAIS................................................................................ 66 6. REFERÊNCIAS .................................................................................................. 67 13
1. INTRODUÇÃO
1.1. Contextualização
O computador pessoal, criado no início dos anos 70, representou um grande
avanço tecnológico. Ele deixou de ser uma máquina enorme, armazenada em salas
refrigeradas e utilizada apenas por grandes empresas para realizar alguns
processos internos, e se tornou um equipamento de menor porte, com maiores
funcionalidades e menores custos. Isso possibilitou torná-lo mais acessível.
Com o passar do tempo e com a evolução cada vez mais rápida de sua
tecnologia, o computador ganhou e passou a exercer diversas funcionalidades.
Dentre elas, a que se destacou e que atraiu a atenção dos pais, educadores e
coordenadores de ensino, foi o grande potencial de aplicação na área educacional.
Esse fato pode ser constatado pois, segundo Moraes (1993), a informática
educativa no Brasil tem suas raízes históricas plantadas desde a década de setenta,
quando, pela primeira vez, em 1971, se discutiu o uso de computadores no ensino
da Física. Desde então, as tentativas de inserção do ensino auxiliado por
computador nas escolas, foram inúmeras.
Observa-se também, que o desenvolvimento do raciocínio lógico deve ser tratado
nas primeiras fases da aprendizagem. Onde, segundo Bernardi (2010), o cérebro
humano começa a se posicionar sobre os acontecimentos ao seu redor,
possibilitando tornar as pessoas mais aptas para a resolução de alguns problemas.
Segundo Rauber (2003), existem três habilidades fundamentais a serem
adquiridas pelo aluno durante o processo de alfabetização: ler, escrever e ter a
capacidade de resolver problemas matemáticos. Porém essas habilidades deveriam
ir além, fazendo com que seja adquirida a capacidade de ler bem, escrever bem, e
resolver problemas matemáticos bem. Para o autor, essas habilidades poderiam ser
facilmente alcançadas através do treino do raciocínio lógico.
Sendo assim, alguns educadores passaram a ver o computador com um
importante objeto de auxílio à aprendizagem, que pode ser aplicado na área
educacional com a finalidade de proporcionar uma forma de praticar e exercitar o
desenvolvimento lógico do raciocínio durante as fases primordiais da vida.
14
Em paralelo a isso, constatava-se que o avanço cada vez mais rápido da
tecnologia proporcionou a expansão dos meios de comunicação e fez com que a
internet se tornasse extremamente acessível às pessoas que utilizam computadores,
celulares ou outro equipamento eletrônico.
De acordo com uma pesquisa Ibope/Nielsen (2012), o número de pessoas com
acesso à internet no Brasil chegou a 83,4 milhões no primeiro trimestre de 2012. E
grande parte dos usuários optam por jogar os denominados games ou acessar redes
sociais como Facebook e Twitter, tendo em vista que de acordo com a mesma fonte,
a rede social Facebook tem uma quantidade de 37 milhões de usuários ativos no
Brasil.
Outra pesquisa Ibope (2012), mostra que crianças com mais de 11 anos passam
quase 18 horas por mês na internet, e esse grupo já soma mais de 5 milhões do
usuários.
Sendo assim, fica claro que as atividades que tem como finalidade desenvolver e
estimular e raciocínio lógico, aplicadas nos computadores, vem perdendo, cada vez
mais, o espaço na preferência das crianças e adolescentes, para outras atividades
de entretenimento.
1.2. Justificativa
De acordo com o questionário presente no Apêndice A feito à uma criança,
verificou-se que o contínuo desinteresse pela prática das atividades que tem o
objetivo de treinar e desenvolver o raciocínio lógico se deve ao fato de que alguns
jogos disponíveis são pouco interativos e não atraem as crianças à sua pratica.
O desenvolvimento do raciocínio lógico nas primeiras fases da vida é uma
necessidade para que o ser humano consiga, futuramente, pensar de maneira crítica
acerca dos diferentes problemas que irão surgir no decorrer de sua vida social e
profissional. Tendo isso em vista, surgiu a ideia de aplicar uma atividade que tenha
esse objetivo, porém, atendendo as exigências requisitadas.
Pensando nisso, o software Genius foi uma alternativa de aplicativo para ser
aplicado na área educacional, pois auxiliaria os usuários a praticar atividades que
desenvolvessem o raciocínio, ao mesmo tempo que fosse um jogo interativo e
divertido.
15
1.3. Objetivo Geral
Pretendeu-se criar um software que atendesse as necessidades encontradas na
descrição do problema, e as exigências dos entrevistados, ou seja, atuasse na área
da educação e auxiliasse no desenvolvimento e no treino do raciocínio lógico.
O software foi composto de dois jogos de raciocínio lógico e deve satisfazer o
problema encontrado em outros jogos de raciocínio disponíveis no mercado, ou seja,
deve ser uma solução interativa e divertida, que desperte o interesse do usuário.
1.4. Objetivos Específicos
•
O software conta com um cadastro de jogadores. Antes de iniciar o jogo, é
obrigatória a realização de um login, para que os dados sejam salvos de
acordo com cada jogador.
•
O jogo, como tem o propósito de ser interativo e é voltado para crianças,
contém instruções durante todo o período em que o jogador está logado. As
instruções são fundamentais para que o jogador compreenda o que deve ser
feito e o que ele estará exercitando ao realizar determinadas atividades.
•
O jogo disponibiliza 2 atividades diversas (Encontre o Par e Memória Rápida),
pra que o jogador possa escolher a que mais lhe agrada, e jogar qual desejar.
•
As atividades devem ser executadas durante o período de tempo de 60
segundos.
•
No jogo Encontre o Par, o objetivo é encontrar duas figuras iguais dentre as
figuras sorteadas do Banco de Dados e distribuídas na tela.
•
No jogo Memória Rápida, o objetivo é memorizar o número mostrado na tela
e em seguida, digita-lo.
•
O software faz uma contagem da pontuação do jogador durante a realização
da atividade e ao final, essa pontuação é guardada no Banco de Dados.
•
O jogador pode visualizer o Ranking das atividades, onde conta com os 3
melhores jogadores colocados.
16
2. FUNDAMENTAÇÃO TEÓRICA
2.1. O Estudo da Lógica
Segundo Bernardi (2010), o estudo da logica faz com que o pensamento proceda
corretamente a fim de chegar a conhecimentos verdadeiros. O raciocínio provém de
forma mais organizada, o alcance às razões concretas.
De acordo com Copi (1978), o estudo da lógica é o estudo dos métodos e
princípios usados para distinguir o raciocínio correto do incorreto. Podemos afirmar
que a lógica é um sistema que define como pensar de forma mais crítica no que diz
respeito a opiniões e argumentos.
Para Abar (2006), o aprendizado da lógica auxilia os estudantes no raciocínio, na
compreensão de conceitos básicos, na verificação formal de programas e melhor os
prepara para o entendimento do conteúdo de tópicos mais avançados.
Segundo Piaget (1983), o conhecimento evolui progressivamente, por meio de
estruturas de raciocínio que substituem umas às outras, através de estágios. Isto
significa que o raciocínio lógico de uma criança é completamente diferente do
raciocínio lógico de um adulto.
No livro “Gênese das estruturas lógicas elementares“ (1983), Jean Piaget
identifica os estágios de desenvolvimento da criança, sendo que o autor afirma em
sua teoria, que é no estágio operatório formal que a criança começa a desenvolver
seu pensamento como o de um adulto, assim podendo desenvolver idéias abstratas.
Por isto, o incentivo ao desenvolvimento do raciocínio lógico é muito importante
neste estágio, desenvolvido entre os 7 e 10 anos de idade.
A informática, através de jogos educacionais, pode contribuir de forma
motivadora. Sendo que, para Weis (2001), existem crianças com baixo rendimento
escolar que, diante do computador, mostram-se mais participativas e interessadas.
Isso revela que encontrar alternativas que utilizem o computador para auxiliar no
ensino da lógica pode trazer resultados satisfatórios.
Portanto, é de vital importância a inserção de jogos que estimulem o raciocínio
lógico no meio educacional.
17
2.2. O mundo dos Jogos
De acordo com Silva (2007), os jogos devem ser elaborados de acordo com a
faixa etária do público a qual se destinam. Propiciando o desenvolvimento do
raciocínio lógico de uma forma lúdica, ou seja, divertindo o praticante, sendo um
excelente vínculo de difusão e treinamento de habilidades como coordenação
motora, memorização, motivação, entusiasmo, concentração, destreza entre outros.
Rizzo (1990), afirma que os jogos constituem um poderoso recurso de
estimulação do desenvolvimento integral das pessoas. Eles desenvolvem a atenção,
disciplina, autocontrole, respeito as regras e habilidades perceptivas e motoras
relativas a cada tipo de jogo oferecido. Os jogos podem ser trabalhados de forma
individual ou coletiva. Não há momentos próprios para desenvolver a inteligência,
sempre é possível progredir e aperfeiçoar-se.
2.2.1. Jogos Virtuais
O Jogo Virtual é um programa de entretenimento onde existe a atividade do
jogador interagindo com uma interface e utilizando como plataforma, um computador
pessoal.
Acredita-se que os primeiros jogos virtuais foram criados precisamente durante a
guerra fria. Por esta altura, a tecnologia da informática começava a dar os primeiros
passos e apesar de o principal objetivo tecnológico na altura estar apontado à
comunicação militar, era também importante criar formas de descontração ao nível
virtual.
Os primeiros jogos criados para computador eram bastante simples, se
comparados com os da atualidade. Evoluíram de simples sistemas de jogos
baseados em textos, interfaces gráficas precárias e jogabilidades limitada, para uma
vasta gama de títulos visualmente mais avançados e de jogabilidade mais complexa.
Com o objetivo de atingir o maior número de jogadores e sabendo que um jogo
não irá agradar a todos, as empresas de desenvolvimento de jogos criaram diversos
tipos de jogos de computador, cada um com suas características e jogabilidades
diferenciadas por categorias.
18
As categorias se dividem em: Ação, Aventura, Cartas, Estratégia, Luta, Tabuleiro
e Dados, Peças, Corrida e Simulação.
São jogos eletrônicos que desafiam a velocidade, reflexo, e raciocínio rápido do
jogador, geralmente incluem conflitos estratégicos, desafios de exploração e
necessidade de solucionar quebra-cabeças, através de uma interface complexa e
gráficos avançados.
Existem também, dentre essas várias categorias, os jogos de Raciocínio Lógico,
que se popularizaram através de tecnologias Flash e Java.
2.2.2. Jogos de Raciocínio Lógico
Com base na premissa de Moraes (1993), que tecnologias interativas, como
multimídia, possuem potencial para serem aplicados na área educacional
oportunizando mudanças em relação a situações de aprendizagem, começaram a
ser desenvolvidos jogos que tem como principal objetivo, o desenvolvimento do
raciocínio lógico. Desde então, essa categoria de jogos vem disputando espaço com
outros jogos no gosto das pessoas.
2.3. O Mercado dos Jogos Virtuais voltados ao Raciocínio Lógico
Diante a infinidade de jogos que estão espalhados na Web, são poucos os que
têm o objetivo principal de treinar o cérebro, fazer com que o usuário aprenda
jogando e lhe traga benefícios em longo prazo.
De acordo com Super Interessante (2011), a maioria dos jogos estimula a
agressividade, a luta, o comportamento grosseiro, induzindo as crianças, os jovens e
até mesmo os adultos a violência.
Porém, algumas empresas desenvolvem jogos que possuem o mesmo objetivo
do software Genius: incentivar pessoas a jogarem para estimular suas capacidades
cerebrais.
Um exemplo é o jogo GBrainy, disponível gratuitamente no Sistema Operacional
Ubuntu. Possui testes de lógica, matemática, memória e analogias verbais. Outro
exemplo é o aplicativo para celular Brain Challenge que possui testes de lógica,
matemática, memória e analogias verbais.
19
O objetivo do GBrainy e do Brain Challenge, assim como do Genius, é treinar,
estimular e exercitar o cérebro.
2.4. O que dizem os especialistas?
O estudo do raciocínio lógico-matemático para o desenvolvimento de jogos
virtuais tem uma longa tradição em psicologia. A análise psicológica é fundamental
para que se entendam as dificuldades encontradas no problema, sacie as
necessidades e atinjam os objetivos ao criar um jogo virtual voltado ao exercício
lógico e treino cerebral.
Segundo o psicólogo e psicanalista Flávio Pereira (2009), “A melhor maneira de
ter bom desempenho na escola ou no trabalho é ter uma boa memória e raciocínio e
isto você consegue treinando o cérebro regularmente”. Falando sobre os jogos
virtuais, Flávio diz, “Baseando-se em pesquisas de neurociências são criados jogos
e exercícios destinados a promover ganhos de memória, concentração e agilidade
mental.”.
O jogo consiste em exercícios práticos, que enfocam diversas funções cerebrais,
as quais influenciam a saúde e o desempenho do cérebro.
Para tanto, é de fundamental importância da inserção da informática no cotidiano
das pessoas, sendo que o computador pode influenciar no aprendizado de crianças
e jovens. Constata-se que o desenvolvimento de atividades informatizadas, como os
jogos virtuais e testes de memória, para a aprendizagem de lógica podem auxiliar os
jovens em seu raciocínio lógico.
As consequências do desenvolvimento não eficaz desta capacidade refletem-se
futuramente, quando os adultos passam a se deparar com níveis cada vez mais
elevados de situações em que precisam agir de forma lógica e organizada.
2.5. Desenvolvimento do Projeto
Para a construção do Software Genius, serão necessárias algumas ferramentas
para a modelagem e implementação do Sistema.
Sendo que, para fazer bons sistemas, deve-se utilizar uma linguagem de
modelagem que seja dotada de diagramas que permitam a representação de
20
sistemas simples ou complexos sob as diferentes visões, pois isso facilita o
entendimento e padroniza a comunicação e a organização do problema.
2.5.1. Modelagem do Sistema
“Um modelo é uma simplificação da realidade”, Camarini (2007). Os modelos
podem realizar planos detalhados, assim como planos mais gerais com uma visão
panorâmica do sistema. Um bom modelo deve incluir detalhes e componentes de
grande importância e omite os componentes menores que não necessitam de
representação em determinado nível de abstração.
Na modelagem, pode-se delimitar o problema estudado, dividindo-o em vários
problemas menores, restringindo a atenção a um único aspecto por vez até chegar à
solução.
Através destes modelos, o desenvolvimento da Modelagem de Sistemas auxilia
na organização das informações, estabelece uma base para a criação do software,
faz um levantamento e análise de requisitos que podem ser validados quando o
software for construído, define também a proporção do sistema.
2.5.1.1.
UML (Unified Modeling Language)
Segundo Ribeiro (2012), a UML é uma linguagem padrão, empregada para a
visualização, a especificação, a construção e a documentação de artefatos que
façam uso de sistemas complexos de software. Abrange todas as visões
necessárias ao desenvolvimento e implantação de sistemas, desde sistemas de
informação corporativos a serem distribuídos a aplicações baseadas em Web até
sistemas complexos embutidos de tempo real.
As linguagens de modelagem são formadas por um conjunto de palavras e
regras para a combinação destas palavras com o objetivo de comunicar algo. Assim
a UML é uma linguagem de modelagem cujo vocabulário e regras têm seu foco
voltado para a representação conceitual e física de um sistema.
A UML foi desenvolvida com o foco na padronização da documentação dos
diversos sistemas de software.
21
Um dos principais objetivos da linguagem UML é dar suporte às especificações
de projeto independente da linguagem de programação e do processo de
desenvolvimento.
A grande aceitação pela comunidade de desenvolvedores e pela indústria de
software tornou fundamental que qualquer projeto de software orientado a objetos
seja representado pela UML.
2.5.1.2.
Diagrama de Caso de Uso
O Diagrama de Caso de Uso representa, graficamente, as funcionalidades do
sistema junto com os elementos externos que com ele interagem.
Os Casos de Uso descrevem as interações entre os usuários de um sistema com
o próprio software. O diagrama também é bastante útil por possibilitar a associação
de outros artefatos que representam a interação entre os atores e o sistema.
A figura 1 apresenta um exemplo de diagrama de caso de uso onde, a elipse
representa o caso de uso, o boneco representa o ator, e o retângulo representa a
fronteira do sistema.
Figura 1 - Exemplo de Diagrama de Caso de Uso
2.5.1.3.
Diagrama de Classes
O diagrama de classes oferece uma visão estática da estrutura do sistema. A
figura 2 apresenta um exemplo de diagrama de classes com as classes A e B, onde
cada uma possui seus atributos e métodos, apresenta ainda o relacionamento
existente entre ambas.
22
Figura 2 - Exemplo de Diagrama de Classes
2.5.1.4.
Diagrama de Sequência
O Diagrama de Sequência mostra como será a execução do sistema em um
espaço de tempo. Representa o comportamento das classes, dos métodos, dos
objetos, juntamente com os atores (pessoas que utilizarão o sistema). Mostra a
sequência de troca de mensagens entre os componentes do sistema e os usuários.
A figura 3 apresenta um exemplo de diagrama de sequência com seus
elementos, o ator (Funcionário) que se comunica com a aplicação (Interface) que por
sua vez se comunica com o controle do sistema. Cada um desses elementos com
sua linha de tempo representada por linhas verticais, na qual os eventos ocorrem.
As linhas horizontais representam o fluxo de informação.
Figura 3 - Exemplo de Diagrama de Sequência
23
2.5.2. Modelagem do Banco de Dados
Bancos de dados são conjuntos de dados com uma estrutura regular que
organizam informações. Um banco de dados normalmente agrupa informações
utilizadas para um mesmo fim, ou seja, é uma coleção de dados relacionados.
Um banco de dados é usualmente mantido e acessado por meio de um software
conhecido como Sistema Gerenciador de Banco de Dados (SGBD), que permite
com que se faça o acesso, a alteração ou a exclusão de algum dado do banco.
De acordo com o princípio de informação, toda informação tem de ser
representada como dados; qualquer tipo de atributo representa relações entre
conjuntos de dados.
Nos bancos de dados, os relacionamentos entre as tabelas não são codificados
explicitamente na sua definição. Em vez disso, se fazem implicitamente pela
presença de atributos chave. As bases de dados relacionais permitem aos
utilizadores escreverem consultas, reorganizando e utilizando os dados de forma
flexível e não necessariamente antecipada pelos projetistas originais.
Portanto, para encontrar a melhor disposição de armazenamento de informações
no banco de dados e para evitar futuros erros, perdas e transtornos com as
informações, será feita uma modelagem do Banco de Dados através de análises
conceituais e lógicas dos modelos de dados. Assim, posteriormente representados
em diagramas.
Os principais diagramas que serão utilizados para a modelagem do Banco de
Dados do sistema Genius serão: o Diagrama de Entidade Relacionamento e o
Diagrama Relacional, descritos na sessão 3.6 e 3.7.
2.5.2.1.
SQL (Structured Query Language)
SQL é uma linguagem de consulta estruturada, especialmente voltada para atuar
no mercado da programação de banco de dados.
A linguagem SQL foi criada para atender a todos os bancos de dados relacionais
e permitir que usuários possam acessar qualquer banco usando a mesma base de
conhecimento.
24
Com a utilização dos comandos básicos – insert, delete, select e update – podese resolver a maior parte dos problemas relacionados à manutenção e extração de
dados no banco de dados. Com o SQL é possível criar as estruturas básicas de
armazenamento, como tabelas e índices. Também há comandos específicos da
linguagem para o controle e segurança relacionado a um banco de dados.
Sendo assim, a SQL será escolhida como a linguagem para se fazer a criação e
manutenção do Banco de Dados do sistema.
2.5.2.2.
Modelo de Entidade – Relacionamento
O Modelo de Entidade – Relacionamento é um modelo conceitual de alto nível de
abstração e está o mais próximo possível da realidade do usuário, pois é baseado
na percepção do mundo real.
Sua representação gráfica da origem ao Diagrama de Entidade Relacionamento,
cujo objetivo é facilitar o projeto de banco de dados, possibilitando a especificação
da estrutura lógica geral do banco e a estruturação dos dados armazenados.
Os componentes do Diagrama são:
•
Retângulos: representam conjuntos-entidade;
•
Elipses: representam atributos;
•
Losangos: representam conjuntos-relacionamento;
•
Linhas: ligam atributos a conjuntos-entidade e conjuntos-entidade
a conjuntos-relacionamento.
A figura 4 representa graficamente um exemplo de Diagrama de Entidade –
Relacionamento.
Figura 4 - Exemplo de Diagrama Entidade – Relacionamento
25
2.5.2.3.
Modelo Relacional
O modelo relacional é uma teoria matemática desenvolvida para descrever como
as bases de dados devem funcionar.
Um dos pontos fortes do modelo relacional de banco de dados é a possibilidade
de definição de um conjunto de restrições de integridade. Estas definem os
conjuntos de estados e mudanças de estado consistentes do banco de dados,
determinando os valores que podem e os que não podem ser armazenados.
O Modelo Relacional é um modelo lógico que representa as informações no
Banco de Dados como uma coleção de tabelas. Sua representação gráfica da
origem ao Diagrama Relacional. A figura 5 corresponde a um exemplo de Diagrama
Relacional.
Figura 5 - Exemplo de Diagrama Relacional
26
3. METODOLOGIA
A engenharia de software é o processo de construir um sistema da melhor
maneira possível.
Segundo Bauer (1969), cientista da computação, "Engenharia de Software é a
criação e a utilização de sólidos princípios de engenharia a fim de obter software de
maneira econômica, que seja confiável e que trabalhe em máquinas reais".
Durante o processo de fundamentação e concretização do sistema, é necessário
que seja seguido algumas etapas. Entre as etapas de desenvolvimento, está a
metodologia.
A metodologia pode ser definida como o estudo dos métodos, ou seja, as etapas
a serem seguidas no processo de criação do software.
Caracterizando-se por ser a explicação detalhada, rigorosa e exata de toda ação
desenvolvida no método do trabalho, a metodologia tem como objetivo captar e
analisar as características dos vários métodos indispensáveis, avaliar suas
capacidades, potencialidades, limitações e criticar as implicações de sua utilização.
A metodologia pode ser dividida em vários métodos até chegar num determinado
objetivo.
Os métodos utilizados no desenvolvimento do software Genius foram:
Levantamento de Requisitos, Análise de Requisitos, e a criação dos diagramas.
3.1. Levantamento de Requisitos
Segundo algumas definições, requisito nada mais é do que uma condição ou
capacidade que deve ser alcançada.
Na abordagem clássica de engenharia, os requisitos são tipicamente utilizados
como informações fundamentais para a fase de projeto de um produto ou serviço.
Eles especificam as propriedades e funções necessárias a serem consideradas no
desenvolvimento do projeto. Simplificando, é algo que um sistema ou componente
deve possuir para satisfazer um contrato, padrão ou especificação.
Na etapa de levantamento de requisitos, a equipe de desenvolvimento se prende
em entender a questão que o sistema vai automatizar, esse levantamento
compreende explorar as necessidades dos usuários.
27
Segundo Balbé (2011), “Quando o assunto é requisito, é deve-se responder de
maneira clara a questão: O que o usuário necessita do sistema?
Os requisitos definem o problema a ser resolvido pelo sistema que será
desenvolvido. Compreender as necessidades do cliente se torna essencial no
desenvolvimento de soluções.”.
3.1.1. Público Alvo
Através de uma interface atrativa e interativa, Genius terá o objetivo de fazer com
que os jovens se divirtam, aprendam e treinem seu cérebro.
Após constatar que é no estágio operatório formal do crescimento infantil, que a
criança começa a desenvolver seu pensamento como o de um adulto, o software
Genius pretende atingir a faixa etária correspondente ao determinado estágio, porém
será usado por crianças que já estejam alfabeitzadas, que se encontra entre 7 e 10
anos de idade. Assim, o software atuará como um ambiente de aprendizagem.
3.1.2. Questionário
Durante a etapa do levantamento dos requisitos, surgiu a necessidade de saber
quais são as exigências do público alvo do programa.
Para isso, foi feito um questionário com 5 perguntas, em anexo no APÊNDICE A.
A entrevista foi feita com Y.L, de 9 anos, já alfabetizada. A jovem informou quais
características gostaria de encontrar no jogo.
Foram apontadas as necessidades de fazer um programa interativo, para isso,
seria necessário a presença de um personagem que interagisse com o jogador
durante todo o tempo, para auxiliar e dar algumas instruções. Cada jogo contaria
com algumas regras, que o jogador poderia ler antes de iniciar o jogo.
Foi exigido também, o sistema de login, para que o jogador tenha sua própria
conta no jogo. A preferência dos tipos de jogos que o programa iria conter ficou por
conta dos jogos rápidos.
A jovem informou que gostaria de verificar o seu desempenho ao final da
atividade, e que também, gostaria de ver uma lista com os primeiros colocados. Para
isso, surgiu a necessidade de fazer um ranking.
28
Após o questionário, foi feita a análise dos requisitos exigidos no questionário.
3.2. Análise de Requisitos
Ao realizar o levantamento de requisitos, obtém-se como resultado, uma relação
de requisitos que o sistema irá contemplar. Nessa relação, estão presentes
requisitos definidos como Funcionais e Não-Funcionais.
3.2.1. Requisitos Não-Funcionais
Os requisitos não-funcionais abordam as características da qualidade do sistema
que estão relacionadas às suas funcionalidades, ou seja, relata como o sistema é.
Esse tipo de requisito se divide nas seguintes partes:
3.2.1.1.
Segurança
A principal preocupação que se deve ter na criação de sistemas que envolvem o
manuseio de dados pessoais importantes é a segurança.
Neste requisito são descritas as particularidades sobre acessos ao sistema,
segurança extra em login, possibilitando restringir acesso de algumas pessoas à
modificação e exclusão de dados, entre outros.
O software Genius conta com a possibilidade de realizar um cadastro de
jogadores, contendo nome de usuário e senha, que deverão ser informados antes de
iniciar as atividades.
Com isso, os jogadores podem se cadastrar no jogo ao inicializá-lo, mas apenas
após realizar o login, poderão modificar suas senhas ou excluir seus perfis.
3.2.1.2.
Usabilidade
Na descrição da usabilidade do sistema, devem se levar em conta os tópicos
relacionados à facilidade de uso e sobre a necessidade de treinamento para os
usuários.
29
O software Genius tem uma interface atrativa, de simples entendimento e
utilização.
Para isso, conta com instruções durante o período do jogo, botões e letras
grandes, e uma aparência colorida, para também, atrair o usuário.
Por ter o objetivo de ser aplicado em áreas de educação, poderá ter a sua
execução de atividades sendo assistida por coordenadores de ensino, no meio
escolar, acompanhando o desempenho do usuário.
3.2.1.3.
Portabilidade
Ao discutir sobre a portabilidade do sistema, tratamos da facilidade de migrar o
sistema para outras plataformas de sistema operacional, ou seja, Windows, Linux e
Mac OS. Deve ser dada uma atenção, para que o sistema rode em qualquer lugar.
Como o Genius é um software que pode ter sua aplicação tanto em um ambiente
escolar, como em um ambiente domiciliar, a portabilidade do sistema deve-se ser
levada em conta, uma vez em que o funcionamento do jogo esteja disponível em
ambos os locais.
3.2.2. Requisitos Funcionais
Diferentemente dos Requisitos Não-Funcionais (que relatam o que o sistema é),
os Requisitos Funcionais relatam, em si, o que o sistema deve fazer e o que compõe
a sua estrutura de software.
O software Genius é composto dos seguintes procedimentos: manter jogadores,
realizar login, escolher e jogar um jogo, e armazenar a pontuação.
3.2.2.1.
Manter Jogadores
Dentro da função “Manter Jogadores”, é possível Cadastrar, Alterar ou Excluir um
jogador do sistema.
Ao cadastrar, o usuário informa o nome que deseja utilizar no jogo e uma senha.
Essas informações serão salvas no Banco de Dados.
30
Caso o jogador escolha a opção Alterar, suas respectivas informações, bem
como Nome e Senha, serão recuperados e apresentados a ele. Assim, o jogador
terá a possibilidade de alterar o seu nome de usuário ou a sua senha.
Para excluir, basta que o jogador escolha a opção Excluir, que o sistema
automaticamente verificará com qual usuário está logado, e o apagará do banco.
Assim, o jogador voltará para a janela inicial do sistema, uma vez que, não haverá a
possibilidade de estar logado com uma conta que foi excluída.
3.2.2.2.
Login
Ao fazer o login, é requisitado ao usuário, o Nome e a Senha criados no
momento do cadastro. Após informar os dados, o sistema fará uma busca no banco
de dados, e analisará as informações.
Para que o login seja efetuado com sucesso, os valores devem corresponder
com os informados na hora do cadastro. Caso contrário, a entrada do usuário no
jogo não poderá ser efetuada.
3.2.2.3.
Escolher Jogo
Após realizar o login e entrar no sistema, o usuário encontrará 2 (duas) opções
de atividades que poderá realizar, sendo elas: Encontre o Par e Memória Rápida.
3.2.2.4.
Jogar “Encontre o Par”
O jogo Encontre o Par consiste em encontrar, no meio de várias imagens, duas
que sejam respectivamente iguais. Para isso, é necessário que as imagens
utilizadas na atividade sejam armazenadas no banco de dados.
Ao iniciar o jogo, o sistema irá dispor as imagens na tela em forma de matriz de 9
(nove) posições.
A partir de então, o jogador deverá encontrar as imagens iguais dentre as
disponíveis na tela.
A cada acerto ou erro, as imagens mudam, e o jogador deverá continuar a
procura das figuras iguais, até que seu tempo chegue ao fim.
31
3.2.2.5.
Jogar “Memória Rápida”
Será mostrado ao jogador, um número com a quantidade de 5 algarismos e o
jogador deverá memorizá-los durante um curto período de tempo.
Os números irão desaparecer da tela, e então, será solicitado para o jogador que
ele informe os números mostrados anteriormente. O sistema comparará as duas
sequências de números, contabilizando acerto ou erro do jogador.
3.2.2.6.
Armazenar Pontuação
Para cada jogo, foi estipulado um tempo padrão de 1 (um) minuto para a
resolução dos exercícios.
Após o término do tempo, o sistema contabiliza a pontuação de acordo com os
acertos e erros do jogador.
A pontuação do jogador será exibida na tela, para a verificação do desempenho
e será armazenada no ranking do jogo.
O ranking contará com as seguintes informações:
•
Nome do Jogador;
•
Codigo do Jogo;
•
Pontuação Obtida;
Para a concretização dos requisitos levantados, foi necessária a criação de
modelos e diagramas que auxiliam no maior entendimento e abstração das
características e necessidades do sistema.
3.3. Diagrama de Caso de Uso
De acordo com a seção 2.6.1.2, um diagrama de caso de uso descreve as
funcionalidades de um sistema em interação com os elementos externos.
O diagrama de caso de uso do software Genius é constituído de 7 casos de uso,
sendo eles: Manter Jogador, Login, Acessar Menu, Ranking, Jogar, Finalizar Jogo e
Exibir Pontuação, que representam as principais funções do sistema; e 2 atores:
Jogador e SGBD, que representam os usuários do sistema.
32
O ator Jogador poderá executar diretamente as funções Manter Jogador e Login.
O caso de uso Manter Jogador tem a finalidade de incluir, alterar ou excluir um
jogador do Banco de Dados e o caso de uso Login permite o acesso do jogador no
menu do jogo. Após realizar o login, o sistema permite que o jogador escolha se
deseja visualizar o ranking do jogo através de seu relacionamento com o caso de
uso Ranking, ou se deseja escolher o jogo, através do caso de uso Escolher Jogo.
Ao finalizar o jogo, será exibida a pontuação do Jogador cuja representação no
diagrama de caso de uso se dá pelas funções, Finalizar Jogo e Exibir Pontuação,
relacionadas. De acordo com o relacionamento entre os casos de uso Ranking e
Finalizar Jogo é possível observar que com o término do jogo será exibido, também,
o Ranking.
O ator SGBD se relaciona diretamente com os casos de uso Manter Jogador,
Login, Escolher Jogo e Finalizar Jogo, pois através de seus relacionamentos serão
feitos os armazenamentos, as alterações e as buscas de informações no Banco de
Dados.
Na figura 6, pode-se observar o diagrama de caso de uso do software Genius.
33
Figura 6 - GENIUS: Diagrama de Caso de Uso
3.4. Diagrama de Classes
Segundo a seção 2.6.1.3, um diagrama de classes representa, graficamente, o
conjunto de as classes do sistema, com seus atributos, métodos, objetos e o
relacionamento entre eles.
O diagrama de classes do software Genius possui 4 classes, 3 respectivos
controles de cada classe e 4 interfaces. As classes são: Jogador, Ranking, Encontre
34
o Par e Memória Rápida; os controles são: Controle_Jogador, Controle_Ranking e
Controle_Jogo; e as interfaces são: Main, Inserir, Jogar e Manter.
A classe Jogador tem 3 atributos privados, sendo eles: Código, Nome e Senha. A
classe Ranking também possui 3 atributos privados, sendo eles: Código_Jogador,
Código_Jogo e Pontuação. A classe Encontre o Par corresponde a um dos jogos do
sistema e contém 3 atributos privados, sendo eles: Código, Imagem e Selecionada.
A classe Memória Rápida também corresponde a um dos jogos do sistema e
contém 2 atributos privados, sendo eles: Número Sort. e Número Digit.
A interface Main permite acesso ás demais interfaces gráficas, Inserir, Jogar e
Manter. A Main é a página inicial do software Genius.
A interface Manter representa as telas onde o jogador efetuará o login, onde
realizará o cadastro, a alteração e a exclusão de jogadores.
A interface Jogar representa as telas dos jogos.
A interface Inserir representa a inserção das pontuações no ranking.
Os atributos da classe Ranking só terão sentido lógico se os atributos das
classes Jogador e Encontre o Par existirem, por isso estão relacionados por uma
ligação de composição. Caso os atributos das classes Jogador e Encontre o Par
deixem de existir, os mesmos atributos contidos na classe Ranking também deixará
de existir.
Na figura 7, pode-se observar o Diagrama de Classes do software Genius.
35
Figura 7 - GENIUS: Diagrama de Classes
36
3.5. Diagrama de Sequência
Segundo a seção 2.6.1.4, um diagrama de sequência tem a finalidade de
representar como será a execução de um software ao longo do tempo, mostrando a
sequência de troca de mensagens entre os componentes do sistema e os usuários.
O software Genius possui 7 diagramas de sequência representando suas
principais funcionalidades. Os diagramas são: Incluir Jogador, Alterar Jogador,
Excluir Jogador, Fazer Login, Jogar Memória Rápida e Jogar Encontre o Par.
3.5.1. Incluir Jogador
Incluir_Jogador mostra como será feita a inclusão (cadastro) de um jogador no
banco de dados.
O diagrama possui um ator Jogador, uma Interface para o Jogador, um Controle
de Jogadores e um SGBD.
O Jogador irá solicitar um cadastro à Interface_Jogador, onde apresentará ao
Jogador a tela para inserção de dados representada pela mensagem Requisita
Dados(). O Jogador, através do método Informa Dados(), estará fornecendo suas
informações para serem incluídas no banco. O Controle_Jogador irá recolher as
informações da interface, pelo método ObtémDados(), para enviá-las ao SGBD,
através do método Inclui Jogador().
Após inclusão no banco, o SGBD irá retornar para o Controle_Jogador, onde por
sua vez irá validar o cadastro pelo método Valida Cadastro() e retornará uma
mensagem ao Jogador confirmando seu cadastro.
Na figura 8, pode-se observar o Diagrama de Sequência “Incluir_Jogador” do
software Genius.
37
Figura 8 - GENIUS: Diagrama de Sequência - Incluir Jogador
38
3.5.2. Alterar Jogador
Alterar_Jogador mostra como será feita a alteração de um jogador no banco de
dados.
O diagrama possui um ator Jogador, uma Interface para o Jogador, um Controle
de Jogadores e um SGBD.
O Jogador irá solicitar à Interface_Jogador a alteração de suas informações,
onde ela passará o comando de obter as informações do jogador, através do método
Obter Informações(), para o Controle_Jogador.
Com o método Busca Dados do Jogador(), o Controle_Jogador irá buscar as
informações do Jogador no SGBD, que em seguida irá retornar as informações para
o Controle_Jogador. A Interface_Jogador será informada com os dados do Jogador
e, de acordo com o método Exibe Informações do Jogador(), irá mostrar na tela as
informações a serem alteradas.
A Interface_Jogador requisitará ao Jogador os novos dados e, através da
mensagem Envia Novos Dados(), o jogador enviará os dados alterados para a
Interface_Jogador. O Controle_Jogador irá recolher as informações da interface,
pelo método Obtém Informações(), para enviá-las ao SGBD, através do método
Altera Jogador().
Após inclusão dos dados alterados no banco, o SGBD irá retornar para o
Controle_Jogador, onde por sua vez irá validar a alteração pelo método Valida
Alteração() e retornará uma mensagem ao Jogador confirmando a alteração de seus
dados.
Na figura 9, pode-se observar o Diagrama de Sequência “Alterar_Jogador” do
software Genius.
39
Figura 9 - GENIUS: Diagrama de Sequência - Alterar Jogador
40
3.5.3. Excluir Jogador
Excluir_Jogador mostra como será feita a exclusão de um jogador no banco de
dados.
O diagrama possui um ator Jogador, uma Interface para o Jogador, um Controle
de Jogadores e um SGBD.
O Jogador irá solicitar à Interface_Jogador a exclusão de suas informações, onde
a interface passará o comando de obter as informações do jogador, através do
método Obter Informações(), para o Controle_Jogador.
Com o método Busca Dados do Jogador(), o Controle_Jogador irá buscar as
informações do Jogador no SGBD, que em seguida irá retornar as informações para
o Controle_Jogador. A Interface_Jogador será informada com os dados do Jogador
e, de acordo com o método Exibe Informações do Jogador(), irá mostrar na tela as
informações a serem excluídas.
A Interface_Jogador informa para o Controle_Jogador que a exclusão será
executada, assim o Controle_Jogador exclui do SGBD os dados referente ao
jogador logado. Após a exclusão dos dados no banco, o SGBD irá retornar para o
Controle_Jogador, onde por sua vez irá validar a exclusão pelo método Valida
Exclusão() e retornará para a página inicial.
Na figura 10, pode-se observar o Diagrama de Sequência “Excluir_Jogador” do
software Genius.
41
Figura 10 - GENIUS: Diagrama de Sequência - Excluir Jogador
42
3.5.4. Fazer Login
Fazer_Login representa como será feito o acesso de um jogador no jogo.
O diagrama possui um ator Jogador, uma Interface para o Jogador, um Controle
de Jogadores e um SGBD.
De acordo com a mensagem Informa usuário e senha(), o Jogador irá informar
seus dados para a Interface_Jogador. O Controle_Jogador irá receber os dados do
jogador pela Interface_Jogador com o método Recebe Dados(), e em seguida irá
verificar esses dados no SGBD, através do método Verifica_Dados(). Em seguida o
SGBD retorna a validação do login para o Controle_Jogador. Caso o login esteja
correto, o Controle_Jogador enviará para a Interface_Jogador a confirmação do
login, que para finalizar irá mostrar o menu ao Jogador.
Na figura 11, pode-se observar o Diagrama de Sequência “Fazer_Login” do
software Genius.
43
Figura 11 - GENIUS: Diagrama de Sequência - Login
44
O software Genius é composto de dois jogos: Memória Rápida e Encontre o Par.
Abaixo, estão o diagrama de sequência dessas atividades.
3.5.5. Jogar “Memória Rápida”
O diagrama de sequência Memória Rápida mostra como será o comportamento
de um dos jogos que compõem o software.
O diagrama possui um ator Jogador, uma Interface, um Controle, o Jogo em si, e
um SGBD.
Inicialmente o Jogador acessa o jogo com o método Acessa o Jogo().
A Interface constata ao Controle, através do método Inicia Jogo(), que o jogo
iniciou. Sendo assim, inicia-se um loop, onde a atividade vai ser executada durante o
período de tempo de 60 segundos.
O Controle faz o sorteio do número no Jogo, que é retornado para o Controle, e
exibido na Interfce.
Após a exibição, a Interface solicita ao Jogador uma resposta que corresponda
ao valor mostrado anteriormente, e o Jogador responde através da mensagem Digita
Resposta(). O Controle irá receber as respostas do jogador pela Interface, através
do método Recebe Resposta(). O Controle irá conferir o número no Jogo e verificar
na Interface.
Caso a resposta do Jogador estiver correta, será mostrada à ele uma
confirmação, através do método Exibe Resultado(), e sua pontuação será
incrementada. Caso a reposta estiver errada, a mensagem será mostrada, porém, a
pontuação não será contabilizada.
Após o término do Jogo, o Controle irá obter a pontuação final do Jogador,
armazená-la no Banco de Dados, através do método Armazena Pontuação(), e irá
montar o desempenho do Jogador, que por final, será mostrado através do método
Exibe Desempenho().
Na figura 12, pode-se observar o Diagrama de Sequência “Memória Rápida” do
software Genius.
45
Figura 12 - GENIUS: Diagrama de Sequência - Memória Rápida
46
3.5.6. Jogar “Encontre o Par”
O diagrama de sequência Encontre o Par mostra como será o comportamento de
um dos jogos que compõem o software.
O diagrama possui um ator Jogador, uma Interface, um Controle, o Jogo e um
SGBD.
O Jogador acessa o jogo com o método Acessa Jogo().
A Interface constata ao Controle, através do método Inicia Jogo(), que o jogo
iniciou. Sendo assim, inicia-se um loop, onde a atividade vai ser executada durante o
preíodo de tempo de 60 segundos.
A seguir, o Controle sorteia diversas imagens do SGBD para formar a matriz de
imagens que o jogador irá jogar .
O SGBD retorna o conjunto de imagens ao Controle, que as organiza em forma
de matriz. Após a organização, a Interface exibe as imagens ao jogador e solicita
que o jogador selecione a primeira figura. O Jogador responde através do método
Seleciona Imagem(). O Controle irá receber o índice da imagem que o jogador
selecionou pela Interface, através do método Recebe Indice().
Feito isso, o Controle fará a busca de uma outra imagem correspondente a
escolhida pelo jogador, que representa que ela está selecionada, através dos
métodos Busca Imagem(), Altera Imagem() e Exibe Nova Matriz();
O sistema irá solicitar novamente que o Jogador selecione mais uma imagem, a
qual seria correspondente a imagem anterior, para isso, é usado o método Solicita
2a Imagem(). Novamente, o Controle irá receber o índice, e verificar as duas
imagens no Jogo através do método Verifica Resposta().
Caso a resposta do Jogador estiver correta, será mostrada à ele uma
confirmação, através do método Exibe Resultado(), e sua pontuação será
incrementada. Caso a reposta estiver errada, a mensagem será mostrada, porém, a
pontuação não será contabilizada.
Após o término do Jogo, o Controle irá obter a pontuação final do Jogador,
armazená-la no Banco de Dados, através do método Armazena Pontuação(), e irá
montar o desempenho do Jogador, que por final, será mostrado através do método
Exibe Desempenho().
Na figura 13, pode-se observar o Diagrama de Sequência “Encontre o Par” do
software Genius.
47
Figura 13 - GENIUS: Diagrama de Sequência - Encontre o Par
48
3.6. Modelo Entidade – Relacionamento
De acordo com a seção 2.6.2.2, o diagrama do Modelo de Entidade
Relacionamento é a representação de um modelo conceitual de alto nível de
abstração que está o mais próximo possível da realidade do usuário.
O software Genius tem o intuito de desenvolver o raciocínio lógico através de
jogos como: encontrar o par de imagens iguais dentre diversas imagens e
memorização de sequencias numéricas. Através desta problemática, foi permitido
extrair as entidades que farão parte do diagrama do Modelo de Entidade
Relacionamento. Cujas entidades são: Jogo, Jogador e Ranking.
O Jogador se relaciona com Jogo, pois o jogador pode jogar um ou vários jogos.
O Jogador relaciona-se também com Ranking, pois o jogador pode visualizar o
Ranking. O Ranking é atualizado pelo final de cada Jogo.
Na figura 14, pode-se observar o Diagrama do Modelo Entidade Relacionamento
do software Genius.
49
Figura 14 - GENIUS: Modelo Entidade - Relacionamento
50
3.7. Modelo Relacional
Segundo a seção 2.6.2.3, o diagrama do Modelo Relacional é a descrição de um
modelo lógico que representa as informações no Banco de Dados como uma
coleção de tabelas.
O diagrama do Modelo Relacional origina-se a partir do diagrama do Modelo de
Entidade Relacionamento, onde as entidades tornam-se tabelas e as ligações de
cardinalidade n:n geram novas tabelas.
A tabela Ranking, através de seus relacionamentos com as tebelas Jogo e
Jogador, recebeu as chaves estrangeiras Código_Jogo e Código_Jogador.
Na figura 15, pode-se observar o Diagrama do Modelo Relacional do software
Genius.
Figura 15 - GENIUS: Modelo Relacional
51
3.8. Ferramentas Utilizadas
3.8.1. Astah
O Astah é uma ferramenta CASE de criação de diagramas UML, além de outros
diagramas, tais como diagrama de fluxo de dados e outras funcionalidades úteis à
fase de especificação e projeto de um sistema.
A
ferramenta
auxilia
na
criação
dos
diagramas
requisitados
para
o
desenvolvimento do sistema, sendo eles, Diagrama de Caso de Uso, Diagrama de
Sequência e Diagrama de Classe.
O Astah pode ser encontrado para download no site: <http://astah.net/download>
3.8.2. BrModelo
O BrModelo é uma ferramenta criada para facilitar a criação de modelos de um
banco de dados. Apresenta uma interface simples e extremamente funcional.
Com a ferramenta, é possível desenvolver Modelos Entidade-Relacionamento,
que auxiliam na modelagem do banco de dados.
A ferramenta utilizada em diversas áreas de banco de dados, está disponível
para download no site: <http://www.baixaki.com.br/download/brmodelo.html>
3.8.3. DBDesigner
O DBDesigner é uma ferramenta muito importante para programadores, analistas
e em especial, profissionais que lidam com banco de dados.
A sua interface simples e descomplicada, permite que se faça uma modelagem
muito mais detalhada e sem precisar de muito aprofundamento no manuseio da
ferramenta.
O
DBDesigner
está
disponível
para
http://www.fabforce.net/dbdesigner4/downloads.php>
download
no
site:
<
52
4. DEMONSTRAÇÃO DO SISTEMA
A tela de Login é a tela inicial do sistema, onde o usuário poderá entrar com a
sua conta, ou caso não possua, criar uma nova.
O software Genius tem o objetivo de ser interativo e divertido, para isso, conta
com uma interface colorida, botões grandes e um personagem, que estará com o
jogador durante todo o período em que o jogador esteja usando o software.
Na figura 16, observamos a tela de Login do jogo.
Figura 16 - GENIUS: Tela de Login
53
Caso o jogador nao seja cadastrado no Jogo, ele poderá criar sua conta clicando
no botão “Novo”, que o redirecionará para a tela Novo Jogador.
Na figura 17, podemos observar a tela Novo Jogador.
Figura 17 - GENIUS: Tela Novo Jogador
Caso o nome de usuário que o jogador esteja tentando cadastrar já exista, ou se
algum campo estiver em branco, o personagem irá avisar o jogador através do balão
de fala.
Feito isso, o jogador já poderá fazer o Login no jogo.
54
Ao fazer o Login no jogo, o jogador irá se deparar com a tela de Apresentação,
onde o personagem irá conversar com o jogador, apresentando o programa e dando
algumas dicas.
Na figura 18, podemos observar a tela Apresentação.
Figura 18 - GENIUS: Tela Apresentação
O jogador poderá escolher a opção Sair, onde será direcionado novamente para
a tela de Login, ou Pular, que será mostrado a ele o Menu de Jogos.
55
O software Genius conta com uma quantidade de 2 atividades para o jogador
praticar.
Na tela de Menu de Jogos, o jogador encontra o ícone dos Jogos, e poderá
escolher qual deseja jogar.
A figura 19 mostra a tela Menu de Jogos.
Figura 19 - GENIUS: Tela Menu de Jogos
Ao selecionar um jogo, o jogador será direcionado ao Menu do respectivo jogo.
Caso escolha Voltar, será direcionado à Tela de Apresentação.
56
Caso o jogador escolha pela opção Memória Rápida, no Menu do Jogos,
aparecerá a tela de Menu do jogo Memória Rápida.
A tela de Menu do Jogo contém opções para visualizar o Ranking, visualizar as
Regras, e iniciar o jogo.
Na figura 20, podemos observar a tela de Menu Memória Rápida.
Figura 20 - GENIUS: Tela Menu Memória Rápida
57
Ao selecionar a opção Regras, o Jogador será direcionado a tela Regras do jogo
Memória Rápida, onde encontrará informações sobre o que consiste o jogo, e
instruções de como jogar.
Na figura 21, observamos a tela Regras Memória Rápida.
Figura 21 - GENIUS: Tela Regras Memória Rápida
58
Após analisar as regras e as instruções do jogo, o jogador está pronto para jogar,
para isso, ele deve escolher a opção Jogar, no Menu do Jogo.
Ao entrar no Jogo, iniciará uma contagem regressiva de 3 segundos, para que o
jogador se prepare, mostrando que o jogo irá começar.
Na figura 22, podemos observar a contagem regressiva antes do início do Jogo.
Figura 22 - GENIUS: Tela Contagem Regressiva do Jogo
59
Após o termino da contagem regressiva, o programa irá sortear o número e
mostrar ao jogador durante um curto período de tempo, para que ele memorize.
Na figura 23, podemos observar a tela de Jogo Memória Rápida, onde o número
é mostrado ao jogador. Na tela também aparece a Pontuação do Jogador, que inicia
em 0, e o tempo restante para o fim do jogo.
Figura 23 - GENIUS: Tela Memorize Número
60
O numero mostrado na tela irá desaparecer após alguns segundos e dará o lugar
aos dígitos, onde o jogador deverá entrar com o número que memorizou.
Na figura 24, podemos observar a Tela Resposta Jogador, onde ele deverá digita
o numero.
Figura 24 - GENIUS: Tela Resposta Jogador
61
Após o jogador entrar com o número, o sistema fará a verificação para saber se a
resposta do jogador estava certa ou errada.
A figura 25 mostra a confirmação do sistema, caso a resposta do jogador estiver
correta. Nesse caso, a pontuação foi contabilizada.
Figura 25 - GENIUS: Tela Resposta Correta
62
A figura 26 representa a mensagem do sistema caso a resposta do jogador
estiver errada. Nesse caso, a pontuação não é contabilizada.
Figura 26 - GENIUS: Tela Resposta Errada
63
A figura 27 representa o Jogo Encontre o Par, onde as figuras estão dispostas na
tela, e o jogador deverá escolher, entre elas, as que se repetem
Figure 27 - GENIUS: Tela Jogo Encontre o Par
64
A figura 28 representa a tela de Resultados, que é mostrada após finalizar as
atividades. Contém informações como, quantidade de respostas certas e erradas, e
a pontuação final do Jogador.
Figure 28 - GENIUS: Tela Resultados
65
A figura 29 mostra a tela do Ranking do jogo, onde são informados os 3 melhores
jogadores colocados na atividade escolhida.
Figure 29 - GENIUS: Tela Ranking
66
5. CONSIDERAÇÕES FINAIS
A necessidade de estimular o raciocínio lógico infantil está recebendo ênfase,
uma vez que é notável o desinteresse das crianças em praticar uma atividade com
tal finalidade.
Por meio de um questionário, verificou-se um exemplo do que seria o motivo
para esse desinteresse e chegou a conclusão de que algumas crianças acham os
jogos de raciocínio logico chatos e com pouca interação com o jogador.
Para isso, surgiu o software Genius, que foi criado para satisfazer algumas
necessidades encontradas quando se fala de adaptação de um jogo no mercado.
Com uma interface colorida, divertida e com personagens que interagem com o
jogador, o software Genius foi exposto à algumas crianças e mostrou um alto
desempenho.
Planejado seguindo a UML e desenvolvido na plataforma Java, o Genius atendeu
a todos os objetivos traçados no início do projeto. Tanto o objetivo geral, de criar um
software que atendesse as necessidades dos usuários, quanto as funcionalidades
dos objetivos específicos.
O trabalho contribuiu para o aprofundamento dos conhecimentos técnicos do
autor, que tiveram que ser explorados. E espera-se que o trabalho sirva de incentivo
à futuras pesquisas ou extensões.
67
6. REFERÊNCIAS
ABAR,
Celina.
Noções
de
Lógica
Matemática.
<http://pucsp.br/~logica/>. Acesso em 26 de maio de 2012.
Disponível
em:
BALBÉ, Marília. Levantamento de Requisitos: Voce sabe o que é?. Disponível
em:
<http://www.profissionaisti.com.br/2011/06/levantamento-de-requisitos-vocesabe-o-que-e/>. Acesso em 28 de maio de 2012.
BAUER, Friedrich Ludwig. Engenharia de Software. NATO Scientific Affairs
Division, 1969, p.231.
BERNARDI, Giliane. O Desenvolvimento do Raciocínio Lógico através de
objetos de Aprendizagem. Disponível em: <http://www.cinted.ufrgs.br/ciclo10/
artigos/4eGiliane.pdf>. Aceso em 26 de maio de 2012.
CAMARINI, Evandro. A importância do Modelagem de Objetos no
Desenvolvimento
de
Sistemas.
Disponível
em:
<http://www.linhadecodigo.com.br/artigo/1293/a-importancia-do-modelagem-deobjetos-no-desenvolvimento-de-sistemas.aspx>. Acesso em 11 de junho de 2012.
COPI, Irving. Introdução à Lógica. 2ª ed. São Paulo. Editora Mestre Jou. 1978.
IBOPE. Acesso à internet em domicílios continua a crescer no Brasil.
Disponível em: <http://www.ibope.com.br/pt-br/noticias/Paginas/Acesso-a-internetem-domicilios-continua-a-crescer-no-Brasil.aspx>. Acesso em 2 de novembro de
2012.
IBOPE. Pesquisa mostra como se comportam os internautas brasileiros.
Disponível em: <http://www.ibope.com.br/pt-br/noticias/Paginas/Pesquisa-mostracomo-se-comportam-os-internautas-brasileiros.aspx >. Acesso em 2 de novembro
de 2012.
MORAES, Maria Cândida. Informática Educativa no Brasil: Um pouco de
História. Em Aberto, Brasília, ano 12, n.57, jan./mar. 1993. Disponível em: <
http://www.emaberto.inep.gov.br/index.php/emaberto/article/viewFile/843/755>.
Acesso em 4 de junho de 2012.
PEREIRA,
Flávio.
Treinar
o
Cérebro.
Disponível
em:
http://www.blogflaviopereira.com.br/leitura-dinamica-e-memorizacao/treinar-ocerebro/>. Acesso em 26 de maio de 2012.
<
68
PIAGET, Jean. Gênese das Estruturas Lógicas Elementares. 3ª Ed. Rio de
Janeiro. Editora Zahar. 1983.
RAUBER, Jaime José. Que tal um pouco de lógica?!. Passo Fundo: Ed. Clio
Livros, 2003.
RIBEIRO, Leandro. O que é UML e Diagramas de Caso de Uso: Introdução
Prática à UML. Disponível em: < http://www.devmedia.com.br/o-que-e-uml-ediagramas-de-caso-de-uso-introducao-pratica-a-uml/23408>. Acesso em 4 de junho
de 2012.
RIZZO, Gilda. Fundamentos e Metodologia da Alfabetização – Método Natural.
6ª Ed. Rio de Janeiro. Editora Francisco Alves. 1990.
SILVA, Alessandro Antunes. A Fazenda – Software Educativo para a
Educação ambiental. 2007. Disponível em: < http://www.cinted.ufrgs.br/
ciclo10/artigos/1aAlessandro.pdf>. Acesso em 11 de junho de 2012.
SUPER INTERESSANTE. Videogames violentos alteram a atividade cerebral e
deixam
as
pessoas
mais
insensíveis.
Disponível
em:
<http://super.abril.com.br/blogs/como-pessoas-funcionam/videogames-violentosalteram-a-atividade-cerebral-e-deixam-as-pessoas-mais-insensiveis/>. Acesso em
11 de junho de 2012.
WEIS, Alba Maria. A informática e os problemas escolares de aprendizagem.
Rio de Janeiro. Editora DP&A. 2001.
69
APENDICE A – Questionário de Funcionalidades
Nome: Y.L
Estudante, 9 anos.
•
Voce acha que o jogador necessita ter uma conta e fazer o login no jogo?
( X ) Sim
(
•
) Não
Quais os tipos de atividade você pretende encontrar no jogo?
( X ) Atividades rápidas
(
•
) Atividades demoradas (quebra cabeças)
Você gostaria de ter um personagem que te acompanhasse durante o jogo?
( X ) Sim
(
•
) Não
Você gostaria de ver o ranking de classificação dos jogos?
( X ) Sim
(
•
) Não
Quais caracteristicas voce gostaria de ver no jogo?
( X ) Cores
( X ) Botões Grandes
(
) Músicas
(
) Animações
Download

instituto federal do paraná eduardo sant`ana cury genius – o jogo de