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\>
- Árbitro clica na opção "Pausar/Continuar".<br\>
- Sistema Arbitrário informa ao Sistema Supervisório que o jogo foi pausado ou reiniciado.<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\>
- Árbitro seleciona "Cadastrar Robô"<br\>
- Árbitro envia as informações do Robô para o Sistema Arbitrário.<br\>
- Sistema Arbitrário solicita ao Banco de dados para que seja registrado o Robô.<br\>
- Banco de dados informa que o Robô foi registrado.<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\>
- Árbitro clica na opção "Deletar Robô".<br\>
- Sistema Arbitrário solicita ao Banco de dados os Robôs cadastrados.<br\>
- Banco de dados envia uma lista de robôs ao Sistema Arbitrário.<br\>
- Sistema Arbitrário Exibe a lista de Robôs.<br\>
- Árbitro informa o ID do robô a ser deletado.<br\>
- Sistema Arbitrário solicita ao Banco de dados que remova o Robô com ID informado.<br\>
- Banco de dados confirma que o robô foi deletado.<br\>
- Sistema Arbitrário Exibe que o Robô foi deletado.<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\>
- Árbitro clica na opção "Consultar Robôs".<br\>
- Sistema Arbitrário solicita ao Banco de dados todos os Robôs cadastrados.<br\>
- Banco de dados envia uma lista de robôs ao Sistema Arbitrário.<br\>
- Sistema Arbitrário Exibe a lista de Robôs.<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\>
- Árbitro clica na opção "Consultar histórico".<br\>
- Sistema Arbitrário solicita ao Banco de dados todos os resultados de jogos armazenados.<br\>
- Banco de dados envia uma lista das partidas com o vencedor para o Sistema Supervisório.<br\>
- Sistema Arbitrário Exibe a lista de partidas.<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\>
- Árbitro seleciona "Iniciar partida".<br\>
- Sistema Arbitrário questiona quantos jogadores realizarão a partida.<br\>
- Árbitro informa o número de jogadores.<br\>
- Sistema Arbitrário questiona sobre o modo operação.<br\>
- Árbitro escolhe o modo de operação desejado.<br\>
- Sistema Arbitrário questiona quantas caças terá no jogo.<br\>
- Árbitro informa o número de caças.<br\>
- Sistema Arbitrário sorteia as caças pelo mapa.<br\>
- Sistema Arbitrário aguarda a conexão dos Sistema Supervisório.<br\>
- Sistema Supervisório informa a localização do Robô ao Sistema Arbitrário.<br\>
- Sistema Arbitrário informa o modo de jogo, quantas caças, quantos jogadores terão na partida e a cor do Robô para o Sistema Supervisório.<br\>
- A partida é criada.<br\>
- Sistema Arbitrário informa a localização das caças para o Sistema Supervisório.<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\>
- Sistema Arbitrário informa ao Árbitro qual Robô é o vencedor.<br\>
- Arbitro seleciona "Terminar partida"
- Sistema Arbitrário informa a todos os Sistema Supervisório que a partida acabou.<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\>
- Sistema Supervisório se conecta no Sistema Arbitrário.<br\>
- Sistema Supervisório envia informações do Robô para o Sistema Arbitrário.<br\>
- Sistema Arbitrário verifica se o Robô já foi cadastrado no banco de Dados.<br\>
- Sistema Arbitrário informa para Sistema Supervisório que o Robô está autenticado.<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\>
- Sistema Supervisório informa ao Sistema Arbitrário que o Robô encontrou uma caça.<br\>
- Sistema Arbitrário informa ao Árbitro que o Sistema Supervisório encontrou uma caça.<br\>
- Árbitro valida a caça.<br\>
- Sistema Arbitrário incrementa o contador de Robô que localizou a caça.<br\>
- Sistema Arbitrário decrementa o contador de caça.<br\>
- Sistema Arbitrário informa a todos os Sistema Supervisório que um dos Robôs encontrou uma caça.<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\>
- Sistema Supervisório envia a localização do Robô ao Sistema Arbitrário<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\>
- Sistema Arbitrário envia as informações referentes ao jogo para o Sistema Supervisório (localização dos adversários e informações das caças atuais<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\>
- Sistema Arbitrário atualiza as informações referentes à: Localização de jogadores, placar do jogo, número de caças encontradas e disponíveis.<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\>
- Sistema Arbitrário informa a todos os Sistema Supervisório que um dos Robôs encontrou a última caça.<br\>
- Sistema Arbitrário informa ao Árbitro qual Robô é o vencedor.<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\>
- Sistema Arbitrário informa os dados da partida ao Banco de Dados.<br\>
- Banco de dados confirma que o jogo foi salvo.<br\>
- Sistema Arbitrário informa ao Árbitro que os dados da partida foram armazenados<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\>
- Sistema Arbitrário informa os dados da partida ao Projetor.<br\>
- Projetor exibe os dados da partida para o público.<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\>
- Sistema Arbitrário informa a todos os Sistema Supervisório que um dos Robôs encontrou a ultima caça.<br\>
- Sistema Arbitrário informa ao Árbitro qual Robô é o vencedor.<br\>
- O jogo acaba.<br\>
- Sistema Arbitrário informa os dados da partida para o Banco de Dados<br\>
- Banco de Dados confirma o armazenamento.<br\>
<br\>
|