Mudanças entre as edições de "Grupo2-PJI2-2019-1"
Linha 267: | Linha 267: | ||
{{collapse top | 01/04/2019 - }} | {{collapse top | 01/04/2019 - }} | ||
+ | {{collapse top |caso de uso SA}} | ||
+ | '''Caso de uso:''' Autenticar <br\> | ||
+ | '''Ator primário:''' SS <br\> | ||
+ | '''Identificador:''' UCA01<br\> | ||
+ | '''Sumário:''' SS envia solicitação de autenticação para SA.<br\> | ||
+ | '''Pré condições:''' O Robô deve estar autenticado no SS, o Robô já deve estar cadastrado, partida deve ter sido criada.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *SS se conecta no SA.<br\> | ||
+ | *SS envia informações do SR para o SA.<br\> | ||
+ | *SA verifica se o SR já foi cadastrado no banco de Dados.<br\> | ||
+ | *SA informa ao Juiz que o SR deseja se autenticar.<br\> | ||
+ | *Juiz confirma autentificação.<br\> | ||
+ | *SA informa para SS que o SR esta autenticado e envia sua cor, número de caças e número de jogadores.<br\> | ||
+ | Exceção: Caso o SR não tenha sido cadastrado um cadastro deverá que ser feito.<br\> | ||
+ | Exceção: O juiz não autoriza a autentificação.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Cadastrar <br\> | ||
+ | '''Ator primário:''' <br\> | ||
+ | '''Identificador:''' UCA02<br\> | ||
+ | '''Sumário:''' SS envia solicitação de autenticação para SA.<br\> | ||
+ | '''Pré condições:''' O Robô deve estar autenticado no SS, o Robô não deve estar cadastrado e o Juiz deve estar próximo.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *SS se conecta no SA.<br\> | ||
+ | *SS envia informações do SR para o SA.<br\> | ||
+ | *SA verifica se o SR já foi cadastrado no banco de dados.<br\> | ||
+ | *Banco de dados não encontra as informações do SR.<br\> | ||
+ | *SA informa ao juiz que um Robô quer se cadastrar.<br\> | ||
+ | *Juiz libera o cadastro do SR.<br\> | ||
+ | *SA envia as informações do SR pro Banco de dados.<br\> | ||
+ | *Banco de dados informa que o o Robô foi registrado e envia seu ID.<br\> | ||
+ | *SA informa que o SR esta autenticado e envia sua cor.<br\> | ||
+ | Exceção: Juiz não permite o cadastro do SR.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Deletar Robô <br\> | ||
+ | '''Ator primário:''' Juiz <br\> | ||
+ | '''Identificador:''' UCA03<br\> | ||
+ | '''Sumário:''' Juiz deleta Robô cadastrado.<br\> | ||
+ | '''Pré condições:''' O Robô deve estar cadastrado.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *Juiz clica na opção "gerenciar Robôs".<br\> | ||
+ | *SA solicita ao Banco de dados os Robôs cadastrados.<br\> | ||
+ | *Banco de dados envia uma lista de robôs ao SS.<br\> | ||
+ | *SA Exibe a lista de Robôs.<br\> | ||
+ | *Juiz informa o ID do robô a ser deletado.<br\> | ||
+ | *SA solicita ao Banco de dados que remova o Robô com ID informado.<br\> | ||
+ | *Banco de dados confirma que o robô foi deletado.<br\> | ||
+ | *SA Exibe que o Robô foi deletado.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Selecionar modo de operação <br\> | ||
+ | '''Ator primário:''' Juiz <br\> | ||
+ | '''Identificador:''' UCA04<br\> | ||
+ | '''Sumário:''' Juiz Seleciona o modo de operação da partida.<br\> | ||
+ | '''Pré condições:''' O Robô deve estar autenticado.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *Juiz clica na opção "Selecionar modo".<br\> | ||
+ | *SA informa os dois modos de operação.<br\> | ||
+ | *Juiz escolhe o modo de operação desejado.<br\> | ||
+ | *SA informa ao SS o modos de operação da partida.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Pausar <br\> | ||
+ | '''Ator primário:''' Juiz <br\> | ||
+ | '''Identificador:''' UCA05<br\> | ||
+ | '''Sumário:''' Juiz pausa a partida.<br\> | ||
+ | '''Pré condições:''' Partida deve estar em andamento.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *Juiz clica na opção "Pausar".<br\> | ||
+ | *SA informa ao SS que o jogo foi pausado.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Continuar <br\> | ||
+ | '''Ator primário:''' Juiz <br\> | ||
+ | '''Identificador:''' UCA06<br\> | ||
+ | '''Sumário:''' Juiz continua a partida.<br\> | ||
+ | '''Pré condições:''' Partida deve estar pausada.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *Juiz clica na opção "Continuar".<br\> | ||
+ | *SA informa ao SS que o jogo pode prosseguir.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Validar caça<br\> | ||
+ | '''Ator primário:''' SS <br\> | ||
+ | '''Identificador:''' UCA07<br\> | ||
+ | '''Sumário:''' SS informa que caça foi encontrada.<br\> | ||
+ | '''Pré condições:''' Partida deve ter iniciado e o Robô deve ter encontrado a caça.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *SS informa ao SA que encontrou uma caça.<br\> | ||
+ | *Partida é pausada automaticamente.<br\> | ||
+ | *SA informa ao Juiz que o SS encontrou uma caça.<br\> | ||
+ | *Juiz valida a caça.<br\> | ||
+ | *SA incrementa o contador de Robô que localizou a caça.<br\> | ||
+ | *SA decrementa o contador de caça.<br\> | ||
+ | *SA informa a todos os SS que um dos Robôs encontrou a caça.<br\> | ||
+ | *O jogo continua.<br\> | ||
+ | Exceção: Juiz não valida a caça.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Declarar Vencedor<br\> | ||
+ | '''Ator primário:''' SS <br\> | ||
+ | '''Identificador:''' UCA08<br\> | ||
+ | '''Sumário:''' O sistema declara o fim da partida após a ultima caça ser localizada.<br\> | ||
+ | '''Pré condições:''' Partida deve ter iniciado e o Robô deve ter encontrado a ultima caça.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *SS informa ao SA que encontrou uma caça.<br\> | ||
+ | *Partida é pausada automaticamente.<br\> | ||
+ | *SA informa ao Juiz que o SS encontrou uma caça.<br\> | ||
+ | *Juiz valida a caça.<br\> | ||
+ | *SA incrementa o contador de Robô que localizou a caça.<br\> | ||
+ | *SA decrementa o contador de caça.<br\> | ||
+ | *SA identifica o Robô com mais caças.<br\> | ||
+ | *SA informa a todos os SS que um dos Robôs encontrou a ultima caça.<br\> | ||
+ | *SA informa a todos os SS qual Robô é o vencedor. | ||
+ | *O jogo acaba.<br\> | ||
+ | *SA informa os dados da partida para o Banco de Dados | ||
+ | *Banco de Dados confirma o armazenamento. | ||
+ | |||
+ | '''Caso de uso:''' Criar partida<br\> | ||
+ | '''Ator primário:''' Juiz <br\> | ||
+ | '''Identificador:''' UCA09<br\> | ||
+ | '''Sumário:''' Juiz cria partida.<br\> | ||
+ | '''Pré condições:'''>?.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *Juiz seleciona "criar partida".<br\> | ||
+ | *SA questiona quantos jogadores realizarão a partida.<br\> | ||
+ | *Juiz informa o número de jogadores.<br\> | ||
+ | *SA questiona quantas caças terá no jogo.<br\> | ||
+ | *Juiz informa o número de caças.<br\> | ||
+ | *A partida é criada.<br\> | ||
+ | SA aguarda a autenticação dos jogadores.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Iniciar partida<br\> | ||
+ | '''Ator primário:''' Juiz <br\> | ||
+ | '''Identificador:''' UCA10<br\> | ||
+ | '''Sumário:''' Juiz inicia partida.<br\> | ||
+ | '''Pré condições:''' Partida deve ter sido criada e as vagas de jogadores devem estar todas ocupadas.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *Juiz seleciona "Iniciar partida".<br\> | ||
+ | *SA sorteia as caças pelo mapa.<br\> | ||
+ | *SA informa a localização das caças para o SS.<br\> | ||
+ | *SS informa a localização do SR.<br\> | ||
+ | *SA informa que a partida foi iniciada a todos os SS após todos terem informado sua localização.<br\> | ||
+ | |||
+ | '''Caso de uso:''' Atualizar coordenadas<br\> | ||
+ | '''Ator primário:''' SS <br\> | ||
+ | '''Identificador:''' UCA11<br\> | ||
+ | '''Sumário:''' SS informa a localização do SR.<br\> | ||
+ | '''Pré condições:''' Partida deve ter sido iniciada e o Robô deve ter efetuado um movimento.<br\> | ||
+ | '''Fluxo Principal:'''<br\> | ||
+ | *Juiz seleciona "Iniciar partida".<br\> | ||
+ | *SS informa a localização do SR.<br\> | ||
+ | *SA atualiza a localização do SR.<br\> | ||
+ | <br\> | ||
+ | Requisitos Faltantes:<br\> | ||
+ | RF11 O sistema deve permitir que os resultados do jogo sejam vistos pelos espectadores em tempo real.<br\> | ||
+ | RF15 O sistema deve projetar informações no tabuleiro (Caças ativas, Caças encontradas, e placar) *.<br\> | ||
+ | {{collapse bottom}} | ||
{{collapse bottom}} | {{collapse bottom}} | ||
Edição das 11h59min de 1 de abril de 2019
Membros do grupo
- Adonis Andreas Marinos - adonis.marinos97@gmail.com
- Daniel Cabral Correa - daniel.liboos@gmail.com
Repositório Git
https://github.com/Danehko/ProjetoIntegradorII.git
Cronograma
Diário de projeto
18/02/2019 - Iniciando o projeto |
---|
Para a aula de 25/02/2019, apresentação sobre:
|
25/02/2019 - Apresentação de seminário |
---|
04/03/2019 - Recesso Carnaval |
---|
11/03/2019 - Analisar diagrama de Caso de Uso | ||||||
---|---|---|---|---|---|---|
|
18/03/2019 - Emenda feriado São José |
---|
25/03/2019 - Casos de Uso SS | ||||
---|---|---|---|---|
|
01/04/2019 - | ||
---|---|---|
|
08/04/2019 - |
---|
15/04/2019 - |
---|
22/04/2019 - |
---|
29/04/2019 - |
---|
06/05/2019 - |
---|
13/05/2019 - |
---|
20/05/2019 - |
---|
27/05/2019 - |
---|
03/06/2019 - |
---|
10/06/2019 - |
---|
17/06/2019 - |
---|
24/06/2019 - |
---|
01/07/2019 - |
---|
08/07/2019 - |
---|
Levantamento de requisitos
Requisitos funcionais |
---|
RF01 O sistema deve permitir criação e gerência de cadastro de um robô.<br\> RF02 O sistema de deve manter um histórico das partidas realizadas.<br\> RF03 O sistema deve ser capaz de fazer a autenticação dos robôs cadastrados.<br\> RF04 Os robôs devem ser capazes de operar nos modos manual e autônomo.<br\> RF05 O sistema deve validar e contabilizar as caças já encontradas pelo robô.<br\> RF06 O sistema deve dar início a partida, sortear os locais das caças e informá-los aos robôs.<br\> RF07 O sistema deve prover uma interface de monitoramento para o robô em modo autônomo.<br\> RF08 O sistema deve prover uma interface de controle e monitoramento para o robôs em modo manual.<br\> RF09 O sistema deve permitir que, quando em modo autônomo, o robô execute os movimentos programados a partir do algoritmo implementado.<br\> RF10 O sistema deve permitir pausa e reset da partida.<br\> RF11 O sistema deve permitir que os resultados do jogo sejam vistos pelos espectadores em tempo real.<br\> RF12 O sistema não deve permitir que os robôs se choquem.<br\> RF13 O sistema deve declarar um vencedor assim que todas as caças forem encontradas.<br\> RF14 O sistema pode ter 2 ou n competidores *.<br\> RF15 O sistema deve projetar informações no tabuleiro (Caças ativas, Caças encontradas, e placar) *.<br\> RF16 Os robôs devem ser capazes de informar suas coordenadas a cada movimento.(Grupo2_2018-2).<br\> RF17 Antes de iniciar a partida, o sistema deve verificar a posição atual dos robôs .(Grupo3_2018-2).<br\> RF18 O Modo autônomo deve ser implementado dentro do Sistem do Robô.<br\> |
Requisitos não funcionais |
---|
RNF01 A interface do sistema de comunicação com o usuário deve ser intuitiva.<br\> RNF02 O tabuleiro será composto por linhas pretas e todos com cor.<br\> RNF03 O tabuleiro terá as dimensões definidas (2m x 2m).<br\> RNF04 O tabuleiro será composto por 100 quadrados de dimensões: 20cm x 20cm.<br\> RNF05 O tabuleiro será limitado por uma borda vermelha.<br\> RNF06 O placar mostrado aos usuários deve ser de fácil identificação.<br\> RNF07 O robô deve ter uma cor para identificação.<br\> |
Sistema do Robô
Casos de Uso SR |
---|
Caso de uso: Autenticar <br\> Ator primário: Sistema Supervisório <br\> Identificador: UCR01<br\> Sumário: O SS solicita o identificador do robô e atribui uma cor ao mesmo. <br\> Pré condições: O Sistema do Robô deve ser ligado. <br\> Fluxo Principal: <br\>
Caso de uso: Sistema Anti colisão<br\> Ator primário: Sensor ultrassônico<br\> Identificador: UCR02 <br\> Sumário: Evitar colisões com outros robôs e obstáculos<br\> Pré condições: O Sistema do Robô deve estar em movimento e deverá existir algum Robô ou obstáculo em sua rota.<br\> Fluxo Principal:<br\>
Caso de uso: Receber informação<br\> . Ator primário: SS<br\> Identificador: UCR03<br\> Sumário: SS envia informações(início a partida,locais das caças, entre outros) para o SR<br\> Pré condições: O Robô deve estar autenticado no SS.<br\> Fluxo Principal:<br\>
Caso de uso: Encontrar linha/intersecção <br\> Ator primário: Sensor de cor <br\> Identificador: UCR04<br\> Sumário: Indicará se o robô poderá seguir na direção desejada.<br\> Pré condições: Robô deve ter recebido comando de movimento do SS.<br\> Fluxo Principal:<br\>
Exceção: Caso não encontre ou esteja para sair do tabuleiro (Vermelho), o movimento não será autorizado e ele aguardará outro comando.<br\> Caso de uso: Monitorar<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR05<br\> Sumário: Recebe dados de localização do SR.<br\> Pré condições: SR precisa ter feito algum movimento.<br\> Fluxo Principal:<br\>
Caso de uso: Movimentar manual<br\> Ator primário: SS<br\> Identificador: UCR06<br\> Sumário: SS envia uma ordem que o SR entrará em modo manual<br\> Pré condições: O Robô deve estar autenticado no SS.<br\> Fluxo Principal: <br\>
Caso de uso: Movimentar autônomo<br\> Ator primário: SS<br\> Identificador: UCR07<br\> Sumário: SS envia uma ordem que o SR entrará em modo autônomo<br\> <br\> Pré condições: O Robô deve estar autenticado no SS.<br\> Fluxo Principal: <br\>
Caso de uso: Validar caças<br\> Ator primário: SS<br\> Identificador: UCR08<br\> Sumário: SR informa ao SS que localizou umas caças.<br\> Pré condições: O jogo deve ter sido iniciado e o Robô deve estar próxima(uma casa) da caça.<br\> Fluxo Principal: <br\>
Caso de uso: Iniciar<br\> Ator primário: SS<br\> Identificador: UCR09<br\> Sumário: SS informa ao SR que o jogo irá começar, liberando sua movimentação<br\> Pré condições: O Robô deve estar autenticado no SS e o SS deve ter informado o modo de operação do Robô<br\> Fluxo Principal: <br\>
Caso de uso: Pausar<br\> Ator primário: SS<br\> Identificador: UCR10<br\> Sumário: SS informa ao SR que o jogo foi pausado, bloqueando sua movimentação<br\> Pré condições: O jogo deve estar em andamento. <br\> Fluxo Principal: <br\>
|
Sistema Supervisório
Casos de Uso SS |
---|
Caso de uso: Autenticar ao Robô<br\> Ator primário: SR <br\> Identificador: UCS01<br\> Sumário: O SS solicita o identificador do robô e atribui uma cor ao mesmo.<br\> Pré condições: O Sistema do Robô deve ser ligado.<br\> Fluxo Principal: <br\>
Caso de uso: Autenticar ao Sistema Arbitrário<br\> Ator primário: SA <br\> Identificador: UCS02<br\> Sumário: O SS envia ao SA a identificação do robô e a cor atribuída ao mesmo.<br\> Pré condições: O Sistema do Robô já deve ter se autenticado com SS <br\> Fluxo Principal: <br\>
Caso de uso: Receber dados de Monitoramento<br\> Ator primário: SR<br\> Identificador: UCS03<br\> Sumário: Recebe dados de localização do SR.<br\> Pré condições: Jogo deve ter sido iniciado.<br\> Fluxo Principal:<br\>
Caso de uso: Enviar dados de Monitoramento<br\> Ator primário: SA<br\> Identificador: UCS04<br\> Sumário: Envia dados de localização dos competidores e locais das caças para o SR.<br\> Pré condições: Jogo deve ter sido iniciado.<br\> Fluxo Principal:<br\>
Caso de uso:Informar caças encontradas<br\> Ator primário: SR<br\> Identificador: UCS05<br\> Sumário: SS informa ao SA que o SR localizou umas caças.<br\> Pré condições: Jogo deve ter sido iniciado.<br\><br\> Fluxo Principal:<br\>
Caso de uso: Iniciar<br\> Ator primário: SA<br\> Identificador: UCS06<br\> Sumário: SA informa ao SS que o jogo irá começar<br\> Pré condições: O Robô deve estar autenticado no SS.<br\> Fluxo Principal:<br\>
Caso de uso: Pausar<br\> Ator primário: SA<br\> Identificador: UCS07<br\> Sumário: SA informa ao SS que o jogo foi pausado.<br\> Pré condições: O jogo deve estar em andamento.<br\> Fluxo Principal:<br\>
Caso de uso: Modo de operação<br\> Ator primário: Jogador<br\> Identificador: UCS08<br\> Sumário: Jogador escolhe o modo de operação do SR<br\> Pré condições: O Robô deve estar autenticado no SS.<br\> Fluxo Principal:<br\>
Exceção: Caso seja escolhido o modo manual, SS deve esperar os comandos de deslocamento do Jogador. Caso de uso: Movimentar<br\> Ator primário: Jogador<br\> Identificador: UCS09<br\> Sumário: Jogador envia os comandos de movimentos para SR.<br\> Pré condições: O Robô deve estar autenticado no SS, o jogo deve ter começado e o modo de jogo deve ter sido selecionado.<br\> Fluxo Principal:<br\>
|
Sistema de Auditoria
Casos de Uso SA |
---|
Caso de uso: <br\> Ator primário: <br\> Identificador: <br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal: <br\> Caso de uso: <br\> Ator primário: <br\> Identificador: <br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal:<br\> Caso de uso: <br\> Ator primário: <br\> Identificador: <br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal: <br\> Caso de uso: <br\> Ator primário: <br\> Identificador: <br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal:<br\> Caso de uso:<br\> Ator primário: <br\> Identificador: <br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal:<br\> |
Diagrama de caso de uso SA |
---|