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

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 114: Linha 114:
  
 
[[Arquivo:diagrama-classe-mover.png]]
 
[[Arquivo:diagrama-classe-mover.png]]
 +
 +
{{collapse bottom}}
 +
 +
 +
{{collapse top | Requisitos funcionais S.S}}
 +
 +
Nome: Verifica  Log in
 +
 +
Identificador: CSU01;
 +
 +
Sumário: SA autentica o log in do robô ;
 +
 +
Ator primário: SA;
 +
 +
Precondições:
 +
 +
Fluxo principal:
 +
 +
SA solicita a SS sua identificação;
 +
 +
SS responde com a identificação;
 +
 +
Fluxo de exceção:
 +
 +
Identificação não cadastrada, cadastrar identificação.
 +
 +
 +
Nome: Verifica posição no tabuleiro
 +
 +
Identificador: CSU02;
 +
 +
Sumário: SA  tem conhecimento da posição do robô no tabuleiro, assim como ele mesmo ;
 +
 +
Ator primário: SA e SR;
 +
 +
Precondições:
 +
 +
Robô já ter sido cadastrado;
 +
 +
O robô já ter se autenticado;
 +
 +
Fluxo principal:
 +
 +
SA recebe os dados de onde o robô está no tabuleiro;
 +
 +
SR toma conhecimento de sua posição;
 +
 +
Nome: Recebe dados
 +
 +
Identificador: CSU03;
 +
 +
Sumário: SR recebe dados da partida através do SA de início,  pausa e fim da partida, validação de caças .
 +
 +
Ator primário: SR e SA;
 +
 +
Precondições:
 +
 +
Robô já ter sido cadastrado;
 +
 +
O robô já ter se autenticado;
 +
 +
Fluxo principal:
 +
 +
SA envia dados de início, pausa e fim da partida (quando um jogador ganha) e valida as caças que o robõ pegou;
 +
 +
SR processa os dados e define sua posição inicial e mapeia as caças do jogo.
 +
 +
 +
Nome: Inicia a partida, sorteia as caças
 +
 +
Identificador: CSU04;
 +
 +
Sumário: SA inicia a partida e sorteia as caças.
 +
 +
Atores primários: SA;
 +
 +
Precondições:
 +
 +
 +
Robô já ter sido cadastrado;
 +
 +
O robô já ter se autenticado;
 +
 +
Fluxo principal:
 +
 +
SA recebe a informação do cliente externo de que deve iniciar a partida, então sorteia as caças.;
 +
 +
 +
 +
 +
Nome: Declara vencedor
 +
 +
Identificador: CSU06;
 +
 +
Sumário: SA faz a contagem de caças válidas e declara vencedor.
 +
 +
Ator primário: SA;;
 +
 +
 +
Precondições:
 +
 +
Robô já ter sido cadastrado;
 +
 +
O robô já ter se autenticado;
 +
 +
Fluxo principal:
 +
 +
SA envia dados do robô que obteve o maior número de caças válidas, portanto do o vencedor.;
 +
 +
SA finaliza a partida..
 +
 +
Nome: Pause/Start
 +
 +
Identificador: CSU07;
 +
 +
Sumário: SA pausa, para ou inicia a partida de acordo com a vontade do cliente externo ou caso algum robô tenha ganhado.;
 +
 +
Ator primário: SA;
 +
 +
Precondições:
 +
 +
Robô já ter sido cadastrado;
 +
 +
O robô já ter se autenticado;
 +
 +
Fluxo principal:
 +
 +
SA verifica se cliente externo deseja iniciar a partida ou pausar a partida;
 +
 +
SA verifica se as caças válidas do robô;
 +
 +
SA verifica ganhador;
 +
 +
SA finaliza a partida.;
  
 
{{collapse bottom}}
 
{{collapse bottom}}

Edição das 14h57min de 25 de março de 2019

Alunos:

Suyan M. V. Moura. (suyan.m@aluno.ifsc.edu.br)

Yara Karoline Garcia. (yara.k@aluno.ifsc.edu.br)

Link repositório Git:

https://github.com/SuyKingsleigh/PJI-2


Atualizações:

Diagramas:

Diagrama de Caso de Uso S.A.

Sa-diagrama-caso-de-uso.png

Requisitos funcionais S.R.

Requisitos funcionais

RF01 O sistema deve permitir criação e gerência de cadastro de um robô.

ID, Senha, Cor do robô.

RF02 O sistema de deve manter um histórico das partidas realizadas.

Participantes, Vencedor, duração, pontuação.

RF03 O sistema deve ser capaz de fazer a autenticação dos robôs cadastrados.

Busca num banco de dados ID, se a ID estiver lá, verifica se a senha bate com a do banco.

RF04 os robôs devem ser capazes de operar nos modos manual e autônomo.

Troca seria realizada na mesma interface onde faz o cadastro.

