Régis Simão – Diagrama de Casos de Uso 1/29
Diagrama de Casos de Uso
Introdução
Casos de Uso
Atores
Relacionamento entre Atores e Casos de Uso
Relacionamento entre Casos de Uso
Relacionamento entre Atores
Tipos de Casos de Uso
Bibliografia
Régis Simão – Diagrama de Casos de Uso 3/29
Introdução
Necessidades
Funcionalidades
Requisitos do Software
Domínio do Problema
Domínio da Solução
Necessidades
Devem ser considerados os problemas do usuários.
São o quê realmente os stakeholders precisam para resolver os seus problemas, independentemente de um sistema.
Exemplo:
Uma comunicação melhor entre os empregados.
Régis Simão – Diagrama de Casos de Uso 5/29
Funcionalidades
São descrições simples, na linguagem dos usuários, de como o sistema solucionará os problemas dos usuários.
Exemplo:
Serviço de notificação automatizada (Correio Eletrônico) São o quê o cliente normalmente pede para construir.
Também chamada de Características e, no inglês, Features
Requisitos do Software
Um requisito descreve uma condição ou capacidade à qual um sistema deve estar de acordo, seja ela derivada diretamente de necessidades dos usuários ou declarada em um contrato, um padrão, uma especificação ou outro documento formalmente imposto.
Exemplo:
Toda mensagem deve ter um remetente.
O endereço dos usuários deve seguir a política de nomeação de
endereços eletrônicos do Governo Federal.
Introdução
Régis Simão – Diagrama de Casos de Uso 7/29
Requisitos do Software
Podem ser divididos em: Requisitos Funcionais e Requisitos Não Funcionais
Requisitos Funcionais
Especificam ações que um sistema deve ser capaz de executar, sem levar em consideração restrições físicas.
Exemplo:
Toda mensagem deve ter um remetente.
Régis Simão – Diagrama de Casos de Uso 9/29
Requisitos não Funcionais
Descreve em geral condições relacionadas ao ambiente do sistema. Diz respeito a questões como: usabilidade, desempenho, confiabilidade,
restrições, etc.
Estão relacionados aos atributos de qualidade do sistema. Exemplo:
O sistema deve ter uma interface amigável.
O tempo de resposta não pode ser superior a 20 segundos.
São uma técnica para captura de requisitos funcionais de
um sistema.
Servem para descrever as interações típicas entre os
usuários e o sistema.
Casos de uso não pertencem estritamente ao enfoque
orientado a objetos.
Régis Simão – Diagrama de Casos de Uso 11/29
Cenário
É uma seqüência de passos que descreve uma interação entre um usuário e um sistema.
Exemplo de um cenário cujo objetivo é COMPRAR PRODUTOS: O cliente navega no catálogo de itens e adiciona os itens
desejados à sua cesta de compras. Quando o cliente deseja pagar, descreve o endereço de entrega, fornece as informações do cartão de crédito e confirma a venda. O sistema verifica a autorização do cartão de crédito e confirma a venda
imediatamente com um e-mail subseqüente.
Casos de Uso
Cenário
Podem existir vários cenários relacionados a um ÚNICO OBJETIVO. Exemplos:
O cliente navega no catálogo de itens e adiciona os itens desejados à
sua cesta de compras. Quando o cliente deseja pagar, descreve o endereço de entrega, fornece as informações do cartão de crédito e confirma a venda. O sistema não recebe a autorização do cartão de crédito e não confirma a venda, lançando uma mensagem
informando o problema.
O cliente navega no catálogo de itens e adiciona os itens desejados à
sua cesta de compras. Quando o cliente deseja pagar, descreve o endereço de entrega, fornece as informações do cartão de crédito e confirma a venda. O sistema verifica a autorização do cartão de
crédito, mas não confirma a quantidade suficiente de itens no estoque e lança uma mensagem informando o problema.
Régis Simão – Diagrama de Casos de Uso 13/29
Caso de Uso
É o conjunto de cenários amarrados por um objetivo comum de usuários.
O objetivo comum dá origem ao nome do caso de uso, por exemplo:
Comprar Produtos
Consultar Produtos Comprados Manter Comprador
Editar Mensagem Enviar Mensagem
Consultar Mensagens Enviadas
Cada caso de uso possui um documento que especifica seus cenários: a Especificação de Caso de Uso.
Ator
Papel que os usuários desempenham quando interagem com o sistema através de um caso de uso.
Usuário, Cliente, Gerente, Médico
Hardware que interage com o caso de uso. Catraca eletrônica, leitora de cartão
Software fora do escopo da aplicação que interage com o sistema. Sistema de autorização de compras no cartão
Régis Simão – Diagrama de Casos de Uso 15/29
Ator Primário
Ator que inicializa um diálogo com o caso de uso.
Ator Secundário
Ator que interage com o caso de uso, mas não inicializou o diálogo.
Ator primário
Atores
secundários
Relacionamento de Comunicação
É a única forma de relacionamento entre atores e casos de uso. Representado por uma seta para atores primários.
Representado por uma linha para atores secundários.
Há troca de mensagens nos dois sentidos, desprezando a existência da seta em atores primários.
Relacionamento entre Atores e Casos de Uso
Ator primário
Atores
Régis Simão – Diagrama de Casos de Uso 17/29
Exercício 1
Identificar os atores e os casos de uso do sistema de Assinatura de Revistas e desenhe o diagrama de casos de uso
Dica:
Descubra inicialmente que atores usarão o sistema
Depois descubra que funcionalidades o sistema precisa ter para
atender aos atores: os casos de uso
Exercícios
Os relacionamentos entre casos de uso fazem parte de
uma técnica chamada Estruturação dos Casos de Uso
Estruturação de Casos de Uso
Não deve ser usada no início da identificação de casos de uso. Deve ser usada após um melhor entendimento dos casos de uso
iniciais.
Régis Simão – Diagrama de Casos de Uso 19/29
Relacionamento de Inclusão
É usado quando há um conjunto de passos que se repete em dois ou mais casos de uso. Reutilização.
Uma regra simples: usar o relacionamento de inclusão quando o caso de uso incluído é obrigatório.
Relacionamento entre Casos de Uso
Relacionamento de Inclusão
Para modularizar um caso de uso complexo. Facilitar o entedimento. Situação menos usual.
Régis Simão – Diagrama de Casos de Uso 21/29
Relacionamento de Extensão
É usado quando há casos particulares (opcionais ou excepcionais) do caso de uso principal.
Uma regra simples: usar o relacionamento de extensão quando o caso de uso que estende é opcional.
Relacionamento entre Casos de Uso
Caso de uso de extensão Caso de uso base
Relacionamento de Extensão
Outro uso – mais popularRégis Simão – Diagrama de Casos de Uso 23/29
Relacionamento de Generalização
Segue a mesma filosofia que a herança em objetos.
É usado quando há um comportamento comum entre casos de uso.
O caso de uso pai não é executado sozinho. Ele precisa de um caso de uso filho.
Relacionamento entre Casos de Uso
Caso de uso pai
Relacionamento de Generalização
É usado para padronização de casos de uso.
Régis Simão – Diagrama de Casos de Uso 25/29
Relacionamento de Generalização
O ator filho pode realizar os mesmos casos de uso que o ator pai. Ele herda o direito de usar os casos de uso do pai.
Relacionamento entre Atores
Ator pai
Os casos de uso podem ser classificados em:
Concreto O caso de uso pode ser inicializado por um ator.
Abstrato O caso de uso só pode ser instanciado por outro caso de uso.
Tipos de Casos de Uso
Régis Simão – Diagrama de Casos de Uso 27/29
Exercício 2
Estruturar os casos de uso do sistema de Assinatura de Revistas Dica:
Após melhor conhecimento de como funcionam os casos de
uso, identifique que porções se repetem em casos de uso, gere casos de uso incluídos.
Verifique casos de uso muito parecidos, podem ser
transformados em casos de uso base ou de extensão ou ainda em casos de uso pai e filhos.
Para casos de uso que precisam eventualmente invocar outros
casos de uso, crie relacionamentos de extensão.
Exercícios
FOWLER, Martin. UML Essencial. 3a. edição. Bookman,
2005.
BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar.
UML – Guia do Usuário. Campus, 2000.
COCKBURN, Alistair. Escrevendo Casos de Uso Eficazes.
Bookman, 2005.
Leffingwell, D. e Widrig, D., Managing Software
Requirements: a unified approach. Addison-Wesley, 1999.
Régis Simão – Diagrama de Casos de Uso 29/29