Page 1
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010Versão 5
Escrevendo
Estórias do
Usuário
Eficazes
aula #3
Rildo F [email protected]
twitter: @rildosan
skype: rildo.f.santos
http://rildosan.blogspot.com/
(11) 9123-5358
(11) 9962-4260
www.etecnologia.com.br
Page 2
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 2
Objetivo desta aula (aula #3)
Aula #3, Parte 2 – Estória do Usuário
Objetivo:
Apresentar a Estória do Usuário, conceitos, boas práticas e técnicas...
Pré-requisito (para reforçar):
A ênfase deste curso é para SCRUM e XP. Logo, conhecer Scrum é um pré-requisito.
Para ver apresentação sobre Scrum: http://rildosan.blogspot.com/2009/06/scrum-experience-o-tutorial-scrum.html
Page 3
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 3
1 - Introdução: Problemas de comunicação
2 - Estória do Usuário....
3 – Boas Práticas
4 - Exercícios
Conteúdo, as vamos por partes:
Page 4
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 4
2ª Parte: Estória do Usuário
Page 5
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 5
O que é Estória do Usuário ?
É uma pequena descrição, que detalha um item do Product Backlog.
Para que serve a Estória do Usuário ?
Uma estória ajuda no entendimento do que deve ser feito, ela permite fazer
a estimativa de velocidade da equipe e também é, utilizada como lembrete e
para as atividades de planejamento. Geralmente a estimativa é feita em
pontos (pontos de estória) ou dias ideais. (dias ideais).
Como escrever uma Estória do Usuário ?
Conversações sobre a estória, entre os usuários e desenvolvedores, de
modo a detalhar o item do Product Backlog e esclarecer todas as dúvidas
sobre do que deve ser feito.
Boa Prática:
- A Estória do Usuário deve prover o entendimento do que deve ser feito.
- Deve facilitar a estimativa de velocidade da equipe.
Diferenças entre a Estória do Usuários e Especificações de Requisitos Tradicionais:
Um dos maiores mal-entendidos com as Estórias do Usuário é como elas diferem das especificações de
requisitos tradicionais. A maior diferença está no nível de detalhe.
Estória do Usuários só devem fornecer detalhes suficientes para “chegar” no entendimento do que deve
ser feito e facilitar a estimativa de velocidade da equipe.
Outra diferença fundamental entre as estórias e as especificações de requisitos é o foco.
Quando escrevemos uma Estória o foco é nas necessidades do usuário, devemos evitar os detalhes
técnicos, tais como descrição de tecnologia, desenho das interfaces do usuário, wireframes, modelo de
dados, algoritmos e etc.
Boa Prática:
- Mantenha a Estória focada nas necessidades do usuário e nos benefícios.
Page 6
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 6
Diferença entre a do Estória do Usuário e Casos de Uso:
Uma Estória do Usuário descreve um detalhamento
de alto nível de uma funcionalidade e/ou de um
item do Product Backlog. E facilita na estimava da
velocidade da esquie
Fazer Reserva
O Caso de Uso especificam a interação entre o
Usuário e o Sistema.
Page 7
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 7
Um “modelo” para a escrita da Estória do Usuário:
Como <papel/função> eu quero <objetivo/meta> para que <alguma razão/benefício>
Como cliente de negócio, eu quero sacar dinheiro em qualquer caixa
eletrônico para que não tenha que ir na agência bancária.
Como paciente, eu quero fazer agendar minha consulta médica pela
web para que não tenha que usar o telefone.
Boa Prática:
- Cada Estória do Usuário deve ser um texto escrito com aproximadamente 3 sentenças
Page 8
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 8
Quando escrevemos e estimamos as Estórias ?
artefatos
Sprint
Backlog
Produto
Planejamento
da Sprint Reunião
diária
2-4 Semanas
24 horas
Revisão
da Sprint
Retrospectiva
da Sprint
Visão
Cerimônias
Burndown
Produto
Backlog
Legenda:
• Product Owner (PO)
• ScrumMaster (SM)
• Equipe Scrum
• Planejamento da Sprint
• Reunião Diária
• Revisão da Sprint
• Retrospectiva da Sprint
• Product Backlog
• Sprint Backlog
• Burndown (gráfico)
Papéis
Cerimônias
Artefatos
Na reunião de Planejamento
da Sprint as Estórias do Usuário
podem ser escritas e
estimadas
No SCRUM e no XP as estórias do usuário fazem parte do Planejamento. No Scrum elas podem
ser escritas e estimadas na Reunião de Planejamento.
Page 9
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 9
Os 3 “C”s de uma Estória do Usuário:
Cartão
Conversa
Confirmação
Estória do Usuário são tradicionalmente escritas em um cartão.
Cartão podem ter notas, estimativas, observações, comentários e etc
Detalhes que podem surgir durante as conversas com PO (Product
Owner) e/ou cliente.
Testes de aceitação “confirmam” se a Estória do Usuário foi codificada
da forma correta. Testes de aceitação são tipo Caixa Preta.
Page 10
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 10
Cartão:
Como cliente de negócio, eu quero fazer reserva de um apartamento
Como cliente de negócio, eu quero cancelar a reserva de um
apartamento
Como cliente de negócio, eu quero ver fotos dos apartamentos do hotel.
Exemplos de Estórias do Usuário para site de um Hotel:
Um modelo:
Como <papel/função> eu quero <objetivo/meta> para que <alguma razão/benefício>
CartãoAs Estórias do Usuário devem ser escrita em cartão:
Exemplo:
de Cartão
Para escrever as Estórias do Usuário podemos comprar os cartões de papel ou utilizar um software. (O
software somente recomendado quando parte da equipe está fisicamente em outro local).
Page 11
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 11
Exemplos de Estórias do Usuário:
Como cliente de negócio, eu quero ver as promoções de passagens áreas
Como cliente de negócio, eu quero comprar uma passagem área (TKT)
Como cliente de negócio, eu quero pagar com meu cartão de crédito
corporativo o valor das passagens áreas
Como cliente de negócio, eu quero escolher o assento que melhor me
convier.
Exemplos de Estórias do Usuário para site de uma empresa Aérea
Como cliente de negócio, eu posso realizar pelo meu smartphone o
check-in para otimizar meu embarque.
Page 12
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 12
Cartão:
Exemplos de Estórias do Usuário para Portal de Educação: Cartão
Boa Prática:
- Use cartão padrão (9 x 15 cm) para escrever as Estórias do Usuário. Esta tamanho de cartão ajuda a
manter a Estória pequena e objetiva.
Page 13
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 13
Conversa:
Como cliente,
eu quero fazer
o acompanhamento
dos meus pedidos...
PO (Product Owner) Equipe
O que você
quer (necessita)?
Como cliente, eu quero fazer acompanhamento dos meus pedidos para
que possa planejar o recebimento dos pedidos.
Cartão:
ConversaNo SCRUM as conversas geralmente acontecem na Reunião de Planejamento da
Sprint (Planning Meeting) e também durante o desenvolvimento da Sprint.
Mas, também elas durante os Workshop de Requisitos e de Escrita de Estória que
são realizados antes das Reuniões de Planejamento.
A conversa:
Page 14
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 14
Estilos para escrita das Estórias do Usuário:
Titulo: Pagamento com Cartão de Crédito Prioridade: 1-Alta
Quem ?
como um cliente
O que ?
preciso de uma interface de pagamento por cartão de
crédito que seja intuitiva e fácil de usar.
Por que ?
Com objetivo de facilitar os pagamentos.
Estilo 1
Pontos: 8
Titulo: Pagamento com Cartão de Crédito Prioridade: 1-Alta
Por que ?
Com objetivo de facilitar os pagamentos
Quem ?
Como um cliente
O que ?
Preciso de uma interface de pagamento por cartão de
crédito que seja intuitiva e fácil de usar.
Estilo 2
Pontos: 8
Boa Prática:
Definir um estilo ajuda na escrita das Estórias do Usuário
Page 15
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 15
Confirmação
Na frente do cartão escreva a Estória do Usuário e no verso escreva os Testes de
Aceitação.
ConfirmaçãoPara confirmar se a Estória do Usuário foi bem implementa podemos definir Teste de
Aceitação.
Testes de Aceitação:
Toda estória deve ser associada a pelo menos um Teste de Aceitação, o ideal é ter um
conjunto de testes. Estes testes definem as respostas que a funcionalidade deve
fornecer de acordo com a utilização por parte do usuário. Estes testes se materializam
na forma de “scripts” que indicam os resultados desejados (esperados) bem como os
resultados indesejados e que não devem ser providos pelo sistema.
Os Testes de Aceitação devem ser mais detalhados do que as estórias. Isto, por duas
razões:
A primeira e mais importante: Para validar se a Estória do Usuário foi corretamente
implementada (codificada).
E a segunda: Para prover o máximo de informações sobre a Estória.
Boa Prática:
Automatizar os Testes de Aceitação (sempre que possível).
Frente Como cliente de negócio, eu quero fazer reserva de um apartamento
Page 16
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 16
Confirmação
Verificar se o status do apartamento, para o período da reserva, foi
alterado para “R” (reservado).
E verifique se o cliente foi notificado por e-mail da confirmação da
reserva.
Verificar se possível fazer reserva para um apartamento que esteja com
o status de reservado.
Exemplo de Testes de Aceitação: Confirmação
Verso
Boa Prática:
- Escreva os Teste de Aceitação no verso do cartão.
Page 17
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 17
Um “template” (modelo) para Estória do Usuário:
FrenteTitulo: <escrever o titulo da estória> ou <ID da estória> Prioridade: <___>
<Por que ?>
<Quem ?>
<O que ?>
Obs: <escrever observações>
Verso
Pontos: <__>
Testes de Aceitação
<teste 1>
<teste 2>
<teste n>
Page 18
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010
Tema
18
O que é Tema ?
Um tema é um agrupamento de Estórias do Usuários relacionadas. Por exemplo, em Portal de uma
Operadora de Plano de Saúde, pode haver temas em torno de Cliente, Rede Credenciada, Especialidade
Médica, Agendamento de Consulta e Pagamentos e etc.
Como cliente, eu quero consultar os pagamentos realizados no Portal
da Operadora para que possa controlar as minhas contas.
Como cliente de negócio, eu quero escolher o assento que melhor me
convier.
Como cliente, eu quero o imprimir a segunda via do boleto de
pagamento pelo Portal da Operadora para que não tenha que ir a
Operadora.
Como cliente, eu quero imprimir o relatório de comprovante de
pagamentos pelo Portal da Operadora para que possa controlar
as minhas contas.
Exemplo de Tema: Agrupamento de Estórias sobre o tema “Pagamento”
Page 19
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010
Épico:
19
O que é Épico ?
São Estórias do Usuários de grande porte, normalmente aquelas que são demasiado grandes para
implementar em uma única iteração e, portanto, elas precisam ser decompostas em Estórias do
Usuário menores. Os épicos são difíceis de planejar e estimar.
Como tradutor eu quero fazer traduções utilizando uma ferramenta
que permita traduzir para 40 idiomas diferentes para facilitar o meu
trabalho.
Exemplo de Épico:
Esta Estória do Usuário é de
grande demais, para ser
implementada em uma Sprint de
30 dias. Neste caso ela deverá ser
“quebrada” ou decomposta em
Estórias do Usuário menores.
Como tradutor eu quero fazer traduções utilizando uma ferramenta
que permita traduzir para o inglês para facilitar o meu trabalho.
Como tradutor eu quero fazer traduções utilizando uma ferramenta
que permita traduzir para o espanhol para facilitar o meu trabalho.
Depois da quebra ou da
decomposição, as Estórias
ficaram menores e agora elas
podem ser implementadas em
uma Sprint.
Page 20
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 20
Estimar as “Estórias do Usuário”:
Estimar é Difícil ?
- Estimativa (mundo real) representa um valor aproximado.
-Estimativa (em desenvolvimento de software) algumas pessoas acham que representa um valor exato.
Contudo, devemos estimar as Estórias do Usuário para saber se elas “cabem” dentro de uma Sprint.
Uma vez que os pontos são estimados eles ajudam a definir a velocidade da equipe, a partir deste
parâmetro, podemos chegar a conclusão se estória cabe ou não dentro da Sprint. Se ela não couber a
opção é quebrar esta estória em estórias menores.
Pessoal, qual
estimativa para
essa estória...
Product Owner
Titulo: Pagamento com Cartão de Crédito Prioridade: ?
Quem ?
como um cliente
O que ?
preciso de uma interface de pagamento por cartão de
crédito que seja intuitiva e fácil de usar.
Por que ?
Com objetivo de facilitar os pagamentos.
Pontos: ?
Exemplo de Estórias do Usuário:
Page 21
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 21
Estimar as “Estórias do Usuário”:
Baseado na duração de tarefas.
- Dias ou horas é unidade bem definida, contudo o “tempo ideal”
quase nunca é igual ao “tempo real”...
- É mais fácil de estimar, mas pode ser tornar difícil de estimar se
consideramos todas as interrupções e variações
Baseia-se no tamanho da estória influenciado pela:
- Nível de dificuldade, complexidade e experiência (é empírico);
Foco nas funcionalidades;
O importante são os valores relativos;
Pontos são medidas sem unidade;
Equipe diferentes podem ter pontos diferentes para a mesma
estórias.
Pontos de Estória (Story Points)
Principais técnicas:
◦ Opinião de especialista;
◦ Analogia;
◦ Decomposição (Dividir para conquistar).
Dias Ideais (Ideal Days)
Pontos de Estória:
◦ Valores relativos
◦ Mais abstrato
Ideal Days:
◦ Mais fácil para iniciantes
◦ Fácil de explicar
Quando trabalhamos com métodos ágeis temos pelo menos duas formas para estimar a velocidade da
equipe: Ideal Days e Pontos de Estória. Recomendamos utilizar os Pontos de Estória.
Page 22
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 22
Estimar “Estórias do Usuário”:Estimativa* e o Planning Poker:
Geralmente o Planning Poker usa um conjunto de cartas com valores específicos que
podem representar pontos relativos e é praticado como se fosse um jogo de cartas. Os
pontos devem estar em uma escala não linear, por e exemplo a Fibonacci:
(1,2,3,5,8,13,...) + 20, 40, 100 ou em outra escala
Para fazer estimativa de velocidade da equipe ou de duração da Sprint, antes é preciso o escrever as
estórias do usuário.
O Planning Poker é uma “prática” que ajuda na estimativa de uma estória ou de uma tarefa e é baseada
no consenso de toda a equipe.
Pessoal, qual
estimativa para
essa estória...
Product Owner Equipe
8
88
5
Jogando o Planning Poker:
Antes de começar o jogo é necessário definir um valor de referência. Por exemplo: Identificar a estória
que pode ser atribuído o menor quantidade pontos, esta estória será utilizada como referência para
pontuação das demais estórias.
O PO apresenta uma estória e pede para os membros da equipe fazer a estimativa de velocidade...
8
88
81ª. Rodada Quando todas as cartas
estiverem lançadas, elas
são viradas e caso não
haja consenso nos
pontos, as diferenças são
discutidas de forma
breve, e uma nova
rodada acontece até que
haja a convergência.
Nª. Rodada
Equipe
Page 23
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 23
Estimar as “Estórias do Usuário”:
Exemplo:
Se a Estória do Usuário tem 8 pontos e a equipe tem a velocidade de 2 pontos por dia, isto significa que
a equipe precisará de 4 dias para implementar a estória.
Titulo: Pagamento com Cartão de Crédito Prioridade: ?
Quem ?
como um cliente
O que ?
preciso de uma interface de pagamento por cartão de
crédito que seja intuitiva e fácil de usar.
Por que ?
Com objetivo de facilitar os pagamentos.
Pontos: 8
Exemplo de Estórias do Usuário:
Importante:
Para fazer as estimativa, você deve levar em consideração outros aspectos além da codificação da estória, como por
exemplo: realização do teste unitários, preparação do ambiente de teste e outras coisas que são necessário e
importantes (mesmo que de baixo valor para o negócio) para que você entregue o software funcionando.
Page 24
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 24
Exercícios “Estórias do Usuário”:
Escrever as Estórias do Usuário para os itens do Product Backlog abaixo:
- Os cliente poderão fazer reserva de apartamento.
- Os cliente poderão cancelar reserva.
- Os clientes poderão fazer alterações de data da reserva
Product Backlog:
Page 25
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010 25
Exercícios “Estórias do Usuário”:
Escreva o(s) Teste de Aceitação para Estória abaixo:
1Título: Cliente faz saque de dinheiro
Como um cliente, eu gostaria de sacar dinheiro
em um caixa eletrônico, para que eu não tenha
que esperar numa fila de banco.
Page 26
[email protected] ão 1 Ago 2010 | RFS
Es
cre
ve
nd
o E
stó
ria
s d
o U
su
ári
o E
fic
aze
s
Todos os direitos reservados e protegidos © 2006 e 2010Versão 5
Escrevendo
Estórias do
Usuário
Eficazes
aula #3
Rildo F [email protected]
twitter: @rildosan
skype: rildo.f.santos
http://rildosan.blogspot.com/
(11) 9123-5358
(11) 9962-4260
www.etecnologia.com.br