Você está na página 1de 35

UNIVERSIDADE FEDERAL DE SANTA CATARINA

CTC - CENTRO TECNOLGICO


DAS - DEPARTAMENTE DE AUTOMAO E SISTEMAS
DAS5312 METODOLOGIA PARA DESENVOLVIMENTO DE SISTEMAS
PROFESSOR: LEANDRO BECKER
TURMA 05220

Casa Inteligente
Anlise e Projeto do Software

Eduardo Schmidt
Matheus Zanol
Pedro Peralta
Tatiana Kassick

Florianpolis, 20 de junho de 2011

Sumrio
1.

Viso Geral ............................................................................................................................ 3

2.

Requisitos do Sistema ........................................................................................................... 4


Diagrama de Requisitos............................................................................................................. 4
Tabela de Requisitos ................................................................................................................. 4

3.

Casos de Uso ......................................................................................................................... 7


Diagrama de Casos de Uso ........................................................................................................ 7
Casos de Uso Expandios ............................................................................................................ 7
Algum quer entrar na casa .................................................................................................. 7
Algum se identificou em um cmodo ................................................................................. 8
Alterar configuraes globais do sistema ............................................................................. 8
Alterar o modelo usado pelo sistema ................................................................................... 9
Alterar perfil de usurio ...................................................................................................... 10
Atualizar estado dos sensores ............................................................................................. 11
Consultar sistema especialista ............................................................................................ 12
Enviar comando para o sistema .......................................................................................... 13
Excluir perfil de usurio ....................................................................................................... 14
Gerenciar perfis de usurio ................................................................................................. 14
Inserir novo perfil de usurio .............................................................................................. 15
Supervisionar o comportamento instantneo do sistema.................................................. 16
Visualizar logs armazenados ............................................................................................... 17

4.

Modelo Conceitual .............................................................................................................. 18

5.

Contratos ............................................................................................................................. 19
Operao: addPerfil(String nome, String senha) : void ....................................................... 19
Operao: conectarAoSistema(String login, String senha) : void....................................... 19
Operao: atualizarEstadoDaCasa() : void ......................................................................... 19
Operao: criarEventoDaCasa() : void ................................................................................ 20

6.

Projeto da Camada de Domnio .......................................................................................... 21


Diagrama de Classes................................................................................................................ 21
Diagramas de Sequncia ......................................................................................................... 22
Diagrama 1 Algum quer entrar na casa .......................................................................... 22
Diagrama 2 Alguem se identificou em um cmodo ......................................................... 22
Diagrama 3 Alterar configuraes globais do sistema ..................................................... 23
Diagrama 4 Alterar o modelo usado pelo sistema ........................................................... 23
1

Diagrama 5 Alterar perfil de usurio ................................................................................ 24


Diagrama 6 Atualizar estado dos sensores ...................................................................... 24
Diagrama 7 - Consultar sistema especialista ....................................................................... 25
Diagrama 8 Enviar comando para o sistema .................................................................... 25
Diagrama 9 Excluir perfil de usurio ................................................................................ 26
Diagrama 10 Gerenciar perfis de usurio......................................................................... 26
Diagrama 11 Inserir novo perfil de usurio ...................................................................... 27
Diagrama 12 Supervisionar o comportamento instantneo do sistema ......................... 27
Diagrama 13 Visualizar logs armazenados ....................................................................... 28
Diagramas de Interface ........................................................................................................... 29
Tela 1 Tela de Login .......................................................................................................... 29
Tela 2 Tela Gerenciador de Modelo ................................................................................. 29
Tela 3 Tela de Criao de Andar ....................................................................................... 30
Tela 4 Tela de Criao de Cmodo ................................................................................... 30
Tela 5 Tela de Propriedades do Cmodo ......................................................................... 31
Tela 6 Tela SCADA............................................................................................................. 31
Diagrama de Estados de Navegao da Interface ................................................................... 32
7.

Projeto da Camada de Persistncia..................................................................................... 33

8.

Detalhamento da Arquitetura ............................................................................................. 34


Lgica de negcio .................................................................................................................... 34
Lgica de apresentao ........................................................................................................... 34
Lgica de acesso a dados ........................................................................................................ 34

