Você está na página 1de 13

Documento de Especificação de Requisitos

Projeto: Vídeo Locadora Passatempo

Versão: 1.3

Responsáveis: Ricardo de Almeida Falbo

1. Introdução

Este documento apresenta a especificação dos requisitos do sistema da Vídeo


Locadora Passatempo. A atividade de análise de requisitos foi conduzida aplicando-se
técnicas de modelagem de casos de uso, modelagem de classes e modelagem de
comportamento dinâmico do sistema. Os modelos apresentados foram elaborados
usando a UML. Este documento está organizado da seguinte forma: a seção 2 apresenta
os subsistemas identificados, mostrando suas dependências na forma de um diagrama de
pacotes; a seção 3 apresenta o modelo de casos de uso, incluindo descrições de atores,
os diagramas de casos de uso e descrições de casos de uso; a seção 4 apresenta o
modelo conceitual estrutural do sistema, na forma de diagramas de classes; a seção 5
apresenta o modelo comportamental dinâmico do sistema, na forma de diagramas de
estado e de sequência; finalmente, a seção 6 apresenta o dicionário de projeto, contendo
as definições das classes, atributos e principais operações identificadas.

2. Identificação de Subsistemas

A Figura 1 mostra os subsistemas identificados no contexto do presente projeto,


os quais são descritos na tabela abaixo.

Figura 1 – Diagrama de Pacotes e os Subsistemas Identificados.

Subsistema Descrição
controleAcervo Envolve toda a funcionalidade relacionada com o controle do acervo da
videolocadora, abrangendo controle de filmes, itens, tipos de mídia e
distribuidoras
atendimentoCliente Envolve a funcionalidade relacionada ao atendimento aos clientes da
locadora, incluindo locação e devolução de itens, reserva de filmes,
pagamento e cadastro de clientes
3. Modelo de Casos de Uso

O modelo de casos de uso visa capturar e descrever as funcionalidades que um sistema deve
prover para os atores que interagem com o mesmo. Os atores identificados no contexto deste projeto
estão descritos na tabela abaixo.

Ator Descrição
Administrador Representa funcionários da locadora responsáveis pela manutenção
do acervo da vídeo locadora.
Atendente Representa funcionários da locadora responsáveis pelo atendimento
aos clientes da locadora
Cliente Representa os clientes da locadora.
Sistema de Operadoras de Cartão Representa o sistema das operadoras de cartão de crédito,
de Crédito responsável por autorizar transações com cartão.

A seguir, são apresentados os diagramas de casos de uso e descrições associadas,


organizados por subsistema.

3.1 - Subsistema controleAcervo

A Figura 2 apresenta o diagrama de casos de uso do subsistema controleAcervo.

Figura 2 – Diagrama de Casos de Uso do Subsistema controleAcervo.

A seguir, são apresentadas as descrições de cada um dos casos de uso identificados. Os casos
de uso cadastrais de baixa complexidade, envolvendo inclusão, alteração, consulta e exclusão, são
descritos na tabela abaixo, segundo o padrão da organização.
Casos de Uso Cadastrais
Caso de Uso Ações Possíveis Observações Requisitos Classes
Cadastrar I, A, C, E [I] Informar: razão social, CNPJ, endereço, RF07, RNF01 Distribuidora
Distribuidora telefone e pessoa de contato.
[E] Não é permitido excluir uma
distribuidora que tenha filmes associados.

Cadastrar Filme I, A, C, E [I] Informar: título original, título em RF06, RNF01 Filme,
português, países, ano, diretores, atores, Distribuidora
sinopse, duração, gênero e distribuidora.
[E] Não é permitida a exclusão de filmes
que tenham itens associados.
[E] Ao excluir um filme, devem-se excluir
as reservas associadas.

Cadastrar Item I, A, C, E [I] Informar: filme, tipo de mídia, data de RF06, RNF01, Item, Filme,
aquisição e número de série. Incluir RNF03 TipoMidia
Verificar Existência de Reserva Pendente.
[E] Não é permitido excluir um item que
tenha locações associadas.

