Maria do Carmo de Sá Gabeira
5 Método para Mod. de Casos De Uso (1) Casos de uso permitem o rastreamento dos requisitos nas fases do desenvolvimento: Fase de Especificação de Requisitos Modelo de Casos de Uso Fase de Análise Modelo de Análise Fase de Projeto Modelo de Projeto << trace >> << trace >> Comprar Produtos Comprar Produtos Comprar Produtos
6 Método para Mod. de Casos De Uso (2) O estereótipo << trace >> indica qual conjunto de elementos corresponde à especificação do caso de uso Comprar Produtos. O fato de um modelo depender do outro, implica que se o caso de uso for alterado, os modelos de análise e de projeto correspondentes devem ser revistos.
8 Enunciado do Problema: Sistema de Controle para Videolocadoras Um sistema de controle para uma videolocadora tem por objetivo automatizar o processo de locação e devolução de fitas/dvds de vídeo. Deve-se manter um controle dos cadastros de clientes e seus respectivos dependentes e também um controle sobre o acervo de fitas/dvds e sua movimentação. Os clientes podem executar operações que envolvem locação, devolução e compra de fitas/dvds. Caso a fita/dvd não seja devolvida no prazo previsto, uma multa será cobrada. Caso o cliente perca ou danifique uma fita/dvd alugada, ele deve pagar uma multa equivalente ao preço de uma fita/dvd nova.
13 Identificação dos Casos de Uso Baseada em Atores Técnica bastante utilizada na prática. Passos da abordagem: 1. Identificação dos atores; 2. Identificação das funcionalidades necessárias para cada um dos atores.
16 Identificação dos Atores (3) Perguntas que auxiliam essa descoberta (cont.): 6. Os outros sistemas utilizam algum dado/processamento do sistema especificado? Resposta: O sistema contábil necessita de informações sobre o valor de cada nota fiscal a emitir; o sistema de mala direta necessita das informações cadastrais dos clientes para emissão de panfletos promocionais. 7. Acontece algo automaticamente/periodicamente no sistema? Resposta: Sim. Uma reserva pode ser cancelada automaticamente, caso não tenha sido efetuada a locação do item no período estipulado.
24 Identificação de Casos de Uso Baseada em Atributos (1) A partir dos atributos das entidades (MER). Possíveis funcionalidades associadas à manipulação e manutenção desses dados. Por exemplo: suponha que fita tenha associada a ela: O nome do filme; Os nomes dos atores que atuam no filme; O nome do diretor; A data de lançamento.
27 Identificação Baseada em Análise de Domínio Objetivo: identificar as funcionalidades inerentes ao domínio Essas funcionalidades são classificadas como básicas e são mais propícias à reutilização Constituída de quatro etapas: 1. Estudo da Viabilidade do Domínio 2. Planejamento do Domínio 3. Contextualização do Domínio 4. Aquisição do Conhecimento do Domínio
28 1. Estudo da Viabilidade do Domínio Consiste na identificação e seleção de um domínio apropriado para o sistema em questão. Sub-etapas: 1. Seleção dos domínios candidatos: opinião de especialistas; 2. Seleção de critérios para a avaliação desses domínios: listagem das características desejáveis; 3. Pontuação dos critérios: definição de pesos para cada critério listado; No caso da videolocadora o domínio escolhido foi: Sistemas comerciais de locação = sistemas de locação + sistemas comerciais.
29 2. Planejamento do Domínio Consiste na análise do risco inerente ao domínio selecionado Um risco pode ser visto como a possibilidade da ocorrência de eventos danosos; Exemplos comuns de risco: O aumento da complexidade do sistema; O aumento do custo do desenvolvimento; A inviabilidade do desenvolvimento.
30 3. Contextualização do Domínio Adapta os conceitos gerais do domínio às necessidades e particularidades da empresa/sistema (escopo do sistema): Definição do limite do sistema Facilita a diferenciação entre os atores e os casos de uso Estudo de caso: o sistema trata apenas dos aspectos relativos a locação e devolução.
31 4.Aquisição do Conhecimento do Domínio(I) Identificação das funcionalidades inerentes ao domínio, de acordo com os passos: 1. Consulta aos especialistas do sistema para a obtenção de um modelo geral 2. Procura de sistemas existentes relacionados com o domínio do problema 3. Comparação dos sistemas existentes a fim de encontrar suas similaridades e diferenças 4. Refinamento do modelo original considerando a comparação realizada no passo anterior
32 4.Aquisição do Conhecimento do Artefatos finais produzidos: Domínio(II) Descrições textuais semelhantes aos fluxos de eventos dos casos de uso A produção desses artefatos é uma atividade desempenhada em conjunto pelo especialista no domínio e pelo engenheiro de requisitos Necessidades do domínio comercial : Processamento contábil (ator Sistema Contábil) e Envio de mala direta (considerado supérfluo pelos especialistas).
33 4.Aquisição do Conhecimento do Domínio(III) Características específicas do domínio de locação : Alugar vários itens distintos; Na devolução, é cobrada uma multa proporcional ao tempo de atraso; Durante o cadastro de clientes é feita uma consulta a instituições de proteção ao crédito;
34 4.Aquisição do Conhecimento do Domínio(IV) Características específicas do domínio de locação (cont.): Os itens alugáveis podem ser classificados em categorias. Essas categorias podem possuir preços, prazos de entrega e valores da multa diferenciados; Clientes podem ser bloqueados de maneira provisória ou permanente;
49 Ref. de Casos de Usos Relacionados (4) Ou
50 Descrição de Casos de Usos
51 Descrição de Casos de Usos (1) Cada caso de uso deve receber um nome único Os atores envolvidos devem ser explicitados A descrição do caso de uso não pode deixar dúvidas do que ele faz realmente As pré- e pós-condições definem condições satisfeitas antes e após a execução do caso de uso
52 Descrição de Casos de Usos (2) Exemplo do caso de uso Devolver Fita Destruída : Caso #5: Devolver Fita Destruída Atores: Cliente, Atendente e Gerente Descrição: O cliente entrega ao atendente uma fita destruída. O atendente imprime o registro do aluguel e pede para que o cliente se dirija ao gerente. O gerente negocia com o cliente uma taxa. O gerente pode também autorizar a compra de uma fita nova para substituir a que foi quebrada. A fita deve ser atualizada para mostrar que foi devolvida e está quebrada, e o registro do cliente também deve ser atualizado para mostrar que ele não está em débito com a loja.
53 Descrição de Casos de Usos (3) Pré-condições: Antes de Devolver Fita Destruída, o cliente deve ser sócio da videolocadora e deve ter alugado essa fita. Pós-condições: Ao final da devolução de uma fita destruída, a situação do cliente deve estar regularizada.
54 Agrupamento de Casos de Uso em Pacotes
55 Agrup. de Casos de Uso em Pacotes (1) À medida que o número de casos de usos cresce, eles podem ser organizados em pacotes Vários critérios diferentes podem ser utilizados na hora de definir como casos de uso serão empacotados: 1. Baseado nos atores que interagem com os casos de uso; 2. Baseado nas funcionalidades.
56 Agrup. de Casos de Uso em Pacotes (2) package_1 pacote_1 Casos de Uso Cliente pacote_2 Casos de Uso Gerente pacote_3 Casos de Uso Aluguel pacote_4 Casos de Uso Compra Pacotes 1 e 2 (agrupamento baseado nos atores) Pacotes 3 e 4 (agrupamento baseado nas funcionalidades)
57 Diagrama de Casos de Uso do Sistema da Videolocadora
58 Cancelar Reserva Desbloquear Cliente Relógio Reservar Título Manter Dados de Dependente Consultar Título << extend >> << extend >> Aluguar Fita Manter Dados de Cliente Devolver Fita Calcular Valor a Pagar Usuário Usuário << extend >> << extend >> << include >> << include >> << include >> Efetuar Pagamento Funcionario Cliente Comprar uma Fila Cliente Funcionario Bloquear Cliente Manter Dados de Título Contactar Cliente Manter Dados de Item Atendente Gerente Emitir Balanço Gerente Atendente Consultar Histórico Sistema Contábil Consultar Histórico do Cliente Consultar Histórico da Locadora
60 Exercício 2 Dado o diagrama de casos de uso apresentado anteriormente, que se refere ao sistema da videolocadora, atualize esse diagrama de modo a contemplar as seguintes restrições, adicionadas ao sistema: 1. O cliente VIP pode alugar um número ilimitado de fitas; caso contrário, o número máximo de fitas é limitado a três. 2. O pagamento pode ser efetuado no ato da locação ou da devolução e pode ser feito em dinheiro, com cartão de crédito, ou através de cheque-vídeo, que é comprado antecipadamente. Se pagar com cheque-vídeo, o cliente recebe um desconto especial. OBS.: Use os relacionamentos de inclusão, extensão e generalização, caso necessário.
61 Exercício 3 (I) Faça um diagrama de casos de uso para um sistema de gerência de biblioteca que contemple as seguintes regras de negócio: 1. Um usuário do sistema, que pode ser um aluno, um professor ou um funcionário da universidade, pode reservar publicações e também cancelar reservas previamente agendadas. 2. Um usuário do sistema deve estar devidamente cadastrado no sistema para usar os seus serviços. O sistema é operado pelo atendente da biblioteca, que também é um funcionário da universidade
62 (cont.) Exercício 3 (II) 3. Um usuário pode emprestar exemplares de publicações, previamente reservadas ou não. Se foi feita uma reserva, ela deve ser cancelada no momento do seu empréstimo. 4. No caso da devolução de uma publicação em atraso, existe uma multa que deve ser paga. Essa multa é calculada com base no número de dias em atraso
63 (cont.) Exercício 3 (III) 5. Além da multa, se a publicação estiver atrasada por mais de 30 dias e se o usuário não for um professor, além de pagar a multa, o usuário é suspenso por um período de 2 meses. 6. Uma publicação da biblioteca pode ser bloqueada/desbloqueada por um professor por um período de tempo. 7. O período de empréstimo é variável, dependendo do tipo de usuário (aluno, funcionário ou professor). OBS.: Utilize as diretrizes propostas em sala (Seção 2.9 do livro)
64 Respostas dos Exercícios
65 Exercício 2
66 (Exercício 2) Diagrama de Casos de Uso do Sistema da Videolocadora Cadastrar Dependente << extend >> Cancelar Reserva Remover Dependente << extend >> Relógio Reservar Título Alterar Dependente << extend >> Manter Dados de Dependente Cadastrar Cliente Sistema Contábil Verificar Quantidade Consultar Título << extend >> << extend >> << extend >> Aluguar Fita Remover Cliente Alterar Cliente << extend >> << extend >> << extend >> Manter Dados de Cliente Usuário Devolver Fita Calcular Valor a Pagar Cadastrar Título Usuário << extend >> Comprar uma Fila << extend >> << include >> << include >> Efetuar Pagamento << include >> Remover Título Alterar Título << extend >> << extend >> Manter Dados de Título << extend >> Funcionario Cliente Cliente Funcionario Contactar Cliente Pagar em Dinheiro Pagar em Vídeo Cheque Pagar em Cartão Cadastrar Item << extend >> Atendente Gerente Emitir Balanço Remover Item << extend >> Manter Dados de Item Gerente Atendente Consultar Histórico Alterar Item << extend >> Consultar Histórico do Cliente Consultar Histórico da Locadora
68 (Exercício 3) Diagrama de Casos de Uso do Sistema de Controle de Bibliotecas Consultar Publicação Reservar Publicação De acordo com o tipo de cliente Cancelar Reserva << extend >> Calcular Tempo de Empréstimo << include >> Tempo Sistema de Cadastro Usuário Emprestar Exemplar Renovar Empréstimo Devolver Exemplar << include >> << include >> Cliente Funcionário Professor Bloquear Exemplar << include >> Validar Usuário Desbloquear Exemplar << include >> Manter Dados Publicação Bibliotecária Atendente Manter Cadastros Manter Dados Usuário Manter Dados Exemplar
69 Roteiro - Parte 3 Diagrama de Atividades para Fluxo de Eventos. Diagramas de Interação de Sistema: Diagramas de Seqüência de Sistema; Diagramas de Colaboração de Sistema. Início da Fase de Análise.