Escolar Documentos
Profissional Documentos
Cultura Documentos
Modelo Analise&Projeto TIG
Modelo Analise&Projeto TIG
Equipe:
Erick Lopes da Silva (els2)
Bruno Costa Bourbon (bcb)
Lamartine Almeida Teixeira (lat2)
Ricardo Rolim Cordeiro (rrc2)
1. Introduo
Neste documento sero apresentadas as anlises dos seguintes casos de
uso: Cadastrar Hospede, Cadastrar Informaes do Hotel, Consultar Informaes
teis, Consultar Extrato e Consultar Informaes do Hotel juntamente com o
Projeto da Arquitetura do mesmo.
Esta anlise consiste na identificao das classes de anlise, elaborao
dos diagramas de seqncia e elaborao dos diagramas de classes. J na parte
de projeto a definio da arquitetura, dos casos de usos selecionados, ser
mostrada.
2. Anlises dos Casos de Uso
2.1
Descrio:
O administrador do sistema poder cadastrar um novo hspede na base de dados.
Para efetuar esse cadastro sero necessrios apenas os nmeros do quarto e a
senha do usurio. Uma mensagem deve ser exibida caso o hspede j exista.
Diagrama de Seqncia:
: AdmSistema
: TelaCadastroHospedes
: Hospede
:
ControladorCadastroUsurios
: CadastroHospedes
cadastrarHospede(quarto, senha)
criaHospede()
cadastrarHospede(hospede)
cadastrarHospede(hospede)
existeHospede(hospede)
Diagrama de Classes:
<<boundary>>
TelaCadastroHospedes
cadastrarHospede()
opname()
0..n
<<entity>>
Hospede
quarto
senha
1
<<control>>
ControladorCadastroUsurios
cadastrarHospede()
0..n
getQuarto()
getSenha()
1
<<entity collection>>
CadastroHospedes
existeHospede()
2.2
Descrio:
O administrador do sistema poder cadastrar informaes sobre os servios do
hotel. Para esse cadastro ser necessrio o nome e a descrio do servio.
Dever ser mostrada uma mensagem de erro caso o servio j esteja cadastrado.
Diagrama de Seqncia:
: Hospede
: TelaCadastro
: InformacaoHotel
: ControladorCadastro
: CadastroHospedes
adicionarInformacao(informacao)
validarInformao(informacao)
adicionarInformacao(informacao)
adicionarInformacao(informacao)
Diagrama de Classes
<<boundary>>
TelaCadastro
adicionarInformacao()
0..*
1
<<control>>
ControladorCadastro
<<entity>>
InformacaoHotel
Informacao
adicionarInformacao()
getInformacao()
0..*
1
<<entity collection>>
CadastroInformacoes
adicionarInformacao()
2.3
Descrio:
O hspede poder consultar as informaes teis como horrio de mars,
informaes de cmbio e previso do tempo. Essa consulta ser feita por um outro
sistema que se encarregar de retornar tais informaes.
Diagrama de Seqncia:
: Hospede
: TelaInformacoesUteis
: ControladorInfoUteis
: ServicoInformacoesUteis
consultarInformacoesUteis
consultarInformacoesUteis
getInformacoesUteis
Diagrama de Classes:
<<boundary>>
TelaInformacoesUteis
consultarInformacoesUteis()
0..n
1
<<control>>
ControladorInfoUteis
consultarInformacoesUteis()
1
<<entity>>
InformacaoUtil
nome
descricao
getNome()
getDescricao()
1
<<boundary>>
ServicoInformacoesUteis
getInformacoesUteis()
<<subsystem>>
InformacoesUteis
2.4
Descrio:
No sistema estaro cadastradas informaes sobre o hotel tais como horrio de
funcionamento dos servios, localizao, estrutura do hotel e quaisquer outras
informaes necessrias, todas disponveis para consulta.
Diagrama de Seqncia:
: Hospede
: TelaConsultaInfHotel
:
ControladorConsultaInf...
: CadastroHotel
: CadastroServico
consultarInfHotel( )
consultarInfHotel( )
consultarHotel()
consultarServicos()
Diagrama de Classes
<<boundary>>
TelaConsultaInfHotel
<<entity collection>>
CadastroServico
<<entity>>
Hora
hora : int
minuto : int
segundo : int
<<control>>
ControladorConsultaInfHotel
<<entity>>
Hotel
nome : String
endereco : String
0..n
telefone : String
fax : String
email : String
servicos : Servico[]
0..n
<<entity collection>>
CadastroHotel
<<entity>>
Servico
setorHotel : String
horaInicio : Hora
horaTermino : Hora
nome : String
2.5
Descrio:
O hspede poder consultar o extrato de sua conta no hotel, o que poder ser
realizado apenas aps o usurio tiver logado no sistema. Mediante uma senha
errada ou nmero de quarto errado a consulta ser rejeitada.
Diagrama de Seqncia:
: Hospede
: TelaExtrato
solicitarExtrato(:Login)
: ControladorExtrato
: CadastroHospedes
solicitarExtrato(:Login)
existeHospede(:Login)
getExtrato(quarto)
: ComunicacaoSistemaHotel
Diagrama de Classes
<<boundary>>
TelaExtrato
solicitarExtrato()
0..*
1
<<control>>
ControladorExtrato
SolicitarExtrato()
<<boundary>>
ComunicacaoSistemaHotel
1
getExtrato()
1
<<entity>>
Hos pede
1
<<entity collection>>
CadastroHospedes
existeHos pede()
0..n
quarto
senha
getQuarto()
getSenha()
<<entity>>
Des pesa
<<entity>>
Extrato
1
1..*
horario
despesas
0..n
getHorario()
getDespesas()
horario
item
preco
getHorario()
getItem()
getPreco()
0..*
0..*
1
<<entity>>
Horario
dia
mes
ano
hora
minuto
segundo
getDia()
getMes()
getAno()
getHora()
getMinuto()
getSegundo()
3. Projeto da Arquitetura
3.1 Arquitetura
Classes de Anlise
TelaCadastroHospedes
Hospede
CadastroHospedes
ControladorCadastroUsuarios
TelaCadastroInformacoes
ControladorCadastroInformacoes
CadastroInformacoes
Informao
TelaConsultaInfHotel
ControladorInfHotel
TelaExtrato
Extrato
Despesa
Horrio
ComunicacaoSistemaHotel
TelaInformacoesUteis
ControladorInfoUteis
ServicoInformacoesUteis
InformacaoUtil
Elementos de Projeto
TelaCadastroHospedes
ComunicacaoCadastroHospedes
Hospede
CadastroHospedes
RepositorioHospedes
RepositorioHospedesBD
TelaCadastroInformacoes
ComunicacaoCadastroInformacoes
CadastroInformacoes
RepositorioInformacoes
RepositorioInformacoesBD
Informao
TelaConsultaInfHotel
ComunicacaoConsultaInfHotel
TelaExtrato
ComunicacaoExtrato
Extrato
Despesa
java.util.Date
ComunicacaoSistemaHotel
TelaInformacoesUteis
ComunicacaoInformacoesUteis
ControladorInfoUteis
ComunicacaoInfoUteis
InformacaoUtil
Fachada
Timer
AtualizacaoInfoUteis
TelaExtrato
TelaCadastroHospedes
TelaCadastro
solicitarExtrato()
TelaConsultaInfHotel
adicionarInformacao()
0..n
0..*
consultarInfHotel()
0..*
1
Fachada
CadastroHospedes
existeHospede()
cadastrarHospede()
1..*
Extrato
horario : java.util.Date
despesas : Despesa[]
1
1
1
ControladorInfoUteis
SolicitarExtrato()
1
consultarInformacoesUteis()
1
1
<<Interface>>
ComunicacaoSistemaHotel
getExtrato()
1
<<subsystem>>
sistemaHotel
CadastroInformacoes
Despesa
Informacao
nome : String
descricao : String
fotos : java.util.Vector
informacoes : java.util.Vector
0..n
0..n
0..n
1
getHorario()
getItem()
getPreco()
setHorario()
setItem()
setPreco()
<<Interface>>
ServicoInformacoesUteis
cadastrarInformacao()
consultarInfHotel()
horario
item
preco
getHorario()
getDespesas()
setHrario()
setDespesas()
java.util.Date
0..n
1
ControladorExtrato
consultarInformacoesUteis()
consultarInfHotel()
solicitarExtrato()
cadastrarHospede()
cadastrarInformacao()
1
Hospede
quarto
senha
getQuarto()
getSenha()
setQuarto()
setSenha()
TelaInformacoesUteis
cadastrarHospede()
<<Interface>>
RepositorioInformacoes
InformacaoUtil
nome : String
descricao : String
getNome()
getDescricao()
setNome()
setDescricao()
<<Interface>>
RepositorioHospedes
RepositorioInformacoesBD
RepositorioHospedesBD
<<subsystem>>
InformacoesUteis
gui
informacao
protocolos
FachadaTIG
informacaoUtil
hospede
extrato
Pacote
com.techtour.tig
com.techtour.tig.hospede
com.techtour.tig.informacao
com.techtour.tig.informacaoUtil
com.techtour.tig.extrato
com.techtour.tig.gui
com.techtour.tig.protocolos
Classes
FachadaTIG
Hospede
CadastroHospedes
RepositorioHospedes
RepositorioHospedesBD
Informao
CadastroInformacoes
RepositorioInformacoes
RepositorioInformacoesBD
InformacaoUtil
ControladorInfoUteis
Extrato
ControladorExtrato
Despesa
TelaExtrato
TelaCadastroHospedes
TelaCadastroInformacoes
TelaConsultaInfHotel
TelaInformacoesUteis
ComunicacaoCadastroHospedes
ComunicacaoCadastroInformacoes
ComunicacaoConsultaInfHotel
ComunicacaoExtrato
ComunicacaoSistemaHotel
ComunicacaoInformacoesUteis
ComunicacaoInfoUteis