A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso.

Apresentações semelhantes


Apresentação em tema: "©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso."— Transcrição da apresentação:

1 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso

2 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE2 Objetivos n Descrever em detalhe a técnica de Modelagem de Requisitos com Casos de Uso n Apresentar um modelo de documento de requisitos n Discutir o uso do diagrama de atividades na modelagem de casos de uso

3 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE3 Conceitos Básicos

4 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE4 Principais Tipos de Requisitos n Não-Funcionais  Atributos ou qualidades do sistema n Funcionais  Expressam funcionalidades do sistema

5 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE5 Alguns Tipos de Requisitos Não-Funcionais n Usabilidade (Facilidade de uso) n Confiabilidade n Desempenho n Segurança n Distribuição n Adequação a Padrões n Restrições de Hardware e Software

6 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE6 Caso de uso n É uma forma específica de uso do sistema através da execução de alguma de suas funcionalidades. n Uma unidade coerente de funcionalidade provida por um um sistema, manifestada por uma seqüência de mensagens trocadas entre o sistema e um ou mais usuários externos (representados como atores), junto com as ações executadas pelo sistema.

7 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE7 Caso de uso (continuação) n Descrevem o que acontece dentro do sistema. n Ajudam muito na comunicação entre clientes e desenvolvedores. n Mostram apenas o que o sistema faz, e não como.  Capturam o comportamento pretendido para um sistema, sem a necessidade de especificar como esse comportamento será implementado.

8 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE8 Caso de uso: representação gráfica Solicitar extrato Solicitar saldo

9 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE9 Atores n Constituem as entidades que interagem com o ambiente do sistema  Pessoas ou outros sistemas (de hardware ou software) que interagem com o sistema em desenvolvimento n Definem um papel particular n São sempre externos ao sistema n O sistema será descrito através de vários casos de uso que são executados por um número de atores

10 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE10 Ator: representação gráfica Cliente Caixa

11 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE11 Atores x usuários do sistema n Uma mesma pessoa pode desempenhar diferentes papéis Carlos como professor Professor Estudante Carlos como estudante Carlos

12 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE12 Diagrama de casos de uso n Diagrama com os casos de uso do sistema e atores relacionados n Facilitam o entendimento do sistema mostrando a sua “visão externa”. n A coleção de casos de uso deve especificar todas as formas existentes de uso do sistema Diagrama de casos de uso

13 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE13 Diagrama de casos de uso: representação gráfica Diagrama de casos de uso: representação gráfica Cliente Sacar dinheiro Realizar depósito Transferir entre contas Uma associação entre um ator e um caso de uso indica que há uma comunicação, possivelmente com envio e recepção de mensagens.

14 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE14 Cenários n Em UML significa um caminho através de um caso de uso. n Uma instância de um caso de uso n Exemplo (Sacar dinheiro):  Saque com sucesso  Tentativa de saque MAS senha incorreta  Tentativa de saque MAS saldo insuficiente

15 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE15 Requisitos Não-Funcionais x Casos de Uso n Requisitos não funcionais podem ser:  Específicos: associados a um caso de uso específico  Genéricos: associados a vários casos de uso ou ao sistema com um todo n Para serem atendidos podem gerar novos casos de uso

16 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE16 Especificação de Caso de Uso n Identificador do caso de uso n Breve Descrição n Ator (opcional) n Prioridade n Pré condições n Pós condições n Fluxo de eventos:  Fluxo de eventos principal  Fluxos secundários: alternativos e de exceção n Requisitos Não-Funcionais Específicos

17 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE17 Modelo de casos de uso Atores Casos de uso Especificações de casos de uso Modelo de casos de uso

18 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE18 Pacotes de Casos de Uso n Servem para agrupar casos de uso relacionados n Critérios para agrupamento:  ator  funcionalidades correlatas  processos  “um por todos e todos por um”

19 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE19 Um Modelo de Documento de Requisitos n Introdução  Objetivos do documento  Público ao qual se destina  Termos e acrônimos  Referências n Descrição geral do sistema  Abrangência e sistemas relacionados  Descrição dos usuários n Casos de uso  Diagrama  Especificações n Requisitos não funcionais genéricos

20 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE20 Como encontrar atores e casos de uso?

21 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE21 Como encontrar atores? n Quem usa o sistema? n Quem instala/mantém o sistema? n Quem inicia/desliga o sistema? n Que outros sistemas usam o sistema? n Quem recebe informação do sistema? n Quem provê informação ao sistema?

22 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE22 Como encontrar casos de uso? n Atores são fundamentais para a descoberta dos casos de uso n Pergunte  Que funções o ator vai querer do sistema?  O sistema armazena informações? Que informações atores irão criar, ler, atualizar ou apagar?  O sistema precisa notificar o ator sobre mudanças no seu estado interno?  Existe algum evento externo que o sistema precisa saber? Que ator informa o sistema desses eventos?

23 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE23 Especificação Detalhada dos Casos de Uso

24 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE24 Quando e por que realizá-las? n Quando?  após fazer levantamento dos principais casos de uso do sistema n Por que?  descrever detalhes dos casos de uso  descrever fluxos de eventos e outras propriedades  uniformizar entendimento entre clientes, usuários e equipe de desenvolvimento

25 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE25 Identificação do caso de uso n Deve ser única! n Não deve mudar nunca n Pois casos de uso podem ser referenciados por seu identificador

