Documento de Especificação de Requisitos

Documentos relacionados
Especificação dos Requisitos do Software SysFilme 1.0

Especificação de Requisitos

PROCESSO SELETIVO UFAL SiSU GERAL (5.168 vagas ofertadas)

Documento de Especificação de Requisitos

ÍNDICE DE TRANSPARÊNCIA DO CONTENCIOSO ADMINISTRATIVO TRIBUTÁRIO DOS ESTADOS BRASILEIROS

TÊNIS DE MESA Nº 03 04/09/2015

MANUAL OPERACIONAL GI-RN

MERCADO BRASILEIRO DE SUPLEMENTOS MINERIAS 2014

Agência Nacional de Telecomunicações. Entidade Aferidora da Qualidade

Agência Nacional de Telecomunicações. Entidade Aferidora da Qualidade

CONFEDERAÇÃO BRASILEIRA DE FUTEBOL

LAYOUT PEDIDOS PAT. Modificado em: 26/07/ :40:00

8ª Pesquisa Nacional de Ataques a Bancos (2014)

Acre Previsão por Coeficiente no Estado

FONTE DE DADOS. Cadastro Nacional de Estabelecimentos de Saúde: Dados de todos os estabelecimentos de saúde do Brasil.

Educação Superior Enade e IGC dos Estados e DF

4ª Pesquisa Nacional de Ataques a Bancos 2012

Sistema de Mutirão Carcerário RESUMO. Total por Estado. Relatório Geral. Total Geral. Total de Processos Total de Liberdades Total de Benefícios

Quantidade de Acessos / Plano de Serviço / Unidade da Federação - Novembro/2007

7ª Pesquisa Nacional de Ataques a Bancos. (1º semestre de 2014)

9, R$ , , R$ ,

2005 CDMA Latin America Regional Conference

Pesquisa sobre a Securitização da Dívida Ativa dos Municípios

BRASIL - IMPORTAÇÃO FARINHA DE TRIGO 2019 ( t ) ( US$ / t )

Cargas Aéreas e Rodoviárias Ltda.

Pontifícia Universidade Católica

REGULAMENTO DA PROMOÇÃO PACOTE DE VOZ LDI MÓVEL VIVO PÓS-PAGO

Troca de Informações Através de Arquivo Pessoa Jurídica

Sondagem Comportamento do Consumidor Dia dos Pais Julho de 2017

BOLETIM DE DESEMPENHO ECONÔMICO DO TURISMO

CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA Atividade 5. Tema: Levantamento e Especificação de Requisitos

6ª Pesquisa Nacional de Ataques a Bancos (2013)

Modelagem de Casos de Uso (Parte 2)

Mudanças no processo de emissão de NF-e para 2016

Saúde é o problema mais citado pelos eleitores nos estados do país, apontam pesquisas Ibope

Consumo de mídia, aplicativos e redes sociais. Abril de 2017

SISTEMA SGPS GESTÃO DE PLANO DE SAÚDE

Formação dos Grupos e forma de disputa

PESQUISA DE OPINIÃO PÚBLICA SOBRE ASSUNTOS POLÍTICOS/ ADMINISTRATIVOS

RESOLUÇÃO SOBRE DISTRIBUIÇÃO DO FUNDO ESPECIAL DE FINANCIAMENTO DE CAMPANHA FEFC (SUBSTITUI A RESOLUÇÃO DE 20/08/2018)

2017. Serviço Brasileiro de Apoio às Micro e Pequenas Empresas Sebrae

ANEXO I BICICLETA ESCOLAR. Modelo de ofício para adesão à ata de registro de preços (GRUPO 1)

REGULAMENTO Promoção Vivo Sempre

Relatório Equipe Nacional de Relações Institucionais Novembro de 2012

Estudo: Análise da situação atual da Contribuição para o Custeio da Iluminação Pública CIP nos municípios brasileiros

