Felipe-PJI2-2020-1

De MediaWiki do Campus São José
Ir para: navegação, pesquisa

Responsável

  • Aluno: Felipe Cardoso
  • Email: felipe.p19@aluno.ifsc.edu.br

Etapas

Ilustração dos Sistemas

Ilustração dos Sistemas

Visão Geral dos componentes do Sistema
Levantamento de Requisitos

Levantamento de Requisitos

Requisitos Funcionais (RF):

RF.01 - Permitir que sejam inseridos módulos/drivers para novos sensores;

RF.02 - Possibilitar a instalação de sensor(es);

RF.03 - Permitir cadastrar grandezas a serem medidas;

RF.04 - Permitir a configuração do sensor e da grandeza a ser medida;

RF.05 - Possibilitar a configuração de limiar (inferior e superior) da grandeza medida pelo sensor;

RF.06 - Gerar notificações de medidas;

RF.07 - Permitir a leitura da grandeza medida pelo sensor;


Requisitos não funcionais (RNF):

RNF.01 - As funcionalidades do sistema devem ser acessadas através de uma API REST;

RNF.02 - O sistema deve possuir módulos/drivers para os sensores: HDC1080, BMP180, DHT11 e Presença PIR;

RNF.03 - O Sistema deve ser implementado em uma RaspBerry PI;


Regras de Negócio (RN):

RN.01 - Somente sensor com módulo/driver previamente inserido poderá ser instalado;

RN.02 - Uma mesma grandeza poderá ser medida por mais de um sensor;

RN.03 - Poderá ser instalado mais de um sensor do mesmo tipo;

RN.04 - As notificações só serão geradas para medidas que atingirem os limiares configurados;


Análise de Requisitos

Análise de Requisitos

Modelagem de Casos de Uso
Sistema Estação Meteorológica
Atores

Admin: Indivíduo responsável pela administração do Sistema.

Sensor: Hardware responsável por fornecer informações de grandezas medidas para o Sistema.

Sistema Servidor: Sistema responsável pela interface WEB.

Diagrama de Casos de Uso
Casos de uso do Sistema Estação Meteorológica
Descrição dos Casos de Uso
Inserir Módulo (CSU01)

Caso de uso: Inserir Módulo

Identificador: CSU01

Requisito: RF.01

Sumário: Admin utiliza o Sistema para inserir um novo módulo de um tipo de Sensor.

Ator Primário: Admin

Fluxo Principal:

1. O Admin envia ao Sistema uma requisição com as informações (Nome e Código Fonte) para inserir um novo Módulo.

2. A instalação e validação do Módulo é executada pelo Sistema e o resultado exibido ao Admin.

Fluxo de Exceção (2): Validação sem sucesso.

a. Se a validação do Módulo tiver inconsistências, o Sistema avisa ao Admin o motivo e o caso de uso retorna ao passo 1.

Pós-condições: Módulo foi inserido no Sistema e pode ser usado para instalação de sensores.

Instalar Sensor (CSU02)

Caso de uso: Instalar Sensor

Identificador: CSU02

Requisito: RF.02

Sumário: Admin utiliza o Sistema para instalar o Sensor desejado.

Ator Primário: Admin

Ator Secundário: Sensor

Precondições: O Módulo referente ao Sensor a ser instalado deve estar inserido no Sistema.

Fluxo Principal:

1. A instalação física do Sensor é realizada pelo Admin.

2. O Admin envia requisição para o Sistema solicitando informações dos Módulos instalados.

3. O Sistema apresenta os Módulos instalados.

4. O Admin solicita ao Sistema a instalação do Sensor informando um Nome e o Módulo que esse Sensor irá utilizar.

5. O Sistema executa uma verificação da instalação física do Sensor e realiza uma leitura inicial.

6. O Sensor retorna a leitura para o Sistema.

7. Sistema exibe as informações para o Admin.

Fluxo de Exceção (5): Sensor não reconhecido ou erro durante leitura inicial

a. Se a verificação da instalação física do Sensor não for positiva, o Sistema exibe o erro e o caso de uso retorna ao passo 2.

b. Se a leitura inicial do Sensor falhar , o Sistema apresenta o motivo e o caso de uso termina.

Pós-condições: O Sensor foi instalado e está disponível para configurações.

Regras de Negócio: RN.01.

Cadastrar Grandeza (CSU03)

Caso de uso: Cadastrar Grandeza

Identificador: CSU03

Requisito: RF.03

Sumário: Admin cadastra no Sistema uma grandeza a ser medida.

Ator Primário: Admin

Fluxo Principal:

1. O Admin envia uma requisição ao Sistema informando uma grandeza e unidade de medida para cadastro.

2. O Sistema verifica informações e exibe resultado para o Admin.

Fluxo de Exceção (2): Grandeza já existe.

