Escolar Documentos
Profissional Documentos
Cultura Documentos
Casa Inteligente
Anlise e Projeto do Software
Eduardo Schmidt
Matheus Zanol
Pedro Peralta
Tatiana Kassick
Sumrio
1.
2.
3.
4.
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.
8.
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
Conforto
F3
Funcional
Controle
Manual
NF3.1
No Funcional
Controle de
F2.3
Funcional
acesso
Criao e
alterao do
sistema
F4.1
Funcional
Definio de
prioridade
F4.2.1
Funcional
Eventos
gravados
NF2.1
No Funcional
Identificar
eventos
F1.1
Funcional
Iluminao
F3.1
Funcional
Monitorament F1
o
Funcional
Ordens de
controle
manuais
F3.4
Funcional
Perfis de
usurio
F4.2
Funcional
No Funcional
Privilgio de NF4.1
administrador
Funcional
Registro de
eventos
F1.2
Funcional
Segurana
F2
Funcional
Segurana e NF1.1
integridade dos
logs
No Funcional
Sistema anti
furto
F2.1
Funcional
Sons
F3.3
Funcional
Temperatura
F3.2
Funcional
Travamento da F2.2
casa
Funcional
Usurios
temporrios
F1.3.1
Funcional
Visualizao
dos dados e
configurao
do sistema
F4
Funcional
3. Casos de Uso
Diagrama de Casos de Uso
UseCase
Actor
Visitante
Precondition
Postcondition
Base Sequence
Branch Sequence
Exception Sequence
Sub UseCase
Note
UseCase
Actor
Usurio
Precondition
Postcondition
Base Sequence
Branch Sequence
Exception Sequence
Sub UseCase
Note
UseCase
Summary
Actor
Administrador
Precondition
Postcondition
Base Sequence
Branch Sequence
Exception Sequence
Sub UseCase
Note
UseCase
Summary
Actor
Tcnico Qualificado
Precondition
Postcondition
Base Sequence
Branch Sequence
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
Sub UseCase
Note
UseCase
Summary
Actor
Usurio
Precondition
Postcondition
Base Sequence
Branch Sequence
Exception Sequence
Sub UseCase
Note
UseCase
Summary
11
Actor
Precondition
Postcondition
Base Sequence
Branch Sequence
Exception Sequence
Sub UseCase
Note
UseCase
Summary
Actor
Precondition
Postcondition
Base Sequence
12
UseCase
Summary
Actor
Usurio
Precondition
Postcondition
Base Sequence
Branch Sequence
Exception Sequence
Sub UseCase
13
Note
UseCase
Summary
Actor
Administrador
Precondition
Postcondition
Base Sequence
Branch Sequence
Exception Sequence
Sub UseCase
Note
UseCase
Summary
Actor
Administrador
Precondition
Postcondition
Base Sequence
14
Sub UseCase
Note
UseCase
Summary
Actor
Administrador
Precondition
Postcondition
Base Sequence
Branch Sequence
15
Sub UseCase
Note
UseCase
Summary
Actor
Usurio
Precondition
Postcondition
Base Sequence
Branch Sequence
16
UseCase
Summary
Actor
Usurio
Precondition
Postcondition
Base Sequence
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
-
sensor.setValor(valorAtual);
casa.registrarNoDB(sensor,horaAtual);
}
Exceo
-
Exceo
-
20
21
Diagramas de Sequncia
22
23
24
25
26
27
28
Diagramas de Interface
29
30
31
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
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).
34