PJI29006-2019-1
Dados da Disciplina
- Tutores: Roberto de Matos
- Encontros: Segundas 13:30h no Laboratório de Redes
- Informações da disciplina
- Plano de Ensino
Características da Disciplina
- Grau de independência médio com relação ao tutor
- Casos de insucesso
- Porque não deu certo? Como eu fiz?
- Pesquisa de como executar tarefas
- Como eu efetuei a pesquisa?
- Projeto vai além dos limites da sala de aula
- Os checkpoints devem ser respeitados
- Apresentações nos checkpoints devem ser organizados previamente e cada aluno deve apresentar suas contribuições
- É responsabilidade do grupo demandar equipamentos, softwares, recursos de forma geral
Página dos Grupos
- Páginas dos Grupos 2019-1
Material Plataforma
- Software:
- EV3dev & EV3 Python Playlist
- Linux (EV3dev):
- Python (EV3 Python):
Diário de Aulas
Aula 11/02/2019: Cancelada
Cancelada devido ao afastamento para visita técnica.
Aula 18/02/2019: Apresentação da Disciplina
- Discussão do Tema de Trabalho e apresentação das restrições
- Avaliação
- Resultados Esperados
- Formação de Grupos
- Atividade (Próxima Aula)
- Grupo 1:
- Paradigma da orientação a objetos
- Modelagem casos de Uso
- Diagrama de Casos de Uso
- Grupo 2:
- Classe e Diagrama de classes (relacionamentos)
- Herança, classes abstratas e interfaces
- Polimorfismo
- Grupo 3:
- Diagramas comportamentais
- Diagrama de sequência
- Diagrama de Implementação
- Todos os grupos:
- Usar os diagramas do Grupo 2018-2, mostrando erros e acertos.
Aula 25/02/2019: Seminários
- Seminários (Avaliação):
Especificação
A execução do jogo foi dividida em três sistemas diferentes: Sistema de Auditoria (SA), Sistema Supervisório (SS) e Sistema do Robô (SR). Para fins de controle de partidas, histórico, cadastro de robôs e controle de captura de caças foi criado do sistema de auditoria, que age como juiz. O sistema supervisório atua como mediador entre os sistemas de auditoria e robô, é responsável por transmitir as informações da partida recebida do SA para os sistemas supervisórios de cada equipe, bem como receber informações dos SR e retransmiti-las ao SA. O sistema do robô fica responsável pela lógica para encontrar os alvos.
Levantamento de Requisitos
- Funcionais
RF01 O sistema deve permitir criação e gerência de cadastro de um robô.
RF02 O sistema de deve manter um histórico das partidas realizadas.
RF03 O sistema deve ser capaz de fazer a autenticação dos robôs cadastrados.
RF04 Os robôs devem ser capazes de operar nos modos manual e autônomo.
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.
RF07 O sistema deve prover uma interface de monitoramento para o robô em modo autônomo.
RF08 O sistema deve prover uma interface de controle e monitoramento para o robôs em modo manual.
RF09 O sistema deve permitir que, quando em modo autônomo, o robô execute os movimentos programados a partir do algoritmo implementado.
RF010 O sistema deve permitir pausa e reset da partida.
RF011 O sistema deve permitir que os resultados do jogo sejam vistos pelos espectadores em tempo real.
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 2 ou 3 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.
RNF03 O tabuleiro terá as dimensões definidas (2m x 2m).
RNF04 O tabuleiro será composto por 100 quadrados de dimensões: 20cm x 20cm.
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.
'* Requisitos novos
- Próximas Atividades
- Analisar diagrama dos grupos e verificar se cumprem os requisitos
- Páginas dos Grupos 2018-2
- Página 2018-2
Aula 06/03/2019: Aula Extra
- Apresentação seminário "Caso de Uso"
- Dúvidas sobre os casos de uso do SR
Grupo 1 (Alisson)
- Apresentou atrasado
- Faltou apresentar o formato da descrição do casos de uso para ser usado em sala de aula
- Nota: 6,00
Grupo 2 (Adonis, Daniel e Rafael)
- Abordaram todos os assuntos pedidos trazendo exemplos práticos
- Todos participaram das explicações
- Souberam responder as perguntas
- Apresentação bem elaborada
- Nota: 10,00 (Para todos os integrantes do grupo).
Grupo 3 (Suyan e Yara)
- Abordaram todos os assuntos pedidos trazendo exemplos práticos
- Todos participaram das explicações
- Souberam responder as perguntas
- Apresentação bem elaborada
- Nota: 10,00 (Para todos os integrantes do grupo).
Aula 11/03/2019: Apresentação UC do SR
Grupo 1 (Alisson, Rafael)
- (NOK) Descrição dos casos casos (-5)
- (OK) Diagrama dos casos de uso
- Nota: 5,00 (Para todos os integrantes do grupo).
Grupo 2 (Adonis, Daniel)
- (OK) Descrição dos casos casos
- (OK) Diagrama dos casos de uso
- Problema no entendimento do sistema e reflexo na simplificação dos casos de uso (-4)
- Nota: 6,00 (Para todos os integrantes do grupo).
Grupo 3 (Suyan e Yara)
- (NOK) Descrição dos casos casos (-5)
- (OK) Diagrama dos casos de uso
- Apresentaram a discussão dos requisitos (+1)
- Nota: 6,00 (Para todos os integrantes do grupo).
Próximas Atividades
- Deadline 25/03
- Estudar a plataforma (EV3), como colocar o Linux no EV3 e a biblioteca EV3 Python.
- Apresentar Robô se movimentando adequadamente em todas as direções (Diagrama das Classes Envolvidas)
- DESCRIÇÃO dos casos de uso do SS (Sistema Supervisor)
- Diagrama de caso de uso do SS
- Material Plataforma
- Software:
- EV3dev & EV3 Python Playlist
- Linux (EV3dev):
- Python (EV3 Python):
Aula 25/03/2019: Avaliação do Andamento (Casos de Uso do SS)
Grupo 1 (Alisson, Rafael)
- (OK) Apresentar Robô se movimentando adequadamente em todas as direções (Diagrama das Classes Envolvidas)
- (OK) Descrição dos casos casos do SS. OBS.: Precisa completar as descrições para manter a nota abaixo.
- (OK) Diagrama dos casos de uso do SS. OBS.: Precisa ajustar o que foi pedido para manter a nota abaixo.
- Nota: 10,00 (Para todo os integrantes).
Grupo 2 (Adonis, Daniel)
- (NOK) Apresentar Robô se movimentando adequadamente em todas as direções (Diagrama das Classes Envolvidas) (-3)
- (OK) Descrição dos casos casos. OBS.: Muitos problemas recorrentes na compreensão, já discutidos no SR (-2)
- (OK) Diagrama dos casos de uso. OBS.: Muitos problemas recorrentes na compreensão, já discutidos no SR (-2)
- Nota: 3 (Para todo os integrantes).
Grupo 3 (Suyan e Yara)
- (NOK) Apresentar Robô se movimentando adequadamente em todas as direções (Diagrama das Classes Envolvidas). OBS: Não funcionava no tabuleiro. Movimentação simples. (-1,5)
- (NOK) Descrição dos casos casos (-3,5)
- (OK) Diagrama dos casos de uso. OBS.: Vários diagramas, mas nenhum preciso. Muitos problemas na compreensão (-2)
- Nota: 3 (Para todo os integrantes).
Próximas Atividades
- Deadline 08/03
- DESCRIÇÃO dos casos de uso do SA (Sistema do Árbitro)
- Diagrama de caso de uso do SA
- Definição de todas as mensagens entre os sistemas
- Apresentação de todos os UC do SS e do SR atualizados
Aula 01/04/2019: Acompanhamento
Aula 08/04/2019: Avaliação do Andamento (Casos de Uso do SA e outras atividades)
https://docs.google.com/spreadsheets/d/1svLEAV_Xb1WjENO1vFbNJ5QXINO6cYz20Vf_oeHAk7I/edit?usp=sharing
Grupo 1 (Alisson, Rafael)
- (-) DESCRIÇÃO dos casos de uso do SA (Sistema do Árbitro)
- (-) Diagrama de caso de uso do SA
- (-) Definição de todas as mensagens entre os sistemas
- (-) Apresentação de todos os UC do SS e do SR atualizados
- Nota: - (Para -).
Grupo 2 (Adonis, Daniel)
- (-) DESCRIÇÃO dos casos de uso do SA (Sistema do Árbitro)
- (-) Diagrama de caso de uso do SA
- (-) Definição de todas as mensagens entre os sistemas
- (-) Apresentação de todos os UC do SS e do SR atualizados
- Nota: - (Para -)
Grupo 3 (Suyan e Yara)
- (-) DESCRIÇÃO dos casos de uso do SA (Sistema do Árbitro)
- (-) Diagrama de caso de uso do SA
- (-) Definição de todas as mensagens entre os sistemas
- (-) Apresentação de todos os UC do SS e do SR atualizados
- Nota: - (Para -).
Aula 15/04/2019: Reunião de Gerência
- Mudança no paradigma de organização
- Grupos devem apresentar cronograma com Milestones e atividades na próxima semana
Aula 22/04/2019: Apresentação do cronograma
As equipes apresentaram o cronograma para o desenvolvimento até o fim do semestre.
Aula 29/04/2019: Acompanhamento
- Roteiro de testes:
- Teste do caso de uso do CADASTRAR/REMOVER Robôs
- Cadastrar um robô com sucesso
- Listar os robôs cadastrados
- Remover um robô da lista
- Reiniciar o sistema e verificar a persistência da lista de Robôs.
- Tentar cadastrar um robô com o mesmo nome.
- Teste do caso de uso do INICIAR partida
- Visualizar SSs presentes (ativos) no SA
- Tentar configurar partida com apenas um SS presente (não deve permitir o início da partida)
- Configurar com sucesso uma partida manual/automático, monstrando na tela dos SSs que eles foram selecionados para a partida.
- Iniciar partida manual/automático com apenas um Robô (SS) presente devido a queda de um SS
- Iniciar uma partida manual com sucesso mostrando mensagem na tela dos SSs de "início de partida"
- Iniciar uma partida automática com sucesso mostrando mensagem na tela dos SSs de "início de partida"
- Teste do caso de uso de PAUSAR/REINICIAR partida
- Pausar/reiniciar partida manual com indicativos nas telas dos SSs
- Pausar/reiniciar partida automática com indicativos nas telas dos SSs e comportamento do robô adequado
- Teste do caso de uso de INICIAR (JOGAR MANUAL)
- Realizar uma partida manual com captura e validação pelo árbitro de todas as caças, indicação do vencedor e finalização da partida (botão de voltar para a tela de início do SA).
- Realizar uma segunda partida manual ou automática após finalização da primeira.
- Teste do caso de uso de INICIAR (JOGAR AUTOMÁTICO)
- Realizar uma partida automático com captura, sinalização automático da captura e validação pelo árbitro de todas as caças, indicação do vencedor e finalização da partida (botão de voltar para a tela de início do SA).
- Realizar uma segunda partida manual ou automática após finalização da primeira.
- Teste do caso de uso de CONSULTAR HISTÓRICO
- Verificar o histórico logo após cada partida.
- Verificar o histórico após reiniciar o SA.
- Teste do caso de uso do CADASTRAR/REMOVER Robôs