a. Se a grandeza desejada já estiver sido cadastrada anteriormente, o Sistema reporta o fato e o caso de uso retorna ao passo 1.

Pós-condições: A grandeza foi cadastrada e fica disponível para configuração do Sensor.

Configurar Sensor (CSU04)

Caso de uso: Configurar Sensor

Identificador: CSU04

Sumário: Admin realiza configurações do Sensor no Sistema

Ator Primário: Admin

Precondições: Pelo menos um Sensor instalado no Sistema.

Fluxo Principal:

1. O Admin solicita ao Sistema uma lista com sensores instalado.

2. O Sistema exibe ao Admin a lista.

3. O Admin informa ao sistema o Sensor a ser configurado.

4. Sistema apresenta ao Admin as configurações possíveis para o Sensor.

Pós-condições: O sistema iniciou a etapa de configuração do Sensor.

Configurar Limiar (CSU05)

Caso de uso: Configurar Limiar

Identificador: CSU05

Requisito: RF.05

Sumário: Admin utiliza o Sistema para efetuar a configuração de limiar (inferior e superior).

Ator Primário: Admin

Fluxo Principal:

1. Herdar o caso de uso: CSU04.

2. O Admin envia uma requisição ao Sistema com as informações do Sensor que deseja configurar e os valores para limiar inferior e superior.

3. O Sistema executa a validação dos valores e apresenta resultado ao Admin.

Fluxo de Exceção (3): Sensor não suporta valor informado.

a. Se a validação dos valores de limiar não for positiva, o Sistema exibe o erro e o caso de uso retorna ao passo 2.

Pós-condições: Os limiares para envio de Notificação foram configurados.

Configurar Grandeza (CSU06)

Caso de uso: Configurar Grandeza

Identificador: CSU06

Requisito: RF.04

Sumário: Admin utiliza o Sistema para efetuar a configuração da grandeza que será medida pelo Sensor.

Ator Primário: Admin

Ator Secundário: Sensor

Precondições: Pelo menos uma grandeza cadastrada no Sistema.

Fluxo Principal:

1. Herdar o caso de uso: CSU04.

2. O Admin envia uma requisição ao Sistema com as informações do Sensor que deseja configurar e a grandeza que será medida.

3. O Sistema realiza a configuração da grandeza no Sensor.

4. O Sistema exibe resultado ao Admin.

Fluxo de Exceção (3): Houve erro ao configurar grandeza.

a. Se a configuração da grandeza no Sensor falhar, o Sistema reporta o erro e o caso de uso termina.

Pós-condições: A grandeza de medida do Sensor foi configurada.

Ler Sensor (CSU07)

Caso de uso: Ler Sensor

Identificador: CSU07

Sumário: Sistema realiza leitura da grandeza medida pelo Sensor informado.

Ator Primário: Sensor

Precondições: Sensor informado deve estar instalado e configurado.

Fluxo Principal:

1. Sistema executa leitura da medida no Sensor informado.

2. O Sensor informa leitura realizada para o Sistema.

Pós-condições: A leitura da grandeza medida pelo Sensor solicitado foi realizada.

Ler Medida Atual (CSU08)

Caso de uso: Ler Medida Atual

Identificador: CSU08

Requisito: RF.07

Sumário: Admin utiliza Sistema para realizar leitura atual da grandeza medida pelo Sensor.

Ator Primário: Admin

Precondições: Sensor desejado instalado e configurado.

Fluxo Principal:

1. O Admin solicita ao Sistema uma lista com sensores instalado.

2. O Sistema apresenta a lista

3. Admin envia requisição ao Sistema informando qual Sensor deseja obter leitura.

4. Incluir caso de uso: CSU07.

5. O Sistema exibe ao Admin o valor da grandeza medida.

Fluxo de Exceção (4): Erro ao obter leitura do Sensor.

a. Se a leitura da grandeza medida pelo Sensor falhar, o Sistema exibe o erro e o caso de uso retorna ao passo 2.

Pós-condições: A leitura da medida atual foi apresentada para o Admin.

Gerar Notificação (CSU09)

Caso de uso: Gerar Notificação

Identificador: CSU09

Requisito: RF.06

Sumário: Sistema gera notificação para Sistema Servidor caso um limiar seja atingido.

Ator Primário: Sistema Servidor

Precondições: Pelo menos um Sensor instalado e configurado.

Fluxo Principal:

1. Sistema verifica a lista com Sensores instalados e configurados.

2. Incluir o caso de uso CSU07 e realizar leitura para cada Sensor da lista.

3. O Sistema verifica leitura de cada Sensor e compara com seus limiares configurados.

4. Se algum limiar for atingido, o Sistema envia notificação para o Sistema Servidor.

Fluxo de Exceção (2): Erro ao obter leitura do Sensor.

