Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
*Casos de Uso
Representação em UML:
Buy Items
2
Objetivos de um Caso de Uso
Ser compreensível para os usários leigos em informática
Delimitar o sistema
3
Atores
Representação em UML:
Customer
4
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
5
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
6
Diagrama de Caso de Uso
7
Relacionamentos no Diagrama de
Casos de Uso
8
Relacionamento entre atores
Relacionamento de Associação
_________
Cliente Caixa
Relacionamento de Generalização
_________
Funcionario Vendedor
9
Herança entre atores
Gerente
Gerente de Gerente de
Compras Vendas
10
Relacionamento entre atores e casos
de uso
ValidarCliente
CadastrarCliente
12
Relacionamento de Uso ou Include
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
14
Relacionamento de Generalização
relação estrutural
entre um caso de uso
mais geral e um caso _______
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.
17
Interfaces entre Atores e Casos de Uso
________ --------------
Cliente Interface
Realizar Pedido
Cliente
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
Exemplo de um caso de uso de alto-nível:
Caso de uso: Comprar Itens (Buy Items)
Atores: Cliente (Customer), Operador (Cashier )
Tipo: primário
Descrição: 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.
21
Caso de Uso Expandido
Exemplo de um caso de uso expandido:
Caso de uso: Comprar Itens com Dinheiro (Buy Items with Cash)
Atores: Cliente (Iniciador), Operador
Propósito: Capturar uma venda e seu pagamento em dinheiro.
Descrição: 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.
Tipo: primário e essencial
Referencia: Funções: R1.1, R1.2, R1.3, R1.7, R1.9, R2.1
23
Caso de Uso Expandido
Exemplo de um caso de uso expandido (cont.):
Típica Seqüência de Eventos
Ação do Ator Resposta do Sistema
7. O Cliente entrega um paga-
mento em dinheiro, possivelmente
maior do que o valor total.
8. O Operador registra o valor 9. Mostra o troco devido.
recebido em dinheiro. Emite um recibo.
10. O Operador deposita o 11. Registra a venda no log de
dinheiro e retira o troco devido. vendas completadas.
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
Trecho do caso de uso Comprar Itens essencial
26
Caso de Uso Real
Trecho do caso de uso Comprar Itens real
Ação do Ator Resposta do Sistema
2. Para cada item, o Operador 3. Determina o preço do item e
digita o código universal de pro- adiciona informação sobre o item
duto (UPC) no campo de entrada à transação de venda em anda-
UPC da Janela 1. Ele então pres- mento.
siona o botão “Entra Item” com o Mostra a descrição e o preço do
mouse ou pressiona a tecla item corrente na Caixa de Texto 2
<Enter>. da Janela 1.
4. ... 5. ...
27
Casos de Uso com Fluxos Alternativos
Caso de uso Comprar Itens Expandido
Seção: Principal
Ação do Ator Resposta do Sistema
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
Ação do Ator Resposta do Sistema
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
30
Decomposição de Diagramas de Casos
de Uso
Casos de uso
Gerai
s
31
Identificando Casos de Uso
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
33
Casos de Uso e Funções
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
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
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