SlideShare une entreprise Scribd logo
1  sur  11
12/07/2019
1
Técnicas para
quebra de histórias
Patterns: 1 - Quebra de Condições
Como cliente, eu quero
criar um pedido E pagar
pela mesmo usando um
cartão de crédito para
que eu consiga algo para
comer.
Explicação:
Se uma história tem múltiplos itens listados no
que deve ser feito, cada um deles deve ser
separado em uma história.
Quando utilizar esta técnica:
Quando vemos palavras do tipo “E” ou “OU”
aparecendo nas histórias.
Questionamentos úteis
Todas estas condições são necessárias (agora)?
12/07/2019
2
Patterns : 2 – Fluxo de trabalho
Como cliente, eu quero
criar um pedido para que
eu consiga algo para
comer.
Explicação:
Identifique passos específicos em um fluxo de trabalho.
Implemente o fluxo por partes criando múltiplas histórias.
Quando utilizar esta técnica:
Quando a história inicial descreve um fluxo de
trabalho.
Questionamentos úteis
Quais passos o usuário faz nesta história?
Todos esses passos são necessários (agora)?
Estes passos podem ser simplificados numa
primeira release?
Como cliente eu
quero submeter
meu pedido.
3 – Cenários de Caso de Uso
Como cliente, eu quero
criar um pedido para que
eu consiga algo para
comer.
Explicação:
Similar ao patternFluxo de Trabalho, uma história representa
o caminho feliz e outrasos casos alternativos.
Quando utilizar esta técnica:
Quando a história inicial descreve a interação
do usuário com vários casos alternativos
(Casos de uso).
Questionamentos úteis
Qual é o fluxo principal e quais são os
alternativos?
São todos estes fluxos alternativos
necessários? (na primeira versão)
É possível simplificar estes fluxos alternativos?
(na primeira versão)
Como cliente eu
quero fazer o
pedido de vários
itens
12/07/2019
3
4 – Operações
Explicação:
É a divisão de uma histórias em várias que representamas
operações realizadas pela história inicial.
Quando utilizar esta técnica:
Normalmente quando a história é sobre gestão
de informação (ex Crud) ou configuração.
Questionamentos úteis
Quais operações envolve esta história?
Todas essas operações são necessárias na
primeira versão?
Como dono de
restaurante, eu quero
gerenciar o cardápio
para que as pessoas
possam fazer pedidos
Como dono de
restaurante,
desejo excluir o
cardápio.
Como dono do
restaurante, quero
visualizar o
cardápio
5 – Zero, um e muitos
Explicação:
É a quebra de histórias que lidam com múltiplas instâncias de
entidades em histórias que lidam com uma instância e então
múltiplas instâncias.
Quando utilizar esta técnica:
Quando você está trabalhando com uma
história onde múltiplas instâncias são
permitidas.
Questionamentos úteis
Nós precisamos tratar múltiplas instâncias, ou
somente uma seria suficiente?
Como dono do
restaurante, eu quero
ver um pedido de cliente
Como dono de
restaurante, quero
ver um pedido com
vários itens
12/07/2019
4
6 – Núcleo e extensão
Explicação:
É a quebra de histórias lidando com o tema central em uma
história e outras para que possa ir complementandoo mesmo.
Quando utilizar esta técnica:
Quando a história possui um Núcleo simples
que permite a ele ser agregado outras
funcionalidades.
Questionamentos úteis
Qual é a versão mais simples disto?
Quais tipos de dados devem ser suportados?
Quais parâmetros são relevantes?
Como cliente desejo ver
meus pedidos anteriores
para saber o que eu comi
no passado.
7 – Maior esforço
Explicação:
Quebrar as histórias de forma que exija um substancial
esforço na primeira e menos nas seguintes.
Quando utilizar esta técnica:
Quando você quebra a história em várias
outras e qualquer uma delas tem um esforço
alto na primeira vez que é feito.
Questionamentos úteis
Podemos prover infraestrutura e já entregar
valor?
Faz diferença qual opção implementamos
primeiramente?
Como cliente desejo
pagar com Visa, Amex,
MC ou Diners. Desta
forma não tenho que me
preocupar.
12/07/2019
5
8 – Critério de Aceite
Explicação:
Quando há muitos critérios de aceites o ideal é quebrar em
mais de uma história.
Quando utilizar esta técnica:
Quando um time identifica vários critérios de
aceite ou cenários para uma história.
Questionamentos úteis
Quais testes serão usados para validar esta
história?
Quais critérios de aceite se aplicam?
Quais cenários são relevantes?
Todos estes testes de cenários são necessários
nesta primeira release?
Como cliente desejo
fazer um pedido, desta
forma poderei comer
algo.
9 – Variações nos tipos de dados
Explicação:
Quando a história faz a mesma coisa para diferentes tipos de
dados, crie uma história para cada opção.
Quando utilizar esta técnica:
Quando a funcionalidade suporta múltiplas
opções.
Questionamentos úteis
Todas estas opções são necessárias na
primeira versão?
Qual a principal opção que devemos prover?
Como cliente desejo ver
o cardápio na minha
língua nativa, desta
forma posso escolher
algo para comer.
12/07/2019
6
10 – Fronteira de Dados
Explicação:
Quando a história cuida de diversos atributos da entidade ao
mesmo tempo. O ideal é uma primeira história que suporta o
básico e outras histórias para fazer o incremento de outros
dados
Quando utilizar esta técnica:
Quando a história estiver lidando com vários
elementos de dados de uma só vez.
Questionamentos úteis
Quais são os dados essenciais que devemos
prover?
Quais dados não são as informações que não são
necessárias na primeira versão?
Como cliente desejo ver
as opções no cardápio,
desta forma posso
escolher algo para
comer.
11 – Variações na Interface com o usuário
Explicação:
Quebrar uma história que lida com uma interface complexa
em várias histórias que incrementalmentevai adicionando
complexidade.
Quando utilizar esta técnica:
Quando uma história estiver lidando com uma
interface complexa onde o usuário irá usar
uma opção de cada vez.
Questionamentos úteis
Qual a interface mais simples que provê valor?
Como cliente desejo ver
o cardápio, desta forma
posso escolher algo para
comer.
Como cliente
desejo ver o
cardápio em PDF.
12/07/2019
7
12 – Variações na Plataforma
Explicação:
Quebrar uma história que lida com a mesma demanda em
plataformasdiferentes.
Quando utilizar esta técnica:
Quando estiver adicionando uma interface
com o usuário que necessita estar disponível
em múltiplas plataformas.
Questionamentos úteis
Quais plataformas devemos suportar?
Quais plataformas devemos suportar na
primeira versão?
Há plataformas mais difíceis de disponibilizar
que outras?
Como cliente desejo
criar um pedido, desta
forma posso conseguir
algo para comer.
Como cliente
desejo criar meu
pedido no meu
iPhone.
13 –Regra de Negócio
Explicação:
Quebrar uma história que lida com regras de negócio
complexas em várias histórias uma com cada regra. Um caso
especial é postergar a validação de entrada para uma outra
história.
Quando utilizar esta técnica:
Quando a história possuir uma variedade de
regras de negócio, frequentemente
identificado por uma quantidade grande de
exemplos.
Questionamentos úteis
Quais regras se aplicam a esta histórias?
Todas essas regras são necessárias na primeira
versão?
As regras mais simples são suficientes?
Como cliente desejo usar
um cartão de crédito
para pagar meu pedido.
Como cliente
desejo saber
quando esquecer
de prover o nome
do proprietário do
cartão.
12/07/2019
8
14 –Papéis
Explicação:
Quebrar uma história que lida com a mesma funcionalidade
atendendo às necessidades de diferentes papéis.
Quando utilizar esta técnica:
Quando a história impactar mais de uma papel
e este impacto exigir diferentes
desenvolvimentos a depender do papel.
Questionamentos úteis
Quais papeis estão envolvidos nesta história?
Todos esses papeis são necessários agora?
Como cliente desejo
criar um pedido. Desta
forma consigo algo para
comer.
15 –Adiar Requisitos não funcionais
Explicação:
Quebrar uma história que lida primeiramentecom a
funcionalidade e criar outras para lidar com performance,
escalabilidade, usabilidade e até mesmo precisão.
Quando utilizar esta técnica:
Quando a funcionalidade base ainda não
existe. Desta forma o time pode aprender
primeiro sobre o negócio e depois trabalhar
pesado para refinar os aspectos não
funcionais.
Questionamentos úteis
Neste momento é necessário ter uma
performance já otimizada?
Como cliente desejo
saber se o restaurante
recebeu meu pedido.
Desta forma estou certo
que conseguirei comer...
12/07/2019
9
16 – Spikes
Explicação:
Quebrar uma história para permitir uma pesquisa maior antes
de começar a implementá-la.
Quando utilizar esta técnica:
Quando o time entender que há muita
incerteza para implementar a história original.
Questionamentos úteis
Quais são as dúvidas sobre esta história?
Como cliente desejo ver
o cardápio em uma
linguagem à minha
escolha.
17 – Baixa Fidelidade / Alta Fidelidade
Explicação:
Quebra de histórias para aumentar gradualmente
usabilidade/detalhes da funcionalidade.
Quando utilizar esta técnica:
Quando o custo de entregar a
usabilidade/todas as necessidades de uma só
vez for muito alto.
Questionamentos úteis
Qual é o estado bom o suficiente para esta
funcionalidade?
Como cliente gostaria de
ver recomendações de
comida para que eu
possa fazer um pedido.
Desta forma estou certo
que faria uma boa
escolha.
12/07/2019
10
18 – Transitando e Persistindo
Explicação:
Quebra de histórias que recebem informações e logo após
história que grava persiste informação.
Quando utilizar esta técnica:
Quando a história é de uma funcionalidade
que manipula dados mas não necessita gravá-
los.
Questionamentos úteis
Nós temos mesmo que gravar estes dados?
Como cliente gostaria de
pagar meu pedido com
cartão de crédito. Desta
forma não preciso
carregar dinheiro.
19 – Estático x Dados dinâmicos
Explicação:
A primeira história criar a funcionalidade trabalhando com
dados estáticose em seguida outras adicionam dinamicidade.
Quando utilizar esta técnica:
Quando a funcionalidade cobre parâmetros
onde os valores divergem dependendo das
opções escolhidas.
Questionamentos úteis
Precisamos ter dados dinâmicos para agora?
Como cliente gostaria de
procurar por itens do
cardápio.
Como cliente
gostaria de
procurar por itens
do cardápio por
tipo de comida.
12/07/2019
11
20 – Primeiro manual, depois automatizado.
Explicação:
Quando o processo ainda não foi implementado faz sentido
quebrar a demanda de um processo todo automatizadopor
uma primeira versão que faz uma parte somente.
Quando utilizar esta técnica:
Quando a funcionalidade que está sendo
desenvolvida interage com um processo
manual desenvolva o básico em uma história e
não automatize todo o processo.
Questionamentos úteis
É necessário automatizar todo o processo
agora?
Qual a menor parte que podemos entregar
agora?
Como cliente gostaria de
pagar com múltiplos
cartões de crédito.
*A primeira versão irá atender
múltiplos cartões de créditos
com base em um processo
manual.
21 – Adie o tratamento ou log de erros
Explicação:
Quebre a história em primeiro tratara funcionalidade e depois
outras que adicionam o tratamentoou log de erros.
Quando utilizar esta técnica:
Quando você quer ganhar feedback sobre a
funcionalidade para depois determinar como
tratar ou logar os erros.
Questionamentos úteis
Precisamos tratar e logar todos os erros
possíveis neste momento?
Como dono do
restaurante desejo que
todas transações de CC
seja autorizadas pela
administradora.