Cadastrar Tipo I, A, C, E [I] Informar: nome e valor padrão de RF06, RNF01 TipoMidia
de Mídia locação.
[E] Não é permitido excluir um tipo de
mídia que tenha itens associados.
[E] Ao excluir um tipo de mídia, devem-se
excluir as reservas que especificam apenas
esse tipo de mídia.

Os casos de uso de consulta mais abrangente que as consulta a um único objeto (já tratadas
como parte dos casos de uso cadastrais), mas ainda de baixa complexidade, tais como consultas que
combinam informações de vários objetos envolvendo filtros, estão descritos na tabela abaixo,
segundo o padrão da organização.

Casos de Uso de Consulta


Caso de Uso Observações Requisitos Classes
Consultar Acervo As consultas ao acervo poderão ser feitas RF08, RNF01, Filme, Item,
informando uma (ou uma combinação) das RNF02 TipoMidia
seguintes informações: título (ou parte dele),
original ou em português, gênero, tipo de mídia
disponível, ator, diretor, nacionalidade e
lançamentos.
3.2 - Subsistema atendimentoCliente

A Figura 2 apresenta o diagrama de casos de uso do subsistema atendimentoCliente.

Figura 2 – Diagrama de Casos de Uso do Subsistema atendimentoCliente.

A seguir, são apresentados os casos de uso de maior complexidade que não puderam ser
descritos segundo os formatos tabulares simplificados. Esses casos de uso são descritos segundo o
padrão de descrição completa de casos de uso definido pela organização.
Descrição de Caso de Uso

Projeto: Vídeo Locadora Passatempo


Subsistema: atendimentoCliente
Caso de Uso: Cadastrar Cliente

Descrição Sucinta: Este caso de uso é responsável pela inclusão de um novo titular e seus
dependentes, bem como alteração de dados, consulta e exclusão de clientes em geral (titulares e
dependentes).

Fluxos de Eventos Normais


Nome do Fluxo de Eventos Precondição Descrição
Normal
Incluir Novo Titular 1. O atendente informa os dados do novo titular, a saber: nome, sexo,
data de nascimento, endereço, telefones residencial, celular e
comercial e local de trabalho.
2. O sistema gera um número de inscrição para o titular.
3. O novo cliente titular é registrado como sendo um cliente ativo.
4. Caso o cliente titular deseje inscrever dependentes, realizar o fluxo
de eventos “Incluir Dependente”.
Incluir Novo Dependente 1. O atendente informa o titular que deseja incluir um novo dependente.
2. O atendente informa os dados do novo dependente, a saber: nome,
sexo e data de nascimento.
3. O sistema gera um número de inscrição para o dependente.
4. O novo dependente é registrado como sendo um cliente ativo.
Alterar Dados de Cliente 1. O atendente informa o cliente do qual deseja alterar dados.
2. O atendente informa os novos dados, sendo que o número de
inscrição de um cliente não pode ser alterado.
3. As alterações são registradas.
Desativar Cliente 1. O atendente informa o cliente ativo a ser desativado.
2. O cliente é desativado.
Reativar Cliente 1. O atendente informa o cliente inativo a ser reativado.
2. O cliente é reativado.
Consultar Dados de Cliente 1. O atendente informa o cliente que deseja consultar.
2. Os dados do cliente são apresentados.
3. Se o cliente for um titular e possuir dependentes ativos, apresentar,
também, os nomes dos mesmos.
Excluir Cliente 1. O atendente informa o cliente que deseja excluir.
2. Os dados do cliente são apresentados e é solicitada confirmação.
3. As reservas feitas pelo cliente e por seus dependentes são excluídas.
4. Caso o cliente seja um titular, seus dependentes são também
excluídos.
5. O cliente é excluído.

Fluxos de Eventos Variantes


