|
|
Linha 73: |
Linha 73: |
| RNF07 O robô deve ter uma etiqueta de identificação. | | RNF07 O robô deve ter uma etiqueta de identificação. |
| {{collapse bottom}} | | {{collapse bottom}} |
− |
| |
− | == '''Requisitos Funcionais''' ==
| |
− |
| |
− |
| |
− | ::'''RF01 O sistema deve permitir criação e gerência de cadastro de um robô.'''
| |
− | ::[SA] - O que deve ter neste cadastro? Como deve ser feito o cadastro, web?
| |
− | ::Sugestão: usuário, senha, nome. Cadastro via Web.
| |
− | ::
| |
− | ::'''RF02 O sistema de deve manter um histórico das partidas realizadas.'''
| |
− | ::[SA] - Qual tamanho do histórico?
| |
− | ::Sugestão: O histórico deve manter o resultado das últimas com o nome dos robôs participantes.
| |
− | ::Sugestão: 100 últimas partidas.
| |
− |
| |
− | ::'''RF03 O sistema deve ser capaz de fazer a autenticação dos robôs cadastrados.'''
| |
− | ::[SA] - Em que momento é feita a autenticação?
| |
− | ::Sugestão: a autenticação será ao iniciar uma partida. Antes de iniciar, solicitar partida.
| |
− |
| |
− | ::'''RF04 Os robôs devem ser capazes de operar nos modos manual e autônomo.'''
| |
− | ::[SR] - Existe algum requisito sobre o modo manual? Por onde o robo deve ser guiado?
| |
− | ::Sugestão: interface onde se possa utilizar as setas direcionais do teclado.
| |
− |
| |
− | ::'''RF05 O sistema deve validar e contabilizar as caças já encontradas pelo robô.'''
| |
− | ::[SA] - Afinal, o que será a caça? Como validar?
| |
− |
| |
− | ::'''RF06 O sistema deve dar início a partida, sortear os locais das caças e informá-los aos robôs.'''
| |
− | ::[SA] - Sortear os locais e informar, ou fazer tudo junto? Isso pode mudar a estratégia do robô. Onde será o início?
| |
− | ::Sugestão: primeiro sortear a informar os locais das caças. Depois iniciar.
| |
− | ::Sugestão: início no canto do tabuleiro.
| |
− |
| |
− | ::'''RF07 O sistema deve prover uma interface de monitoramento para o robô em modo autônomo.'''
| |
− | ::[SR] - Há algum requisito para a interface de monitoramento?
| |
− | ::Sugestao: o sistema deve conter o número de caças encontradas e o trajeto realizado. Poderá ser feito via mensagens na tela.
| |
− |
| |
− | ::'''RF08 O sistema deve prover uma interface de controle e monitoramento para o robôs em modo manual.'''
| |
− | ::[SR] - Existe algum requisito sobre o modo manual? Por onde o robo deve ser guiado?
| |
− | ::Sugestão: interface onde se possa utilizar as setas direcionais do teclado.
| |
− |
| |
− | ::'''RF09 O sistema deve permitir que, quando em modo autônomo, o robô execute os movimentos programados a partir do algoritmo implementado.'''
| |
− | ::[SR] - OK
| |
− |
| |
− | ::'''RF010 O sistema deve permitir pausa e reset da partida.'''
| |
− | ::[SA] - No reset, os robôs devem voltar ao início ou fazemos manualmente?
| |
− | ::Sugestão: Fazer manualmente.
| |
− |
| |
− | ::'''RF011 O sistema deve permitir que os resultados do jogo sejam vistos pelos espectadores em tempo real.'''
| |
− | ::[SA] - Há algum requisito para esta visualização?
| |
− | ::Sugestão: Interface web simples, com o placar do jogo.
| |
− |
| |
− | ::'''RF012 O sistema não deve permitir que os robôs se choquem.'''
| |
− | ::[SR] - OK
| |
− |
| |
− | ::'''RF013 O sistema deve declarar um vencedor assim que todas as caças forem encontradas.'''
| |
− | ::[SA] - OK, e os robôs devem parar as suas buscas.
| |
− |
| |
− | ::'''RF014 Antes de iniciar a partida, o sistema deve verificar a posição atual dos robôs.'''
| |
− | ::[SA] - Este requisito será necessário caso o ponto de partida seja sempre o mesmo (RF006).
| |
− |
| |
− | ::'''RF015 Após capturar uma caça, o robô deve avisar o SS, que por sua vez, deve avisar o SA para validação da caça. Esta validação deve''' retornar ::ao SR, confirmando-a ou não.
| |
→ João Leonardo Martins;
→ Vinícius Luz;
Aula 1: 30/7/18
- Definição do grupo;
- Aula expositiva;
- Organização das tarefas através da ferramenta Trello;
Aula 2: 6/8/18
- Efetuada a leitura da documentação do EV3-Python: apesar do bot já possuir o linux instalado, estudamos como seria a implementação do mesmo;
- Início da montagem do robô: encontramos algumas dificuldades pois o equipamento estava completamente desmontado, com isso, até entendermos que a montagem seria basicamente livre, sofremos um pouco na idealização do EV3;
- Alinhamento sobre comunicação com o robô: ficou definido que vamos utilizar um adaptador wi-fi no mesmo, sendo assim, um terceiro equipamento se fez necessário, uma vez que a o EV3 não conecta na rede do Instituto;
Diagramas de Classes e Exemplos de Uso
Foram estudadas as classes Motor e Sensor, das quais foram obtidos os diagramas a seguir.
Diagramas de Classe
|
Classe Motor
Diagrama de Classe - Motor
Classe Sensor
Diagrama de Classe - Sensor
|
Alguns exemplos de implementação foram observados na documentação do EV3, conforme pode ser obtido através destes links: Exemplos Motor e Exemplos Sensor
Levantamento de Requisitos
Requisitos Funcionais e Não funcionais
|
- Construção diagramasr.png de diagrama UML conforme bibliografia:
Imagem 1: diagramas de casos de uso para o SR
Papéis dos atores:
RNF07 O robô deve ter uma etiqueta de identificação.
Ator |
Papel
|
Usuário |
Iniciar partida em modo autônomo
|
Usuário |
Iniciar partida em modo manual
|
Usuário |
Controlar robô em busca de caças no modo manual
|
Usuário |
Monitorar robô em modo autônomo
|
Usuário |
Posicionar o robô para o início da partida
|
SS |
Informar ao robô onde estão as caças
|
SS |
Informar ao robô se a caça encontrada foi validada
|
SS |
Informar ao robô sobre o início da partida
|
SS |
Informar ao robô sobre o término da partida
|
SS |
Informar ao robô se a autenticação foi validada
|
SS |
Informar ao robô sobre pausas na partida
|
Onde: SS - sistema supervisório; Usuário - jogador
|
|