ViajarFácil
Sistema de Reserva de Viagens
Modelagem Estática
UNICAMP - Universidade Estadual de Campinas
Especialização Engenharia de Software - INF318/2011
Equipe
Aline Gomes
André Rodrigues Fonseca
Diego Bolognesi
Juliana Maria Silva
Leandro dos Santos
Thiago Domingues
Considerações Iniciais
Analisando a documentação SRV-casos-de-uso-eq7.doc foram encontrados alguns
problemas na delimitação do escopo dos casos de uso e criamos outros termos para deixar
claro determinados estados do sistema. Abaixo seguem as nossas considerações:
1. No caso Efetuar Pagamento, nós julgamos que seria mais interessante esse caso
de uso cuidar de Confirmar Pagamento. Chegamos a essa conclusão, pois o
Cliente não efetua o pagamento do seu pacote via sistema. Na verdade ele apenas
informa o modo de pagamento, e posteriormente o Sistema Financeiro confirma se o
pagamento foi efetuado.
2. Adotamos o termo pré-reserva para indicar que um pacote foi reservado, mas ainda
está pendente a confirmação de pagamento.
Detalhamento dos Casos de Uso
ID
#1 Reservar Pacotes (Leandro dos Santos)
Atores
Cliente
Descrição
Esse é o método pelo qual o sistema ViajarFácil efetua uma préreserva para o pacote do cliente. O processo de escolha envolve a
consulta e definição do tipo de transporte e a consulta e definição
do hotel. Opcionalmente o pacote de viagem pode ser customizado
contratando um guia turístico e/ou passeios extras. Em seguida deve
verificar eventuais informações relacionadas à viagem e realizar o
pagamento.
Pré-condições
●
●
●
Cliente cadastrado no Sistema
Cliente autenticado no Sistema
Cliente escolheu um pacote de viagem.
Pós-condições
●
●
Cliente terá o pacote escolhido com todas as pré-reservas
efetuadas em seu nome.
Sistema Financeiro aguardará o pagamento da reserva.
Requisitos
não-funcionais
●
●
●
●
Segurança (RNF001)
Usabilidade (RNF002)
Performance (RNF003)
Disponibilidade de Guia Turístico (RNF004)
Requisitos
funcionais
●
●
●
●
●
Consultar Pacotes (RF001)
Consultar Hotéis (RF002)
Contratar Guia Turístico (RF005)
Contratar Passeios Extras (RF006)
Comprar Pacotes (RF004)
Fluxo de
Eventos
1. Cliente seleciona um pacote de viagem.
2. Se o pacote de viagem é do tipo pacote aéreo
a. Cliente consulta uma lista de hotéis disponíveis para o
pacote e escolhe um considerando os critérios de faixa
de preço e/ou categoria (UC#5).
3. Cliente consulta uma lista de transportes disponíveis para o
pacote e escolhe para fazer a reserva (UC#4).
4. Se o pacote escolhido permitir customização para contratar um
guia turístico
a. O sistema oferece ao cliente uma lista de guias que
podem ser escolhidos por idioma e o número de dias
que ele acompanhará o grupo.
5. Se o pacote escolhido permitir customização para contratar
passeios extras
a. O sistema oferece ao cliente uma lista de passeios que
podem ser feitos na localidade escolhida.
6. Cliente confirma a escolha do pacote com suas customizações.
7. Cliente escolhe a forma de pagamento.
8. O Sistema registra a pré-reserva do pacote, transporte e hotel.
Fluxo
Alternativo (1)
Em 1, se o cliente escolheu um pacote que não possui disponibilidade
de transporte e/ou hotel, ele será informado no ato da escolha.
Optando por cancelar, ele será obrigado a procurar por outro pacote.
Fluxo
Alternativo (2)
Em 2.a., se o cliente não concordar com a lista de hotéis oferecidos,
ele pode cancelar a operação. Optando por cancelar, ele será obrigado
a procurar por outro pacote.
Fluxo
Alternativo (3)
Em 2, se o cliente escolheu um pacote do tipo marítimo, as opções de
hotéis não devem ser exibidas. Ir direto para 3.
Fluxo
Alternativo (4)
Em 3, se o cliente não concordar com a lista de transportes oferecidos,
ele pode cancelar a operação. Optando por cancelar, ele será obrigado
a procurar por outro pacote.
Fluxo
Alternativo (5)
Em 6, se o cliente não concordar com o pacote e suas customizações,
ele pode cancelar a operação. Optando por cancelar, ele será obrigado
a procurar por outro pacote.
ID
#2 Contratação passeios extras (Aline Gomes)
Atores
Cliente
Descrição
Durante o processo de reserva de pacote, o cliente pode optar pela
contratação de passeios extras que estão disponíveis para a localidade
destino. O sistema lista os passeios extras da localidade destino e o
cliente escolhe quais deseja fazer.
Pré-condições
●
●
●
Cliente cadastrado no Sistema
Cliente autenticado no Sistema
O pacote de viagem escolhido
Pós-condições
●
Passeios extras associados ao pacote escolhido.
Requisitos
não-funcionais
●
●
Segurança (RNF001)
Performance (RNF003)
Requisitos
funcionais
●
Contratar passeios extras (RF006)
Fluxo de
Eventos
1. O cliente decide contratar passeios extras.
2. O sistema verifica localidade destino do pacote escolhido pelo
cliente, e verifica os passeios extras disponíveis para o local.
3. O sistema apresenta a lista de passeios extras disponíveis
4. O cliente escolhe os passeios desejados.
5. O sistema associa os passeios selecionados com o pacote.
Fluxo
Alternativo (1)
Em 3, se o cliente desiste da contratação ou não seleciona nenhum
passeio extra, o caso de uso termina.
ID
#3 Contratar guia turístico (Thiago Bueno)
Atores
Cliente
Descrição
Durante o processo de escolha do pacote de viagem, ele também pode
contratar um guia turístico que esteja disponível para o pacote em
questão.
Pré-condições
●
●
●
Cliente cadastrado no Sistema
Cliente autenticado no Sistema
Cliente tem que ter comprado um pacote aéreo.
Pós-condições
●
Cliente deve ter o guia turístico contratado junto com o pacote.
Requisitos
não-funcionais
●
●
●
Segurança (RNF001)
Usabilidade (RNF002)
Performance (RNF003)
Requisitos
funcionais
●
Comprar Pacotes (RF004)
Fluxo de
Eventos
1. O cliente efetua a compra de pacote aéreo.
2. O cliente escolhe contratar o guia turístico.
3. O cliente insere o período desejado para contratação e idioma
que o guia deve falar. Caso o cliente não escolha o idioma, o
mesmo será setado com o idioma nacional.
4. O sistema verifica a localidade destino do pacote, período
disponível idioma e apresenta uma lista com os guias que se
enquadram nestas características solicitadas pelo cliente.
5. O cliente seleciona o guia turístico
6. O Sistema associa o guia com o pacote.
Fluxo
Alternativo (1)
Em 2, se o cliente não efetuou a compra do pacote, não será permitido
a contratação do guia turístico.
ID
#4 Reservar Transporte (Juliana Maria)
Atores
Sistema ViajarFácil, Sistema de Transportes
Descrição
Este é o processo pelo qual o sistema ViajarFácil fará a pré-reserva
do transporte (passagem aérea ou cruzeiro) escolhido pelo cliente. A
pré-reserva será realizada através de um sistema parceiro com base
na informação “tipo de transporte” e se inicia após a confirmação de
reserva de pacote. O caso de uso é finalizado quando a pré-reserva de
transporte estiver devidamente efetuada.
Pré-condições
●
Cliente ter selecionado o tipo de transporte na reserva de
pacote de viagem (UC#1).
Pós-condições
●
Pré-reserva do transporte efetuada.
Requisitos
não-funcionais
●
●
●
Segurança (RNF001)
Usabilidade (RNF002)
Performance (RNF003)
Requisitos
funcionais
●
●
Consultar Pacotes (RF001)
Comprar Pacotes (RF004)
Fluxo de
Eventos
1. O sistema Viajar Fácil obtém o “tipo de transporte” selecionado
pelo cliente na reserva do pacote (UC#1).
2. Se o tipo de transporte igual a aéreo:
a. O sistema de Transporte efetua a pré-reserva de
passagens aéreas.
3. O sistema de Transporte retorna uma mensagem de sucesso.
Fluxo
Alternativo (1)
Em 1, caso o sistema não consiga obter a informação “tipo de
transporte”, uma mensagem de erro é exibida informando a
impossibilidade de realizar a pré-reserva.
Fluxo
Alternativo (2)
Em 2, caso o tipo de transporte seja igual a marítimo, o sistema de
Transporte realiza a pré-reserva do cruzeiro correspondente.
ID
#5 Reservar Hotel (André Rodrigues)
Atores
Sistema ViajarFácil, Sistema Hoteleiro
Descrição
Este é o processo pelo qual o sistema ViajarFácil fará a pré-reserva do
hotel escolhido pelo cliente. A pré-reserva será realizada através de
um sistema parceiro com base na informação “hotel” e se inicia após
a confirmação de reserva de pacote aéreo. O caso de uso é finalizado
quando a pré-reserva do hotel estiver devidamente efetuada.
Pré-condições
●
●
Cliente ter selecionado o hotel na reserva de pacote de viagem
(UC#1).
Cliente ter informado a quantidade de pessoas que se
hospedarão na reserva de pacote de viagem (UC#1).
Pós-condições
●
Pré-reserva do hotel efetuada.
Requisitos
não-funcionais
●
●
●
Segurança (RF001)
Usabilidade (RF002)
Performance (RNF003)
Requisitos
funcionais
Consultar Pacote (RF001) , Consultar Hóteis (RF002), Comprar
Pacotes (RF004), Contratar Guia Turístico(RF005), Contratar Passeios
Extras(RF006)
Fluxo de
Eventos
1. O sistema ViajarFácil obtém o hotel escolhido pelo cliente na
reserva do pacote aéreo (UC#1).
2. O sistema ViajarFácil obtém a quantidade de pessoas
informada pelo cliente na reserva do pacote aéreo(UC#1).
3. O sistema efetua a pré-reserva do hotel escolhido.
4. O sistema retorna uma mensagem de sucesso.
Fluxo
Alternativo (1)
Em 1, caso o sistema não consiga obter a informação hotel escolhido,
uma mensagem de erro é exibida informando a impossibilidade de
realizar a pré-reserva.
Fluxo
Alternativo (2)
Em 2, caso o sistema não consiga obter a quantidade de pessoas
a se hospedarem, uma mensagem de erro é exibida informando a
impossibilidade de realizar a pré-reserva.
ID
#6 Cancelar Reserva (Diego Bolognesi)
Atores
Cliente, Tempo, Sistema Transporte, Sistema Hotelaria
Descrição
Após solicitado o cancelamento pelo cliente ou pelo tempo, o sistema
cancela a reserva do hotel e/ou do transporte. Após o cancelamento
os dados da reserva permanecem no sistema, mas com o status de
cancelado.
Pré-condições
●
●
●
Cliente cadastrado no Sistema
Cliente autenticado no Sistema
Cliente tem que ter cadastrado pelo menos uma reserva e não ter
efetuado o pagamento.
Pós-condições
●
●
●
Cliente terá a reserva cancelada com status de cancelado.
Sistema Financeiro não aguardara o pagamento da reserva.
O sistema terá como informar um histórico de reservas
canceladas.
O cliente não terá como reativar esta reserva, se necessário terá
que refazê-la.
●
Requisitos
não-funcionais
●
●
●
Segurança (RNF001)
Usabilidade (RNF002)
Performance (RNF003)
Requisitos
funcionais
●
●
●
●
●
Consultar Pacotes (RF001)
Consultar Hotéis (RF002)
Contratar Guia Turístico (RF005)
Contratar Passeios Extras (RF006)
Comprar Pacotes (RF004)
Fluxo de
Eventos
1. O cliente solicita o cancelamento da reserva ou o prazo máximo
de espera para efetuar o pagamento foi atingido.
2. Se a reserva do cliente inclui hotel:
a. O sistema solicita o cancelamento da reserva da
hospedagem para o Sistema de Hotelaria;
3. Se a reserva do cliente possui transporte:
a. O sistema solicita o cancelamento da reserva do
transporte para o Sistema de Transporte;
4. Se a reserva do cliente possui guia turístico:
a. O sistema atualiza o status do guia turístico, deixando apto
a fazer parte de qualquer outro pacote.
5. O sistema finaliza o cancelamento da reserva do cliente, deixando
o status como cancelado.
Fluxo
Alternativo (1)
Em 2, se o cliente escolheu um pacote que não possui reserva de
hospedagem, não será necessário entrar em contato com o sistema de
Hotelaria para cancelar a reserva.
Fluxo
Alternativo (2)
Em 3, se o cliente escolheu um pacote que não possui reserva de
transporte, não será necessário entrar em contato com o sistema de
Transporte para cancelar a reserva.
Fluxo
Alternativo (3)
Em 4, se o cliente escolheu um pacote que não possui reserva de guia
turístico, não será necessário editar o status do guia turístico.
Diagramas de Sequência
Segue abaixo os diagramas de sequência baseados no fluxo principal dos casos de uso.
Figura 1: Diagrama de sequência do caso de uso #1 - Reservar pacote.
Figura 2: Diagrama de sequência do caso de uso #2 - Contratar passeios extras.
Figura 3: Diagrama de sequência do caso de uso #3 - Contratar guia turístico.
Figura 4: Diagrama de sequência do caso de uso #4 - Reservar Transporte.
Figura 5: Diagrama de sequência do caso de uso #5 - Reservar Hotel.
Figura 6: Diagrama de sequência do caso de uso #6 - Cancelar reserva.
Análise de Classes Candidatas
A tabela a seguir apresenta o dicionário de substantivos levantados a partir dos casos de
uso. Em negrito estão as entidades selecionadas para compor o diagrama de classes.
Os substantivos que não estão classificados como atributo, operação ou termo vago não
representaram uma classe.
Candidatos
Classificação
Definição
Categoria
Atributo
Atributo da classe Hotel
Cliente
Entidade
Representa um cliente dentro do sistema
ViajarFácil. (Vale lembrar que esse não é o
ator).
Confirmação
Operação
Confirmação do pacote de viagem escolhido pelo
cliente.
Consulta
Operação
Inserida no contexto quando o cliente quer
visualizar as opções para o seu pacote de
viagem.
Definição
Operação
Inserida no contexto quando o cliente está
fazendo a escolha do transporte, hotel, guia
turístico e passeios extras.
Dias
Atributo
Atributo de guia turístico.
Guia turístico
Entidade
Armazenará todas as informações escolhidas
pelo cliente que estão relacionadas a guia
turístico.
Hotel
Entidade
Armazenará todas as informações escolhidas
pelo cliente que estão relacionadas a hotel.
Idioma
Atributo
Atributo de guia turístico
Informações
Atributo
Dados relevantes do pacote de viagem, como,
vacina, taxas, passaportes, etc.
Localidade
Atributo
Atributo de passeio extra.
Marítimo
Entidade
Tipo de pacote de viagem (PacoteMarítimo).
Mensagem
Termo vago. Está inserida no contexto onde
o sistema informa ao cliente o resultado das
operações.
Pacote
Termo vago. Fica melhor inserido em pacote de
viagem.
Pacote aéreo
Entidade
Trata-se de um tipo de pacote de viagem que
relaciona passeios com estadia em hotel.
Pacote de
viagem
Entidade
Armazenará todas as informações referentes
ao pacote de viagem e suas customizações.
Pacote do cliente
É o próprio pacote de viagem.
Pagamento
Entidade
Armazenará a forma de pagamento escolhida
pelo cliente, data de vencimento e data de
pagamento.
Passagem
aérea
Entidade
Tipo de transporte
Passeio extra
Entidade
Armazenará todos os passeior extras que o
cliente adicionou ao seu pacote de viagem.
Processo de escolha
Operação
Trata-se de uma operação onde o cliente está
customizando o seu pacote de viagem.
Reserva
Entidade
Classe que agrega as informações de cliente,
pacote de viagem, hotel e transporte. A préreserva, que é citada algumas vezes nos
casos de uso, indica que a reserva está com o
pagamento pendente.
Sistema
Entidade
Representação do sistema como um todo
(ViajarFácil).
Sistema
Financeiro
Controle
Controle responsável pelo controle dos
pagamentos.
Sistema
Hoteleiro
Controle
Controle responsável por gerenciar as
reservas dos hotéis. Gerenciar engloba
reserva (pré-reserva), confirmação,
pagamento e cancelamento.
Sistema Parceiro
Controle
Nome genérico dado para os sistemas que
auxiliam o Sistema ViajarFácil. No caso, os
sistemas parceiros são Sistema Financeiro,
Sistema Hoteleiro e Sistema Transporte. Não
precisa ser representado no diagrama.
Sistema
Transporte
Controle
Controle responsável por gerenciar as
reservas dos transportes. Gerenciar
engloba reserva (pré-reserva), confirmação,
pagamento e cancelamento.
Temporizador
Entidade
Reponsável por informar se o pagamento
de um determinado pacote de viagem está
pendente ou não.
Tipo de transporte
Atributo
Atributo de Transporte
Transporte
Entidade
Representa o transporte que o cliente
associou ao seu pacote de viagem.
Viagem
Vago
Termo vago. Fica melhor representado por
pacote de viagem.
Diagrama de classes
Figura 7: Diagrama de classes retirado da análise contextual.
Download

ViajarFácil Sistema de Reserva de Viagens