Nome do Fluxo de Eventos Variante Descrição
Normal Relacionado
Desativar Cliente 2 – O cliente é um cliente 2a – O cliente titular e seus dependentes são desativados.
titular e possui dependentes.
Fluxos de Eventos de Exceção
Nome do Fluxo de Eventos Condição de Exceção Descrição
Normal Relacionado
Incluir Novo Titular 1 – Dados inválidos 1a - Uma mensagem de erro é exibida, retornando ao passo 1
para correção da informação inválida.
Incluir Novo Dependente 1 – O titular já possui 1a - uma mensagem de erro é exibida, informando que o
três dependentes ativos titular já possui três dependentes ativos e o fluxo de eventos é
abortado.
Incluir Novo Dependente 2 – Dados inválidos 2a - uma mensagem de erro é exibida, retornando ao passo 2
para correção da informação inválida
Alterar Dados de Cliente 2 – Dados inválidos 2a - uma mensagem de erro é exibida, retornando ao passo 2
para correção da informação inválida
Reativar Cliente 2 – O cliente a ser 2a - uma mensagem de erro é exibida, informando que cliente
reativado é dependente é dependente de um titular inativo e o fluxo de eventos é
de um cliente titular abortado
inativo
Excluir Cliente 1 - O cliente ou um de 1a - Uma mensagem de erro é exibida, indicando que o
seus dependentes possui cliente ou um de seus dependentes possui locações e,
locações portanto, não pode ser excluído, e perguntando se deseja
desativar o cliente.
1b - Se o atendente desejar desativar o cliente, realizar o fluxo
de eventos “Desativar Cliente”, senão abortar o fluxo de
eventos corrente.
Excluir Cliente 2 – Solicitação de 2a – Abortar o fluxo de eventos
confirmação de
exclusão negada.

Requisitos Relacionados: RF09, RF10, RF11, RN04, RN05, RN06, RN07, RNF01, RNF04

Classes Relacionadas: Cliente, ClienteTitular, ClienteDependente, Reserva


Descrição de Caso de Uso

Projeto: Vídeo Locadora Passatempo


Subsistema: atendimentoCliente
Caso de Uso: Efetuar Locação

Descrição Sucinta: Este caso de uso é responsável pela realização de uma nova locação, bem como
pela consulta e cancelamento de uma locação.

Fluxos de Eventos Normais


Nome do Fluxo Normal Precondição Descrição
Efetuar Nova Locação 1. O atendente informa o cliente que deseja efetuar a locação.
2. Para cada item a ser locado
2.1 - O atendente informa o item a ser locado.
2.2 - O sistema calcula o valor de locação do item (ver RN11).
2.3 - O sistema calcula a data de devolução prevista (ver RN12).
2.4 - Caso deseje, o atendente poderá alterar a data de devolução
prevista e o valor de locação de um item locado.
2.5 - O sistema adiciona o valor de locação do item locado ao valor
da locação.
3. A locação é registrada com a data corrente como data de locação.
4. Caso o cliente deseje pagar, incluir Efetuar Pagamento.
Consultar Dados de 1. O atendente seleciona a locação que deseja consultar os dados.
Locação 2. Os dados da locação são apresentados.
Cancelar Locação 1. O atendente seleciona a locação que deseja cancelar.
2. Os dados da locação são apresentados e é solicitada confirmação do
cancelamento.
3. A locação selecionada é excluída.

Fluxos de Eventos de Exceção


Nome do Fluxo de Eventos Condição de Exceção Descrição
Normal Relacionado
Efetuar Nova Locação 1 – Cliente está em 1.a - Uma mensagem de erro é exibida, informando que há
atraso. itens locados pelo cliente em atraso e apresentando dados
desses itens. O fluxo de eventos é abortado.
Efetuar Nova Locação 2.1 – Existe uma reserva 2.1a – Se o cliente da próxima reserva pendente não é o
pendente para o item do cliente da locação, então uma mensagem de erro é exibida,
filme e tipo de mídia indicando o item não está disponível para locação e retornar
sendo locado . ao passo 2.1 sem incluir esse item na locação.
2.1b - Se o cliente da próxima reserva pendente é o cliente da
locação, então registrar a reserva como tendo sido atendida e
avançar para o passo 2.2.
Cancelar Locação 1 – Locação paga. 1a - Uma mensagem de erro é exibida, indicando que a
locação já foi paga e, portanto, não pode ser cancelada. O
fluxo de eventos é abortado.
Cancelar Locação 2 – Solicitação de 2a - Abortar o fluxo de eventos.
confirmação de
cancelamento negada.
Requisitos Relacionados: RF01, RN01, RN08, RN10, RN11, RN12, RN13, RN14, RN16, RNF01,
RNF04

Classes Relacionadas: Cliente, Locacao, ItemLocado, Item, TipoMidia, Filme, Reserva