RF05 O sistema deve validar e contabilizar as caças já encontradas pelo robô.

RF06 O sistema deve dar início a partida, sortear os locais das caças e informá-los aos robôs.

Quantas caças deverão ter?

RF07 O sistema deve prover uma interface de monitoramento para o robô em modo autônomo.

Um mapa mostrando as caças e a posição de cada robô?

RF08 O sistema deve prover uma interface de controle e monitoramento para os robôs em modo manual.

Estender a interface do modo autônomo.

RF09 O sistema deve permitir que, quando em modo autônomo, o robô execute os movimentos programados a partir do algoritmo implementado.

Como assim?

RF010 O sistema deve permitir pausa e reset da partida.

Por onde será feito isso?

RF011 O sistema deve permitir que os resultados do jogo sejam vistos pelos espectadores em tempo real.

Será exibido na interface de controle/monitoramento

RF012 O sistema não deve permitir que os robôs se choquem.

RF013 O sistema deve declarar um vencedor assim que todas as caças forem encontradas.

RF014 O sistema pode ter N competidores *

RF015 O sistema deve projetar informações no tabuleiro (Caças ativas, Caças encontradas, e placar)

Requisitos não funcionais

RNF01 A interface do sistema de comunicação com o usuário deve ser intuitiva.

RNF02 O tabuleiro será composto por linhas pretas e todos com cor.

Todos o que?

RNF03 O tabuleiro terá as dimensões definidas (2m x 2m).

Pode ser ajustável?

RNF04 O tabuleiro será composto por 100 quadrados de dimensões: 20cm x 20cm.

Pode ser ajustável?²

RNF05 O tabuleiro será limitado por uma borda vermelha.

RNF06 O placar mostrado aos usuários deve ser de fácil identificação.

RNF07 O robô deve ter uma cor para identificação.


Diagrama de Caso de Uso S.R

Sr-diagrama-caso-de-uso2.png

Diagrama de Caso de Uso S.S

Ss-diagrama-caso-de-uso-f.png

Diagrama de Classe: Mover

Diagrama-classe-mover.png


Requisitos funcionais S.S

Nome: Verifica Log in

Identificador: CSU01;

Sumário: SA autentica o log in do robô ;

Ator primário: SA;

Precondições:

Fluxo principal:

SA solicita a SS sua identificação;

SS responde com a identificação;

Fluxo de exceção:

Identificação não cadastrada, cadastrar identificação.


Nome: Verifica posição no tabuleiro

Identificador: CSU02;

Sumário: SA tem conhecimento da posição do robô no tabuleiro, assim como ele mesmo ;

Ator primário: SA e SR;

Precondições:

Robô já ter sido cadastrado;

O robô já ter se autenticado;

Fluxo principal:

SA recebe os dados de onde o robô está no tabuleiro;

SR toma conhecimento de sua posição;

Nome: Recebe dados

Identificador: CSU03;

Sumário: SR recebe dados da partida através do SA de início, pausa e fim da partida, validação de caças .

Ator primário: SR e SA;

Precondições:

Robô já ter sido cadastrado;

O robô já ter se autenticado;

Fluxo principal:

SA envia dados de início, pausa e fim da partida (quando um jogador ganha) e valida as caças que o robõ pegou;

SR processa os dados e define sua posição inicial e mapeia as caças do jogo.


Nome: Inicia a partida, sorteia as caças

Identificador: CSU04;

Sumário: SA inicia a partida e sorteia as caças.

Atores primários: SA;

Precondições:


Robô já ter sido cadastrado;

O robô já ter se autenticado;

Fluxo principal:

SA recebe a informação do cliente externo de que deve iniciar a partida, então sorteia as caças.;



Nome: Declara vencedor

Identificador: CSU06;

Sumário: SA faz a contagem de caças válidas e declara vencedor.

Ator primário: SA;;


Precondições:

Robô já ter sido cadastrado;

O robô já ter se autenticado;

Fluxo principal:

SA envia dados do robô que obteve o maior número de caças válidas, portanto do o vencedor.;

SA finaliza a partida..

Nome: Pause/Start

Identificador: CSU07;

Sumário: SA pausa, para ou inicia a partida de acordo com a vontade do cliente externo ou caso algum robô tenha ganhado.;

Ator primário: SA;

Precondições:

Robô já ter sido cadastrado;

O robô já ter se autenticado;

Fluxo principal:

SA verifica se cliente externo deseja iniciar a partida ou pausar a partida;

SA verifica se as caças válidas do robô;

SA verifica ganhador;

SA finaliza a partida.;

Requisitos:

Relatório de testes:

Conteúdo das Aulas:

25/02/2019 - Apresentação de seminário

Links úteis:

Página da disciplina: https://wiki.sj.ifsc.edu.br/index.php/PJI2-EngTel_(p%C3%A1gina)

  • Colocar documentação das APIs usadas*