Buscar

Tema 2 - Casos de Uso

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

Continue navegando