Análise e Projeto de Sistemas
Modelagem de Requisitos com
Casos de Uso
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
1
Objetivos



Descrever em detalhe a técnica de Modelagem de
Requisitos com Casos de Uso
Apresentar um modelo de documento de requisitos
Discutir o uso do diagrama de atividades na modelagem
de casos de uso
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
2
Conceitos Básicos
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
3
Principais Tipos de Requisitos

Não-Funcionais

Atributos ou qualidades do sistema.Exemplos:
Usabilidade (Facilidade de uso)
Confiabilidade
Desempenho
Segurança
Distribuição
Adequação a Padrões
Restrições de Hardware e Software

Funcionais

Expressam funcionalidades do sistema
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
4
Caso de uso



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.
Descrevem o que acontece dentro do sistema.
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.
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
5
Caso de uso: representação gráfica
Solicitar
extrato
CIn-UFPE
Solicitar saldo
©2003, Alexandre Vasconcelos & Augusto Sampaio
6
Atores

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
Definem um papel particular (uma mesma entidade pode
desempenhar diferentes papéis)
São sempre externos ao sistema
O sistema será descrito através de vários casos de uso
que são executados por um número de atores
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
7
Ator: representação gráfica
Cliente
CIn-UFPE
Caixa
©2003, Alexandre Vasconcelos & Augusto Sampaio
8
Diagrama de casos de uso:
representação gráfica
Sacar dinheiro
Cliente
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.
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
9
Cenário



Em UML significa um caminho através de um caso de
uso.
Uma instância de um caso de uso
Exemplo (Sacar dinheiro):



Saque com sucesso
Tentativa de saque MAS senha incorreta
Tentativa de saque MAS saldo insuficiente
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
10
Cenário: Fluxo de eventos básico/principal



Série de passos que compõem um caso de uso
Concentre-se inicialmente na funcionalidade
básica/central do caso de uso
Pense nos fluxos secundários depois!
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
11
Exemplo de um fluxo básico

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
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
12
Cenário: Fluxos secundários

Caso de uso “Sacar dinheiro”

MAS...



E se a senha não conferir?
E se não houver saldo?
E se não houver dinheiro suficiente na máquina?
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
13
Requisitos Não-Funcionais x Casos de Uso

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
Para serem atendidos podem gerar novos casos de uso
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
14
Especificação de Caso de Uso







Identificador do caso de uso
Breve Descrição
Ator (opcional)
Prioridade (ex: Essencial, Importante, Desejável)
Pré condições
Pós condições
Fluxo de eventos:



Fluxo de eventos principal
Fluxos secundários: alternativos e de exceção
Requisitos Não-Funcionais Específicos
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
15
Pacotes de Casos de Uso


Servem para agrupar casos
de uso relacionados
Critérios para agrupamento:




ator
funcionalidades correlatas
processos
“um por todos e todos por um”
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
16
Um Modelo de Documento de Requisitos




Introdução
 Objetivos do documento
 Público ao qual se destina
 Termos e acrônimos
 Referências
Descrição geral do sistema
 Abrangência e sistemas relacionados
 Descrição dos usuários
Casos de uso
 Diagrama
 Especificações
Requisitos não funcionais genéricos
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
17
Como encontrar atores e
casos de uso?
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
18
Como encontrar atores?






Quem usa o sistema?
Quem instala/mantém o sistema?
Quem inicia/desliga o sistema?
Que outros sistemas usam o sistema?
Quem recebe informação do sistema?
Quem provê informação ao sistema?
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
19
Como encontrar casos de uso?




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?
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
20
Especificação Detalhada
dos Casos de Uso
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
21
Quando e por que realizá-las?

Quando?


após fazer levantamento dos principais casos de uso do sistema
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
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
22
Uso do diagrama de atividades na
especificação dos fluxos de eventos
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
23
Diagrama de atividades


Usados para representar graficamente o fluxo de eventos
(fluxo básico + fluxos alternativos)
São muito usados para modelar atividades concorrentes.
Às vezes um diagrama fala mais que 1000
palavras!
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
24
Exemplo: diagrama de atividades para o caso de uso
Sacar dinheiro
atividade
Estado inicial
decisão
Verifica senha
condição de
guarda
[ incorreta ]
Manipula senha
incorreta
[ correta ]
[ resolvido ]
Pede valor
concorrência
[ não resolvido ]
[ dinheiro não disponível ]
[ dinheiro disponível ]
Libera dinheiro
sincronização de
atividades
Prepara para
Imprimir recibo
transição
Termina transação e
Imprime recibo
Estado final
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
25
Estruturação do Modelo
de Casos de Uso
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
26
Generalização de Atores

É possível definir tipos gerais de atores e especializálos usando o relacionamento de especialização
Vendedor
Supervisor
CIn-UFPE
Realizar venda
Estabelecer crédito
©2003, Alexandre Vasconcelos & Augusto Sampaio
27
Relacionamentos entre Casos de Uso



Inclusão
Extensão
Generalização
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
28
Inclusão de casos de uso


Use inclusão quando houver repetição entre casos de
uso e você desejar evitar esta repetição.
Um caso de uso incorpora explicitamente o
comportamento de outro caso de uso, evitando assim
repetições de descrição de fluxos.
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
29
Inclusão de casos de uso: exemplo
Validar cliente
<<includes>>
Sacar
Cliente
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
30
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
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
31
Extensão de casos de uso

Use extensão quando quiser descrever uma variação do
comportamento normal.


partes opcionais de use cases
cursos alternativos e complexos que raramente ocorrem
Realizar pedido
<<extends>>
Vendedor
Solicitar catálogo
CIn-UFPE
©2003, Alexandre Vasconcelos & Augusto Sampaio
32
Generalização de casos de uso


Relaciona um Use Case especializado a um mais geral
O filho herda os atributos, operações e seqüências de
comportamento dos pais
Validar cliente
Verificar password
CIn-UFPE
Scan da retina
©2003, Alexandre Vasconcelos & Augusto Sampaio
33
Download

caso de uso