Mudanças entre as edições de "Grupo2-PJI2-2019-1"
Linha 585: | Linha 585: | ||
{{collapse bottom}} | {{collapse bottom}} | ||
{{collapse top | Mensagens - Sistema do Robô}} | {{collapse top | Mensagens - Sistema do Robô}} | ||
+ | '''Caso de uso''' - '''mensagem''' | ||
+ | '''Enviar atualização''' - Localização (linha, coluna). | ||
+ | '''Validar caça''' - mensagem que encontrou caça + Localização | ||
+ | '''Iniciar partida''' - Localização | ||
{{collapse bottom}} | {{collapse bottom}} | ||
Edição das 08h31min de 8 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 - Acompanhamento | ||
---|---|---|
|
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 Sistema do Robô |
---|
Caso de uso: Sistema Anti colisão<br\> Ator primário: Sensor ultrassônico<br\> Identificador: UCR01<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\>
<br\> Caso de uso: Encontrar linha/intersecção <br\> Ator primário: Sensor de cor <br\> Identificador: UCR02<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 Sistema Supervisório.<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\> <br\> Caso de uso: Autenticar <br\> Ator primário: Sistema Supervisório <br\> Identificador: UCR03<br\> Sumário: O Sistema Supervisório 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\>
<br\> Caso de uso: Receber Atualização<br\> . Ator primário: Sistema Supervisório<br\> Identificador: UCR03<br\> Sumário: Sistema Supervisório envia informações(locais das caças, entre outros) para o Sistema do Robô.<br\> Pré condições: O Robô deve estar autenticado no Sistema Supervisório.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Enviar Atualização<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR05<br\> Sumário: Recebe dados de localização do Sistema do Robô.<br\> Pré condições: Sistema do Robô precisa ter feito algum movimento.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Movimentar manual<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR06<br\> Sumário: Sistema Supervisório envia uma ordem que o Sistema do Robô entrará em modo manual.<br\> Pré condições: O Robô deve estar autenticado no Sistema Supervisório.<br\> Fluxo Principal: <br\>
<br\> Caso de uso: Movimentar autônomo<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR07<br\> Sumário: Sistema Supervisório envia uma ordem que o Sistema do Robô entrará em modo autônomo.<br\> Pré condições: Iniciar partida.<br\> Fluxo Principal: <br\>
<br\> Caso de uso: Validar caças<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR08<br\> Sumário: Sistema do Robô informa ao Sistema Supervisório 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\>
<br\> Caso de uso: Iniciar partida<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR09<br\> Sumário: Sistema Supervisório informa ao Sistema do Robô que o jogo irá começar, liberando sua movimentação.<br\> Pré condições: O Robô deve estar autenticado no Sistema Supervisório e o Sistema Supervisório deve ter informado o modo de operação do Robô.<br\> Fluxo Principal: <br\>
<br\> Caso de uso: Pausar/Continuar <br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR10<br\> Sumário: Sistema Supervisório informa ao Sistema do Robô que o jogo foi pausado/continuado, bloqueando/desbloqueando sua movimentação.<br\> Pré condições: O jogo deve estar em andamento/pausado. <br\> Fluxo Principal: <br\>
<br\> Caso de uso: Terminar Partida<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR11<br\> Sumário: O fim da partida é informado aos Sistema do Robô..<br\> Pré condições: O jogo deve estar em andamento.<br\> Fluxo Principal:<br\>
|
Mensagens - Sistema do Robô |
---|
Caso de uso - mensagem Enviar atualização - Localização (linha, coluna). Validar caça - mensagem que encontrou caça + Localização Iniciar partida - Localização |
Sistema Supervisório
Casos de Uso Sistema Supervisório |
---|
Caso de uso: Autenticar ao Robô<br\> Ator primário: Sistema do Robô <br\> Identificador: UCS01<br\> Sumário: O Sistema Supervisório se conecta ao robô.<br\> Pré condições: O Sistema do Robô deve ser ligado.<br\> Fluxo Principal: <br\>
<br\> Caso de uso: Enviar Atualização<br\> Ator primário: Sistema do Robô<br\> Identificador: UCS02<br\> Sumário: Envia dados de localização do Sistema do Robô em modo autônomo.<br\> Pré condições: Jogo deve ter sido iniciado.<br\> Fluxo Principal:<br\>
<br\> Caso de uso:Validar caça Autônomo<br\> Ator primário: Sistema do Robô<br\> Identificador: UCS03<br\> Sumário: Sistema Supervisório informa ao Sistema Arbitrário que o Sistema do Robô localizou umas caças.<br\> Pré condições: Jogo deve ter sido iniciado e o Robô deve estar em cima da caça.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Iniciar partida.<br\> Ator primário: Sistema Arbitrário<br\> Identificador: UCS04<br\> Sumário: Sistema Arbitrário informa ao Sistema Supervisório que o jogo irá começar.<br\> Pré condições: Conectar Robô.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Conectar Robô<br\> Ator primário: Sistema Arbitrário <br\> Identificador: UCS05<br\> Sumário: O Sistema Supervisório envia ao Sistema Arbitrário 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 Sistema Supervisório <br\> Fluxo Principal: <br\>
<br\> Caso de uso: Receber Atualização <br\> Ator primário: Sistema Arbitrário<br\> Identificador: UCS06<br\> Sumário: Sistema Arbitrário envia dados de localização dos competidores e locais das caças para o Sistema do Robô.<br\> Pré condições: Jogo deve ter sido iniciado.<br\> Fluxo Principal:<br\>
Exceção: Em modo Manual as informações de localização não serão transmitidas<br\> <br\> Caso de uso: Pausar/Continuar<br\> Ator primário: Sistema Arbitrário<br\> Identificador: UCS07<br\> Sumário: Sistema Arbitrário informa ao Sistema Supervisório que o jogo foi pausado.<br\> Pré condições: O jogo deve estar em andamento.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Declarar Vencedor<br\> Ator primário: Sistema Arbitrário<br\> Identificador: UCS08<br\> Sumário: O sistema declara o vencedor da partida após a última caça ser localizada.<br\> Pré condições: Validar caça ou Receber Atualização.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Terminar Partida<br\> Ator primário: Sistema Arbitrário<br\> Identificador: UCS09<br\> Sumário: O fim da partida é informado aos Sistema Supervisório..<br\> Pré condições: Declarar Vencedor.<br\> Fluxo Principal:<br\>
<br\> Caso de uso:Validar caça Manual<br\> Ator primário: Jogador<br\> Identificador: UCS10<br\> Sumário: Sistema Supervisório informa ao Sistema Arbitrário que o Jogador localizou umas das caças.<br\> Pré condições: Jogo deve ter sido iniciado e o Robô deve estar em cima da caça.<br\><br\> Fluxo Principal:<br\>
<br\> Caso de uso: Movimentar Manual<br\> Ator primário: Jogador<br\> Identificador: UCS11<br\> Sumário: Jogador envia os comandos de movimentos para Sistema do Robô.<br\> Pré condições: O Robô deve estar autenticado no Sistema Supervisório, o jogo deve ter começado e o modo de jogo deve ter sido selecionado.<br\> Fluxo Principal:<br\>
<br\> |
Mensagens - Sistema Supervisório |
---|
Sistema de Auditoria
Casos de Uso Sistema Arbitrário |
---|
Caso de uso: Pausar/Reiniciar <br\> Ator primário: Árbitro <br\> Identificador: UCA01<br\> Sumário: Árbitro deseja pausar ou reiniciar a partida.<br\> Pré condições: Partida deve estar em andamento.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Cadastrar <br\> Ator primário: Árbitro<br\> Identificador: UCA02<br\> Sumário: Árbitro solicita o registro do Robô.<br\> Pré condições: O Árbitro deverá saber as informações do Robô.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Deletar Robô <br\> Ator primário: Árbitro <br\> Identificador: UCA03<br\> Sumário: Árbitro deleta um Robô cadastrado.<br\> Pré condições: O Robô a ser deletado deve estar cadastrado.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Consultar robôs <br\> Ator primário: Árbitro <br\> Identificador: UCA04<br\> Sumário: Árbitro consulta todos os Robôs cadastrados.<br\> Pré condições: Pelo menos um Robô deve estar cadastrado.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Consultar histórico <br\> Ator primário: Árbitro <br\> Identificador: UCA05<br\> Sumário: Árbitro consulta o histórico de partidas.<br\> Pré condições: Ter ocorrido o término de pelo menos uma partida com um vencedor/empate.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Iniciar partida<br\> Ator primário: Árbitro <br\> Identificador: UCA06<br\> Sumário: Árbitro inicia partida.<br\> Pré condições: Ter no mínimo dois Robôs cadastrados.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Terminar Partida<br\> Ator primário: Árbitro <br\> Identificador: UCA07<br\> Sumário: O fim da partida é informado aos Sistema Supervisório.<br\> Pré condições: Declarar Vencedor.<br\> Fluxo Principal:<br\>
Exceção: Árbitro Termina a partida selecionado a opção "Terminar partida" antes do robô vencedor ser anunciado.<br\> <br\> Caso de uso: Conectar Robô <br\> Ator primário: Sistema Supervisório <br\> Identificador: UCA08<br\> Sumário: Sistema Supervisório envia solicitação de conexão para Sistema Arbitrário.<br\> Pré condições: O Robô deve estar autenticado no Sistema Supervisório, o Robô já deve estar cadastrado, partida deve ter sido criada.<br\> Fluxo Principal:<br\>
Exceção: Caso o Robô não tenha sido cadastrado, um cadastro deverá ser efetuado.<br\> <br\> Caso de uso: Validar caça<br\> Ator primário: Sistema Supervisório <br\> Identificador: UCA09<br\> Sumário: Sistema Supervisório 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\>
Exceção: Árbitro não valida a caça.<br\> <br\> Caso de uso: Receber atualização<br\> Ator primário: Sistema Supervisório <br\> Identificador: UCA10<br\> Sumário: Sistema Supervisório informa a localização do Robô.<br\> Pré condições: A partida deve ter sido iniciada.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Enviar atualização<br\> Ator primário: Sistema Supervisório <br\> Identificador: UCA11<br\> Sumário: Sistema Arbitrário atualiza o Sistema Supervisório referente ao andamento do jogo.<br\> Pré condições: Iniciar Partida.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Atualizar mapa<br\> Ator primário: <br\> Identificador: UCA12<br\> Sumário: Sistema Arbitrário atualiza as informações do jogo após receber e enviar informações.<br\> Pré condições: Enviar atualização, Receber atualização, Validar caça.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Declarar Vencedor<br\> Ator primário: Sistema Supervisório <br\> Identificador: UCA13<br\> Sumário: O sistema declara o vencedor da partida após a última caça ser localizada.<br\> Pré condições: Validar caça.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Salvar histórico<br\> Ator primário: Banco de Dados <br\> Identificador: UCA14<br\> Sumário: Após o vencedor ser declarado, os dados da partida são armazenados.<br\> Pré condições: Declarar Vencedor.<br\> Fluxo Principal:<br\>
<br\> Caso de uso: Exibir resultados no projetor<br\> Ator primário: Projetor <br\> Identificador: UCA15<br\> Sumário: Será exibido no projetor informações da partida(Caças ativas, Caças encontradas, e placar).<br\> Pré condições: Atualizar Mapa.<br\> Fluxo Principal:<br\>
<br\> Duvidas: <br\> 1 - Realmente é necessário ter um caso de uso salvar histórico? O salvamento automático do resultado não pode ser feito direto no "Declarar Vencedor"?<br\> Possível caso de uso Declarar Vencedor.<br\> Caso de uso: Declarar Vencedor<br\> Ator primário: Sistema Supervisório <br\> Identificador: UCA<br\> Sumário: O sistema declara o vencedor da partida após a última caça ser localizada.<br\> Pré condições: Validar caça.<br\> Fluxo Principal:<br\>
<br\> |
Mensagens - Sistema Arbitrário |
---|