Diagrama de Casos de Uso

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/31d3301a-35aa-4370-9bb5-37b96e83481e/OficinasZeColBerry-Casos_de_Uso.png

O ZéColBerry terá como interação dois atores: o adulto, que fará o acesso através do aplicativo de celular, e a criança que interagirá diretamente com o ZéColBerry.

Nos casos de uso temos que o Adulto pode customizar as rotinas de exercício (RF09), isso permite com que ele selecione quais exercícios serão feitos durante a rotina, dentre os quatro previamente planejados: contagem (RF20.1), cor (RF20.2), forma (RF20.3) e dia da semana (RF20.4). O caso de uso ainda prevê o salvamento da rotina (RF12).

O caso de uso 'Seleciona Nível de Dificuldade' permite ao adulto selecionar o nível de dificuldade de cada tipo de exercício individualmente (RF10). As opções de dificuldade são 'easy' (RF25), 'normal' (RF26) e 'hard' (RF27).

O caso de uso 'Monitora Níveis de Acerto' envolve o acesso ao histórico de acertos (RF11) bem como a informação de que a criança está pronta para avançar de nível (RF13).

O caso de uso de 'Cadastrar Criança' está mapeado com o requisito que o aplicativo deve permitir o registro do nome da criança (RF07). E caso de uso 'Acessa Criança' permite que uma criança já cadastrada continue sua aprendizagem de inglês.

O caso de uso 'Inicia Rotina' é o coração da nossa implementação. Ele é o caso mais complexo por envolver ambos os atores (Adulto e Criança) e a maior parte do processamento. O Inicia Rotina inicia com o pareamento entre o Aplicativo e o Raspberry através de Bluetooth (RF08, RF14). Após isso o Aplicativo envia a série de exercícios para o Raspberry. O Raspberry então aguarda a presença da criança (RF01, RF03, RF18, RF19). Então são iniciados os exercícios, o Raspberry deve utilizar o Speaker para informar a pergunta para a criança (RF20, RF06) e, dependendo da dificuldade, também o LCD (RF25, RF26, RF27). A leitura das respostas é feita de duas formas, através do Sensor de Cor (RF04, RF21.2, RF22) ou através do Microfone (RF02). As respostas são então enviadas a Azure por Wi-Fi (RF15) e os resultados pontuados de acordo. Os dados históricos são então enviados de volta para o Aplicativo (RF16, RF17).

O último caso de uso, 'Movimentar Membros' diz respeito a possibilidade de a criança pedir ao ZéColBerry que mova algum dos quatro membros: 'braço direito', 'braço esquerdo', 'perna direita' ou 'perna esquerda'. O robô deve então mover o membro de acordo com o pedido (RF23).

Diagramas de Sequência

A seguir temos os Diagramas de Sequência para cada Caso de Uso:

Customização de Rotinas de Exercício

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/d9bf86d5-b93c-4cb1-abc5-f377e23724d8/OficinasZeColBerry-DS_-_Rotinas_de_Exerccio.png

Seleciona Nível de Dificuldade

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/18727e1d-e95e-4e4e-9cd0-42484739d236/OficinasZeColBerry-DS_-_Dificuldade.png

Monitorar Níveis de Acerto

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4dadee23-bbdc-4879-8f5d-a3b2c35b53c0/OficinasZeColBerry-DS_-_Histrico.png

Cadastrar Criança

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/39c693c6-331d-429f-bda8-230dd3c25ba9/OficinasZeColBerry-DS_-_Cadastra_Criana.png

Acessa Criança