Ministério Da Defesa Exército Brasileiro Departamento De Ciência E Tecnologia Instituto Militar De Engenharia Curso De Mestrado Em Sistemas E Computação
Total Page:16
File Type:pdf, Size:1020Kb
MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO DEPARTAMENTO DE CIÊNCIA E TECNOLOGIA INSTITUTO MILITAR DE ENGENHARIA CURSO DE MESTRADO EM SISTEMAS E COMPUTAÇÃO ROBERTSON SCHITCOSKI UMA ARQUITETURA MODULAR PARA SISTEMAS DE TREINAMENTO MILITAR EM OPERAÇÕES TÁTICAS Rio de Janeiro 2009 INSTITUTO MILITAR DE ENGENHARIA ROBERTSON SCHITCOSKI UMA ARQUITETURA MODULAR PARA SISTEMAS DE TREINAMENTO MILITAR EM OPERAÇÕES TÁTICAS Dissertação de Mestrado apresentada ao Curso de Mestrado em Sistemas e Computação do Instituto Militar de Engenharia, como requisito parcial para obtenção do título de Mestre em Sistemas e Computação. Orientador: Prof. Jauvane C. de Oliveira – Ph.D. Co-orientador: Prof. Paulo F. F. Rosa – Ph.D. Rio de Janeiro 2009 1 c2009 INSTITUTO MILITAR DE ENGENHARIA Praça General Tibúrcio, 80 – Praia Vermelha Rio de Janeiro - RJ CEP: 22290-270 Este exemplar é de propriedade do Instituto Militar de Engenharia, que poderá incluí-lo em base de dados, armazenar em computador, microfilmar ou adotar qualquer forma de arquivamento. É permitida a menção, reprodução parcial ou integral e a transmissão entre bibliotecas deste trabalho, sem modificação de seu texto, em qualquer meio que esteja ou venha a ser fixado, para pesquisa acadêmica, comentários e citações, desde que sem finalidade comercial e que seja feita a referência bibliográfica completa. Os conceitos expressos neste trabalho são de responsabilidade do autor e dos orientadores. S337u Schitcoski, R. Uma Arquitetura Modular para Sistemas de Treinamento Militar em Operações Táticas / Robertson Schitcoski – Rio de Janeiro: Instituto Militar de Engenharia, 2009. 104 p.:il. Dissertação (mestrado) – Instituto Militar de Engenharia – Rio de Janeiro, 2009. 1. Operações táticas – Treinamento militar. 2. Formação militar. CDD 355.42 2 À minha esposa Cristiane, que me apoiou e motivou nos momentos de maior dificuldade, e ao meu filho Rafael, que veio trazer uma alegria extra na conclusão deste trabalho. 4 AGRADECIMENTOS Agradeço a todas as pessoas que me incentivaram e me apoiaram, permitindo a consolidação deste trabalho. Em especial ao meu Professor Orientador Jauvane Cavalcante de Oliveira, que me deu a motivação inicial e enriqueceu meu trabalho com críticas e sugestões essenciais. 5 SUMÁRIO LISTA DE ILUSTRAÇÕES................................................................................. 9 1 INTRODUÇÃO .................................................................................... 13 1.1 Um Breve Histórico dos Jogos de Guerra ........................................... 13 1.2 A Evolução dos Jogos de Guerra ........................................................ 14 1.3 O Uso Moderno dos Jogos de Guerra ................................................. 20 1.4 Treinamento Não-combativo ............................................................... 29 1.5 O Futuro dos Jogos de Guerra ............................................................ 31 1.6 Motivação ............................................................................................ 32 1.7 A Proposta deste Trabalho .................................................................. 36 2 A ENGENHARIA DE SOFTWARE ..................................................... 37 2.1 Princípios Básicos da Engenharia de Software ................................... 37 2.1.1 Modularidade ....................................................................................... 38 2.1.2 Reusabilidade em Software ................................................................. 40 2.2 Reuso de Projeto – Padrões de Projeto .............................................. 42 2.3 Conclusão do Capítulo ........................................................................ 44 3 ARQUITETURA DE SOFTWARE ....................................................... 46 3.1 Definição ............................................................................................. 46 3.1.1 Componentes ...................................................................................... 48 3.1.2 Conectores .......................................................................................... 48 3.1.3 Dados .................................................................................................. 49 3.2 Configurações ..................................................................................... 49 3.3 Propriedades ....................................................................................... 49 3.4 Estilos Arquiteturais ............................................................................. 50 6 3.4.1 Arquitetura em Camadas ..................................................................... 51 3.4.2 Arquitetura Centrada em Dados .......................................................... 51 3.4.3 Componentes Independentes ............................................................. 53 3.4.4 Fluxo de Dados ................................................................................... 53 3.4.5 Sistema de Sistemas ........................................................................... 54 3.5 Arquiteturas de Jogos .......................................................................... 55 3.6 Conclusão do Capítulo ........................................................................ 58 4 O PROJETO DA ARQUITETURA ASTROS ...................................... 59 4.1 Atributos da Arquitetura ....................................................................... 59 4.1.1 Reusabilidade de Pacotes de Software já Existentes.......................... 60 4.1.2 Reusabilidade dos Próprios Componentes da Arquitetura .................. 61 4.1.3 Flexibilidade Estrutural ........................................................................ 61 4.1.4 Expansibilidade e Manutenibilidade .................................................... 62 4.2 Decomposição Modular das Funcionalidades ..................................... 62 4.3 Escolha do Estilo Arquitetural .............................................................. 64 4.4 Transmissão dos Dados ...................................................................... 66 4.5 Sincronização dos Dados .................................................................... 67 4.6 Organização da Arquitetura ................................................................. 69 4.6.1 Uma Visão Geral da Arquitetura .......................................................... 69 4.6.2 Sistema de Comunicação .................................................................... 71 4.6.3 Sincronização dos Dados .................................................................... 72 4.6.4 Sincronização Distribuída .................................................................... 72 4.6.5 Objetos Genéricos ............................................................................... 74 4.7 Conclusão do Capítulo ........................................................................ 76 5 UM PROTÓTIPO DE USO DA ARQUITETURA ASTROS ................. 77 5.1 Linguagem de Programação e Plataforma .......................................... 77 7 5.2 Bibliotecas Externas ............................................................................ 78 5.2.1 Bibliotecas para o Módulo de Entrada ................................................. 79 5.2.2 Bibliotecas para o Módulo de Interface 2D .......................................... 80 5.2.3 Bibliotecas para o Módulo Gráfico 3D ................................................. 82 5.2.4 Bibliotecas para o Módulo de Rede ..................................................... 83 5.2.5 Bibliotecas para o Módulo de Áudio .................................................... 85 5.2.6 Bibliotecas para o Módulo de Física .................................................... 86 5.2.7 Bibliotecas para o Módulo de Inteligência Artificial .............................. 87 5.3 Estrutura do Protótipo .......................................................................... 88 5.3.1 Classes Núcleo ................................................................................... 90 5.3.2 Classes de Controle ............................................................................ 90 5.3.3 Classes Interface ................................................................................. 91 5.3.4 Classes Modulares e de Objetos ......................................................... 91 5.4 Conclusão do Capítulo ........................................................................ 92 6 CONCLUSÕES ................................................................................... 93 6.1 Comentários Gerais ............................................................................. 93 6.2 Discussão ............................................................................................ 93 6.3 Trabalhos Futuros ............................................................................... 95 7 REFERÊNCIAS BIBLIOGRÁFICAS................................................... 96 8 APÊNDICE ........................................................................................ 102 8.1 APÊNDICE I: ILUSTRAÇÕES DO PROTÓTIPO............................... 103 8 LISTA DE ILUSTRAÇÕES FIG.1.1 Peças e tabuleiro de Xadrez ............................................................. 13 FIG.1.2 Tabuleiro do jogo Go ......................................................................... 14 FIG.1.3 Tela do jogo Microsoft Flight Simulator ............................................. 18 FIG.1.4 Logo do jogo America´s Army ..........................................................