1. Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br
Representando requisitos
com User Stories
2.
3. @rodrigobranas
rodrigo.branas@gmail.com
http://www.agilecode.com.br
Formação Acadêmica
Ciências da Computação – UFSC
Gerenciamento de Projetos - FGV
Certificações
SCJA, SCJP, SCJD, SCWCD, SCBCD, PMP, MCP e CSM
4. Rodrigo Branas – rodrigo.branas@gmail.com
10 anos de experiência na plataforma Java
1000 horas em sala de aula
Mais de 50 palestras em eventos
Líder da área de desenvolvimento na Gennera
Autor da revista Java Magazine
Palestrante
Instrutor da Academia Java e Agile da Globalcode
Criador dos treinamentos de Clean Code, Selenium e
Maven da Agile Code
Trabalhou com as empresas: EDS, HP, GM, Citibank,
OnCast, Globalcode, V.Office, Dígitro, Softplan, Unimed,
Suntech, Vale do Rio Doce, Senai, NET.
5. Definição de requisito: Condição que
se deve satisfazer para alcançar
determinado objetivo.
(Fonte: dicio.com.br)
26. Por que utilizar um template?
Como <Tipo de usuário>
Desejo <Alcançar um objetivo>
Por <Algum motivo>
Original: As a <type of user>, I want
<some goal> so that <some reason>
(Mike Cohn)
27. Razão 1: Falando em primeira
pessoa você pode se colocar no lugar
do tipo de usuário em questão
36. Cenário 1: Realização de saque em
uma conta com crédito
Dado que a conta tem crédito
E o cartão está na validade
E o terminal tem dinheiro
Quando o cliente solicitar o saque
Então o débito deve ser realizado
E o dinheiro deve ser entregue
E o cartão deve ser devolvido
37. Cenário 2: Realização de saque em
uma conta sem crédito
Dado que a conta está sem crédito
E o cartão é valido
Quando o cliente solicitar o saque
Então a mensagem de aviso de
crédito deve ser exibida
E o dinheiro não deve ser entregue
E o cartão deve ser devolvido
38. Cenário 3: Realização de saque
com cartão roubado
Independente do estado da conta
Dado que o cartão é roubado
Quando alguém solicitar o saque
Então a polícia deve ser avisada
E o dinheiro não deve ser entregue
E o cartão deve ser retido
47. Solução 1: Juntar tudo em uma
só User Story
Solução 2: Encontrar outro modo
de dividir as User Stories
48. Solução 1: Juntar tudo em uma
só User Story
Solução 2: Encontrar outro modo
de dividir as User Stories
Solução 3: Colocar duas
estimativas, uma se a User Story
for feita antes, outra depois
55. Evitar “User Stories” do tipo:
“Alterar protocolo de comunicação”
“Criar nova query para...”
“Realizar migração de base de
dados...”
Muitas vezes esses tipos podem ser
considerados como atividades!
57. Razões para não conseguir
estimar uma User Story:
1 – Os desenvolvedores não estão
acostumados com a tecnologia.
2 – Falta conhecimento sobre o
domínio de negócio envolvido.
3 – A User Story é tão grande que
existe incerteza.
66. Alguns exemplos de User Roles:
• Pessoas em busca de emprego
• Empresa em busca de
funcionários
• Avaliador de currículo
• Profissional de RH realizando
pesquisa salarial