Contenu connexe

Tendances

BDD não é automação de teste - Scrum Gathering
BDD não é automação de teste - Scrum GatheringBDD não é automação de teste - Scrum Gathering
BDD não é automação de teste - Scrum GatheringElias Nogueira
 
Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)one80
 
Lean inception: como alinhar pessoas e construir o produto certo
Lean inception: como alinhar pessoas e construir o produto certoLean inception: como alinhar pessoas e construir o produto certo
Lean inception: como alinhar pessoas e construir o produto certoPaulo Caroli
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting PatternsKent McDonald
 
User story splitting techniques
User story splitting techniquesUser story splitting techniques
User story splitting techniquesAshutosh Rai
 
Alinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream KanbanAlinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream KanbanTaller Negócio Digitais
 
Slicing user stories
Slicing user storiesSlicing user stories
Slicing user storiesDavid Michel
 
Definindo métricas para seu produto
Definindo métricas para seu produtoDefinindo métricas para seu produto
Definindo métricas para seu produtoAugusto Rückert
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessStephen Tucker
 
Quebrando Histórias de Usuário
Quebrando Histórias de UsuárioQuebrando Histórias de Usuário
Quebrando Histórias de UsuárioGiuliano Sposito
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story WorkshopPeter Antman
 
STATIK | System Thinking Approach to Implementing Kanban / Abordagem do Pens...
STATIK | System Thinking Approach to  Implementing Kanban / Abordagem do Pens...STATIK | System Thinking Approach to  Implementing Kanban / Abordagem do Pens...
STATIK | System Thinking Approach to Implementing Kanban / Abordagem do Pens...Mayra de Souza
 
