História de usuário para refinar demandas ágeis

Como evitar o retrabalho de tarefas e atividades com histórias de usuário??

 

Não é um porre quando a gente se mata por uma tarefa ou atividade…

e quando terminamos dizem que não era bem isso que o cliente queria...

ou ainda que aquela funcionalidade não serve para nada?

 

Eu já me senti como um palhaço muitas destas vezes…

Outras eu alternava entre raiva e frustação!

 

como-refinar-demandas-ageis-com-propositos

 

Alguns de vocês podem até sentir o sangue subindo a cabeça quando isso acontece.

 

Quero te mostrar uma das maneiras mais simples de organizar demandas mais ágeis…

seja em formas de requisitos, ou em forma de atividades/tarefas, de forma ágil e centrado no que importa.

 

A seguir, você vai ver e entender:

 

  • O que é uma história de usuário
  • Por qual razão ela possui um estrutura
  • Como fazer uma boa demanda com histórias de usuário
  • Evitar um dos principais equívocos na construção de user stories.
  • Dicas para construir histórias de usuários realmente ágeis
  • 3 Bônus finais para user stories assertivas

 

Vamos em frente! 🙂

 

As Histórias de Usuário.

 

Histórias de Usuário é uma forma de apresentação mais transparente de demandas e requisitos..

que pode ser muito poderosa em nos ajuda a seguir alguns dos mais fundamentais princípios ágeis.

 

Princípios como a priorização da satisfação do cliente, com entregas antecipadas e regulares de valor às suas necessidades.

Ou ainda como o princípio da simplicidade na redução de tarefas desnecessárias.

 

De modo a organizarmos as atividades necessárias,

separando aquelas que realmente tem valor mais urgente, daquelas que não são assim tão importantes de imediato.

 

Podemos mesmo até utilizar quadros de comunicação visual para isso…

mas de nada adianta, se nos quadros constarem apenas tarefas que não possuem propósitos bem comunicados.

 

METALINGUAGEM DAS HISTÓRIAS DE USUÁRIOS

 

Ou ainda com interpretações dúbias. Que podem nos fazer sentir desorientados.

Para isso, a história de usuário usa uma metalinguagem, que nos ajuda a eliminar muitas destas situações.

 

E ela funciona assim:

 

 

Como [usuário ou papel]

Eu quero [ação]

Para que [propósito ou objetivo]

 

como-refinar-demandas-ageis-com-propositos-metalinguagem-história-de-usuários

 

Então por exemplo:

 

“Como um líder de processos, eu quero visualizar a quantidade de análises em andamento, para que eu possa dimensionar as horas de trabalho de minhas equipes.”

 

Ou ainda

 

“Como um chefe de segurança, eu quero desabilitar cartões de acesso para evitar acessos fraudulentos em áreas sensíveis da companhia.”

 

Basta isso??

Ouvindo assim parece simples, não é? 🙂

Só que não, rs

 

Como eu digo em outro artigo, não podemos misturar o simples com o simplório.

 

Por exemplo, não é incomum encontrarmos histórias de usuários como:

 

“Como desenvolvedor, eu quero um ambiente de homologação, para que eu possa testar minhas implementações antes de colocá-las em produção.”

 

Ok, mas o que há de errado com isso?

 

“No primeiro momento nada”, alguém poderia dizer.

 

Afinal o desenvolvedor de sistemas, que rala, não poderia ser também uma persona?

 

Claro que pode.

Acontece que perder a visão dos usuários finais nesta ferramenta pode azedar o processo de entrega ágil.

 

 

 

Histórias de Usuários focam no usuário

 

Vejamos: para que motivo o desenvolvedor precisa de uma infra de testes?

 

Alguém poderia dizer: “Para atender a uma necessidade do cliente.”

 

Necessidade como aquela de um líder de negócios receber uma funcionalidade…

onde ele pode puxar um relatório atualizado de análises em andamento.

 

Neste caso, a infra de teste pode, ou não, entrar mais como um pré-requisito desta história de usuário.