Manual para preenchimento do formulário de envio de informações à Base de Dados de Gestores de Patrimônio

Programa Nacional de Suplementação de Vitamina A Divulgação dos resultados parciais do programa em 2013.

BRASIL - IMPORTAÇÃO DE TRIGO 2019 ( t ) ( US$ / t )

Dados sobre o Programa de Educação Tutorial PET atualizados em abril de Fonte: SESu/MEC Apresentação: Diretoria da CENAPET

REGULAMENTO Promoção Novo Vivo Sempre

TRANSPORTE RODOVIÁRIO DE CARGAS: Análise do processo de consolidação e transferência de cargas via unidade centralizadora Um Estudo de Caso

Pesquisa sobre o pagamento do 13º Salário pelos municípios brasileiros em 2012

2018. Serviço Brasileiro de Apoio às Micro e Pequenas Empresas Sebrae

2018. Serviço Brasileiro de Apoio às Micro e Pequenas Empresas Sebrae

Planilha1 FUNC PROGRAMATICA PROGRAMA/ACAO/SUBTITULO/PRODUTO S N P O U T VALOR 0909 OPERACOES ESPECIAIS: OUTROS ENCARGOS ESPECIAIS

Ranking de salário dos Tribunais de Justiça nos Estados e DF - Junho 2018 SS JUSTIÇA MG

Pesquisa Nacional por Amostra de Domicílios Contínua PNAD Contínua. Rio de Janeiro, 23 de fevereiro de 2017

Cursos de Dança no Brasil. Dulce Aquino

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Estado de São Paulo tem a maior quantidade de POS a cada mil habitantes; Maranhão, a menor

Evolução das estatísticas de acidentes por Estado

SECRETARIA DE INSPEÇÃO DO TRABALHO TAÍS ARRUTI LYRIO LISBOA AUDITORA FISCAL DO TRABALHO RESPONSÁVEL NACIONAL PELO PROJETO DE INSERÇÃO DE APRENDIZES

Funções Básicas do sistema:

Pesquisa Nacional por Amostra de Domicílios Contínua PNAD Contínua. Mercado de Trabalho Brasileiro 1º trimestre de de maio de 2018

O pagamento do 13º salário pelos Municípios brasileiros em 2010

SUMÁRIO EXECUTIVO PESQUISAS DE OPINIÃO PÚBLICA OAB 27 ESTADOS. Abril 2012

Engenharia de Software. Caso de Uso - Continuação

Documento)de)Integração!

III Encontro dos Coordenadores de Saúde do Trabalhador Estratégia e Agenda Renast

UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO SECRETARIA DE REGISTRO E CONTROLE ACADÊMICO SRCA

2018. Serviço Brasileiro de Apoio às Micro e Pequenas Empresas Sebrae

Dados Básicos sobre Recursos Humanos. ObservaRH - NESP/CEAM/UnB

PRÊMIO EXCELÊNCIA 2010 CATEGORIAS. Quantitativo de metas nacionais efetivamente cumpridas. Posição TRT Metas Cumpridas 23ª - MT 10 13ª - PB 9

Estatísticas sobre Analfabetismo no Brasil

SOLUÇÕES PARA NOVAS EXIGÊNCIAS FISCAIS

1. Porcentagem de estudantes com aprendizado adequado em Língua Portuguesa e Matemática nível Brasil, Unidades da Federação e Municípios

Vigilância em Saúde do Trabalhador Agenda Estratégica e a Renast

Piores trechos por Unidade Federativa por número de mortos

Impactos da Crise Financeira Internacional nas MPEs Brasileiras. Junho de 2009

RESOLUÇÃO Nº 609, DE 17 DE DEZEMBRO DE 2014

REGULAMENTO Promoção Novo Vivo Sempre

Sumário. 03 Perfil Sicredi. 06 Perfil Ouvidoria

O pagamento do 13º Salário pelos municípios brasileiros em