Concepção de um Product Backlog Efetivo
Concepção de um Product Backlog EfetivoConcepção de um Product Backlog Efetivo
Concepção de um Product Backlog EfetivoFábio Aguiar
 
Como uma dinâmica de Sprint Planning II pode ajudar o time
Como uma dinâmica de Sprint Planning II pode ajudar o timeComo uma dinâmica de Sprint Planning II pode ajudar o time
Como uma dinâmica de Sprint Planning II pode ajudar o timerafaelzampieri
 
Elephant Carpaccio
Elephant CarpaccioElephant Carpaccio
Elephant CarpaccioLars Thorup
 
Example Mapping in the Wild
Example Mapping in the WildExample Mapping in the Wild
Example Mapping in the WildCeri Shaw
 

Tendances (20)

Ágil para quem quiser
Ágil para quem quiserÁgil para quem quiser
Ágil para quem quiser
 
BDD não é automação de teste - Scrum Gathering
BDD não é automação de teste - Scrum GatheringBDD não é automação de teste - Scrum Gathering
BDD não é automação de teste - Scrum Gathering
 
Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)
 
Lean inception: como alinhar pessoas e construir o produto certo
Lean inception: como alinhar pessoas e construir o produto certoLean inception: como alinhar pessoas e construir o produto certo
Lean inception: como alinhar pessoas e construir o produto certo
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting Patterns
 