1. Viso Geral
O projeto proposto consiste na modelagem e implementao de um sistema de
automao residencial inteligente, capaz de monitorar e controlar as atividades de uma
residncia qualquer, atravs de interfaceamento com sensores e atuadores convenientemente
dispostos no ambiente.
O sistema ser capaz de reconhecer e reagir a eventos pr-configurados, ajustando os
parmetros ambientais de forma a satisfazer as preferncias dos usurios.
Para isso, cada usurio ter um perfil, com suas preferncias relativas temperatura,
iluminao, sons, e aes que o sistema dever tomar no caso de um determinado evento
acontecer. Para evitar conflito entre os perfis, sero definidos nveis de prioridade, sendo que,
no caso de perfis exigirem uma ao diferente para um mesmo evento, s ser
considerada a ao correspondente ao perfil de maior prioridade.

Outra possibilidade ser a criao de perfis temporrios, que podem ser utilizados para
hspedes, funcionrios, e outras pessoas que possuam algum tipo de restrio na utilizao do
sistema.
O gerenciamento global do sistema (segurana, parmetros fixos, alarmes, criao e
alterao de perfis) poder ser feita por um usurio denominado Administrador, enquanto que
as alteraes que dizem respeito representao da residncia no sistema (alterao de
cmodos, sensores, atuadores, etc) s podero ser feitas por um tcnico especializado, de
forma a garantir a consistncia e coerncia entre a residncia fsica e a representao digital
da mesma.

2. Requisitos do Sistema
Diagrama de Requisitos

Tabela de Requisitos

Nome

ID

Tipo

Sumrio

Acesso ao
sistema

NF4.2

No Funcional

O sistema dever poder ser acessado


remotamente via browser.

Conforto

F3

Funcional

[OCULTO]Controlar condies ambientais do


sistema.

Controle
Manual

NF3.1

No Funcional

Em casos em que houver conflito entre uma


ordem de controle do sistema e uma ordem de
controle manual, dada por um usurio, esta ltima
ter prioridade sobre a primeira.

Controle de

F2.3

Funcional

Tanto o sistema propriamente dito quanto as


4

acesso

dependncias fsicas da rea automatizada s deve


estar acessvel a usurios autorizados. Para isso,
cada morador ter uma senha de acesso ao
sistema sem a qual, estar impossibilitado de logar
como usurio

Criao e
alterao do
sistema

F4.1

Funcional

O sistema deve servir para qualquer residncia,


tendo portanto de ser "criado" em um primeiro
uso. Alteraes na residncia tambm devem ser
aceitas.

Definio de
prioridade

F4.2.1

Funcional

Cada perfil tem uma prioridade associada, para o


caso de o sistema ter que decidir qual
configurao adotar

Eventos
gravados

NF2.1

No Funcional

Os registros de eventos iro gravar tanto


operaes de alto nvel, como por exemplo as
atividades realizadas pelas pessoas, assim como os
de baixo nvel, tais como registro de atividade dos
sensores e atuadores da casa

Identificar
eventos

F1.1

Funcional

[OCULTO] Saber o que acontece no sistema.


Acendimento de luzes, controle de fluxo de
pessoas pela casa, horrios em que as aes dos
usuarios foram executadas, entre outras.

Iluminao

F3.1

Funcional

Controlar a iluminao da casa de acordo com os


perfis dos usurios

Monitorament F1
o

Funcional

[OCULTO] Identificar eventos, interpret-los e


gerar informaes para os usurios.

Ordens de
controle
manuais

F3.4

Funcional

Dever ser possvel controlar o ambiente


(Iluminao, Temperatura e Sons) de forma
manual, se assim for configurado.

Perfis de
usurio

F4.2

Funcional

Cada usurio deve ter seu perfil, com suas


preferncias relacionadas aos outros subsistemas
da casa. Dentre os dados do perfil, pode-se citar a
rotina do usurio, com seus horrios estabelecidos
de forma que a casa possa, por exemplo, acordar a
pessoa no horrio programado e para isso, toque a
musica tambm de gosto do usurio

No Funcional

Apenas o admistrador do sistema possui