ANÁLISE DO COMPORTAMENTO DA RECEITA DE SERVIÇOS (DEZEMBRO- 2015)

JJR a Peça que faltava à sua empresa.

INDICADOR DE SITUAÇÃO PREVIDENCIÁRIA

Sumário. 03 Perfil Sicredi. 05 Perfil Ouvidoria

Modelos de Sistemas Casos de Uso

Manual do Aplicativo do Termo de Opção pelo Domicílio Tributário Eletrônico (DTE) Versão vigente a partir de 08/07/2013

14ª Avaliação de Perdas no Varejo Brasileiro

Sumário. 03 Perfil Sicredi. 06 Perfil Ouvidoria

Casos de FHD Óbitos e Taxa de letalidade

Contabilizando para o Cidadão Entendendo as Finanças Públicas

TÊNIS DE MESA Nº 03 13/11/2018

BRASIL - IMPORTAÇÃO DE TRIGO 2017 ( t ) ( US$ / t )

Boletim Informativo - Campanha Nacional de Vacinação contra a Poliomielite e contra o Sarampo

SECRETARIA DE EDUCAÇÃO BÁSICA MEC

Transcrição:

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 controleacervo atendimentocliente Envolve toda a funcionalidade relacionada com o controle do acervo da videolocadora, abrangendo controle de filmes, itens, tipos de mídia e distribuidoras 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 Administrador Atendente Cliente Sistema de Operadoras de Cartão de Crédito Representa funcionários da locadora responsáveis pela manutenção do acervo da vídeo locadora. Representa funcionários da locadora responsáveis pelo atendimento aos clientes da locadora Representa os clientes da locadora. Representa o sistema das operadoras de cartão 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 Distribuidora I, A, C, E [I] Informar: razão social, CNPJ, endereço, telefone e pessoa de contato. [E] Não é permitido excluir uma distribuidora que tenha filmes associados. RF07, RNF01 Distribuidora Cadastrar Filme I, A, C, E [I] Informar: título original, título em português, países, ano, diretores, atores, 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. RF06, RNF01 Filme, Distribuidora Cadastrar Item I, A, C, E [I] Informar: filme, tipo de mídia, data de aquisição e número de série. Incluir Verificar Existência de Reserva Pendente. [E] Não é permitido excluir um item que tenha locações associadas. RF06, RNF01, RNF03 Item, Filme, TipoMidia Cadastrar Tipo de Mídia I, A, C, E [I] Informar: nome e valor padrão de locação. RF06, RNF01 TipoMidia [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 informando uma (ou uma combinação) das 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. RF08, RNF01, RNF02 Filme, Item, TipoMidia

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.

de Caso de Uso Projeto: Vídeo Locadora Passatempo Subsistema: atendimentocliente Caso de Uso: Cadastrar Cliente 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 Normal Incluir Novo Titular Incluir Novo Dependente Alterar Dados de Cliente Desativar Cliente Reativar Cliente Consultar Dados de Cliente Excluir Cliente Precondição 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. 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. 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. 1. O atendente informa o cliente ativo a ser desativado. 2. O cliente é desativado. 1. O atendente informa o cliente inativo a ser reativado. 2. O cliente é reativado. 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. 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 Normal Relacionado Desativar Cliente Variante 2 O cliente é um cliente titular e possui dependentes. 2a O cliente titular e seus dependentes são desativados.

Fluxos de Eventos de Exceção Normal Relacionado Condição de Exceção 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 três dependentes ativos 1a - uma mensagem de erro é exibida, informando que o 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 Excluir Cliente Excluir Cliente 2 O cliente a ser reativado é dependente de um cliente titular inativo 1 - O cliente ou um de seus dependentes possui locações 2 Solicitação de confirmação de exclusão negada. 2a - uma mensagem de erro é exibida, informando que cliente é dependente de um titular inativo e o fluxo de eventos é abortado 1a - Uma mensagem de erro é exibida, indicando que o cliente ou um de seus dependentes possui locações e, 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. 2a Abortar o fluxo de eventos Requisitos Relacionados: RF09, RF10, RF11, RN04, RN05, RN06, RN07, RNF01, RNF04 Classes Relacionadas: Cliente, ClienteTitular, ClienteDependente, Reserva

de Caso de Uso Projeto: Vídeo Locadora Passatempo Subsistema: atendimentocliente Caso de Uso: Efetuar Locaçã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 Efetuar Nova Locação Consultar Dados de Locação Cancelar 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. 1. O atendente seleciona a locação que deseja consultar os dados. 2. Os dados da locação são apresentados. 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 Normal Relacionado Efetuar Nova Locação Efetuar Nova Locação Condição de Exceção 1 Cliente está em atraso. 2.1 Existe uma reserva pendente para o item do filme e tipo de mídia sendo locado. 1.a - Uma mensagem de erro é exibida, informando que há itens locados pelo cliente em atraso e apresentando dados desses itens. O fluxo de eventos é abortado. 2.1a Se o cliente da próxima reserva pendente não é o cliente da locação, então uma mensagem de erro é exibida, indicando o item não está disponível para locação e retornar 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 confirmação de cancelamento negada. 2a - Abortar o fluxo de eventos.

Requisitos Relacionados: RF01, RN01, RN08, RN10, RN11, RN12, RN13, RN14, RN16, RNF01, RNF04 Classes Relacionadas: Cliente, Locacao, ItemLocado, Item, TipoMidia, Filme, Reserva

de Caso de Uso Projeto: Vídeo Locadora Passatempo Subsistema: atendimentocliente Caso de Uso: Efetuar Devolução Sucinta: Este caso de uso é responsável pela realização de uma devolução de itens. Fluxos de Eventos Normais Normal Efetuar Devolução Precondiçã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 Normal Relacionado Efetuar Devolução Condição de Exceção 1 - Item informado não possui uma locação vigente. 1a - Uma mensagem de erro é exibida, informando que o item informado não está locado no momento. 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

de Caso de Uso Projeto: Vídeo Locadora Passatempo Subsistema: atendimentocliente Caso de Uso: Efetuar Pagamento Sucinta: Este caso de uso é responsável pela realização de um pagamento. Fluxos de Eventos Normais Normal Efetuar Pagamento Precondição 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 Normal Relacionado Variante 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 Normal Relacionado Efetuar Pagamento Efetuar Pagamento Efetuar Pagamento Condição de Exceção 2a.1 O valor da quantia paga em dinheiro é inferior ao valor a ser pago. 2b.1 O valor do cheque é diferente do valor a ser pago 2c.2 O Sistema de Operadoras de Cartão de Crédito não autoriza a transação Requisitos Relacionados: RF03, RN09, RNF05 2a.1.1 - Uma mensagem de erro é exibida, informando que a quantia paga deve ser maior ou igual ao valor a ser pago. 2a.1.2 Retornar ao passo 2a.1 2b.1.1 - Uma mensagem de erro é exibida, informando que o valor do cheque deve ser igual ao valor a ser pago. 2b.1.2 Retornar ao passo 2b.1. 2c.2.1 - Uma mensagem de erro é exibida, informando que a transação não foi autorizada. 2c.2.2 Retornar ao passo 1. Classes Relacionadas: Pagamento, Cheque, AutorizacaoCartao, Locacao, Devolucao

de Caso de Uso Projeto: Vídeo Locadora Passatempo Subsistema: atendimentocliente Caso de Uso: Efetuar Reserva 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 Normal Efetuar Nova Reserva Consultar Dados de Reserva Cancelar Reserva Cancelar Reserva Automaticamente Precondição 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. 1. O atendente informa a reserva que deseja consultar os dados. 2. Os dados da reserva são apresentados. 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. 1. Diariamente, o sistema verifica que reservas já expiraram (ver 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 Normal Relacionado Efetuar Nova Reserva Efetuar Nova Reserva Cancelar Reserva Condição de Exceção 1 Cliente está em atraso. 2 - Há itens que atendem à reserva (filme e tipo de mídia solicitados) disponíveis para locação 1 Reserva informada já foi cancelada automaticamente. 1a - Uma mensagem de erro é exibida, informando que há itens locados pelo cliente em atraso e apresentando dados desses itens. O fluxo de eventos é abortado. 2a - Uma mensagem é exibida, informando que não é possível efetuar a reserva, pois há itens que atendem à reserva disponíveis na locadora. O fluxo de eventos é abortado. 1a - Uma mensagem de erro é exibida, informando que a reserva já foi cancelada automaticamente pelo sistema por ter 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

de Caso de Uso Projeto: Vídeo Locadora Passatempo Subsistema: atendimentocliente Caso de Uso: Verificar Existência de Reserva Pendente 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 Normal Verificar Existência de Reserva Pendente Precondição 1. De posse de um item, o sistema verifica se há um 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

4. Modelo Estrutural O modelo conceitual estrutural visa capturar e descrever as informações (classes, associações e atributos) que o sistema deve representar para prover as funcionalidades descritas na seção anterior. A seguir, são apresentados os diagramas de classes de cada um dos subsistemas identificados no contexto deste projeto. Na seção 6 Dicionário de Projeto são apresentadas as descrições das classes e atributos presentes nos diagramas apresentados nesta seção. 4.1 - Subsistema controleacervo A Figura 3 apresenta o diagrama de classes do subsistema controleacervo. Figura 3 Diagrama de Classes do Subsistema controleacervo. 4.2 - Subsistema atendimentocliente A Figura 4 apresenta o diagrama de classes do subsistema atendimentocliente. Nesse diagrama, as restrições de integridade abaixo têm de ser garantidas. Restrições de Integridade Um cliente titular só pode possuir até três dependentes ativos.

Figura 4 Diagrama de Classes do Subsistema atendimentocliente.

5. Modelo Dinâmico O modelo dinâmico visa capturar o comportamento dinâmico do sistema. A seguir, são apresentados os diagramas de estados e o diagrama de atividades elaborados no contexto deste projeto. 5.1 Diagramas de Estados A Figura 5 apresenta o diagrama de estados da classe Item do subsistema controleacervo. Figura 5 Diagrama de Estados da Classe Item. A Figura 6 apresenta o diagrama de estados da classe Reserva do subsistema atendimentocliente.

Figura 6 Diagrama de Estados da Classe Reserva. 5.2 Diagrama de Atividades A Figura 7 apresenta o diagrama de atividades para o fluxo de eventos Efetuar Nova Reserva do caso de uso Efetuar Reserva do subsistema atendimentocliente. A Figura 8 apresenta o diagrama de atividades para o fluxo de eventos Efetuar Nova Locação do caso de uso Efetuar Locação do subsistema atendimentocliente.

Figura 7 Diagrama de Atividades: Efetuar Nova Reserva.

Figura 8 Diagrama de Atividades: Efetuar Nova Locação.

6. Dicionário de Projeto Esta seção apresenta as definições das classes (e seus atributos e operações), servindo como um glossário do projeto. As definições são organizadas por subsistema. Vale destacar que operações básicas (operações get e set, construtoras e destrutoras de objetos) não são listadas e descritas. 6.1 - Subsistema controleacervo Distribuidora: Empresas responsáveis pela distribuição de filmes para a locadora. razaosocial: razão social da distribuidora cnpj: CNPJ da distribuidora endereco: endereço da distribuidora telefone: telefone para contato com a distribuidora pessoacontato: nome de uma pessoa para contato com a distribuidora ativa: indica se a distribuidora está (V) ou não (F) fornecendo filmes para a locadora Filme: Filmes do acervo da locadora titulooriginal: título original do filme, em sua língua de origem títuloportugues: título do filme em língua portuguesa, definido pela distribuidora paises: países onde o filme foi produzido. Devem ser vários quando o filme for uma co-produção ano: ano de lançamento do filme diretores: nomes dos diretores responsáveis pela direção do filme atores: nomes dos atores que compõem o elenco do filme sinopse: sinopse, fazendo um resumo do filme duracao: duração do filme em minutos genero: gênero do filme (ver tipo de dados enumerado Genero para ver possíveis valores) ehlancamento: indicador de se o filme é lançamento (V) ou não (F) existeitemdisponivel(tpmidia: TipoMidia): boolean - verifica dentre os itens de um filme se há algum deles do tipo de mídia tpmidia disponível na locadora. Caso haja, retorna verdadeiro (V); caso contrário, retorna falso (F). Item: os objetos físicos (Dvds, fitas VHS etc.) que têm os filmes gravados e que são efetivamente locados. numeroserie: número de série do item no formato de código de barras dtaquisicao: data de aquisição do item pela locadora estado: estado corrente do item (ver diagrama de estados da classe Item e tipo de dados enumerado correspondente) obterproximareservapendente: Reserva - retorna a próxima reserva pendente que indique o filme e o tipo de mídia do item.

TipoMidia: tipos de mídias com os quais a locadora trabalha (p.ex., DVD, Fita VHS etc.), i.e., que a locadora possui itens desse tipo. nome: nome do tipo de mídia valorpadraolocacao: valor padrão a ser cobrado por locação de itens deste tipo ativo: indica se a locadora está (V) ou não (F) trabalhando com itens neste tipo de mídia 6.2 - Subsistema atendimentocliente AutorizacaoCartao: autorização emitida pelo Sistema de Operadoras de Cartão de Crédito quando da aprovação de um pagamento realizado com cartão de crédito. operadora: nome da operadora de cartão de crédito que aprovou o pagamento numero: número da autorização do pagamento, enviado pelo Sistema de Operadoras de Cartão de Crédito quando o pagamento com cartão de crédito é autorizado data: data de envio da autorização Cheque: cheques utilizados para efetuar pagamentos. banco: número do banco da conta do cheque agencia: número da agência da conta do cheque conta: número da conta do cheque numero: número do cheque usado para pagamento Cliente: clientes da locadora. numeroinscricao : número de inscrição do cliente nome: nome do cliente sexo: sexo do cliente (ver tipo de dados enumerado Sexo para ver possíveis valores) datanascimento: data de nascimento do cliente email: e-mail do cliente ativo: indica se o cliente está ativo (V) ou inativo (F) na locadora. ematraso(): boolean verifica, dentre os itens locados nas locações do cliente, se há algum deles que já deveria ter sido devolvido (data corrente > data devolução prevista) e ainda não foi. Caso haja, retorna verdadeiro (V); caso contrário, retorna falso (F). ClienteDependente: clientes que dependem de clientes titulares. São indicados pelo cliente titular e suas ações junto à locadora são atribuídas ao seu titular.

ClienteTitular: clientes principais da locadora, os quais são responsáveis pelas suas ações junto à locadora e também pelas de seus dependentes. cpf: cpf do cliente titular endereco: endereço do cliente titular (ver tipo de dados Endereco para ver a estrutura dos endereços) telefoneresidencial: telefone da residência do cliente titular telefonecelular: telefone celular do cliente titular telefonecomercial: telefone do local de trabalho do cliente titular localtrabalho: local onde o cliente titular trabalha Devolucao: registros das devoluções de itens que foram locados previamente. data: data em que ocorreu a devolução ItemLocado: registros das locações de itens individuais. valorlocacao: valor de locação do item dtdevolucaoprevista: data limite que o item tem de ser de devolvido para não ser cobrada multa multa: valor cobrado de multa por atraso na devolução do item locado calcularvalorlocacao(): Currency - calcula o valor devido para a locação do item, segundo a descrição da regra de negócio RN11. Retorna esse valor. calculardatadevolucaoprevista(): Date - calcula a data de devolução prevista do item locado, segundo a descrição da regra de negócio RN12. Retorna essa data. Locacao: registros das locações de itens efetuadas por clientes. data: data em que ocorreu a locação Pagamento: registros de pagamentos efetuados. valor: valor recebido como pagamento Reserva: registros de reservas efetuadas pelos clientes para filmes em determinados tipos de mídia. dtreserva: data e hora em que a reserva foi efetuada dtcomunicacaocliente: data e hora em que foi feita a comunicação com o cliente de que há um item disponível na locadora para atender à reserva efetuada pelo cliente estado: indica o estado em que se encontra uma reserva (ver diagrama de estados da classe Reserva e tipo de dados enumerado correspondente) 6.3 Tipos de Dados Específicos de Domínio Cep: código de endereçamento postal (CEP). inforegiao: String 5 primeiros dígitos do CEP, contendo informações da região e setor de um endereço, conforme sistema decimal definido pelos Correios iddistribuicao: String 3 últimos dígitos, contendo informações de identificadores de distribuição usados pelos Correios para entrega de correspondências

Cnpj: Número no Cadastro de Pessoas Jurídicas com 11 dígitos. numidentificacao: String - 8 primeiros dígitos, identificando a empresa digitoverificador: String - dois últimos dígitos, usados para verificar se o número do CNPJ é válido CodigoBarras: String - código numérico de identificação inequívoca de um item a ser vendido, movimentado e armazenado, composto por 13 dígitos. Cpf: Número no Cadastro de Pessoas Físicas com 11 dígitos. numidentificacao: String - 9 primeiros dígitos, identificando a pessoa física digitoverificador: String - dois últimos dígitos, usados para verificar se o número do CPF é válido Endereco: endereços, conforme estrutura definida abaixo. rua: String - nome da rua numero: String - número do endereço complemento: String - informação complementar ao número, tal como apartamento bairro: String - bairro do endereço cidade: String - cidade do endereço estado: Estado cep: do endereço Estado: estados do Brasil. Tipo enumerado que pode assumir os seguintes valores: {AC Acre, AL - Alagoas, AM - Amazonas, AP - Amapá, BA - Bahia, CE - Ceará, DF Distrito Federal, ES Espírito Santo, GO - Goiás, MA - Maranhão, MG Minas Gerais, MS Mato Grosso do Sul, MT Mato Grosso, PA - Pará, PB - Paraíba, PE - Pernambuco, PI - Piauí, PR - Paraná, RJ Rio de Janeiro, RN - Rio Grande do Norte, RO - Rondônia, RR - Roraima, RS Rio Grande do Sul, SC Santa Catarina, SE - Sergipe, SP São Paulo, TO Tocantins} EstadoItem: estados pelos quais itens podem passar. Tipo enumerado que pode assumir os seguintes valores: Disponível, Reservado, Locado e Inativo. Ver diagrama de estados da classe Item. EstadoReserva: estados pelos quais reservas podem passar. Tipo enumerado que pode assumir os seguintes valores: Pendente, Comunicada, Atendida e Expirada. Ver diagrama de estados da classe Reserva. Genero: gêneros nos quais os filmes da locadora são classificados. Tipo enumerado que pode assumir os seguintes valores: {Ação, Animação, Aventura, Comédia, Documentário, Drama, Ficção, Guerra, Musical, Policial, Romance, Suspense, Terror} Sexo: sexo de pessoas físicas. Tipo enumerado que pode assumir os seguintes valores: {Feminino, Masculino} Telefone: números de telefones. ddd: String número do DDD do telefone (3 dígitos) numero: String número do telefone propriamente dito (8 dígitos)