User story splitting techniques
User story splitting techniquesUser story splitting techniques
User story splitting techniques
 
Alinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream KanbanAlinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream Kanban
 
Metricas ageis
Metricas ageisMetricas ageis
Metricas ageis
 
Slicing user stories
Slicing user storiesSlicing user stories
Slicing user stories
 
Discovery kanban
Discovery kanbanDiscovery kanban
Discovery kanban
 
Definindo métricas para seu produto
Definindo métricas para seu produtoDefinindo métricas para seu produto
Definindo métricas para seu produto
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
 
Quebrando Histórias de Usuário
Quebrando Histórias de UsuárioQuebrando Histórias de Usuário
Quebrando Histórias de Usuário
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story Workshop
 
STATIK | System Thinking Approach to Implementing Kanban / Abordagem do Pens...
STATIK | System Thinking Approach to  Implementing Kanban / Abordagem do Pens...STATIK | System Thinking Approach to  Implementing Kanban / Abordagem do Pens...
STATIK | System Thinking Approach to Implementing Kanban / Abordagem do Pens...
 
Concepção de um Product Backlog Efetivo
Concepção de um Product Backlog EfetivoConcepção de um Product Backlog Efetivo
Concepção de um Product Backlog Efetivo
 
Pare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizarPare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizar
 
Como uma dinâmica de Sprint Planning II pode ajudar o time
Como uma dinâmica de Sprint Planning II pode ajudar o timeComo uma dinâmica de Sprint Planning II pode ajudar o time
Como uma dinâmica de Sprint Planning II pode ajudar o time
 
Elephant Carpaccio
Elephant CarpaccioElephant Carpaccio
Elephant Carpaccio
 
Example Mapping in the Wild
Example Mapping in the WildExample Mapping in the Wild
Example Mapping in the Wild
 

Similaire à 21 técnicas para quebra de User Stories para os PO's

399099 2 introdução à modelagem com uml
399099 2 introdução à modelagem com uml399099 2 introdução à modelagem com uml
399099 2 introdução à modelagem com umlccorreasantos
 
TDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alem
TDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alemTDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alem
TDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alemtdc-globalcode
 
Levantamento Ágil de Requisitos
Levantamento Ágil de RequisitosLevantamento Ágil de Requisitos
Levantamento Ágil de RequisitosPaulo Furtado
 
GFS - Modelo de Negócios
GFS - Modelo de NegóciosGFS - Modelo de Negócios
GFS - Modelo de NegóciosACE Startups
 
Treinamento Product Management | Circuito de Treinamentos AddTech
Treinamento Product Management | Circuito de Treinamentos AddTechTreinamento Product Management | Circuito de Treinamentos AddTech
Treinamento Product Management | Circuito de Treinamentos AddTech.add
 
Quase tudo o que você precisa saber sobre landing pages
Quase tudo o que você precisa saber sobre landing pagesQuase tudo o que você precisa saber sobre landing pages
Quase tudo o que você precisa saber sobre landing pagesNeue Labs
 
Especificação de Requisitos de Software
Especificação de Requisitos de SoftwareEspecificação de Requisitos de Software
Especificação de Requisitos de SoftwareRalph Rassweiler
 
Product discovery - Por que ninguém gosta do seu produto
Product discovery - Por que ninguém gosta do seu produtoProduct discovery - Por que ninguém gosta do seu produto
Product discovery - Por que ninguém gosta do seu produtoCarlos Freitas
 
Cloud Customer Experience com Develop IT | Oracle |
Cloud Customer Experience com Develop IT | Oracle |Cloud Customer Experience com Develop IT | Oracle |
Cloud Customer Experience com Develop IT | Oracle |Amom Mendes
 
Workshop de Requisitos - User Story Mapping
Workshop de Requisitos - User Story MappingWorkshop de Requisitos - User Story Mapping
Workshop de Requisitos - User Story MappingMarcelo Neves
 