permisso para alterar essas configuraes. Os

Privilgio de NF4.1
administrador

demais usurios embora participem do sistema,


nao possuem autorizao para efetuar operaes
nao relacionadas ao seu prprio perfil.
Reconhecimen F1.3
to de usurio

Funcional

[OCULTO] Reconhecer os usurios em


determinados lugares da casa.

Registro de
eventos

F1.2

Funcional

[OCULTO]Armazenar todos os eventos ocorridos


dentro de um determinado perodo

Segurana

F2

Funcional

[OCULTO] Impedir intruso no sistema.

Segurana e NF1.1
integridade dos
logs

No Funcional

Os registros de eventos existem exclusivamente


para leitura, sendo impossivel alterar eventos ja
ocorridos e registrados pelo sistema. Dessa forma,
mantm-se a integridade dos dados evitando
fraudes nas aes das pessoas

Sistema anti
furto

F2.1

Funcional

[OCULTO] O sistema deve alertar os usurios e a


polcia caso haja algum indivduo no reconhecido
nas dependncias da residncia, alm de guardar
informaes sobre estas situaes.

Sons

F3.3

Funcional

Controlar os sons da casa de acordo com os perfis


dos usurios. Uma funcionalidade do som ser
como despertador, o qual ir funcionar baseado
no perfil de cada usurio e tocar musicas a seu
gosto

Temperatura

F3.2

Funcional

Controlar a temperatura da casa de acordo com os


perfis dos usurios

Travamento da F2.2
casa

Funcional

O sistema deve der capaz de fazer o


travamento/destravamento de todas as formas de
acesso a casa. A necessidade de autorizao do
usurio para tal deve ser configurvel.

Usurios
temporrios

F1.3.1

Funcional

Deve ser possvel adicionar usurios temporrios,


bem como indicar seus privilgios na casa
(funcionrios, hspedes, etc.)

Visualizao
dos dados e
configurao
do sistema

F4

Funcional

Usurios autorizados devem poder visualizar os


dados e customizar o sistema e seu
funcionamento.

3. Casos de Uso
Diagrama de Casos de Uso

Casos de Uso Expandios


Algum quer entrar na casa

UseCase
Actor

Visitante

Precondition
Postcondition
Base Sequence

1. [EV] Pessoa registra inteno de entrar na casa.


2. [RS] Casa avisa algum usurio sobre o pedido.
3. [EV] Usurio permite a entrada do visitante.
4. [RS] Casa abre pessoa.

Branch Sequence

Exception Sequence

2a: No h pessoas na casa.


2a.1 - Sistema avisa que a casa est vazia.
2a.2 - Finaliza operao.

Sub UseCase
Note

Neste caso de uso o ator corresponde interface de controle do


sistema.

Algum se identificou em um cmodo

UseCase
Actor

Usurio

Precondition

O usurio deve estar registrado no sistema e ter um perfil


configurado.

Postcondition

O sistema agir em pr do conforto do usurio.

Base Sequence

1. [EV] O usurio envia uma mensagem ao sistema se identificando.


2. [RS] Sistema reconhece o usurio e passa a agir de acordo com o
perfil configurado.

Branch Sequence
Exception Sequence
Sub UseCase
Note

Neste caso de uso o ator corresponde interface de controle do


sistema.

UseCase

Alterar configuraes globais do sistema

Summary

Permite alterar configuraes globais tais como nmeros de


emergncia, horrio de ativao dos alarmes, modo de controle
(automtico/manual), e dispositivos com funcionamento
independente dos perfis de usurio (dependem de outras condies
tais como horrio, temperatura/luminosidade em um cmodo, etc).

Actor

Administrador

Precondition

Estar autenticado como Administrador.

Postcondition

As configuraes alteradas so salvas e o sistema passa a respeitlas.

Base Sequence

1.[RS] O sistema informa as configuraes passveis de modificao.


2.[EV] O usurio escolhe o parmetro que deseja alterar.
3.[RS] O sistema informa os possveis novos valores para o
parmetro.
4.[EV] O usurio escolhe o novo valor para o parmetro.
5.O sistema confirma a alterao da configurao.

Branch Sequence
Exception Sequence
Sub UseCase
Note

