5. Aplicações do PARNAFOA
5.1 Sistema de Gerenciamento de Hotel
5.1.1 Sub-processo 1: Obter os requisitos do sistema de software
O sub-processo 1 é composto pela atividade de elaborar os requisitos e pela atividade de verificar a documentação de entrada (1.1).
Foi utilizada a descrição do sistema de gerenciamento de hotel de Jacobson e Ng (2004), que foi considerado como documento adicional; esta descrição
inclui o diagrama de casos de uso, partes das especificações dos casos de uso e especificação de requisitos não-funcionais. Após verificar a documentação de entrada (1.1), foi executada a atividade de elaborar os requisitos. Esta atividade consistiu do levantamento do glossário e revisão do modelo de casos de uso para completar os casos de uso faltantes.
O glossário do SGH é apresentado na Tabela 13.
Tabela 13 – Glossário (SGH).
Termo Definição
Reserva Período planejado para um quarto para permanência de um hóspede no hotel.
Check in Chegada do cliente chega no hotel. O período da sua permanência tem início. Um quarto é alocado para um cliente. O quarto fica com o estado ocupado.
Check out Final da permanência do cliente no hotel. O quarto passa para o estado disponível. O cliente deve fazer o pagamento referente aos seus gastos. Créditos de fidelidade podem ser utilizados para reduzir os gastos.
Créditos de Fidelidade Pontos acumulados pelo cliente a cada permanência no hotel. Estes pontos podem ser utilizados para reduzir os gastos na próxima estadia no hotel.
O diagrama de casos de uso do SGH, após revisão, é apresentado na Figura 50.
Figura 50 – Diagrama de casos de uso (SGH).
Os atores do SGH são os seguintes:
• Cliente: é responsável por reservar o quarto.
• Membro: é um tipo de cliente que pode ser individual ou corporativo.
• Equipe do Hotel: é responsável por registrar os membros, manipular lista de espera, realizar check in e check out de clientes.
• Gerência do Hotel: é responsável por estabelecer as taxas dos quartos e as taxas promocionais.
O caso de uso Reservar Quarto recebe os dados da reserva, procura um quarto compatível no período desejado e marca como reservado. No caso de indisponibilidade do quarto, a reserva é inserida na lista de espera.
O caso de uso Manipular Lista de Espera realiza a inserção de uma reserva na lista de espera por um quarto.
O caso de uso Registrar Membro realiza a inserção, consulta, atualização e exclusão de dados do cliente no sistema.
O caso de uso Check in recebe os dados necessários para alocar o cliente no quarto e modifica o estado do quarto para ocupado.
O caso de uso Check out recebe os dados do quarto a ser liberado atualiza o estado do quarto para disponível.
O caso de uso Ganhar e Resgatar Créditos calcula os créditos do cliente após o check out e emite a nota de pagamento das despesas.
O caso de uso Estabelecer as Taxas do Quarto define ou atualiza as taxas dos quartos.
O caso de uso Estabelecer as Taxas de Promoção define ou atualiza as taxas promocionais relacionadas aos quartos.
A Tabela 14 apresenta um exemplo da especificação do caso de uso
Reservar Quarto. A descrição dos seus campos encontra-se no Apêndice B. As
demais especificações do SGH encontram-se em Bombonatti (2010).
Tabela 14 – Especificação do caso de uso Reservar Quarto (SGH).
Nome do Caso de Uso Reservar Quarto
Descrição Breve Este caso de uso procura um quarto compatível no período solicitado e marca como reservado.
Atores Cliente.
Evento Inicial O cliente seleciona o comando de reserva de quarto.
Fluxo Básico 1. O cliente seleciona o comando de reserva de quarto. 2. O sistema exibe os tipos de quarto e as taxas. 3. O cliente verifica a taxa de cada um dos quartos. 4. O cliente solicita uma reserva para o quarto selecionado.
5. O sistema busca um quarto disponível e decrementa o número de quartos disponíveis do tipo selecionado. {Atualizar Disponibilidade do Quarto}
6. O sistema cria uma nova reserva com os detalhes fornecidos.
7. O sistema exibe o número de confirmação da reserva e as instruções para o cliente.
Fluxos Alternativos 5A. Submissão duplicada: se no passo 5 do fluxo básico existir uma reserva idêntica no sistema (mesmo nome, e-mail, e mesmas datas de entrada e saída), o sistema exibe a reserva existente e pergunta para o cliente se ele quer proceder com esta reserva.
5A1. Se o cliente quiser continuar, o sistema procede com a reserva.
5A2. Se o cliente indicar que a nova reserva é uma duplicação, o caso de uso termina.
Sub-fluxos 3S. Verificar custo do quarto
3S1. O cliente seleciona o tipo de quarto desejado e indica o período de permanência.
3S2. O sistema computa o custo para o período indicado.
Requisitos Especiais O sistema deve manipular cinco reservas concorrentes. Cada reserva não deve demorar mais de 20 segundos.
Pré-condições O cliente está na página do sistema do hotel.
Pós-condições Uma nova reserva é criada quando a reserva é feita com sucesso, e o número de quartos disponíveis para as datas especificadas foi decrementado. Se a reserva não for realizada com sucesso, não há mudanças no banco de dados.
Pontos de Extensão E1. O ponto de extensão {Atualizar Disponibilidade do Quarto} ocorre no passo 5 do fluxo básico.
Pontos de Inclusão Nenhum.
A especificação de requisitos não-funcionais do SGH é descrita na Tabela 15.
Tabela 15 – Especificação de requisitos não-funcionais (SGH).
Id Requisito Prioridade
1 O sistema deve ser acessível via internet. 1
2 O sistema deve armazenar todos os registros em um banco de dados relacional. 2 3 Para fins de auditoria, todas as transações no sistema devem ser registradas. 4 4 Somente pessoas autorizadas podem desempenhar as suas respectivas funções. 3 5 O sistema deve rastrear as preferências do cliente e utilizá-las como default. 5
6 Todas as recuperações de dados não devem exceder 2 segundos. 2
7 O sistema deve manipular cinco reservas concorrentes. 2
8 Cada reserva não deve exceder 20 segundos. 2
Os RNFs, bem como suas respectivas prioridades, foram recebidos como dados de entrada. O menor valor indica a maior prioridade. A prioridade mais alta foi estabelecida para o requisito referente à acessibilidade via internet (id 1), pois todas as reservas devem ser executadas pelo cliente, via internet. A segunda prioridade foi estabelecida para os RNFs de desempenho, que são: registros que devem ser armazenados em um banco de dados relacional (id 2), tempo limite para recuperações de dados (id 6), manipulação de reservas concorrentes (id 7) e tempo limite para realizar uma reserva (id 8).