a. Se a leitura da grandeza medida por um Sensor falhar, o Sistema exibe o erro e o caso de uso continua com a leitura do próximo Sensor.

Pós-condições: As leituras de cada Sensor foram realizadas e notificações necessárias enviadas.

Regras de Negócio: RN.04.

Sistema Servidor
Atores

Usuário: Indivíduo com possibilidade de realizar algumas operações no Sistema

Sistema E.M.: Sistema Estação Meteorológica.

Diagrama de Casos de Uso
Casos de uso do Sistema Servidor
Descrição dos Casos de Uso
Configurar Sensor (CSU01)

Caso de uso: Configurar Sensor

Identificador: CSU01

Sumário: Usuário realiza configurações do Sensor no Sistema

Ator Primário: Usuário

Ator Secundário: Sistema EM

Precondições: Pelo menos um Sensor instalado no Sistema EM.

Fluxo Principal:

1. O Usuário acessa Sistema Servidor para configurar o Sensor.

2. Sistema Servidor solicita lista de Sensores instalados para o Sistema EM.

3. O Sistema EM retorna a lista para o Sistema Servidor que exibe ao Usuário.

4. O Usuário escolhe o Sensor a ser configurado.

5. Sistema Servidor solicita opções de configurações do Sensor escolhido para o Sistema EM.

6. Sistema EM envia as configurações possíveis para o Sistema Servidor.

7. Sistema Servidor apresenta as configurações possíveis para o Usuário.

8. Usuário seleciona a configuração desejada e informa valores.

9. Sistema Servidor envia as configurações para o Sistema EM.

10. Sistema EM executa a validação das configurações e envia resultado para o Sistema Servidor.

11. Sistema Servidor exibe resultado para o Usuário.

Fluxo de Exceção (10): Configuração não suportada.

a. Se a validação das configurações não for positiva, o Sistema Servidor exibe o erro e o caso de uso retorna ao passo 3.

Pós-condições: As configurações do Sensor foram executadas.

Ler Medida Atual (CSU02)

Caso de uso: Ler Medida Atual

Identificador: CSU02

Requisito: RF.07

Sumário: Usuário utiliza Sistema Servidor para realizar leitura atual da grandeza medida por um Sensor.

Ator Primário: Usuário

Ator Primário: Sistema EM

Precondições: Sensor desejado instalado e configurado.

Fluxo Principal:

1. O Usuário acessa Sistema Servidor para realizar leitura de medida atual de um Sensor.

2. O Sistema Servidor solicita ao Sistema EM a lista de Sensores instalados e configurados.

3. Sistema EM retorna a lista para o Sistema Servidor que exibe ao Usuário.

4. Usuário seleciona Sensor que deseja obter leitura.

5. O Sistema Servidor envia solicitação de leitura atual ao Sistema EM.

6. O Sistema EM executa a leitura da grandeza medida pelo Sensor e retorna para o Sistema Servidor.

7. O Sistema Servidor apresenta leitura ao Usuário.

Fluxo de Exceção (6): Erro ao obter leitura do Sensor.

a. Se a leitura da grandeza medida pelo Sensor falhar, o Sistema Servidor exibe o erro e o caso de uso retorna ao passo 2.

Pós-condições: A leitura da medida atual foi apresentada para o Usuário.

Receber Notificação (CSU03)

Caso de uso: Receber Notificação

Identificador: CSU03

Requisito: RF.06

Sumário: Sistema Servidor recebe notificação do Sistema EM

Ator Primário: Sistema EM

Precondições: Limiar de algum Sensor atingido.

Fluxo Principal:

1. Sistema EM executa leitura de todos os sensores instalados e configurados.

2. Se o limiar de medida de algum Sensor for atingido, Sistema EM gera a notificação para o Sistema Servidor

3. Sistema Servidor acrescenta notificação em sua lista de notificações.

Pós-condições: Notificações disponíveis para Usuário.

Regras de Negócio: RN.04.

Visualizar Notificação (CSU04)

Caso de uso: Ver Notificação

Identificador: CSU04

Requisito: RF.06

Sumário: Usuário utiliza o Sistema Servidor para visualizar notificação de um Sensor.

Ator Primário: Usuário

Precondições: Pelo menos uma Notificação de limiar atingido disponível na lista de notificações.

Fluxo Principal:

1. O Usuário acessa Sistema Servidor para visualizar a notificação.

2. Sistema Servidor verifica se existe alguma notificação e exibe ao Usuário.

Pós-condições: A visualização da notificação foi realizada pelo Usuário

Regras de Negócio: RN.04.

Modelagem de Classes de Domínio
Sistema Estação Meteorológica
Diagrama de classes do Sistema Estação Meteorológica
Sistema Servidor

Apresentações:

Slides da Apresentação do Seminário

Slides da Apresentação sobre GPIO na Raspberry PI