UseCase

Alterar o modelo usado pelo sistema

Summary

Permite alterar a representao no sistema do ambiente


automatizado. Contempla alterao fsica, como adio/remoo de
cmodos ou adio/remoo de sensores e atuadores.

Actor

Tcnico Qualificado

Precondition

Estar autenticado como Tcnico Qualificado.

Postcondition

O sistema passa a utilizar o modelo alterado.

Base Sequence

1.[RS] O sistema apresenta a representao atual do ambiente.


2.[EV] O usurio escolhe se quer adicionar, remover, ou alterar
algum elemento.

Branch Sequence

2.1: Adicionar elemento.


2.1.1. [RS] O sistema informa os elementos que podem ser
adicionados.
2.1.2. [EV] O usurio informa qual elemento pretende
adicionar, bem como a localizao do novo elemento. Caso seja um
sensor ou atuador, informa tambm a forma de comunicao com o
9

elemento.
2.1.3. [EV] O usurio informa os novos valores para os
parmetros do elemento.
2.2: Remover elemento.
2.2.1. [RS] O sistema informa os elementos que podem ser
removidos.
2.2.2 [EV] O usurio escolhe o elemento que quer remover.
2.3: Alterar elemento.
2.3.1. [RS] O sistema informa os elementos que podem ser
alterados.
2.3.2. [EV] O usurio escolhe o elemento que deseja alterar.
2.3.3. [EV] O usurio informa os novos valores para os
parmetros do elemento.
Exception Sequence

2a: O elemento escolhido no pode ser alterado.


O sistema indica o problema.
Retorna ao passo 2.
3a: Alteraes feitas so inconsistentes.
3a.1 O sistema indica o problema e desfaz as alteraes
realizadas.
Retorna ao passo 2.

Sub UseCase
Note

Alterar perfil de usurio

UseCase
Summary

Permite alterar os valores de um perfil de usurio tais como


horrios, preferncias de luminosidade, temperatura, sons, etc.

Actor

Usurio

Precondition

Estar autenticado como Usurio do sistema.

Postcondition

O perfil alterado salvo e o sistema passa a respeit-lo.


10

Base Sequence

1. [EV] O usurio informa ao sistema que deseja fazer uma


alterao.
2. [RS] O sistema mostra valores passiveis de alterao.
3. [EV] O usurio escolhe a alterao desejada e modifica seu valor.
4. [RS] O sistema confirma a alterao.

Branch Sequence

3.1: Alterar valor de um parmetro.


3.1.1.[EV]O usurio informa o parmetro cujo valor deseja
alterar.
3.1.2.[EV]O usurio informa o novo valor do parmetro.
3.2: Adicionar ao para determinada condio de disparo.
3.2.1:[EV] O usurio informa a condio de "disparo"
(horrio, evento, etc.).
3.2.2.[EV] O usurio escolhe a ao a ser realizada no caso
de disparo.
3.2.3.[EV] O usurio informa o tempo de validade da ao.

Exception Sequence

3.1.1a: O parmetro no pode ser alterado.


O sistema indica o problema.
Retorna ao passo 3.1.
3.1.2a: O novo valor escolhido invlido.
O sistema indica o problema.
Retorna ao passo 3.1.

Sub UseCase
Note

UseCase

Atualizar estado dos sensores

Summary

Os valores armazenados correspondentes leitura dos sensores so


atualizados.

11

Actor

Interface de controle (hardware)

Precondition
Postcondition

Valores armazenados dos sensores correspondem aos valores lidos


no instante atual.

Base Sequence

1.[RS] O sistema requisita aos sensores que estes informem seus


valores atuais.
2.[EV] Os sensores informam seus valores atuais.
3. O sistema armazena os dados.

Branch Sequence
Exception Sequence

1a: Um dos sensores no responde.


1a.1 O sistema indica o problema.
1a.2 O sistema armazena novamente o ltimo valor lido para
o sensor que no responde.

Sub UseCase
Note

UseCase

Consultar sistema especialista

Summary

O sistema consulta um sistema externo (sistema especialista) a


respeito da ao que deve ser tomada no instante atual.

Actor

