Baixe o app para aproveitar ainda mais
Prévia do material em texto
DISCIPLINA: ANÁLISE E PROJETO DE SOFTWARE TEMA 2: Casos de Uso REFORÇANDO A APRENDIZAGEM PONTOS PRINCIPAIS Diagrama de Casos de Uso Modelagem de Casos de Uso • O modelo de casos de uso é uma representação das funcionalidades externamente observáveis do sistema e dos elementos externos ao sistema que interagem com o mesmo. • O modelo de casos de uso modela os requisitos funcionais do sistema. Modelagem de Casos de Uso • Direciona diversas das tarefas posteriores do ciclo de vida do sistema de software (desenvolvimento, testes, produção de manuais). • Força os desenvolvedores a moldar o sistema de acordo com o usuário. Modelagem de Casos de Uso • Características – Função: Registrar o que o sistema faz. Conjunto de sequências de ações, incluindo variantes, realizadas pelo sistema para produzir um resultado observável por um ator. – Refinamento de um requisito funcional do sistema em forma de passos. – Fácil de ler: Não exige nenhum conhecimento de informática • Foco no problema e não na implementação!!! – Ótimo para o cliente • Facilitam a validação dos requisitos do sistema Caso de Uso Um caso de uso representa quem faz o que (interage) com o sistema, sem considerar o comportamento interno do sistema. Cliente Realizar Saque Saque Modelagem de Casos de Uso • Atores e casos de uso são identificados a partir de informações coletadas na fase de levantamento de requisitos do sistema. – Durante esta fase, os analistas devem identificar as atividades do negócio relevantes ao sistema a ser construído. • Não há uma regra geral que indique quantos casos de uso são necessários para descrever completamente um sistema. – A quantidade de casos de uso a ser utilizada depende completamente da complexidade do sistema. • Cada caso de uso é definido através da descrição textual das interações que ocorrem entre o(s) elemento(s) externo(s) e o sistema. Diagrama de Casos de Uso - Nome • Único • Sugestão – verbo + substantivo • Exemplos: – Validar Usuário – Realizar Saque – Emitir Relatório Realizar Saque Emitir Relatório Diagrama de Casos de Uso: Ator • Papéis que uma entidade (homem, hardware, sistema) desempenha no sistema. • Não são parte do sistema. • Comandam os casos de uso: – Procure pelos atores e depois pelos seus casos de uso. • Não precisam ser humanos. • Representação: Stickman Instituição Financeira Cliente Diagrama de Casos de Uso: Ator 11 • pessoas (Empregado, Cliente, Gerente, Almoxarife, Vendedor, etc); • organizações (Empresa Fornecedora, Agência de Impostos, Administradora de Cartões, etc); • outros sistemas (Sistema de Cobrança, Sistema de Estoque de Produtos, etc). • equipamentos (Leitora de Código de Barras, Sensor, etc.) Diagrama de Casos de Uso: Notação 1212 Diagrama de Casos de Uso: Notação 13 Reservar Livro Usuário Ator Caso de uso Relacionamento de comunicação Diagrama de Casos de Uso: Notação 14 Diagrama de Casos de Uso: Cenários 15 • Narração de uma sequência específica de ações que ilustra um comportamento. • Um cenário é um caminho entre os fluxos de um caso de uso. • Fluxos de um Caso de uso: – Fluxo principal – Fluxos Alternativos (caminhos alternativos/opcionais dentro de um mesmo caso de uso) – Fluxos de Exceção (caminhos que representam exceções ao fluxo principal ou fluxo alternativo. Uma violação de regra de negocio, por exemplo. Diagrama de Casos de Uso: Cenários 16 • No desenvolvimento de um sistema, o analista deve começar sua investigação pelos cenários primários; – Cenários secundários são progressivamente agregados; – Cenários secundários relevantes devem ser estudados para evitar futuras alterações significativas nas principais classes. Diagrama de Casos de Uso: Cenários 17 • Sequência de ações / fluxo de eventos: – Textual – Fluxo Principal de eventos (Cenário básico) • Possui somente uma sucessão lógica • Todas as ações são bem sucedidas (Sem erros) • “O caso de uso começa quando o sistema solicita ao cliente uma identificação…” – Fluxo excepcional de eventos • Descrevem comportamentos excepcionais • “Se o cliente fornecer uma identificação inválida…” Diagrama de Casos de Uso: Cenários 18 • Descrição Textual: Realizar Saque (fluxo principal) “Este caso de uso inicia quanto o Cliente chega ao caixa eletrônico e insere seu cartão. O Sistema requisita a senha do Cliente. Após o Cliente fornecer sua senha e esta ser validada, o Sistema exibe as opções de operações possíveis. O Cliente opta por realizar um saque. Então o Sistema requisita o total a ser sacado. O Cliente fornece o valor da quantidade que deseja sacar. O Sistema fornece a quantia desejada e imprime o recibo para o Cliente. O Cliente retira a quantia e o recibo, e o caso de uso termina.” Diagrama de Casos de Uso: Cenários 19 • Descrição Numerada: Realizar Saque (fluxo principal) 1. O usuário introduz o cartão no caixa eletrônico; 2. O caixa eletrônico propõe as operações disponíveis; 3. O usuário escolhe a opção “saque”; 4. O usuário escolhe a conta (ex: conta corrente ou poupança); 5. O usuário entra o valor do saque; 6. O usuário entra com a sua senha; 7. O caixa eletrônico verifica a senha com o banco; 8. O caixa eletrônico verifica o saldo da conta; 9. O caixa eletrônico dá o dinheiro para o usuário; 10. O caixa eletrônico emite um recibo; Diagrama de Casos de Uso: Cenários 20 Cliente Sistema Insere seu cartão no caixa eletrônico. Digita senha. Solicita realização de saque. Fornece o valor da quantia que deseja sacar. Retira a quantia e o recibo. Apresenta solicitação de senha. Valida senha e exibe menu de operações disponíveis. Requisita quantia a ser sacada. Fornece a quantia desejada e imprime o recibo para o Cliente • Descrição Tabular: Realizar Saque (fluxo principal) Especificação de Casos de Uso: Descrição padrão 21 Código Código do caso de uso na especificação (UC.00X) Nome do Caso de Uso Identificação do caso de uso (Verbo + Substantivo) Objetivos Descrição do caso de uso (um parágrafo) Atores Lista de todos os nomes dos atores e pequena descrição Prioridade Este caso de uso é muito importante para o projeto? (P1, P2, P3, etc) Estado Qual o estado desse caso de uso? Ainda muito abstrato? Bem especificado? Fechado? Pré-condições Lista de condições que devem ser verificadas antes de o caso de uso começar 22 Fluxo de eventos Fluxo principal 1 - Primeiro passo no caso de uso 2 - Segundo passo no caso de uso 3 - … Fluxos alternativos Descrição dos fluxos alternativos (também em passos) Fluxos de exceção Descrição dos fluxos alternativos (também em passos) Pós-Condições Lista de condições que devem ser verificadas após o fim do caso de uso Pontos de extensão Listas dos pontos de extensão no caso de uso Casos de uso incluídos Lista dos nomes dos casos de usos incluídos Outros requisitos Listas de outros requisitos que afetam o caso de uso Especificação de Casos de Uso: Descrição padrão Diagrama de Casos de Uso: Relacionamentos 23 • Casos de uso e atores não existem sozinhos. Pode haver relacionamentos entre. • A UML define diversos de relacionamentos no modelo de casos de uso: – Comunicação – Inclusão – Extensão – Generalização Diagrama de Casos de Uso: Relacionamentos 24 • Inclusão: – Quando dois ou mais casos de uso incluem uma sequência de interações comum, esta sequência comum pode ser descrita em um outro caso de uso. – Uma instância do primeiro caso de uso também conterá o comportamento especificado no segundo caso de uso. – Útil para descrever o mesmo fluxo de eventos múltiplas vezes. – Evita a operação de copiar-e-colar de partes das descrições do caso de uso. Diagrama de Casos de Uso: Relacionamentos 25 Diagrama de Casos de Uso: Relacionamentos 26 • Inclusão: Caso de Uso: Registrar Pedido Pré-condição: Funcionário estar logado no sistema Eventos: 1. Obter e verificar número do pedido 2. Incluir pedido(Fornecer dados do cliente) 3. Para cada parte do pedido (Incluir produto no pedido) 4. Realizar pagamento (Definir forma de pagamento) … Diagrama de Casos de Uso: Relacionamentos 27 Realizar Saque Cliente Fornecer Identificação «inclui» «inclui» Realizar Transferência Obter Extrato «inclui» Diagrama de Casos de Uso: Relacionamentos 28 • Extensão: – Utilizado para modelar situações onde diferentes sequências de interações podem ser inseridas em um caso de uso. – A instância de um caso de uso pode ser estendida (acrescentada) pela instância do outro caso de uso. – Permite a modelagem de parte de um caso de uso que um usuário pode ver como opcional. – Permite modelar subfluxos condicionais. – Permite inserir subfluxos num certo ponto, controlado pela interação de um ator. Diagrama de Casos de Uso: Relacionamentos 29 • Extensão: – Sejam A e B dois casos de uso. – Um relacionamento de extensão de A para B indica que um ou mais dos cenários de B podem incluir o comportamento especificado por A. – Neste caso, diz-se que B estende A. – O caso de uso A é chamado de estendido e o caso de uso B de extensor. Diagrama de Casos de Uso: Relacionamentos 30 • Extensão: Diagrama de Casos de Uso: Relacionamentos 31 • Extensão: Editar Documento Escritor Corrigir Ortografia Substituir Texto «estende» «estende» Diagrama de Casos de Uso: Relacionamentos 32 • Generalização: – Relacionamento no qual o reuso é mais evidente. – Este relacionamento permite que um caso de uso (ou um ator) herde características de um caso de uso (ator) mais genérico. – O caso de uso (ator) herdeiro pode especializar o comportamento do caso de uso (ator) base. – Pode existir entre dois casos de uso ou entre dois atores. Diagrama de Casos de Uso: Relacionamentos 33 • Na generalização entre casos de uso, sejam A e B dois casos de uso. – Quando B herda de A, as sequências de comportamento de A valem também para B. – Quando for necessário, B pode redefinir as sequências de comportamento de A. – Além disso, B participa em qualquer relacionamento no qual A participa. • Vantagem: comportamento do caso de uso original é reutilizado pelos casos de uso herdeiros. – Somente o comportamento que não faz sentido ou é diferente para um herdeiro precisa ser redefinido. Diagrama de Casos de Uso: Relacionamentos 34 Realizar Pagamento Realizar Pagamento com Cartão de Crédito Realizar Pagamento com Dinheiro Cliente Diagrama de Casos de Uso: Relacionamentos 35 • Generalização entre atores: – herdeiro possui o mesmo comportamento que o ator do qual ele herda. – herdeiro pode participar em casos de uso em que o ator do qual ele herda não participa. • Exemplo pratico: considere uma biblioteca na qual pode haver alunos e professores como usuários. – Ambos podem realizar empréstimos de títulos de livros e reservas de exemplares. – No entanto, somente o professor pode requisitar a compra de títulos de livros à biblioteca. Diagrama de Casos de Uso: Relacionamentos 36Professor Usuário Solicitar Compra de Título Reservar Livro Devolver Livro
Compartilhar