Descrição de Caso de Uso

Projeto: Vídeo Locadora Passatempo


Subsistema: atendimentoCliente
Caso de Uso: Efetuar Devolução

Descrição Sucinta: Este caso de uso é responsável pela realização de uma devolução de itens.

Fluxos de Eventos Normais


Nome do Fluxo de Eventos Precondição Descrição
Normal
Efetuar Devolução 1. O atendente informa cada um dos itens que estão sendo devolvidos.
2. Para cada item devolvido
2.1 - Se o item não tiver sido pago no ato da locação, adicionar o
seu valor de locação ao valor a ser pago na devolução.
2.2 - Caso o item locado esteja em atraso (data de devolução >
data de devolução prevista do item), calcular a multa devida
(ver RN02) e adicionar o valor da multa ao valor a ser pago
na devolução.
3. Se o valor a ser pago na devolução for maior do que zero, incluir
Efetuar Pagamento.
4. Registrar a devolução, indicando os itens locados que foram
devolvidos e atribuindo a data corrente como data de devolução.
5. Para cada item devolvido, incluir Verificar Existência de Reserva
Pendente.

Fluxos de Eventos de Exceção


Nome do Fluxo de Eventos Condição de Exceção Descrição
Normal Relacionado
Efetuar Devolução 1 - Item informado não 1a - Uma mensagem de erro é exibida, informando que o item
possui uma locação informado não está locado no momento.
vigente. 1b – Retornar ao passo 1 sem incluir esse item no conjunto de
itens sendo devolvidos.

Requisitos Considerados: RF02, RN02, RN08, RNF01, RNF04, RNF06

Classes Relacionadas: Item, ItemLocado, Locacao, Devolucao


Descrição de Caso de Uso

Projeto: Vídeo Locadora Passatempo


Subsistema: atendimentoCliente
Caso de Uso: Efetuar Pagamento

Descrição Sucinta: Este caso de uso é responsável pela realização de um pagamento.

Fluxos de Eventos Normais


Nome do Fluxo de Eventos Precondição Descrição
Normal
Efetuar Pagamento 1. De posse do valor a ser pago, o atendente informa a forma de
pagamento.
2. Caso deseje, o atendente poderá aplicar um desconto no valor total
a ser pago.
3. Efetuar o pagamento na forma escolhida:
3a. Em dinheiro
3b. Em cheque
3c. Em cartão

Fluxos de Eventos Variantes


Nome do Fluxo de Eventos Variante Descrição
Normal Relacionado
Efetuar Pagamento 3a – Em dinheiro 3a.1 – O atendente informa a quantia em dinheiro entregue pelo
cliente.
3a.2 – O sistema informa o valor do troco a ser dado ao cliente.
3a.3 – O sistema registra o pagamento em dinheiro.
Efetuar Pagamento 3b – Em cheque 3b.1 – O atendente informa os dados do cheque, a saber: banco,
agência, conta e valor .
3b.2 – O sistema registra o pagamento em cheque, armazenando os
dados do cheque.
Efetuar Pagamento 3c – Em cartão 3c.1 – O atendente envia as informações do cartão, valor e
identificação da loja para o serviço de autorização do
Sistema de Operadoras de Cartão de Crédito.
3c.2 – O Sistema de Operadoras de Cartão de Crédito envia o
número da autorização.
3c.3 – O sistema registra o pagamento em cartão, armazenando a
operadora do cartão e o número da autorização.
Fluxos de Eventos de Exceção
Nome do Fluxo de Eventos Condição de Exceção Descrição
Normal Relacionado
Efetuar Pagamento 2a.1 – O valor da quantia 2a.1.1 - Uma mensagem de erro é exibida, informando que
paga em dinheiro é inferior a quantia paga deve ser maior ou igual ao valor a ser pago.
ao valor a ser pago. 2a.1.2 – Retornar ao passo 2a.1
Efetuar Pagamento 2b.1 – O valor do cheque é 2b.1.1 - Uma mensagem de erro é exibida, informando
diferente do valor a ser que o valor do cheque deve ser igual ao valor a ser pago.
pago 2b.1.2 – Retornar ao passo 2b.1.
Efetuar Pagamento 2c.2 – O Sistema de 2c.2.1 - Uma mensagem de erro é exibida, informando que
Operadoras de Cartão de a transação não foi autorizada.
Crédito não autoriza a 2c.2.2 – Retornar ao passo 1.
transação