Uma vez que a user story foca nas necessidades mais urgentes do cliente.

 

E assim uma história de usuário acaba deixando mais claro a persona que vai lidar com a funcionalidade (no nosso exemplo o líder de processos) …

e quem vai construir a funcionalidade (no nosso caso, o desenvolvedor, o dev).

 

Por isso é comum classificarmos atividades como a de infra como uma tarefa ou subatividade derivada da história de usuário original.

 

Como aquela história original do líder de processos.

 

E também tem o seguinte:

 

o “como” ou “o quê é preciso”, fica todo a cargo do time desenvolvimento apurar,

encontrar soluções e recursos para que a história de usuário tenha o seu propósito atingido.

 

Afinal, não é só as necessidades dos clientes que podem mudar.

 

As formas de atendê-los também.

 

E são refinamentos como estes que um bom Product Owner é potencializado em suas formações profissionais.

 

Agora preste atenção:

 

o que fundamenta o sucesso desta metalinguagem, vem de outro lugar.

 

Quem já conhece administração de operações e produção…

já deve reparar na similaridade que esta ferramenta possui com uma outra ferramenta de qualidade…

onde são descritas o

 

O “quem

O “o quê

E “o porquê

 

Essas 3 perguntinhas mágicas, não só revelam o desejo do cliente, mas os motivos que ele possui para aquelas necessidades.

 

Quantas vezes você já não se perguntou?

“Para que isso vai servir mesmo?”

 

Ou ainda pode ter passou por equipes que não atuavam com o mesmo senso de urgência que seus demandantes.

Um dos requisitos mais básicos do engajamento humano está justamente na identificação do propósito, ou motivos, em suas tarefas/missões.

 

Sem a compreensão da razão que gerou a demanda…

muitos não veem o valor que isso pode proporcionar.

 

E logo, cair em desinteresse.

 

Isso sem falar nas demandas, que mesmo entregando no prazo, nunca foram utilizadas.

Porque muitas vezes não questionamos para que servem.

 

E quando percebemos, já está lá mais uma funcionalidade inútil.

Por isso de sempre colocarmos o ponto de vista do usuário final daquela história.

 

Para evitar de realizarmos mais trabalhos que podem se provar inúteis.

 

Me diga aí nos comentários que tipos de trabalhos inúteis você também já fez.

 

E agora você sabe também o propósito da metalinguagem de uma user story:

 

A de colocar a visão do cliente em primeiro lugar.

 

Ou seja, de nos ajudar a ser customer centric.

E ainda minimizar, e até eliminar riscos.

 

como-refinar-demandas-ageis-com-propositos-video-aula

Vídeo Aula: Histórias de Usuário

 

Dicas histórias de usuário realmente ágeis

 

Antes de mais nada, devemos lembrar que, fora a estrutura original da metalinguagem…

não existe bala de prata para todos os cenários…

 

cada projeto, cada cultura corporativa, cada time tem a sua característica e seu contexto.

 

Por isso, devemos compreender que o processo de refinamento com User Story é um processo aberto e contínuo.

 

Ele por si não é um processo linear, como poderia ser sugerido na gestão mais tradicional de desenvolvimento de produtos e serviços.

 

Mas é um processo muito semelhante ao modelo PDCA para resolução de problemas. 😉

 

dicas-para-histórias-de-usuário-refinamento-incremental

 

Assim, ele segue a mesma filosofia de aprimoramento contínuo (um dos fundamentos da gestão ágil de produtos e serviços).

 

Desta forma, vamos para algumas dicas de construção das histórias de usuários:

 

Dica 01: Histórias de usuários possuem épicos

 

De maneira geral, um épico é nada mais que uma necessidade ou desejo ainda um pouco abstrata.

E por isso, normalmente ele é percebido com um “requisito grande” 😊

 

Afinal, em uma gestão ágil, nem sempre teremos todos os requisitos tão bem definidos logo de início.

 

