SIMULADOR DE FUTEBOL EM AMBIENTE WEB Roberto Rocha Rodrigues Orientador: José Roque Voltolini da Silva Roteiro da apresentação Introdução Fundamentação Teórica Desenvolvimento Conclusão Introdução Futebol • Jogadores e características • Simuladores Motivação • Jogos • Desafio, tecnologias Objetivos Simulador de futebol web • Converter o simulador Delphi para Java • Permitir a configuração dos times por usuário com utilização de login e senha • Disponibilizar o replay das partidas Fundamentação Teórica Simulação • Testar diferentes alternativas para o sistema • Simular longos períodos em tempo reduzido • Economia Fundamentação Teórica Simulador de Schulter • Desenvolvido em Delphi • Não implementa algumas regras do jogo de futebol • Desktop Fundamentação Teórica Conceitos utilizados • Tática • Definir Jogadores • Definir posições • Estratégia • Conjunto de táticas • Utilizar uma tática de acordo com o cenário do jogo Fundamentação Teórica Java • Classes e métodos • Multithreading JSP • HTML + Java • Recompilação automática Fundamentação Teórica OpenGL • Biblioteca de rotinas gráficas e de modelagem 2D e 3D • Portável • Veloz JOGL • Biblioteca de ligação Java para a OpenGL Fundamentação Teórica Applet • Pequeno programa Java • Inserido nas páginas HTML JNLPAppletLauncher • Iniciador de applets que utilizam bibliotecas contendo código nativo como a JOGL Fundamentação Teórica Padrões de projeto • MVC • Front Controller • Composite View • DAO Fundamentação Teórica Trabalhos correlatos • RoboCup • ManagerZone Football • Hattrick • GameGol Desenvolvimento Requisitos funcionais • Manter requisitos funcionais de Schulter • Permitir o cadastro de usuários • Armazenar o resultado e permitir a reprodução • Dois jogadores através da internet Desenvolvimento Requisitos não funcionais • Simulador na linguagem Java • Site com páginas JSP • Banco de dados MySQL • Utilizar JOGL • Compatível com Internet Explorer e Firefox no Windows Desenvolvimento Especificação • Processo de análise e projeto orientados a objetos • JUDE para diagramas de casos de uso, classes e sequência da UML • CaseStudio 2 para o MER Desenvolvimento Casos de Uso Desenvolvimento Diagrama de classes - simulador Fonte: Schulter (2007) Desenvolvimento Diagrama de classes - projeto Desenvolvimento Diagrama de estados Desenvolvimento Diagrama de sequência Desenvolvimento MER Desenvolvimento Interface com usuário Desenvolvimento Técnicas e ferramentas • Eclipse 3.3 • Tomcat • MySQL • XAMPP • phpMyAdmin • PhotoShop Desenvolvimento Técnicas e ferramentas • ImageReady • EditPlus 2 • Delphi 7 • CodeGear RAD Studio • InterBase • FileZilla Desenvolvimento Técnicas e ferramentas • PuTTy • Firefox 2 e 3 • Internet Explorer 6, 7 e 8 beta • Google Chrome • Opera 9.62 • Windows XP e Vista Desenvolvimento Técnicas e ferramentas • AJAX com JQuery Desenvolvimento Técnicas e ferramentas • Conversão Delphi para Java Desenvolvimento Técnicas e ferramentas • Streams Desenvolvimento Operacionalidade • Capa do site Desenvolvimento Operacionalidade • Cadastro Desenvolvimento Operacionalidade • Bem-vindo Desenvolvimento Operacionalidade • Equipes Desenvolvimento Operacionalidade • Configuração da equipe Desenvolvimento Operacionalidade • Jogadores Desenvolvimento Operacionalidade • Jogador Desenvolvimento Operacionalidade • Tática Desenvolvimento Operacionalidade • Estratégia Desenvolvimento Operacionalidade • Criar Jogo Desenvolvimento Operacionalidade • Jogo criado Desenvolvimento Operacionalidade • Visualização da partida Desenvolvimento Operacionalidade • Resultados Desenvolvimento Operacionalidade • Replay Desenvolvimento Resultados e discussão • Comparação com outros simuladores Desenvolvimento Resultados e discussão • Comparação com o trabalho anterior Conclusão Objetivos alcançados Requisitos levantados alcançados, com exceção do modo off-line Conhecimento de padrões de projeto • Preferível utilizar um framework para atender os padrões Serialização viável Ferramentas e tecnologias atenderam o esperado Conclusão Limitações • Não considera o eixo z • Não possui faltas, impedimento e escanteio • A bola não perde força • Necessita de conexão com Internet para jogar • Não possui som • Não possui sistema de chat • Não possui campeonatos Conclusão Extensões • Implementar jogadas aéreas (eixo z) • Sofisticar as ações dos jogadores com Inteligência Artificial • Incluir novos atributos • Considerar fatores físicos • Visualização em 3D • Representar o juiz • Adicionar som • Implementar cartões, prorrogação e pênaltis Conclusão Extensões • Possibilitar o envio de fotos dos jogadores • Possibilitar o envio do símbolo do time • Permitir a definição do uniforme • Sistema de gerenciamento das finanças • Integrar com um fórum e criar um chat • Sistema para gerenciar campeonatos • Opções de treinos, possibilitando aumentar os atributos dos jogadores Futebol Simulado Muito obrigado! • http://www.futebolsimulado.com.br