Professional Documents
Culture Documents
Casos de Uso
Moacyr Cardoso de Mello Filho
p
Certified IT Specialist
Capturando requisitos corretamente
Necessidades Sistema a
do cliente ser
construdo
Requisitos
d f d
definidos Apenas
Esta
Parte
interessa
2
Necessidades Sistema a
do cliente ser
construdo
Requisitos
Consenso sobre que definidos
d f d
o sistema dever Consenso em
f
fazer como o sistema
dever fazer
3
O bsico sobre Casos de Uso
Ator
Algum ou alguma coisa fora
do sistema interagindo com
Actor ele.
Caso de Uso
Use Case O que o ator quer que o
sistema faa
faa.
6
O bsico sobre Casos de Uso
7
O bsico sobre Casos de Uso
Atividades
Outlined Em Atividades individuais
grupo
Detailed
Incio Fim
projeto projeto
9
Objetivos
10
Agenda
11
Padro
#1
Oq
que um Caso de Uso??
D b t d a natureza
Debatendo t d C
dos Casos de
d UUso.
12
O que um Caso de Uso? Problema
Contexto
Cliente ou equipe
q p so
relativamente novas no uso
da tcnica
Problema
Conceitos diferentes levam a
debates entre o cliente e a
equipe de projeto
Pior quando especialistas,
esto presentes Na UML, qualquer
coisa abstrata
escrita em itlico
13
O que um Caso de Uso? Exemplo
14
O que um Caso de Uso? Soluo
Soluo
Obter ajuda
j
Dependente do ciclo de vida do projeto
Dicas
Casos de Uso so pprincipalmente
p texto
No trabalhe apenas com o Diagrama de Casos de Uso
Faa uma mini-iterao ao incio do projeto Rational mentor
para gerar um executvel
Avalie a utilidade do Caso de Uso (anlise, design e teste)
Esteja
E t j aberto
b t para revises
i na aplicao
li dda
tcnica, ento crie um guia de orientao
Perseverana
P necessria,
i principalmente
i i l t
durante o cos inicial de um projeto
Facilitadores/ mentores devem produzir resultados
observveis j na primeira semana
16
Padro
#2
17
Abusando de Casos de Uso Problema
Contexto
Decomposio
p Funcional
Quebra da funcionalidade do sistema em pequenas partes,
isoladas entre s
As partes trabalham juntas para fornecer a funcionalidade desejada do sistema
Mas, frequentemente no fazem sentido isoladamente.
Muitos
M it C Casos de
d UUso
Problema
Dificuldade de entendimento do fluxo, especialmente dos
fluxos alternativos
Dificuldade para avaliar a completude da especificao
18
Abusando de Casos de Uso Exemplo
Casos de Uso
no
so
ffunes
(nem passos de
Login
19
Abusando de Casos de Uso Exemplo
A vem o
especialista Login
<<include>>
<<include>>
<<include>>
Verifica os Itens escolhidos
Trabalhe sobre a Especificao de
Casos de Uso e no somente sobre o
diagrama
diagrama. Faz Pagamento
20
Abusando de Casos de Uso Exemplo
Casos de Uso no
so fluxos de dados
dados,
Atendente
Entrada do Pedido
nem design
Notificao
do
Processamento Cliente
do Pedido
Importao de Pedidos
21
Abusando de Casos de Uso Exemplo
Novo Pedido
Casos de Uso
no
so
Novo Item
Gesto de
Pedidos
navegao de
Alterar Pedido
Remover Item
Novo Cliente
telas
Gerente de Vendas Gesto de
Clientes Alterar Endereo
Alterar Cliente
Relatrio Semanal
Quais so os passos
para Gesto de
Relatrios
Relatrio Mensal Pedidos?
Lista de Clientes
22
Abusando de Casos de Uso Problema
Razes
Analistas tiveram experincia
p como desenvolvedores
Usurios tm experincia com fluxo de dados
Transposio direta de uma lista de requisitos
Tentativa de aplicar a tcnica usando somente o diagrama de
casos de uso sem considerar as especificaes textuais de
cada caso de uso
23
Abusando de Casos de Uso Soluo
Soluo
Quando na identificao
de Casos de Uso,,
esboar rapidamente os passos dos fluxo
bsico e os fluxos alternativos Rational mentor
Quando os fluxos de eventos parecerem
similares, junte os Casos de Uso
Passos
P similares
i il
Dados manipulados similares
24
Abusando de Casos de Uso Dicas
Dicas
Quando em dvida,, jjunte os Casos de Uso
mais fcil dividir do que juntar
Rational mentor
Pode dividir,
dividir se necessrio
necessrio, mais tarde
Tambm conhecido como Estruturar o Modelo de Casos de Uso (Structure
Use Case Model)
Equilbrio, no junte demasiado
Q
Quando orientando
Compreenso pelo cliente chave
Esteja atento para as datas de projeto
O progresso do projeto tambm chave
25
Padro
#3
26
Aumentando Casos de Uso Problema
Contexto
Muitos ppassos num fluxo,, pprincipalmente
p no fluxo bsico
Problema
Longo caminho para o Ator para executar seu objetivo
O cliente se cansa aps ler logo os primeiros passos, ento
pra de ler o resto
Consequncia
Qual a utilidade de uma especificao de requisitos se o
cliente no a l?
27
Aumentando Casos de Uso Exemplo
Verso A
1.
2.
O sistema pede o nome do produto
O usurio entra o nome do produto
Sintetize passos
3.
4.
O sistema solicita palavras chave para o produto
O usurio entra palavras chave para o produto
em transaes
t
5. O usurio submete a consulta do produto
6
6. O sistema
i t apresenta t os ddetalhes
t lh ddo produto
d t
7.
V B
Verso
1. Escolhe Produto. O cliente entra o nome do produto e palavras chave. O sistema recupera e
mostra os detalhes do produto.
Verso C
1. Escolhe Produto.
1. O cliente entra o nome do produto e palavras chave.
2. O sistema recupera e mostra detalhes do produto.
28
Aumentando Casos de Uso Exemplo
Q i as grandes
Quais d operaes
desse fluxo?
30
Aumentando Casos de Uso Exemplo
Verso
V C: C Escolhe
E lh Produto
P d t e Faz
F Pedido
P did
1. Selecionar Produto
1. Selecionar Categoria do Produto. O usurio .
2. Selecionar Sub-categoria do Produto. O usurio .
3. Selecionar Tipo de Produto. O usurio .
4. Selecionar Produto. O usurio .
5. Adicionar ao Carrinho de Compras. O usurio .
2. Verificar Itens Escolhidos
1. Mostra a Lista de Compras Selecionada. O usurio solicita o fechamento de sua lista .
2
2. Mostra as Formas de Pagamento e Envio.
Envio O usurio .
3. Totalizao e Confirmao do Pedido. O usurio .
3. Fazer Pagamento
1. Selecionar Forma de Pagamento. O usurio .
2
2. C fi
Confirmao
do
d Pagamento.
P t O usurio
i .
31
Aumentando Casos de Uso Dicas
Dicas
Storyboards
y de Casos de Uso
Cada tela poder fornecer uma indicao de transao
Precisamos capturar requisitos de interface de usurio (UI) Rational mentor
MAS,
MAS no coloque detalhes de UI nas Especificaes de Caso
de Uso a menos que deseje que se transformem em
requisitos
Alguma
Al identao
id t no flfluxo ajuda
j d na lleitura
it
Mas no exagere!
Escolha um estilo que funcione para a equipe
Seja consistente
32
Padro
#4
33
Desviando os Casos de Uso Problema
Contexto
Muitos fluxos alternativos
60% - 80% so variantes, alternativas, excees
Problema
Dificuldade em rastrear os Cenrios
Consequncia
Os leitores se pperdem
Soluo
Agrupamento de fluxos alternativos
Pr-Condies
34
Desviando os Casos de Uso Problema
35
Desviando os Casos de Uso Exemplo
36
37
Desviando os Casos de Uso Soluo
38
Padro
#5
39
Reabusando de Casos de Uso Problem
Contexto
Alguns
g fluxos so repetitivos
p
Alguns fluxos no tm importncia para visualizar o negcio
Problema
Ao deix-los no fluxo bsico eles se tornam confusos
Consequncia
Os leitores se pperdem
Alteraes em muitos lugares
Soluo
Sub-Fluxos, Incluso (Include Use Case)
40
Reabusando de Casos de Uso Exemplo
V A:
Verso A Solicitao
S li it dde S
Servio
i TTcnico
i
Fluxo de Eventos
Fl
Fluxo Bsico
B i
Submeter Solicitao de Servio
Entrar Detalhes da Solicitao. O usurio
V lid Aparelho.
Validar A lh O sistema
i t valida
lid aparelho,
lh verificando
ifi d titipo e ffabricante
bi t
Validar Nmero de Srie.
..
Fluxos Alternativos
A1 Aparelho Invlido
Sub Fluxo
S1 valida aparelho
1. Validar Tipo e Fabricante. O sistema verifica se o tipo e o fabricante do aparelho so elementos
vlidos no inventrio de aparelhos suportados.
2
2. Validar Nmero Serial.
Serial O sistema verifica se o nmero serial fornecido identifica corretamente o
cliente e o aparelho no database de inventrio.
3. Retorno. O Caso de Uso retorna no prximo passo.
41
Reabusando de Casos de Uso Soluo
include
include
Cuidado
C id d com a decomposio
d i ffuncional
i l
Praticantes avanados trabalhando em grandes
sistemas
i t
Iniciantes devem permanecer com o Bsico,
Alt
Alternativos
ti eS
Sub-fluxos
b fl
44
Usando Casos de Uso
Resumindo
45
Identificado
Esboado
Lista das tarefas e
Lista de Atores objetivos dos A
Agrupar tarefas
t f em
Detalhado
Atores Casos de Uso
Identificado
Tome um Caso de Uso
Esboado Esclarea tarefa e objetivo
Detalhado
Li t os passos ddo iincio
Liste i
at atingir o objetivo
Para cada passo explore
qualquer fluxo alternativo
47
Usando Casos de Uso - Dicas
50
51
Bons Casos de Uso
Dicas
Requisitos
q comunicao
Se no parece bom, no est bom
A partir de prottipos/releases refine as orientaes para escrever Casos de Uso
Teste definitivo
Deve ser til para design e teste
Bons Casos de Uso facilitam design e teste
53