Interface de controle (hardware)


Sistema especialista

Precondition

O sistema especialista tem acesso aos dados armazenados


correspondentes aos sensores, atuadores, cmodos, perfis, etc.

Postcondition

O sistema toma a ao indicada pelo especialista, e armazena os


eventos identificados por este como registros.

Base Sequence

1.[RS] O sistema faz a consulta ao sistema especialista.


2.[EV] O sistema especialista informa os eventos que identificou, e
as aes que devem ser tomadas, caso isto se faa necessrio.

12

3.O sistema armazena os eventos na forma de registros e toma as


aes indicadas.
Branch Sequence
Exception Sequence
Sub UseCase
Note

Enviar comando para o sistema

UseCase
Summary

Permite enviar uma ordem para um determinado elemento do


sistema (cmodo, eletrodomstico, atuador, etc).

Actor

Usurio

Precondition

Estar autenticado como usurio do sistema.

Postcondition

O elemento para o qual foi enviado o comando agir de acordo.

Base Sequence

1.[RS] O sistema informa todos os elementos do ambiente


automatizado.
2.[EV] O usurio informa o elemento para o qual deseja enviar um
comando.
3.[RS] O sistema informa os possveis comandos a serem enviados
para o elemento.
4.[EV] O usurio informa o comando a ser enviado.
5. O sistema confirma o envio do comando.

Branch Sequence

4.1: O comando requer um parmetro.


4.1.1.[EV] O usurio informa o parmetro necessrio.

Exception Sequence

4a: O valor enviado no vlido.


4a.1 O sistema acuso o problema
4a.2 retorna as passo 4.

Sub UseCase

13

Note

Excluir perfil de usurio

UseCase
Summary

Os perfis de usurio contendo informaes de preferncia de


configurao do ambiente e horrios podem ser excludos.

Actor

Administrador

Precondition

Estar devidamente autenticado como Administrador.

Postcondition

Perfil de usurio excludo do sistema.

Base Sequence

1. [EV] O usurio informa ao sistema que deseja fazer uma excluso.


2. [RS] O sistema mostra perfis passiveis de excluso.
3. [EV] O usurio escolhe o perfil a ser excludo.
4. [RS] O sistema confirma a excluso.

Branch Sequence
Exception Sequence
Sub UseCase
Note

Gerenciar perfis de usurio

UseCase
Summary

Permite incluir, alterar e excluir perfis de usurios.

Actor

Administrador

Precondition

Estar autenticado como Administrador do sistema.

Postcondition

As inseres, alteraes e/ou excluses so salvas e o sistema passa


a respeit-las.

Base Sequence

1. [EV] O usurio informa ao sistema que deseja gerenciar os perfis.


2. [RS] O sistema mostra as opes (inserir perfil, alterar perfil ou
excluir perfil) possveis de gerenciamento.

14

3. [EV] O usurio escolhe a opo desejada.


4. [RS] O sistema confirma a alterao.
Branch Sequence
Exception Sequence

3a - O usurio escolheu a opo de inserir ou excluir perfil e o


usurio no o administrador.
3a.1 - O sistema informa que a operao exige a permisso
do administrador.
3a.2 - O sistema aborta o caso de uso.

Sub UseCase

Alterar perfil de usurio


Inserir novo perfil de usurio
Excluir perfil de usurio

Note

Inserir novo perfil de usurio

UseCase
Summary

Novos perfis de usurio contendo informaes de preferncia de


configurao do ambiente e horrios podem ser criados.

Actor

Administrador

Precondition

Estar devidamente autenticado como Administrador.

Postcondition

Novo perfil de usurio no sistema.

Base Sequence

1.[RS] O sistema informa os outros nomes de perfis j existentes.


2.[EV] O usurio informa o nome do novo perfil.
3.[RS] O sistema informa os nveis de prioridade possveis para o
novo perfil.
4.[EV] O usurio informa a prioridade, os valores que podero ser
alterados posteriormente no perfil, e se o mesmo temporrio.
5. O sistema confirma a criao do novo perfil.

Branch Sequence

4.1: Perfil temporrio.

15

4.1.1. o usurio informa o tempo de durao do perfil.


