1 / 42

Casos de Uso

Casos de Uso. Casos de Uso – O que é. Descrições narrativas de processos do domínio da aplicação Documentam a seqüência de eventos de um ator (um agente externo) usando o sistema para completar, do início ao fim, um determinado processo Representação em UML:. Objetivos de um Caso de Uso.

cassia
Download Presentation

Casos de Uso

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Casos de Uso

  2. Casos de Uso – O que é • Descrições narrativas de processos do domínio da aplicação • Documentam a seqüência de eventos de um ator (um agente externo) usando o sistema para completar, do início ao fim, um determinado processo • Representação em UML:

  3. Objetivos de um Caso de Uso • Ser compreensível para os usários leigos em informática • Auxiliar a tarefa de análise, especificando funcionalidades e comportamento do sistema • Delimitar o sistema • Servir de base para derivar casos de teste

  4. Atores • Entidades externas ao sistema que de algum modo participam da estória do caso de uso • Estimulam o sistema com eventos de entrada, ou recebem alguma coisa dele • Designados pelo papel que exercem no caso de uso • Ex.: Cliente, Operador, etc. • Representação em UML:

  5. Atores e Casos de Uso • Um caso de uso possui um ator que o inicia, que gera o estímulo inicial, e possivelmente vários atores participantes • O ator iniciador deve ser indicado explicitamente na descrição do caso de uso • Algumas categorias típicas de atores incluem: • papeis exercidos por pessoas • sistemas de computação, outros softwares • dispositivos elétricos e mecânicos • hardware

  6. Diagramas de Caso de Uso • Ilustram um conjunto de casos de uso e atores para um sistema e os relacionamentos entre eles POST Buy Items Cashier Customer Log In Refund Purchased items

  7. Relacionamentos no Diagrama de Casos de Uso • Relacionamento entre atores • Relacionamento entre atores e casos de uso • Relacionamento entre casos de uso

  8. Relacionamento entre atores • Relacionamento de Associação • Relacionamento de Generalização _________ Cliente Caixa _________ Funcionario Cliente

  9. Herança entre atores Gerente Gerente de Compras Gerente de Vendas

  10. Relacionamento entre atores e casos de uso _________ Cliente _________ A seta pode indicar duas alternativas a escolher: ator que inicia o caso de uso ou simplesmente a direção dos dados

  11. Relacionamento entre Casos de Uso <<uses>> ou << include>> <<extends>> ______ ________ RealizarPedido RealizarPedido Cliente Cliente <<extends>> <<uses>> ValidarCliente CadastrarCliente

  12. Relacionamento de Uso ou Include • Utilizar quando se tem um bloco de comportamento que é o mesmo para vários casos de uso. • Representar o fluxo comum como um outro caso de uso B a ser chamado pelo caso de uso A complexo: A <<uses>>B • Validar Cliente pode ser um caso de uso utilizado por outro caso tal como Abrir Conta além de Realizar Pedido

  13. Relacionamento de Extensão • Utilizar quando se tem dois casos de usos que fazem algo parecido, só que o caso de uso B faz alguma coisa a mais que A. B estende A • B representa alguma situação não muito comum que ocorre em A mediante a satisfação de uma pré-condição

  14. Relacionamento de Generalização • relação estrutural entre um caso de uso maisgeral e um caso de uso mais específico. • o caso de uso mais geral é uma generalização(abstração) do ou dos casos de uso mais específicos. O caso de uso geral,representa as partes comuns de casos de uso especializados. _______ Identificar Usuário Verificar Senha

  15. Fluxo de Eventos, Cenários • Um caso de uso descreve um fluxo de eventos para realizar uma operação • Cenário: é uma das formas possíveis de se realizar um caso de uso • Tipos de fluxos: • Típicos: Principal ou Básico • Atípicos: Alternativos, casos de erro, cancelamento, etc.

  16. Pré e Pós Condições • Condições que devem ser verdadeiras antes de o caso de uso ser executado, ou após a sua execução. Ex: retirar dinheiro em um caixa • Pré-condição: cliente precisa ter conta no banco • Pós-condição: o terminal fica pronto para outro cliente.

  17. Interfaces entre Atores e Casos de Uso • Identificam quais operações o ator (ou o caso de uso) realizam • Auxiliam a especificar as interações e a reutilizar casos de uso ________ -------------- Interface Cliente Cliente Realizar Pedido

  18. Tipos de Caso de Uso Com Respeito à Importância • Primário Representam os processos principais ou mais comuns (ex.: Comprar Itens) • Secundário Representam processos menos importantes ou mais raros (ex.: Cadastrar Operadores) • Opcional Representam processos que podem ser ignorados ou incluídos em futuras versões do sistema (ex.: Solicitar Estoque para um Novo Produto)

  19. Tipos de Casos de Uso com Respeito à Descrição Textual • Alto-nível • Breve descrição de um processo, normalmente em duas ou três frases, e deliberadamente vago em decisões de projeto • Criados na fase inicial de requisitos • Expandido • Descrição passo a passo dos fluxos de eventos de um processo • Durante a fase de requisitos, apenas os casos de uso mais importantes são geralmente escritos nesse formato

  20. Casos de Uso Alto Nível Comprar Itens (Buy Items) Cliente (Customer), Operador (Cashier ) primário Um Cliente chega no caixa com itens para comprar. O Operador registra os itens e coleta o pagamento. Ao final, o Cliente sai com os itens. Caso de uso: Atores: Tipo: Descrição: • Exemplo de um caso de uso de alto-nível: • A UML não especifica um formato rígido para os cabeçalhos e a estrutura de um caso de uso • Podem ser alterados de acordo com as necessidades de documentação

  21. Caso de Uso Expandido Comprar Itens com Dinheiro (Buy Items with Cash) Cliente (Iniciador), Operador Capturar uma venda e seu pagamento em dinheiro. Um Cliente chega no caixa com itens para comprar. O Operador registra os itens e coleta um pagamento com dinheiro. Ao final, o Cliente sai com os itens. Caso de uso: Atores: Propósito: Descrição: • Exemplo de um caso de uso expandido: primário e essencial Funções: R1.1, R1.2, R1.3, R1.7, R1.9, R2.1 Tipo: Referencia: Resposta do Sistema Típica Seqüência de Eventos Ação do Ator 1. Este caso de uso começa quando um Cliente chega no caixa com itens para comprar.

  22. Caso de Uso Expandido Resposta do Sistema Típica Seqüência de Eventos Ação do Ator • Exemplo de um caso de uso expandido (cont.): 3. Determina o preço do item e adiciona informação sobre o item à transação de venda em anda-mento. Mostra a descrição e o preço do item corrente. 2. O Operador registra o identi-ficador de cada item. Se há mais de um do mesmo item, o Operador também pode infor-mar a quantidade. 5. Calcula e mostra o valor total da venda. 4. Após processar o último item, o Operador indica ao POST que a entrada de itens terminou. . 6. O Operador informa o total ao Cliente.

  23. Caso de Uso Expandido Resposta do Sistema Típica Seqüência de Eventos Ação do Ator • Exemplo de um caso de uso expandido(cont.): 7. O Cliente entrega um paga-mento em dinheiro, possivelmente maior do que o valor total. 9. Mostra o troco devido. Emite um recibo. 8. O Operador registra o valor recebido em dinheiro. 11. Registra a venda no log de vendas completadas. 10. O Operador deposita o dinheiro e retira o troco devido. O Operador entrega o troco e o recibo ao Cliente. . 12. O Cliente sai com os itens comprados.

  24. Tipos de Casos de Uso com Respeito à Implementação • Essencial • Descrição de um processo em termos de sua motivação e atividades essenciais • Expressos relativamente livres de detalhes de implementação, decisões de projeto, e uso de tecnologias • Real • Descrição de um processo em termos de seu projeto real, comprometido com tecnologias de desenvolvimento, interfaces de entrada e saída, etc.

  25. Caso de Uso Essencial Ação do Ator Resposta do Sistema Trecho do caso de uso Comprar Itens essencial 3. Determina o preço do item e adiciona informação sobre o item à transação de venda em anda-mento. Mostra a descrição e o preço do item corrente. 2. O Operador registra o identi-ficador de cada item. Se há mais de um do mesmo item, o Operador também pode infor-mar a quantidade. 5. ... 4. ...

  26. Caso de Uso Real Ação do Ator Resposta do Sistema Trecho do caso de uso Comprar Itens real 2. Para cada item, o Operador digita o código universal de pro-duto (UPC) no campo de entrada UPC da Janela 1. Ele então pres-siona o botão “Entra Item” com o mouse ou pressiona a tecla <Enter>. 3. Determina o preço do item e adiciona informação sobre o item à transação de venda em anda-mento. Mostra a descrição e o preço do item corrente na Caixa de Texto 2 da Janela 1. 5. ... 4. ...

  27. Casos de Uso com Fluxos Alternativos Seção: Principal Resposta do Sistema Ação do Ator • Caso de uso Comprar Itens Expandido 1. ... 2. O Cliente escolhe o tipo de pagamento: a) Se pagamento com dinheiro, veja seção Pagamento com Dinheiro. b) ... Seção: Pagamento com Dinheiro Resposta do Sistema Ação do Ator 1. O Cliente entrega um paga-mento em dinheiro ...

  28. Formato para um Caso de Uso Nome do caso de uso Descrição Atores Tipo Referências Pré-condições Fluxo de eventos Fluxo principal (típico) Fluxos alternativos Fluxos não típicos (erros, cancelamentos, etc) Pós-condições Pontos de extensão Casos de uso incluídos Outros requisitos (Interfaces)

  29. Decomposição de Diagramas de Casos de Uso • Pode-se dividir sistemas complexos em sub-sistemas e para cada um deles um diagrama de Casos de Uso • Para mostrar o relacionamento entre esses sub-sistemas, os Casos de Uso são agrupados em Pacotes.

  30. Decomposição de Diagramas de Casos de Uso Casos de uso Casos de uso Adminitrativos Mercadológicos Casos de uso Gerais

  31. Identificando Casos de Uso • Normalmente não são eventos ou passos individuais, mas um processo completo • Erro mais comum! • Método baseado em atores 1. Identificar os atores relacionados com o sistema ou organização 2. Para cada ator, identificar os processo que eles iniciam ou participam

  32. Identificando Casos de Uso • Método baseado em eventos 1. Identificar os eventos externos aos quais o sistema deve responder 2. Relacionar os eventos a atores e casos de uso • Exemplos do sistema Posto Comercial • Operador: Login, Retirar Dinheiro • Cliente: Comprar Itens, Devolver Itens • Digitar Senha? • Imprimir Recibo?

  33. Casos de Uso e Funções • Todas as funções do sistema identificadas na especificação dos requisitos devem ser alocadas a casos de usos • Alocação documentada através da seção Referencia

  34. Casos de Uso e o Limite do Sistema • Identificar os atores e casos de uso de um sistema requer a definição de seu limite de atuação • Alguns limites típicos incluem: • o software/hardware de um dispositivo ou sistema de computação • um departamento de uma organização • uma organização inteira • Limites diferentes podem resultar em diferentes conjuntos de atores e casos de uso

  35. Casos de Uso e o Limite do Sistema • Exemplo de um diagrama de caso de uso para o sistema Posto Comercial, quando o limite de atuação é a loja inteira Store Buy Items Customer Refund Purchased items

  36. Recomendações • Crie nomes sempre começando com um verbo • Identifique primeiro os fluxos principais, iniciando com: • Este caso de uso começa quando <Ator> <inicia evento> • Use a seção Seqüências não Típicas para representar desvios para seqüências de eventos incomuns ou excepcionais. • Use subseções para representar desvios para seqüências alternativas com igual importância ou probabilidade de ocorrência

  37. Recomendações • Procure estimar a dimensão (granularidade) do caso de uso. Se ele estiver muito extenso procure identificar sub-casos • Procure identificar partes comuns nos seus casos de uso, e usar <<include>>. • Identifique serviços comuns aos casos de uso e crie casos de uso genéricos. • A medida que se definem os casos de uso um refinamento no diagrama é possível

  38. Referências • Boock, G. and Rumbaugh, J. The Unified Modeling Language User Guide. Addison-Wesley, 1999 • Arlow, J. and Neustadt, I. UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design, 2nd Edition, The Addison-Wesley Object Technology Series, 2005. • Rumbaugh, J.; Jacobson, I. and Booch , G. The Unified Modeling Language Reference Manual, 2nd Edition, The Addison-Wesley Object Technology Series, 2004. • Boock, G.; Rumbaugh, J. and Jacobson, I; Unified Modeling Language User Guide, 2nd Edition, The Addison-Wesley Object Technology Series, 2005. • Jacobson, I; Boock, G. and Rumbaugh, J., Unified Software Development Process, Addison-Wesley, Janeiro 1999. • Larman, C. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design Prentice-Hall, New Jersey - USA, 1997 • Bezerra, E. Princípios de Análise e Projeto com a UML, ed. Campus-Elsevier. 2003.

  39. Caso de Uso Expandido fazerReserva cliente, funcionario Realizar a reserva de um quarto Mediante telefonema de um cliente o funcionário acessa o sistema. Procura disponibilidade do quarto desejado na agenda. Se houver disponibilidade o funcionário vai entrar os dados do cliente e realizar um pedido de reserva. O sistema reserva o quarto desejado. Caso de uso: Atores: Propósito: Descrição: • Exemplo de um caso de uso expandido: Tipo: Referencia: primário e essencial Funções: R1.1, R1.2, R1.3, R1.7, R1.9, R2.1 Resposta do Sistema Típica Seqüência de Eventos Ação do Ator 1.Cliente telefona e contacta o funcionário da pousada para fazer a reserva

  40. Caso de Uso Expandido Resposta do Sistema Típica Seqüência de Eventos Ação do Ator • Exemplo de um caso de uso expandido (cont.): 2.O funcionário acessa o sistema para fazer uma reserva e fornece o login e a senha 3.O sistema checa login e senha 3.1 Se login e senha não estiverem OK e ainda houver mais tentativas, retorna ao Passo 2.. 5. Sistema mostra disponibilidade 4.O funcionário entra as datas e quarto desejados. 6.Funcionário verifica disponibilidade, e escolhe dias e quarto. 6.1 Se não houver disponbilidade retorna ao Passo 4, nova tentativa .

  41. Caso de Uso Expandido Resposta do Sistema Típica Seqüência de Eventos Ação do Ator • Exemplo de um caso de uso expandido(cont.): 7. Funcionário entra identificação de cliente 9.Se cliente não cadastrado, funcionário entra com dados do cliente 8 Verifica se cliente está cadastrado 10. Sistema armazena dados do cliente 11.Funcionário finaliza reserva 12. Sistema emite dados relativos a reserva. .

  42. Caso de Uso Expandido Seqüência Não Típica de Eventos Ação do Ator Resposta do Sistema • Exemplo de um caso de uso expandido(cont.): 3.1 Número de tentativas para login foi excedido. 6.2 Cliente desiste da reserva por falta de disonbilidade 9. Cliente desiste da reserva 11. Cliente desiste da reserva .

More Related