Você está na página 1de 12

ANÁLISE ESTRUTURADA

MODERNA

Exemplo DFD: Sistema Hotelaria (parcial)

Thelma Elita Colanzi Lopes


thelma@din.uem.br
Documento de Requisitos (parcial)
Deseja-se desenvolver um software para um pequeno hotel que atenda aos
seguintes requisitos funcionais:
1. O sistema deve permitir que o Cliente faça reserva de quarto(s) em
determinado(s) período(s). Neste momento, é averiguado se existe quarto
disponível no período solicitado. Caso positivo, é feita a reserva do quarto e
enviada a confirmação para o Cliente; para isto, são necessários os seguintes
itens de informação: nome do Cliente, telefone e tipo de quarto (solteiro,
casal). Caso negativo, é informado ao Cliente a não disponibilidade do quarto;

2. O sistema deve permitir o cancelamento da reserva, disponibilizando o quarto,


caso o Cliente solicite;

3. O sistema deve cancelar automaticamente a reserva, caso o Cliente não


compareça no hotel para hospedar-se até às 12 horas do dia da reserva,
disponibilizando o quarto;

2
Documento de Requisitos (parcial) – cont.

4. O sistema deve permitir o registro do cliente ao ocupar um quarto,


reservado previamente. Caso o quarto não esteja reservado, uma mensagem
de rejeição será emitida. Caso contrário, a confirmação será fornecida ao
Cliente;

5. O sistema deve permitir a emissão da conta ao Cliente e a disponibilização


do quarto para limpeza, no momento em que ele solicitar a sua saída;

6. O sistema deve permitir o registro do pagamento da conta. Ao efetivar o


pagamento é gerado um recibo para o cliente;

7. O sistema deve permitir a disponibilização do quarto, por parte do Gerente,


quando este estiver limpo.

3
Lista de Eventos

ª Eventos:
1. Cliente reserva quarto
2. Cliente cancela reserva
3. É hora de cancelar reserva
4. Cliente registra-se no hotel
5. Cliente solicita saída do hotel
6. Cliente paga a conta
7. Gerente disponibiliza o quarto

4
Diagrama de Contexto

pedido_reserva
Cliente Cliente
pedido_cancelamento
_reserva
Sistema de
dados_cliente
Hotelaria
pedido_saída conta

pagto_conta recibo

dados_quartos_dispo
Gerente

5
DFD - nível 0
dados_reserva

pedido_reserva
Cliente P1 reservas
Tratar
reserva reserva_cancelada
pedido_cancelamento_
reserva Gerente
q_reservado
quarto_disponível

dados_quartos_dispo
quartos quarto_limpo

quarto_ocupado
quarto_disp_limpeza
d_reserva_efetuada
dados_cliente d_reserva P3
Disponibilizar
pedido_saída P2 d_cliente quarto
conta Tratar
pagto_conta
cliente clientes
recibo dados_cliente_cad

6
DFD – nível 1

dados_reserva

pedido_reserva * P1.1
Cliente Reservar reservas
quarto

q_reservado

pedido_cancelamento_
reserva quartos
P1.2
Cancelar quarto_disponível
reserva reserva_cancelada

quartos_disponíveis

P1.3
reservas_canceladas
Cancelar não
compare-
cimento

Refinamento

7
DFD – nível 1

dados_cliente_cad

dados_cliente * P2.1.
Registrar clientes
Cliente
hospedagem
de cliente

quarto_ocupado
d_reserva_efetuada
conta
quartos
reservas
pedido_saída

* P2.2 d_reserva
Providenciar
saída do d_cliente
cliente

quarto_disp_limpeza

Refinamento 2.1 Refinamento 2.2

8
DFD – nível 1

clientes
pagto_conta
Cliente P2.3. d_cli
Efetuar pagto
de conta hospedagem_pg
recibo

reservas

9
DFD – nível 2 : Refinamento do Processo P1.1
quartos_cad
P1.1.1
pedido_reserva Verificar quartos
Cliente disponibilidade
quarto

quarto_indisponível
quartos_disp.

P1.1.2
quarto_reservado Efetuar q_reserv.
reserva

dados_reserva

reservas

Voltar

10
DFD – nível 2 : Refinamento do Processo P2.1

reservas
dados_cliente
P2.1.1
Cliente Verificar d_reservas_cad
cliente_rejeitado
reserva

d_cli_reserva

dados_cliente_cad
P2.1.2
Cadastrar
cliente clientes
d_reg_reserva
d_reserva_cliente
P2.1.3
cliente_registrado quarto_ocupado
Efetuar
Hospedagem
cliente
quartos
Voltar

11
DFD – nível 2 : Refinamento do Processo P2.2

clientes
d_cliente
pedido_saída P2.2.1
Cliente Gerar
conta conta

d_reserva

reservas
nr_quarto

quartos

P2.2.2
Tornar quarto_disp_limpeza
quarto disp.
p/ limpeza

Voltar

12