Exception Sequence

2a: Nome de perfil j existente.


2a.1 O sistema indica o problema.
Retorna ao passo 1.
3a: Nvel de prioridade j existente.
3a.1 O sistema indica o problema.
Retorna ao passo 3.

Sub UseCase
Note

UseCase

Supervisionar o comportamento instantneo do sistema

Summary

Permite visualizar o estado instantneo de cada elemento do


sistema (valores relativos ao conforto, nmero de pessoas por
cmodo, alm de valores de mais baixo nvel como sensores,
atuadores, etc).

Actor

Usurio

Precondition

Estar autenticado como usurio do sistema.

Postcondition
Base Sequence

1.[RS]O sistema informa os valores de todos os parmetros de alto


nvel do sistema (temperatura, luminosidade, nmero de pessoas
por cmodo, etc).
2.[EV]O usurio informa como deseja continuar visualizando os
dados de monitoramento.

Branch Sequence

2.1: Detalhar informaes.


2.1.1[EV]O usurio informa de qual elemento deseja receber
informaes mais detalhadas.
2.1.2.[RS]O sistema informa os valores detalhados do
elemento escolhido.

16

2.2:Monitoramento em tempo real.


2.2.1.[EV] O usurio escolhe o intervalo de tempo entre cada
atualizao dos valores mostrados.
2.2.2.[RS] O sistema informa os valores gerais do estado do
sistema a cada intervalo especificado.
Exception Sequence
Sub UseCase
Note

Visualizar logs armazenados

UseCase
Summary

Permite aos usurios visualizar os registros de eventos


anteriormente armazenados.

Actor

Usurio

Precondition

Estar autenticado como usurio do sistema.

Postcondition
Base Sequence

1.[EV]O usurio informa o intervalo de tempo entre a data atual e a


data de incio dos registros a serem apresentados, alm do tipo de
registro que deseja visualizar (Todos, Eventos, Comandos enviados
para o sistema)
2.[RS]O sistema informa todos os registros de eventos
correspondentes ao tipo escolhido dentro do intervalo de tempo
informado, contando da data atual.

Branch Sequence
Exception Sequence
Sub UseCase
Note

17

4. Modelo Conceitual

18

5. Contratos
Classe: Supervisrio
Operao: addPerfil(String nome, String senha) : void
Pr Condies
- Administrador utilizando o sistema
Ps Condies
- Perfil Criado com Nome nome
- Associa o parmetro senha a senha do Perfil
- Perfil perfil = new Perfil();
- perfil.setNome(nome);
- perfil.setSenha(senha);
- casa.addPerfil(perfil);
Exceo
-

Perfil existente: H um perfil de nome igual ao parametro nome


mostrarErro(O nome de usurio j est em uso.)

Classe: Interface de Usurio


Operao: conectarAoSistema(String login, String senha) : void
Pr Condies
- No ter outro perfil logado
Ps Condies
- casa.fazerLogin(login,senha);
Exceo
-

login invalido: Perfil inexistente


senha invalida: senha no a salva no Perfil do sistema com nome login
mostrarErro(Nome de usurio ou senha invlidos)

Classe: Interface de Controle


Operao: atualizarEstadoDaCasa() : void
Pr Condies
Ps Condies
-

Atualiza os valores dos sensores e os registra no banco de dados, juntamente com a


hora da leitura.

for(Sensor sensor : casa.getSensors()){


valorAtual = casa.getDriver(sensor).getValorAtual();
19

sensor.setValor(valorAtual);
casa.registrarNoDB(sensor,horaAtual);
}
Exceo
-

Sensores no respondem, sistema utiliza ltimo valor armazenado

Classe: Interface de Controle


Operao: criarEventoDaCasa() : void
Pr Condies
- Existir um modelo criado
Ps Condies
-

O evento passa a existir na base de dados da casa


Condicao condicao = new Condicao(sensores,valores)
Evento evento = new Evento(identificador,descricao, nome)
evento.setCondicao(condicao)
baseDeDados.addEvento(evento)

Exceo
-

20

6. Projeto da Camada de Domnio


Diagrama de Classes

21

Diagramas de Sequncia

Diagrama 1 Algum quer entrar na casa