Por isso, é natural quebrarmos estas necessidades em partes menores, definindo características e condições.

 

Até finalmente chegarmos a definir histórias de usuários.

 

Por isso, manter o rastreio desta relação entre Épicos e Histórias de Usuários pode te ajudar a manter o propósito original dos desejos descritos no início do projeto.

 

Evitando, assim, perguntas do tipo:

 

 “Como foi que esta história chegou aqui mesmo?”😉

 

Dica 02: A história de usuário é um meio, e não o fim da feature.

 

Ela nada mais é do que uma ferramenta, que indica uma resolução para uma necessidade ou problema.

 

Atender a esta necessidade ou este problema é o seu objetivo final 😉

 

Dica 03: Use princípios INVEST

 

É uma ótima ideia que cada história de usuário tenha aderência com os seguintes conceitos:

 

Independente: Cada história de usuário deveria ser finalizada independentemente de outras histórias de usuário.

Negociável: Seu próprio processo de refinamento exige uma comunicação construtiva e saudável com todos os interessados pelo produto ou serviço.

Valor: Cada user story deveria entregar um valor que resolve um problema negocial para o usuário final.

Estimável: Cada história de usuário deve ter detalhes o suficiente, que permite ao time de desenvolvimento definir um prazo, ou horizonte, de execução desta mesma história.

Small (Pequeno): Mesmo que que detalhes sejam desejados, o quanto menor podermos deixar uma história de usuário melhor.

Aqui vale recordar: Ser Simples não é o mesmo que ser simplório.

Testável: Cada user story permite que a funcionalidade desenvolvida seja testada, e define como deve ser testada (lembra dos critérios de aceitação?) 😉

 

Dica 04: Histórias de usuários possuem status.

 

Em qualquer início de projeto ou serviço, teremos histórias de usuário mais refinadas, e outros nem tanto assim 😊

Por isso é natural classificá-las de acordo com a situação que se encontram.

Se estão prontas para planejamento, ou ainda se dependem de confirmação com usuários ou com a área de negócios por exemplo.

 

Dica 05: Tarefas e Histórias de Usuário apresentam relação de hierarquia.

 

Uma relação mais comum que encontramos no mercado é a seguinte:

  • Épicos podem conter Histórias, Tarefas ou até Defeitos.
  • Histórias costumam conter Tarefas ou Defeitos
  • Tarefas podem conter Tarefas e Defeitos também.

 

Dica 06: User First

Como podemos observar, a “história de usuário” é uma história do????

Usuário! 😊

 

Ou seja, ela conta uma necessidade, um problema a ser resolvido, sob a perspectiva do usuário final daquela funcionalidade.

 

dicas-para-histórias-de-usuário-user-first

 

Dica 07: Títulos em Histórias de usuários.

 

Ter só a descrição da metalinguagem na história de usuário em um card, pode complicar a gestão do dia-a-dia do agilita a longo prazo.

 

Isso porque quanto mais o projeto se desenvolve, mais e mais histórias aparecem.

Em pouco tempo passamos de algumas poucas, para centenas ou milhares de histórias de usuário.

 

Por isso que encontraremos em muitas ferramentas de gestão ágil, a possibilidade de colocarmos títulos curtos e únicos para histórias de usuário.

No dia-a-dia, isso facilita a identificação do que estamos operacionalizando em determinada Sprint.

 

Dica 08: O usuário é também uma persona

 

Uma boa estratégia para o refinamento de histórias de usuários é captar as intenções por detrás dos requisitos.

 

E para entender melhor essas intenções, uma boa ideia é usar de personas para compreender as principais características e objetivos de um tipo de usuário.

 

Uma vez que temos uma compreensão melhor da persona, podemos não só refinar melhor as histórias de usuário…

como podemos priorizá-las de acordo com os objetivos delas.

 

dicas-para-histórias-de-usuário-personas

 

Dica 09: Tenha critérios de aceitação já definidos

 

É de bom tom já definir os critérios de aceitação no refinamento da própria história de usuário.