Energias de Portugal – 3rd week Lessons learned
Energias de Portugal – 3rd week Lessons learnedEnergias de Portugal – 3rd week Lessons learned
Energias de Portugal – 3rd week Lessons learnedTimetruck
 
Boas praticas para historias_de_usuario_3_0.pdf
Boas praticas para historias_de_usuario_3_0.pdfBoas praticas para historias_de_usuario_3_0.pdf
Boas praticas para historias_de_usuario_3_0.pdfFabio Miranda
 
historias-de-usuario-3.0.pdf
historias-de-usuario-3.0.pdfhistorias-de-usuario-3.0.pdf
historias-de-usuario-3.0.pdfMariane Vitória
 
Simplificação de Serviços Públicos
Simplificação de Serviços PúblicosSimplificação de Serviços Públicos
Simplificação de Serviços PúblicosColaborativismo
 
CRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas Digitais
CRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas DigitaisCRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas Digitais
CRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas DigitaisCauê de Souza
 
Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023Nelson Glauber Leal
 

Similaire à 21 técnicas para quebra de User Stories para os PO's (20)

User stories
User storiesUser stories
User stories
 
399099 2 introdução à modelagem com uml
399099 2 introdução à modelagem com uml399099 2 introdução à modelagem com uml
399099 2 introdução à modelagem com uml
 
TDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alem
TDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alemTDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alem
TDC2018SP | Trilha Requisito Ageis - Historias de usuarios - Basico e alem
 
Levantamento Ágil de Requisitos
Levantamento Ágil de RequisitosLevantamento Ágil de Requisitos
Levantamento Ágil de Requisitos
 
GFS - Modelo de Negócios
GFS - Modelo de NegóciosGFS - Modelo de Negócios
GFS - Modelo de Negócios
 
Treinamento Product Management | Circuito de Treinamentos AddTech
Treinamento Product Management | Circuito de Treinamentos AddTechTreinamento Product Management | Circuito de Treinamentos AddTech
Treinamento Product Management | Circuito de Treinamentos AddTech
 
Quase tudo o que você precisa saber sobre landing pages
Quase tudo o que você precisa saber sobre landing pagesQuase tudo o que você precisa saber sobre landing pages
Quase tudo o que você precisa saber sobre landing pages
 
Especificação de Requisitos de Software
Especificação de Requisitos de SoftwareEspecificação de Requisitos de Software
Especificação de Requisitos de Software
 
Product discovery - Por que ninguém gosta do seu produto
Product discovery - Por que ninguém gosta do seu produtoProduct discovery - Por que ninguém gosta do seu produto
Product discovery - Por que ninguém gosta do seu produto
 
Cloud Customer Experience com Develop IT | Oracle |
Cloud Customer Experience com Develop IT | Oracle |Cloud Customer Experience com Develop IT | Oracle |
Cloud Customer Experience com Develop IT | Oracle |
 
Workshop de Requisitos - User Story Mapping
Workshop de Requisitos - User Story MappingWorkshop de Requisitos - User Story Mapping
Workshop de Requisitos - User Story Mapping
 
Energias de Portugal – 3rd week Lessons learned
Energias de Portugal – 3rd week Lessons learnedEnergias de Portugal – 3rd week Lessons learned
Energias de Portugal – 3rd week Lessons learned
 
Boas praticas para historias_de_usuario_3_0.pdf
Boas praticas para historias_de_usuario_3_0.pdfBoas praticas para historias_de_usuario_3_0.pdf
Boas praticas para historias_de_usuario_3_0.pdf
 
historias-de-usuario-3.0.pdf
historias-de-usuario-3.0.pdfhistorias-de-usuario-3.0.pdf
historias-de-usuario-3.0.pdf
 
Fatiando o bolo
Fatiando o boloFatiando o bolo
Fatiando o bolo
 
Qualidade desenvolvimento-produtos
Qualidade desenvolvimento-produtosQualidade desenvolvimento-produtos
Qualidade desenvolvimento-produtos
 
Simplificação de Serviços Públicos
Simplificação de Serviços PúblicosSimplificação de Serviços Públicos
Simplificação de Serviços Públicos
 
CRP-5215-0420-2014-11
CRP-5215-0420-2014-11CRP-5215-0420-2014-11
CRP-5215-0420-2014-11
 
CRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas Digitais
CRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas DigitaisCRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas Digitais
CRP- 0420: Comunicação Digital - Aula 8: Trabalho Final e Ferramentas Digitais
 
Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023
 

Plus de Carlos Silva Júnior

WORKSHOP OKR - GESTÃO POR RESULTADOS
WORKSHOP OKR - GESTÃO POR RESULTADOSWORKSHOP OKR - GESTÃO POR RESULTADOS
WORKSHOP OKR - GESTÃO POR RESULTADOSCarlos Silva Júnior
 
PALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOS
PALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOSPALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOS
PALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOSCarlos Silva Júnior
 
Palestra Business Agility Devops bootcamp
Palestra Business Agility Devops bootcampPalestra Business Agility Devops bootcamp
Palestra Business Agility Devops bootcampCarlos Silva Júnior
 
Palestra Business Agility - ConAgile
Palestra Business Agility - ConAgilePalestra Business Agility - ConAgile
Palestra Business Agility - ConAgileCarlos Silva Júnior
 
Palestra Business Agility: Escalando Agilidade em Toda Organização
Palestra Business Agility: Escalando Agilidade em Toda OrganizaçãoPalestra Business Agility: Escalando Agilidade em Toda Organização
Palestra Business Agility: Escalando Agilidade em Toda OrganizaçãoCarlos Silva Júnior
 
Agilidade no gerenciamento de projetos
Agilidade no gerenciamento de projetosAgilidade no gerenciamento de projetos
Agilidade no gerenciamento de projetosCarlos Silva Júnior
 
Palestra sobre a carreira do gerente de projetos
Palestra sobre a carreira do gerente de projetosPalestra sobre a carreira do gerente de projetos
Palestra sobre a carreira do gerente de projetosCarlos Silva Júnior
 

Plus de Carlos Silva Júnior (8)

WORKSHOP OKR - GESTÃO POR RESULTADOS
WORKSHOP OKR - GESTÃO POR RESULTADOSWORKSHOP OKR - GESTÃO POR RESULTADOS
WORKSHOP OKR - GESTÃO POR RESULTADOS
 
PALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOS
PALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOSPALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOS
PALESTRA - PESSOAS, PROCESSOS, AGILIDADE E RESULTADOS
 
Palestra Agile Mindset | Ago-21
Palestra Agile Mindset | Ago-21Palestra Agile Mindset | Ago-21
Palestra Agile Mindset | Ago-21
 
Palestra Business Agility Devops bootcamp
Palestra Business Agility Devops bootcampPalestra Business Agility Devops bootcamp
Palestra Business Agility Devops bootcamp
 
Palestra Business Agility - ConAgile
Palestra Business Agility - ConAgilePalestra Business Agility - ConAgile
Palestra Business Agility - ConAgile
 
Palestra Business Agility: Escalando Agilidade em Toda Organização
Palestra Business Agility: Escalando Agilidade em Toda OrganizaçãoPalestra Business Agility: Escalando Agilidade em Toda Organização
Palestra Business Agility: Escalando Agilidade em Toda Organização
 
Agilidade no gerenciamento de projetos
Agilidade no gerenciamento de projetosAgilidade no gerenciamento de projetos
Agilidade no gerenciamento de projetos
 
Palestra sobre a carreira do gerente de projetos
Palestra sobre a carreira do gerente de projetosPalestra sobre a carreira do gerente de projetos
Palestra sobre a carreira do gerente de projetos
 

