510 likes | 703 Views
Jogo de Damas. Alex Saito Leonardo Bezerra Bruno Rocha Maria Gabriela Felipe Cabral Thales Barros. Roteiro. Introdução Requisitos EAP Descrição das Atividades Duração das Atividades Planning Poker PERT Cocomo. 1. Introdução. Foco Características. 2.
E N D
Jogo de Damas Alex Saito Leonardo Bezerra Bruno Rocha Maria Gabriela Felipe Cabral Thales Barros
Roteiro • Introdução • Requisitos • EAP • Descrição das Atividades • Duração das Atividades • Planning Poker • PERT • Cocomo 1
Introdução • Foco • Características 2
Equipe • Gerente • Maria Gabriela • Interface • Bruno Rocha e Alex Saito • Engine: • Bruno Rocha, Alex Saito e Thales Barros • Inteligencia Artificial • Leonardo Bezerra e Felipe Cabral • Testes Integrados • Thales Barros 3
Tecnologia • Plataforma utilizada: • Java com Swing • Versionamento • Subversion com GoogleCode • Planejamento • Microsoft Project 2007 4
Planejamento • Iterações: • 2 semanas • Reuniões • Terças pela manhã; • Quartas e Quintas à noite por conferência; 5
Requisitos Funcionais • RF1: O jogador poderá selecionar duas opções iniciais: JOGO e AJUDA. • RF2: O jogador deverá informar o seu nome quando selecionar a opção NOVO JOGO. • RF3: O jogador pode sair do jogo a qualquer momento do jogo, porém será considerado derrota. • RF4: O jogador pode consultar a regra a qualquer momento do jogo. • RF5: Uma mensagem de erro é mostrada na caixa de texto quando uma jogada ilegal é realizada. • RF6: No final do jogo, notificar o vencedor e atualizar a estatística. 6
Requisitos Não-Funcionais • DS-1 : O jogo deve funcionar sem interrupção durante as partidas. • EF-1: Depois do final do jogo, o resultado do vencedor não deve demorar mais de 5 segundos. • EF-2: Quando algum jogador desejar ver a estatística, a visualização deve ser de maneira eficiente. • IN-1: O sistema só poderá ser utilizado por usuários identificados com nome. • US-1: O jogador que ainda não jogou, deve ser capaz de jogar sem dificuldade. (Interface simples com regras claras). 7
Requisitos Não-Funcionais(2) • US-3: O sistema deve possuir uma interface simples e de fácil manuseio. • PR-1: O sistema deve poder ser executado em qualquer sistema operacional, contanto que possua máquina virtual Java. 8
Casos de Uso • UC1 – Abrindo um novo jogo Cenário típico 1. O usuário inicializa o produto. 2. O usuário escolhe a opção Jogo. 3. O usuário escolhe a opção Novo Jogo. 4. É solicitado ao usuário que digite seu nome. 5. O jogo é iniciado. Cenários Alternativos 1.a: O usuário desiste de jogar. 1. Antes de informar o nome, o usuário cancela a operação. 2. O produto volta para o passo 1. 9
Casos de Uso(2) • UC2 – Saindo do jogo Cenário típico 1. O usuário escolhe a opção Jogo. 2. O usuário escolhe a opção de Sair 3. O produto é finalizado. 10
Casos de Uso(3) • UC3 – Visualização das estatísticas Cenário típico 1. O usuário escolhe a opção Jogo. 2. O usuário escolhe a opção Estatística. 3. O usuário escolhe o nome do jogador. 4. O produto mostra as estatísticas detalhada do jogador e vitórias dos demais jogadores. 11
Casos de Uso(4) • UC4 – Consulta as regras Cenário típico 1. O usuário escolhe a opção Ajuda. 2. O usuário escolhe a opção Regras. 3. O produto exibe as regras do jogo. 12
Casos de Uso(5) • UC5 – Consulta ao manual Cenário típico 1. O usuário escolhe a opção Ajuda. 2. O usuário escolhe a opção Manual. 3. O produto exibe o manual do jogo. 13
Casos de Uso(6) • UC6 – Consulta as informações do Produto Cenário típico 1. O usuário escolhe a opção Ajuda. 2. O usuário escolhe a opção Sobre 3. O sistema mostra as informações do Jogo. 14
EAP (Estrutura Analítica do Projeto) • Opção : Produtos parciais • Abordagem: Top down 15
Descrição das Atividades(1) • 1.Planejamento do projeto 1.1.Especificar o escopo 1.1.1. Elaborar o escopo do produto - Detalhamento das características do produto - Descrição dos requisitos e funcionalidades 16
Descrição das Atividades(2) • 1.Planejamento do projeto 1.1.Especificar o escopo 1.1.1. Elaborar o escopo do projeto - Descrição do trabalho que deve ser feito na construção do produto 17
Descrição das Atividades(3) • 1.Planejamento do projeto 1.2.Detalhar o escopo 1.2.1. Elaborar o EAP - Transformar o problema em problema mais simples - Planejaremgranularidadefina - Inferir o planejamentocompleto a partir das partes 18
Descrição das Atividades(4) • 1.Planejamento do projeto 1.3.Definição das atividades - Descrição completa das atividades 19
Descrição das Atividades(5) • 1.Planejamento do projeto 1.4.Sequência das atividades - Estruturar a relação de dependência 20
Descrição das Atividades(6) • 1.Planejamento do projeto 1.4.Duração das atividades 1.4.1.Estimar a duração das atividades - Elaborar Planning Poker - Elaborar estimativa via PERT - Elaborar APF - Elaborar COCOMO 21
Descrição das Atividades(7) • 1.Planejamento do projeto 1.5.Custos - Estimar os custos das atividades 22
Descrição das Atividades(8) • 1.Planejamento do projeto 1.6.Cronograma - Definir o cronograma 23
Descrição das Atividades(9) • 2. Interface 2.1 Layout jogo - Desenhar tabuleiro - Desenhar peça do peão - Desenhar peça da dama - Desenhar caixa de dialogo 24
Descrição das Atividades(10) • 2. Interface 2.2 Layout Menu - Desenhar Menu - Desenhar Novo jogo (inserir nome) - Desenhar Estatística - Visualização da Regra do jogo - Visualização do Manual 25
Descrição das Atividades(11) • 3. Engine 3.1 Movimento - Posicionar as peças para início de jogo - Movimento do peão - Movimento da dama - Restrições de movimento 26
Descrição das Atividades(12) • 3. Engine 3.2 Ação - Capturar peça - Capturar mais de uma peça - Virar dama 3.3 Resultado - Definir vencedor - Definir empate 27
Descrição das Atividades(13) • 3. Engine 3.4 Protocolo - Definir Protocolo - Implementar protocolo Engine-IA 28
Descrição das Atividades(14) • 4. IA 4.1 Algoritmo Min-Max - Estudar Min-Max - Definir Profundidade - Implementar 29
Descrição das Atividades(15) • 4. IA 4.2 Protocolo - Definir Protocolo - Implementar protocolo IA-Engine 30
Dependência das Atividades(16) • 1. Planejamento das atividades • 1.1 Detalhamento das características 31
Dependência das Atividades(17) • 1. Planejamento das atividades • 1.2. EAP 32
Dependência das Atividades(18) • 1. Planejamento das atividades • 1.3. Estimar a duração das atividades 33
Dependência das Atividades(19) • 2. Interface 2.1 Layout jogo 34
Dependência das Atividades(20) • 2. Interface 2.2 Layout Menu 35
Dependência das Atividades(21) • 3. Engine 3.1 Movimento 36
Dependência das Atividades(22) • 3. Engine 3.2 Ação 37
Dependência das Atividades(23) • 3. Engine 3.3 Resultado 38
Dependência das Atividades(24) • 3. Engine 3.4 Protocolo 39
Dependência das Atividades(25) • 4. IA 4.1 Algoritmo Min-Max 40
Dependência das Atividades(26) • 4. IA • 4.2 Protocolo 41
Duração das Atividades • Planning Poker • PERT • Cocomo • APF 42
Cocomo • APF • Contagem dos elementos do software • Número de Entradas externas (EE): 1 (Inserir o nome). • Número de Saídas externas (SE): 1 (Diz quem é o vencedor). • Número de Consultas externas (CE): 2 (Movimento do peão e visualização de estatística). • Número de Arquivos Lógicos internos (ALI): 3. • Número de Arquivos de Interface Externa (AIE): 0. 43
Duração • Planning Poker = 48 homem/dia • Especialista* = 66 homem/dia • Cocomo = 118 homem/dia • Através do PERT chegamos a 71 homem/dia 44 *Prof. Esteban do departamento de Ciência da Computação
Custos • Considerando R$35,00 a hora chegamos a um custo de : • R$19.880,00 45
Estatísticas 46
FIM 47