Diagrama 2 Alguem se identificou em um cmodo

22

Diagrama 3 Alterar configuraes globais do sistema

Diagrama 4 Alterar o modelo usado pelo sistema

23

Diagrama 5 Alterar perfil de usurio

Diagrama 6 Atualizar estado dos sensores

24

Diagrama 7 - Consultar sistema especialista

Diagrama 8 Enviar comando para o sistema

25

Diagrama 9 Excluir perfil de usurio

Diagrama 10 Gerenciar perfis de usurio

26

Diagrama 11 Inserir novo perfil de usurio

Diagrama 12 Supervisionar o comportamento instantneo do sistema

27

Diagrama 13 Visualizar logs armazenados

28

Diagramas de Interface

Tela 1 Tela de Login

Tela 2 Tela Gerenciador de Modelo

29

Tela 3 Tela de Criao de Andar

Tela 4 Tela de Criao de Cmodo

30

Tela 5 Tela de Propriedades do Cmodo

Tela 6 Tela SCADA

31

Diagrama de Estados de Navegao da Interface

O diagrama acima vlido quando o login efetuado for feito por um tcnico. Um
administrador no pode editar um modelo de casa e o usurio comm, alm da restrio do
administrador no pode mexer nas configuraes do sistema.

32

7. Projeto da Camada de Persistncia


Para a realizao da persistncia dos dados optou-se pelo uso de banco de
dados utilizando-se a linguagem mySQL. Cada classe do projeto ir gerar uma tabela
prpria dentro do banco de dados, no qual cada coluna representa um atributo da
classe e as linhas representam as instncias. Para que ocorra a persistncia entre o
sistema e o banco de dados mySQL, usa-se o Hibernate, que faz a conexo do sistema
com o banco de dados relacional.

33

8. Detalhamento da Arquitetura
A arquitetura do Sistema de Automao Residencial Inteligente proposto pode ser
dividida nas seguintes partes:

Lgica de negcio
Esta parte do sistema responsvel pelo processamento de informaes e gerao de
resultados de acordo com as regras de negcio estabelecidas para o sistema. Para a
implementao desta parte, dever ser utilizado para as tomadas de deciso referentes aos
Eventos que podem ocorrer na residncia, um Sistema Especialista, no qual sero definidas
algumas regras que, em conjunto com os dados disponveis no sistema, ir indicar a ao a ser
tomada pelo mesmo.
A lgica de negcio executar em uma mquina na prpria residncia automatizada. A
linguagem Java foi escolhida para a implementao devido facilidade de programao e
existncia de inmeras bibliotecas e ferramentas que agilizam o processo de desenvolvimento.
Alm disso, j existe uma implementao de um Sistema Especialista para ser usado em Java
(Jess).

Lgica de apresentao
Responsvel pela interao com o usurio, possibilita ao mesmo configurar o sistema e
acessar as informaes disponibilizadas. Foram previstas trs possibilidades para a interface
com o sistema: via aplicao desktop, via Web browser, e via dispositivos mveis.
No primeiro caso, o usurio seria capaz de acessar o sistema localmente, na residncia
onde o sistema estivesse executando. Para implementar esta possibilidade, optamos por
utilizar a biblioteca grfica SWT, para a linguagem Java. Esta escolha se deve eficincia da
biblioteca, facilidade de desenvolvimento com a mesma, e existncia de um plug-in (Visual
Editor) para a IDE utilizada que agiliza consideravelmente o processo.
Para a interface no caso de acesso ao sistema via Web, utilizando um browser,
propomos utilizar a linguagem HTML.
No caso de dispositivos mveis, tais como tablets, pocket PCs, e smartphones, o acesso
ser tambm via browser, visto que estas plataformas, em sua maioria, j so capazes de exibir
pginas escritas em HTML, e esta soluo dispensa o desenvolvimento de uma aplicao
especfica para uma determinada plataforma (por exemplo iPhone, ou Android, ou outros).

Lgica de acesso a dados


Ser responsabilidade de um sistema gerenciador de banco de dados (MySQL), que
realizar todas as operaes de escrita, e leitura no banco de dados.

34

Você também pode gostar