Requisitos Relacionados: RF03, RN09, RNF05

Classes Relacionadas: Pagamento, Cheque, AutorizacaoCartao, Locacao, Devolucao


Descrição de Caso de Uso

Projeto: Vídeo Locadora Passatempo


Subsistema: atendimentoCliente
Caso de Uso: Efetuar Reserva

Descrição Sucinta: Este caso de uso é responsável pela realização de uma nova reserva, consulta e
cancelamento de uma reserva existente.

Fluxos de Eventos Normais


Nome do Fluxo de Eventos Precondição Descrição
Normal
Efetuar Nova Reserva 1. O atendente informa o cliente que deseja efetuar a reserva.
2. O atendente informa os dados para reserva, a saber: o filme e o tipo
de mídia.
3. A reserva é registrada, com a data e a hora do sistema, além das
informações de cliente, filme e tipo de mídia solicitados.
Consultar Dados de Reserva 1. O atendente informa a reserva que deseja consultar os dados.
2. Os dados da reserva são apresentados.
Cancelar Reserva 1. O atendente informa a reserva que deseja cancelar.
2. Os dados da reserva são apresentados e é solicitada confirmação.
3. Se a exclusão for confirmada, a reserva é excluída.
4. Para o item que estava reservado, incluir Verificar Existência de
Reserva Pendente.
Cancelar Reserva 1. Diariamente, o sistema verifica que reservas já expiraram (ver
Automaticamente RN15).
2. Para cada reserva expirada,
2.a - O sistema a registra como cancelada. A reserva não é
efetivamente excluída, mas apenas marcada como cancelada.
2.b. - Incluir Verificar Existência de Reserva Pendente.

Fluxos de Eventos de Exceção


Nome do Fluxo de Eventos Condição de Exceção Descrição
Normal Relacionado
Efetuar Nova Reserva 1 – Cliente está em 1a - Uma mensagem de erro é exibida, informando que há
atraso. itens locados pelo cliente em atraso e apresentando dados
desses itens. O fluxo de eventos é abortado.
Efetuar Nova Reserva 2 - Há itens que 2a - Uma mensagem é exibida, informando que não é possível
atendem à reserva efetuar a reserva, pois há itens que atendem à reserva
(filme e tipo de mídia disponíveis na locadora. O fluxo de eventos é abortado.
solicitados) disponíveis
para locação
Cancelar Reserva 1 – Reserva informada 1a - Uma mensagem de erro é exibida, informando que a
já foi cancelada reserva já foi cancelada automaticamente pelo sistema por ter
automaticamente. expirado seu prazo. O fluxo de eventos é abortado.

Requisitos Relacionados: RF04, RF05, RN03, RN10, RN15, RN16, RN17, RNF01, RNF04

Classes Relacionadas: Cliente, Filme, TipoMidia, Item, Locacao, ItemLocado


Descrição de Caso de Uso

Projeto: Vídeo Locadora Passatempo


Subsistema: atendimentoCliente
Caso de Uso: Verificar Existência de Reserva Pendente

Descrição Sucinta: Este caso de uso é responsável por verificar se existe uma reserva pendente
para um filme em um certo tipo de mídia.

Fluxos de Eventos Normais


Nome do Fluxo de Eventos Precondição Descrição
Normal
Verificar Existência de 1. De posse de um item, o sistema verifica se há um reserva pendente
Reserva Pendente para o filme do item, no tipo de mídia do item.
2. Se não há reserva pendente, o sistema torna o item disponível.
3. Se há reserva pendente:
3a. O sistema envia um email para o cliente da próxima reserva
pendente, indicando que há um item disponível para locação e
que, a partir daquele momento, ele tem 24 horas para efetuar a
locação.
3b. Registrar a próxima reserva como tendo sido comunicada ao
cliente.

Requisitos Relacionados: RF12, RN10, RNF04, RNF06

Classes Relacionadas: Item, Filme, Reserva, Cliente

Você também pode gostar