|
|
Linha 361: |
Linha 361: |
| {{Collapse bottom}} | | {{Collapse bottom}} |
| {{Collapse top | bg=lightgray | Descrição dos Casos de Uso}} | | {{Collapse top | bg=lightgray | Descrição dos Casos de Uso}} |
| {{Collapse top | bg=lightwhite | Inserir Módulo (CSU01) }} | | {{Collapse top | bg=lightwhite | Configurar Sensor (CSU01) }} |
|
| |
|
| '''Caso de uso:''' Inserir Módulo | | '''Caso de uso:''' Configurar Sensor |
|
| |
|
| '''Identificador:''' CSU01 | | '''Identificador:''' CSU01 |
|
| |
| '''Requisito:''' RF.01
| |
|
| |
| '''Sumário:''' Admin utiliza o Sistema Servidor para inserir um novo módulo de um tipo de Sensor.
| |
|
| |
| '''Ator Primário:''' Admin
| |
|
| |
| '''Ator Secundário:''' Sistema EM
| |
|
| |
| '''Fluxo Principal:'''
| |
|
| |
| '''1.''' O ''Admin'' acessa ''Sistema Servidor'' para inserir um novo Módulo.
| |
|
| |
| '''2.''' O ''Sistema Servidor'' solicita as informações do novo Módulo.
| |
|
| |
| '''3.''' O ''Admin'' informa um nome e o código fonte do Módulo.
| |
|
| |
| '''4.''' O ''Sistema Servidor'' envia requisição com informações do novo Módulo para o ''Sistema EM''.
| |
|
| |
| '''5.''' ''Sistema EM'' executa validação do Módulo e envia resultado para ''Sistema Servidor''.
| |
|
| |
| '''6.''' ''Sistema Servidor'' apresenta resultado para o ''Admin''.
| |
|
| |
| '''Fluxo de Exceção (5):''' Validação sem sucesso.
| |
|
| |
| '''a.''' Se a validação do Módulo tiver inconsistências, o ''Sistema Servidor'' avisa ao ''Admin'' o motivo e o caso de uso retorna ao passo 2.
| |
|
| |
| '''Pós-condições:''' Módulo foi inserido no ''Sistema EM'' e pode ser usado para instalação de sensores.
| |
|
| |
| {{Collapse bottom}}
| |
|
| |
| {{Collapse top | bg=lightwhite | Instalar Sensor (CSU02) }}
| |
|
| |
| '''Caso de uso:''' Instalar Sensor
| |
|
| |
| '''Identificador:''' CSU02
| |
|
| |
| '''Requisito:''' RF.02
| |
|
| |
| '''Sumário:''' Admin utiliza o Sistema Servidor para instalar o Sensor desejado.
| |
|
| |
| '''Ator Primário:''' Admin
| |
|
| |
| '''Ator Secundário:''' Sistema EM
| |
|
| |
| '''Precondições:''' O Módulo referente ao Sensor a ser instalado deve estar inserido no ''Sistema EM''.
| |
|
| |
| '''Fluxo Principal:'''
| |
|
| |
| '''1.''' O ''Admin'' acessa ''Sistema Servidor'' para instalação de um novo Sensor.
| |
|
| |
| '''2.''' O ''Sistema Servidor'' solicita lista com Módulos instalados ao ''Sistema EM''.
| |
|
| |
| '''3.''' ''Sistema EM'' retorna com a lista dos Módulos.
| |
|
| |
| '''4.''' ''Sistema Servidor'' apresenta lista ao ''Admin'' e solicita informações do novo Sensor.
| |
|
| |
| '''5.''' O ''Admin'' informa um nome para o Sensor e o Módulo que será utilizado.
| |
|
| |
| '''6.''' ''Sistema Servidor'' solicita que o ''Admin'' instale fisicamente o Sensor (caso não tenha sido instalado).
| |
|
| |
| '''7.''' O ''Sistema Servidor'' envia a solicitação de instalação do Sensor para o ''Sistema EM''.
| |
|
| |
| '''8.''' ''Sistema EM'' instala, executa uma verificação da instalação física do Sensor e realiza uma leitura inicial.
| |
|
| |
| '''9.''' O ''Sistema EM'' retorna a leitura para o ''Sistema Servidor''.
| |
|
| |
| '''10.''' ''Sistema Servidor'' exibe as informações da instalação para o ''Admin''.
| |
|
| |
| '''Fluxo de Exceção (8):''' 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 Servidor'' exibe o erro e o caso de uso retorna ao passo 4.
| |
|
| |
| '''b.''' Se a leitura inicial do Sensor falhar , o ''Sistema Servidor'' 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.
| |
|
| |
| {{Collapse bottom}}
| |
|
| |
| {{Collapse top | bg=lightwhite | Cadastrar Grandeza (CSU03) }}
| |
|
| |
| '''Caso de uso:''' Cadastrar Grandeza
| |
|
| |
| '''Identificador:''' CSU03
| |
|
| |
| '''Requisito:''' RF.03
| |
|
| |
| '''Sumário:''' Admin cadastra no Sistema Servidor uma grandeza a ser medida.
| |
|
| |
| '''Ator Primário:''' Admin
| |
|
| |
| '''Ator Secundário:''' Sistema EM
| |
|
| |
| '''Fluxo Principal:'''
| |
|
| |
| '''1.''' O ''Admin'' acessa ''Sistema Servidor'' para cadastrar uma grandeza.
| |
|
| |
| '''2.''' O ''Sistema Servidor'' solicita as informações da grandeza.
| |
|
| |
| '''3.''' O ''Admin'' informa uma grandeza e uma unidade de medida.
| |
|
| |
| '''4.''' O ''Sistema Servidor'' envia informações para ''Sistema EM''
| |
|
| |
| '''5.''' Uma verificação das informações é executada pelo ''Sistema EM'' e o resultado é retornado para o ''Sistema Servidor''.
| |
|
| |
| '''6.''' O ''Sistema Servidor'' exibe resultado para o ''Admin''.
| |
|
| |
| '''Fluxo de Exceção (5):''' Grandeza já existe.
| |
|
| |
| '''a.''' Se a grandeza desejada já estiver sido cadastrada anteriormente, o ''Sistema Servidor'' reporta o fato e o caso de uso retorna ao passo 2.
| |
|
| |
| '''Pós-condições:''' A grandeza foi cadastrada e fica disponível para configuração do Sensor.
| |
|
| |
| {{Collapse bottom}}
| |
|
| |
| {{Collapse top | bg=lightwhite | Configurar Sensor (CSU04) }}
| |
|
| |
| '''Caso de uso:''' Configurar Sensor
| |
|
| |
| '''Identificador:''' CSU04
| |
|
| |
|
| '''Sumário:''' Usuário realiza configurações do Sensor no Sistema | | '''Sumário:''' Usuário realiza configurações do Sensor no Sistema |
Linha 493: |
Linha 371: |
| '''Ator Primário:''' Usuário | | '''Ator Primário:''' Usuário |
|
| |
|
| '''Ator Primário:''' Sistema EM | | '''Ator Secundário:''' Sistema EM |
|
| |
|
| '''Precondições:''' Pelo menos um Sensor instalado no ''Sistema EM''. | | '''Precondições:''' Pelo menos um Sensor instalado no ''Sistema EM''. |
Linha 523: |
Linha 401: |
| '''Fluxo de Exceção (10):''' Configuração não suportada. | | '''Fluxo de Exceção (10):''' Configuração não suportada. |
|
| |
|
| '''a.''' Se a validação das confgiurações não for positiva, o ''Sistema Servidor'' exibe o erro e o caso de uso retorna ao passo 3. | | '''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. | | '''Pós-condições:''' As configurações do Sensor foram executadas. |
Linha 529: |
Linha 407: |
| {{Collapse bottom}} | | {{Collapse bottom}} |
|
| |
|
| {{Collapse top | bg=lightwhite | Ler Medida Atual (CSU05)}} | | {{Collapse top | bg=lightwhite | Ler Medida Atual (CSU02)}} |
|
| |
|
| '''Caso de uso:''' Ler Medida Atual | | '''Caso de uso:''' Ler Medida Atual |
|
| |
|
| '''Identificador:''' CSU05 | | '''Identificador:''' CSU02 |
|
| |
|
| '''Requisito:''' RF.07 | | '''Requisito:''' RF.07 |
|
| |
|
| '''Sumário:''' Usuário utiliza Sistema Servidor para realizar leitura atual da grandeza medida pelo Sensor. | | '''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:''' Usuário |
Linha 569: |
Linha 447: |
| {{Collapse bottom}} | | {{Collapse bottom}} |
|
| |
|
| {{Collapse top | bg=lightwhite | Gerar Notificação (CSU06) }} | | {{Collapse top | bg=lightwhite | Gerar Notificação (CSU03) }} |
|
| |
|
| '''Caso de uso:''' Receber Notificação | | '''Caso de uso:''' Receber Notificação |
|
| |
|
| '''Identificador:''' CSU06 | | '''Identificador:''' CSU03 |
|
| |
|
| '''Requisito:''' RF.06 | | '''Requisito:''' RF.06 |
Linha 597: |
Linha 475: |
| {{Collapse bottom}} | | {{Collapse bottom}} |
|
| |
|
| {{Collapse top | bg=lightwhite | Gerar Notificação (CSU07) }} | | {{Collapse top | bg=lightwhite | Gerar Notificação (CSU04) }} |
|
| |
|
| '''Caso de uso:''' Ver Notificação | | '''Caso de uso:''' Ver Notificação |
|
| |
|
| '''Identificador:''' CSU07 | | '''Identificador:''' CSU04 |
|
| |
|
| '''Requisito:''' RF.06 | | '''Requisito:''' RF.06 |
Linha 609: |
Linha 487: |
| '''Ator Primário:''' Usuário | | '''Ator Primário:''' Usuário |
|
| |
|
| '''Precondições:''' Limiar de algum Sensor atingido. | | '''Precondições:''' Pelo menos uma Notificação de limiar atingido disponível na lista de notificações. |
|
| |
|
| '''Fluxo Principal:''' | | '''Fluxo Principal:''' |
1 Responsável
- Aluno: Felipe Cardoso
- Email: felipe.p19@aluno.ifsc.edu.br
2 Etapas
Ilustração dos Sistemas
|
2.1 Ilustração dos Sistemas
 Visão Geral dos componentes do Sistema
|
Levantamento de Requisitos
|
2.2 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
|
2.3 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
|
Admin: Indivíduo responsável pela administração do Sistema.
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.
|
Gerar 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.
|
Gerar 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
|
|
|
3 Apresentações:
Slides da Apresentação do Seminário
Slides da Apresentação sobre GPIO na Raspberry PI