21 técnicas para quebra de User Stories para os PO's

  • 1. 12/07/2019 1 Técnicas para quebra de histórias Patterns: 1 - Quebra de Condições Como cliente, eu quero criar um pedido E pagar pela mesmo usando um cartão de crédito para que eu consiga algo para comer. Explicação: Se uma história tem múltiplos itens listados no que deve ser feito, cada um deles deve ser separado em uma história. Quando utilizar esta técnica: Quando vemos palavras do tipo “E” ou “OU” aparecendo nas histórias. Questionamentos úteis Todas estas condições são necessárias (agora)?
  • 2. 12/07/2019 2 Patterns : 2 – Fluxo de trabalho Como cliente, eu quero criar um pedido para que eu consiga algo para comer. Explicação: Identifique passos específicos em um fluxo de trabalho. Implemente o fluxo por partes criando múltiplas histórias. Quando utilizar esta técnica: Quando a história inicial descreve um fluxo de trabalho. Questionamentos úteis Quais passos o usuário faz nesta história? Todos esses passos são necessários (agora)? Estes passos podem ser simplificados numa primeira release? Como cliente eu quero submeter meu pedido. 3 – Cenários de Caso de Uso Como cliente, eu quero criar um pedido para que eu consiga algo para comer. Explicação: Similar ao patternFluxo de Trabalho, uma história representa o caminho feliz e outrasos casos alternativos. Quando utilizar esta técnica: Quando a história inicial descreve a interação do usuário com vários casos alternativos (Casos de uso). Questionamentos úteis Qual é o fluxo principal e quais são os alternativos? São todos estes fluxos alternativos necessários? (na primeira versão) É possível simplificar estes fluxos alternativos? (na primeira versão) Como cliente eu quero fazer o pedido de vários itens
  • 3. 12/07/2019 3 4 – Operações Explicação: É a divisão de uma histórias em várias que representamas operações realizadas pela história inicial. Quando utilizar esta técnica: Normalmente quando a história é sobre gestão de informação (ex Crud) ou configuração. Questionamentos úteis Quais operações envolve esta história? Todas essas operações são necessárias na primeira versão? Como dono de restaurante, eu quero gerenciar o cardápio para que as pessoas possam fazer pedidos Como dono de restaurante, desejo excluir o cardápio. Como dono do restaurante, quero visualizar o cardápio 5 – Zero, um e muitos Explicação: É a quebra de histórias que lidam com múltiplas instâncias de entidades em histórias que lidam com uma instância e então múltiplas instâncias. Quando utilizar esta técnica: Quando você está trabalhando com uma história onde múltiplas instâncias são permitidas. Questionamentos úteis Nós precisamos tratar múltiplas instâncias, ou somente uma seria suficiente? Como dono do restaurante, eu quero ver um pedido de cliente Como dono de restaurante, quero ver um pedido com vários itens
  • 4. 12/07/2019 4 6 – Núcleo e extensão Explicação: É a quebra de histórias lidando com o tema central em uma história e outras para que possa ir complementandoo mesmo. Quando utilizar esta técnica: Quando a história possui um Núcleo simples que permite a ele ser agregado outras funcionalidades. Questionamentos úteis Qual é a versão mais simples disto? Quais tipos de dados devem ser suportados? Quais parâmetros são relevantes? Como cliente desejo ver meus pedidos anteriores para saber o que eu comi no passado. 7 – Maior esforço Explicação: Quebrar as histórias de forma que exija um substancial esforço na primeira e menos nas seguintes. Quando utilizar esta técnica: Quando você quebra a história em várias outras e qualquer uma delas tem um esforço alto na primeira vez que é feito. Questionamentos úteis Podemos prover infraestrutura e já entregar valor? Faz diferença qual opção implementamos primeiramente? Como cliente desejo pagar com Visa, Amex, MC ou Diners. Desta forma não tenho que me preocupar.
  • 5. 12/07/2019 5 8 – Critério de Aceite Explicação: Quando há muitos critérios de aceites o ideal é quebrar em mais de uma história. Quando utilizar esta técnica: Quando um time identifica vários critérios de aceite ou cenários para uma história. Questionamentos úteis Quais testes serão usados para validar esta história? Quais critérios de aceite se aplicam? Quais cenários são relevantes? Todos estes testes de cenários são necessários nesta primeira release? Como cliente desejo fazer um pedido, desta forma poderei comer algo. 9 – Variações nos tipos de dados Explicação: Quando a história faz a mesma coisa para diferentes tipos de dados, crie uma história para cada opção. Quando utilizar esta técnica: Quando a funcionalidade suporta múltiplas opções. Questionamentos úteis Todas estas opções são necessárias na primeira versão? Qual a principal opção que devemos prover? Como cliente desejo ver o cardápio na minha língua nativa, desta forma posso escolher algo para comer.
  • 6. 12/07/2019 6 10 – Fronteira de Dados Explicação: Quando a história cuida de diversos atributos da entidade ao mesmo tempo. O ideal é uma primeira história que suporta o básico e outras histórias para fazer o incremento de outros dados Quando utilizar esta técnica: Quando a história estiver lidando com vários elementos de dados de uma só vez. Questionamentos úteis Quais são os dados essenciais que devemos prover? Quais dados não são as informações que não são necessárias na primeira versão? Como cliente desejo ver as opções no cardápio, desta forma posso escolher algo para comer. 11 – Variações na Interface com o usuário Explicação: Quebrar uma história que lida com uma interface complexa em várias histórias que incrementalmentevai adicionando complexidade. Quando utilizar esta técnica: Quando uma história estiver lidando com uma interface complexa onde o usuário irá usar uma opção de cada vez. Questionamentos úteis Qual a interface mais simples que provê valor? Como cliente desejo ver o cardápio, desta forma posso escolher algo para comer. Como cliente desejo ver o cardápio em PDF.
  • 7. 12/07/2019 7 12 – Variações na Plataforma Explicação: Quebrar uma história que lida com a mesma demanda em plataformasdiferentes. Quando utilizar esta técnica: Quando estiver adicionando uma interface com o usuário que necessita estar disponível em múltiplas plataformas. Questionamentos úteis Quais plataformas devemos suportar? Quais plataformas devemos suportar na primeira versão? Há plataformas mais difíceis de disponibilizar que outras? Como cliente desejo criar um pedido, desta forma posso conseguir algo para comer. Como cliente desejo criar meu pedido no meu iPhone. 13 –Regra de Negócio Explicação: Quebrar uma história que lida com regras de negócio complexas em várias histórias uma com cada regra. Um caso especial é postergar a validação de entrada para uma outra história. Quando utilizar esta técnica: Quando a história possuir uma variedade de regras de negócio, frequentemente identificado por uma quantidade grande de exemplos. Questionamentos úteis Quais regras se aplicam a esta histórias? Todas essas regras são necessárias na primeira versão? As regras mais simples são suficientes? Como cliente desejo usar um cartão de crédito para pagar meu pedido. Como cliente desejo saber quando esquecer de prover o nome do proprietário do cartão.
  • 8. 12/07/2019 8 14 –Papéis Explicação: Quebrar uma história que lida com a mesma funcionalidade atendendo às necessidades de diferentes papéis. Quando utilizar esta técnica: Quando a história impactar mais de uma papel e este impacto exigir diferentes desenvolvimentos a depender do papel. Questionamentos úteis Quais papeis estão envolvidos nesta história? Todos esses papeis são necessários agora? Como cliente desejo criar um pedido. Desta forma consigo algo para comer. 15 –Adiar Requisitos não funcionais Explicação: Quebrar uma história que lida primeiramentecom a funcionalidade e criar outras para lidar com performance, escalabilidade, usabilidade e até mesmo precisão. Quando utilizar esta técnica: Quando a funcionalidade base ainda não existe. Desta forma o time pode aprender primeiro sobre o negócio e depois trabalhar pesado para refinar os aspectos não funcionais. Questionamentos úteis Neste momento é necessário ter uma performance já otimizada? Como cliente desejo saber se o restaurante recebeu meu pedido. Desta forma estou certo que conseguirei comer...
  • 9. 12/07/2019 9 16 – Spikes Explicação: Quebrar uma história para permitir uma pesquisa maior antes de começar a implementá-la. Quando utilizar esta técnica: Quando o time entender que há muita incerteza para implementar a história original. Questionamentos úteis Quais são as dúvidas sobre esta história? Como cliente desejo ver o cardápio em uma linguagem à minha escolha. 17 – Baixa Fidelidade / Alta Fidelidade Explicação: Quebra de histórias para aumentar gradualmente usabilidade/detalhes da funcionalidade. Quando utilizar esta técnica: Quando o custo de entregar a usabilidade/todas as necessidades de uma só vez for muito alto. Questionamentos úteis Qual é o estado bom o suficiente para esta funcionalidade? Como cliente gostaria de ver recomendações de comida para que eu possa fazer um pedido. Desta forma estou certo que faria uma boa escolha.
  • 10. 12/07/2019 10 18 – Transitando e Persistindo Explicação: Quebra de histórias que recebem informações e logo após história que grava persiste informação. Quando utilizar esta técnica: Quando a história é de uma funcionalidade que manipula dados mas não necessita gravá- los. Questionamentos úteis Nós temos mesmo que gravar estes dados? Como cliente gostaria de pagar meu pedido com cartão de crédito. Desta forma não preciso carregar dinheiro. 19 – Estático x Dados dinâmicos Explicação: A primeira história criar a funcionalidade trabalhando com dados estáticose em seguida outras adicionam dinamicidade. Quando utilizar esta técnica: Quando a funcionalidade cobre parâmetros onde os valores divergem dependendo das opções escolhidas. Questionamentos úteis Precisamos ter dados dinâmicos para agora? Como cliente gostaria de procurar por itens do cardápio. Como cliente gostaria de procurar por itens do cardápio por tipo de comida.
  • 11. 12/07/2019 11 20 – Primeiro manual, depois automatizado. Explicação: Quando o processo ainda não foi implementado faz sentido quebrar a demanda de um processo todo automatizadopor uma primeira versão que faz uma parte somente. Quando utilizar esta técnica: Quando a funcionalidade que está sendo desenvolvida interage com um processo manual desenvolva o básico em uma história e não automatize todo o processo. Questionamentos úteis É necessário automatizar todo o processo agora? Qual a menor parte que podemos entregar agora? Como cliente gostaria de pagar com múltiplos cartões de crédito. *A primeira versão irá atender múltiplos cartões de créditos com base em um processo manual. 21 – Adie o tratamento ou log de erros Explicação: Quebre a história em primeiro tratara funcionalidade e depois outras que adicionam o tratamentoou log de erros. Quando utilizar esta técnica: Quando você quer ganhar feedback sobre a funcionalidade para depois determinar como tratar ou logar os erros. Questionamentos úteis Precisamos tratar e logar todos os erros possíveis neste momento? Como dono do restaurante desejo que todas transações de CC seja autorizadas pela administradora.