26 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE26 Breve descrição do caso de uso n Dar uma idéia do propósito do caso de uso, do seu objetivo n Deve ser feita ao se identificar o caso de uso, para evitar mal-entendidos n 2 ou 3 linhas!

27 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE27 Prioridade de casos de uso n Essencial para gerenciar os requisitos n É preciso definir prioridade de todos os casos de uso n Exemplos de prioridade:  Essencial  Importante  Desejável

28 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE28 Pré e pós condições n O que deve ser verdade antes e depois da realização do caso de uso!

29 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE29 Pré e pós condições: exemplos n Caso de uso “Entregar pedido”  Pré condição: os itens do pedido devem existir em estoque  Pós condição: os itens enviados devem ser abatidos do estoque n Caso de uso “Recadastrar CPF”  Pré condição: o usuário deve possuir um CPF  Pós condição: a situação do contribuinte é atualizada

30 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE30 Fluxo de eventos básico/principal n Série de passos que compõem um caso de uso n Concentre-se inicialmente na funcionalidade básica/central do caso de uso n Pense nos fluxos secundários depois!

31 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE31 Exemplo de um fluxo básico n Caso de uso “Sacar dinheiro” 1. O cliente passa o seu cartão 2. Digita sua senha 3. Digita o valor do saque 4. O sistema verifica se há saldo suficiente 5. O saldo é debitado da conta do cliente 6. O dinheiro é entregue ao cliente

32 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE32 Exemplo de um fluxo básico n Caso de uso “Sacar dinheiro” n MAS...  E se a senha não conferir?  E se não houver saldo?  E se não houver dinheiro suficiente na máquina?

33 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE33 Fluxos secundários n Só devem ser analisados e descritos após a descrição dos fluxos básicos.  situações especiais (ex: desconto para um cliente)  situações de erro

34 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE34 Uso do diagrama de atividades na especificação dos fluxos de eventos

35 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE35 Diagrama de atividades n Usados para representar graficamente o fluxo de eventos (fluxo básico + fluxos alternativos) n São semelhantes aos antigos fluxogramas. n São muito usados para modelar atividades concorrentes. Às vezes um diagrama fala mais que 1000 palavras!

36 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE36 Diagrama de atividades n É composto de:  atividades  transições  decisões

37 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE37 Estado inicial Verifica senha Libera dinheiro Termina transação e Imprime recibo Manipula senha incorreta [ incorreta ] [ correta ] Pede valor condição de guarda atividade [ dinheiro disponível ] [ dinheiro não disponível ] Prepara para Imprimir recibo [ resolvido ] [ não resolvido ] Exemplo: diagrama de atividades para o caso de uso Sacar dinheiro transição concorrência Estado final decisão sincronização de atividades

38 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE38 Estruturação do Modelo de Casos de Uso

39 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE39 Por que estruturar o modelo? n Extrair descrições de funcionalidades genéricas e compartilhadas que podem ser usadas por mais de um caso de uso. n Extrair descrições de funcionalidades adicionais que possam estender descrições específicas n Facilitar o entendimento do modelo

40 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE40 Generalização de Atores n É possível definir tipos gerais de atores e especializá- los usando o relacionamento de especialização Vendedor Realizar venda Estabelecer crédito Supervisor

41 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE41 Generalização de Atores: outro exemplo Aluno tempo integral Aluno tempo parcial

42 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE42 Relacionamentos entre Casos de Uso n Inclusão n Extensão n Generalização

43 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE43 Inclusão de casos de uso n Use inclusão quando houver repetição entre casos de uso e você desejar evitar esta repetição. n Um caso de uso incorpora explicitamente o comportamento de outro caso de uso, evitando assim repetições de descrição de fluxos.

44 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE44 Inclusão de casos de uso: exemplo Efetuar pagamento Vendedor Realizar pedido >

45 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE45 Inclusão de casos de uso: outro exemplo Validar cliente Cliente Sacar >

46 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE46 Exemplo de inclusão: validação de cliente no sistema Use Case: Sacar O cliente seleciona a opção “sacar” O cliente informa o valor a ser sacado includes Validar cliente O cliente recebe o dinheiro Use Case de Inclusão: Validar Cliente O cliente informa a senha e passa o cartão O sistema valida a senha e os dados do cartão

47 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE47 Extensão de casos de uso n Use extensão quando quiser descrever uma variação do comportamento normal.  partes opcionais de use cases  cursos alternativos e complexos que raramente ocorrem Solicitar catálogo Vendedor Realizar pedido >

48 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE48 Generalização de casos de uso n Relaciona um Use Case especializado a um mais geral n O filho herda os atributos, operações e seqüências de comportamento dos pais n O filho pode adicionar e redefinir o comportamento do pai n O filho pode substituir o pai em qualquer lugar que ele aparece

49 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE49 Generalização de casos de uso: exemplo Validar cliente Verificar passwordScan da retina

50 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE50 Diagrama de casos de uso estruturado: outro exemplo > Histórico do semestre atual Solicitar histórico de do curso Solicitar histórico > Verificar dependências Matricular aluno > Sistema de controle de pre-requisitos

51 ©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE51 Diagrama de casos de uso estruturado: outro exemplo


Carregar ppt "©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso."

Apresentações semelhantes


Anúncios Google