Mudanças entre as edições de "Grupo2-PJI2-2019-1"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 94: Linha 94:
 
*Sensor autoriza movimento do SR.<br\>
 
*Sensor autoriza movimento do SR.<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\>
 
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:''' Monitoramento<br\>
+
'''Caso de uso:''' Monitorar<br\>
 
'''Ator primário:''' Sistema Supervisório<br\>
 
'''Ator primário:''' Sistema Supervisório<br\>
 
'''Identificador:''' UCR05<br\>
 
'''Identificador:''' UCR05<br\>
Linha 112: Linha 112:
 
{{collapse top | 25/03/2019 - Casos de Uso SS}}
 
{{collapse top | 25/03/2019 - Casos de Uso SS}}
 
{{collapse top | Correção casos de Uso SR}}
 
{{collapse top | Correção casos de Uso SR}}
'''Caso de uso:''' Autenticar <br\>  
+
Caso de uso: Movimento ----- EXCLUIDO<br\>
'''Ator primário:''' Sistema Supervisório <br\>
+
Novos casos de uso:<br\>
'''Identificador:''' UCR01<br\>
+
'''Caso de uso:''' Receber informação<br\> .
'''Sumário:''' O SS solicita o identificador do robô e atribui uma cor ao mesmo. <br\>
+
'''Ator primário:''' SS<br\>
'''Pré condições:''' O Sistema do Robô deve ser ligado. <br\>
+
'''Identificador:''' UCR03<br\>
'''Fluxo Principal:'''  <br\>
+
'''Sumário:''' SS envia informações(início a partida,locais das caças, entre outros) para o SR<br\>
*O Sistema Supervisório conecta ao Sistema do Robô via Bluetooth.  <br\>
+
'''Pré condições:''' O Robô deve estar autenticado no SS.<br\>
*O SR informa seu endereço MAC.  <br\>
 
*O SS associa ao MAC uma cor.  <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\>
 
'''Fluxo Principal:'''<br\>
*Sensor ultrassônico detecta um obstáculo.<br\>
+
* SS envia os dados para o SR.<br\>
*O SR para de se movimentar.<br\>
+
* SR processa os dados.<br\>
*Pós-condições: Robô solicita ao SS uma nova rota.<br\>
+
 
'''Caso de uso:''' Movimento<br\>
+
'''Caso de uso:''' Movimentar manual<br\>  
'''Ator primário:''' Sistema Supervisório<br\>
+
'''Ator primário:''' SS<br\>
'''Identificador:''' UCR03<br\>
+
'''Identificador:''' UCR06<br\>
'''Sumário:''' SR recebe as ordens de deslocamento do SS.<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\>
 
'''Pré condições:''' O Robô deve estar autenticado no SS.<br\>
 
'''Fluxo Principal:''' <br\>
 
'''Fluxo Principal:''' <br\>
 
*SS envia comando de movimento para o SR. <br\>
 
*SS envia comando de movimento para o SR. <br\>
 
*Sensor de cor verifica a presença de linha. <br\>
 
*Sensor de cor verifica a presença de linha. <br\>
*SR se desloca conforme o comando do SS e aguarda próximo comando. <br\>
+
*SR se desloca conforme o comando do SS e aguarda próximo comando.<br\>
'''Caso de uso:''' Encontrar linha/intersecção <br\>
+
 
'''Ator primário:''' Sensor de cor <br\>
+
'''Caso de uso:''' Movimentar autônomo<br\>  
'''Identificador:''' UCR04<br\>
+
'''Ator primário:''' SS<br\>
'''Sumário:''' Indicará se o robô poderá seguir na direção desejada.<br\>
+
'''Identificador:''' UCR07<br\>
'''Pré condições:''' Robô deve ter recebido comando de movimento do SS.<br\>
+
'''Sumário:''' SS envia uma ordem que o SR entrará em modo autônomo<br\> <br\>
'''Fluxo Principal:'''<br\>
+
'''Pré condições:''' O Robô deve estar autenticado no SS.<br\>
*Sensor de cor identifica a linha ou intersecção.<br\>
+
'''Fluxo Principal:''' <br\>
*Sensor autoriza movimento do SR.<br\>
+
*SS envia comando informando ao SR para operar no modo autônomo. <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\>
+
*SR espera o início da partida. <br\>
'''Caso de uso:''' Monitoramento<br\>
+
*SR Começa  a operar a partir de um algoritmo. <br\>
'''Ator primário:''' Sistema Supervisório<br\>
+
*Sensor de cor verifica a presença de linha. <br\>
'''Identificador:''' UCR05<br\>
+
*SR se desloca conforme o algoritmo.<br\>
'''Sumário:''' Recebe dados de localização do SR.<br\>
+
 
'''Pré condições:''' SR precisa ter feito algum movimento.<br\>
+
'''Caso de uso:''' Definir estratégia<br\>
'''Fluxo Principal:'''<br\>
+
'''Ator primário:'''  <br\>
*SR envia a sua localização para o SS após realizar um comando de movimento.<br\>
+
'''Identificador:''' UCR08<br\>
 +
'''Sumário:'''  <br\>
 +
'''Pré condições:'''  <br\>
 +
'''Fluxo Principal:'''  <br\>
 +
 
 +
'''Caso de uso:''' Validar caças<br\>
 +
'''Ator primário:'''  <br\>
 +
'''Identificador:''' UCR09<br\>
 +
'''Sumário:'''  <br\>
 +
'''Pré condições:'''  <br\>
 +
'''Fluxo Principal:'''  <br\>
 +
 
 +
'''Caso de uso:''' Iniciar<br\>  
 +
'''Ator primário:''' <br\>
 +
'''Identificador:''' UCR10<br\>
 +
'''Sumário:''' <br\>
 +
'''Pré condições:''' <br\>
 +
'''Fluxo Principal:''' <br\>
 +
 
 +
'''Caso de uso:''' Pausar<br\>
 +
'''Ator primário:'''  <br\>
 +
'''Identificador:''' UCR11<br\>
 +
'''Sumário:'''  <br\>
 +
'''Pré condições:'''  <br\>
 +
'''Fluxo Principal:'''  <br\>
 +
 
 
{{collapse bottom}}
 
{{collapse bottom}}
 
{{collapse top | Diagrama de caso de uso SR}}
 
{{collapse top | Diagrama de caso de uso SR}}

Edição das 19h28min de 21 de março de 2019

Membros do grupo

  • Adonis Andreas Marinos - adonis.marinos97@gmail.com
  • Daniel Cabral Correa - daniel.liboos@gmail.com
  • Rafael Teles Espindola - rafatespindola@gmail.com - até 25/02/2019

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:

  • Classe e Diagrama de classes (relacionamentos)
  • Herança, classes abstratas e interfaces
  • Polimorfismo
  • Usar os diagramas do Grupo 2018-2, mostrando erros e acertos.
25/02/2019 - Apresentação de seminário
04/03/2019 - Recesso Carnaval
11/03/2019 - Analisar diagrama de Caso de Uso
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\>

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\>

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\>

  • O Sistema Supervisório conecta ao Sistema do Robô via Bluetooth. <br\>
  • O SR informa seu endereço MAC. <br\>
  • O SS associa ao MAC uma cor. <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\>

  • Sensor ultrassônico detecta um obstáculo.<br\>
  • O SR para de se movimentar.<br\>
  • Pós-condições: Robô solicita ao SS uma nova rota.<br\>

Caso de uso: Movimento<br\> Ator primário: Sistema Supervisório<br\> Identificador: UCR03<br\> Sumário: SR recebe as ordens de deslocamento do SS.<br\> Pré condições: O Robô deve estar autenticado no SS.<br\> Fluxo Principal: <br\>

  • SS envia comando de movimento para o SR. <br\>
  • Sensor de cor verifica a presença de linha. <br\>
  • SR se desloca conforme o comando do SS e aguarda próximo comando. <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\>

  • Sensor de cor identifica a linha ou intersecção.<br\>
  • Sensor autoriza movimento do SR.<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\>

  • SR envia a sua localização para o SS após realizar um comando de movimento.<br\>
Diagrama de caso de uso SR
Diagrama de Caso de uso SR
18/03/2019 - Emenda feriado São José
25/03/2019 - Casos de Uso SS
Correção casos de Uso SR

Caso de uso: Movimento ----- EXCLUIDO<br\> Novos casos de uso:<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\>

  • SS envia os dados para o SR.<br\>
  • SR processa os dados.<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\>

  • SS envia comando de movimento para o SR. <br\>
  • Sensor de cor verifica a presença de linha. <br\>
  • SR se desloca conforme o comando do SS e aguarda próximo comando.<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\>

  • SS envia comando informando ao SR para operar no modo autônomo. <br\>
  • SR espera o início da partida. <br\>
  • SR Começa a operar a partir de um algoritmo. <br\>
  • Sensor de cor verifica a presença de linha. <br\>
  • SR se desloca conforme o algoritmo.<br\>

Caso de uso: Definir estratégia<br\> Ator primário: <br\> Identificador: UCR08<br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal: <br\>

Caso de uso: Validar caças<br\> Ator primário: <br\> Identificador: UCR09<br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal: <br\>

Caso de uso: Iniciar<br\> Ator primário: <br\> Identificador: UCR10<br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal: <br\>

Caso de uso: Pausar<br\> Ator primário: <br\> Identificador: UCR11<br\> Sumário: <br\> Pré condições: <br\> Fluxo Principal: <br\>

Diagrama de caso de uso SR
Diagrama de Caso de uso SR
Casos de Uso SS

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 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\>

  • O Sistema Supervisório conecta ao Sistema do Robô via Bluetooth. <br\>
  • O SR informa seu endereço MAC. <br\>
  • O SS associa ao MAC uma cor. <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\>

  • Sensor ultrassônico detecta um obstáculo.<br\>
  • O SR para de se movimentar.<br\>
  • Pós-condições: Robô solicita ao SS uma nova rota.<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\>

  • Sensor de cor identifica a linha ou intersecção.<br\>
  • Sensor autoriza movimento do SR.<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: Monitoramento<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\>

  • SR envia a sua localização para o SS após realizar um comando de movimento.<br\>
Diagrama de caso de uso SR
Diagrama de Caso de uso SR

Sistema Supervisório

Casos de Uso SS

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 SS

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