Isso evita muita confusão nas reuniões de Revisão e de Retrospectiva de Sprints.

Com o intuito de ajudar no planejamento técnica, é de bom costume colocar requisitos técnicos aqui também 😉

 

Dica 10: Quem cria afinal as histórias de usuários?

 

Normalmente, costuma ser o Product Owner o responsável por selecionar e refinar as histórias de usuário para o desenvolvimento do produto ou serviço.

Porém, na gestão ágil, qualquer um pode escrever e refinar uma história de usuário para o time ágil.

 

De fato, o melhor é que a construção e refinamento destas histórias tenham a participação de todo o time.

 

Assim, evitamos que a user story seja passada adiante como um ticket qualquer.

Gerando mais confusão e interrupções para o desenvolvimento do produto ou serviço.

 

Pense que as histórias de usuário devem ser criadas com aqueles que irão desenvolver o produto ou serviço. E não para eles.

 

Bônus

 

Dica Bônus para Histórias de Usuário #01:

Cuidado com as disfunções de uma história de usuário

 

Nem toda a atividade ou tarefa é representada por uma história de usuário.

Lembre-se que uma user story é focada no usuário/cliente daquele produto o serviço.

 

Por isso, não faz muito sentido escrever histórias como:

 

Como um Developer

Como um Arquiteto….

 

Se é uma tarefa, ela é apenas isso, uma tarefa.

Que por sinal, também pode ser vinculada às histórias de usuários e até aos épicos.

 

Dica Bônus para Histórias de Usuário #02:

As histórias devem ser visíveis e transparentes.

 

Aqui, o quadro Kanban é uma das ótimas, e das mais simples, ferramentas visuais para identificarmos em que fase ou etapa cada história de usuário está.

 

Além de nos permitir encontrar possíveis gargalos de onde e porque certas user stories estariam limitando a produtividade do time.

 

dicas-para-histórias-de-usuário-kanban-board

 

Se você nunca usou um quadro como este antes, fique tranquilo/a.

Não há necessidade nem mesmo de um software para isso 😉

 

Basta um quadro, com colunas para cada etapa ou fase, onde você pode colar post-its (com suas histórias) nele.

 

E desta forma observar o fluxo de desenvolvimento de uma Sprint.

E quem sabe, até se antecipar a problemas operacionais e impedimentos da Sprint.

 

Dica Bônus para Histórias de Usuário #03:

Histórias não a única forma de melhorar a comunicação.

 

Se necessário for, adicione qualquer nova informação que julgar pertinente à história de usuário.

Fluxogramas, desenhos, planilhas, relatórios… não importa.

 

Se for para ajudar a melhorar a compreensão, eles podem ser anexados junto à user story.

 

Tem hora que menos é mais..

mas também tem hora que mais é necessário.

 

A comunicação não é uma ciência exata, podendo a informação ser processada de maneiras diferentes.

O que pode gerar falsas interpretações e muitas discussões.

 

E claro, que podem acabar não resolvendo o problema do usuário final.

 

E assim gerando maior insatisfação de clientes, internos e/ou externos.

 

Bom, ou você aprende a comunicar suas funcionalidades e requisitos de forma correta…

…. ou infelizmente, você corre o grande risco de continuar atrasando seus projetos e produtos

…., ou o que é pior… perder seus clientes e suas oportunidades na carreira.

 

Por isso preparamos uma Masterclass para te apresentar novas técnicas e métodos para refinar requisitos e tarefas.

Para te ajudar a antecipar entregas e resultados, mesmo em grandes projetos/produtos.

 

Na Masterclass Fatiando e Quebrando Itens de Trabalho™, você vai descobrir e dominar técnicas que executam 2 etapas…

para engajar e produzir novas entregas com resultados adiantados para seus produtos e serviços.

 

Confira os detalhes para participar desta Masterclass exclusiva clicando aqui 😊

 

 

 

Um grande abraço e te vejo em breve.

 

 

Leave a comment

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.