Quer deixar suas histórias de usuários ainda mais significativas? Então leia esse artigo e aprenda a aplicar os detalhes do conceito Invest!


Sem dúvida, nos últimos anos, a maior parte dos projetos de desenvolvimento de software foram realizados utilizando algum framework de agilidade (Scrum / Kanban).

A princípio , baseado na frase “software em funcionamento mais que documentação abrangente”, criou-se um mito de que no desenvolvimento ágil não seria necessário nenhum tipo de documentação.

No entanto, algum tempo depois, as experiências demonstraram que deixar todo conhecimento das solicitações e necessidades do produto em desenvolvimento apenas na mente do time traria alguns problemas de entendimento e falta de direcionamento.

Foi então que o Extreme Programming (XP) introduziu a prática de expressar requisitos de software na forma de histórias de usuário.

Para que possamos entender melhor como tornar as histórias de usuário mais significativas, primeiro temos que entender o que são histórias de usuário e seu ciclo.

O que são Histórias de Usuário?

Em síntese, é a transformação das necessidades do negócio em pequenos requisitos que sempre levam em consideração o ponto de vista de quem utilizará o produto de software que será gerado.

Ou seja, são pequenos textos ou frases que transmitem o resultado esperado para determinada ação.

Contudo, para garantir a efetividade das histórias devemos observar o ciclo da história de usuários, os 3 C’s.

1. Cartão

Em primeiro lugar verificaremos se a história reflete o valor real daquilo que queremos obter com o desenvolvimento.

Por isso, responderemos a quatro perguntas, sempre lembrando que o valor deve ser entregue ao usuário final.

– Quem, o que? ou Porquê?
– Como ( papel/persona)
– Posso, desejo ou quero (função)
– Para (valor de negócio/objetivo)

Exemplo:
Eu
Como um leitor de livros
Quero realizar a pesquisa de um livro através do título ou autor
Para que eu possa consultar o valor e a sinopse do livro antes de decidir pela compra.

2. Conversa

Seja como for, toda história de usuário valiosa deve ser o ponto de partida para boas conversas, levantamentos e descrição de necessidades, situação que chamamos de Critérios de Aceite.

Afinal, nada melhor para levantar todas as regras de negócios e os desejos da persona para gerar histórias mais valiosas do que boas e longas conversas.

Exemplo
– Os títulos devem estar em ordem alfabética;
– O nome do Autor deve ser exibido com nome, sobrenome e abreviação;
– O livro deve ter sua capa exibida;
– Na sinopse deve conter o resumo da capa do livro;
– Livros da promoção deverão exibir o valor original e com desconto.

3. Confirmação

Também chamada de “refinamento”, é nessa etapa que a história de usuário deve estar pronta para ser colocada na lista de priorização.

Nessa fase os critérios de aceite/regras de negócio, UI e UX, cenários de testes e toda a cobertura necessária para garantir a entrega de valor para o cliente devem estar prontos.

Além disso, devemos garantir que as histórias sejam valiosas, e faremos isso aplicando o conceito Invest.

Ao mesmo tempo, nessa etapa, o desenvolvedor também já deve ser capaz de descrever as tarefas técnicas (a melhor técnica para descrever Tasks é o conceito Smart, mas isso é uma outra história).

Aplicando o conceito Invest

Finalmente, para tornar as histórias ainda mais significativas, seja para o Product Owner escrever ou para o time aceitar a história, aplicaremos o conceito INVEST, um acrônimo criado por Bill Wake.

Com a finalidade de destacar a inicial das cinco características de uma história de usuário de qualidade, o conceito Invest nos auxilia na verificação do retorno de valor para o usuário final.

Independent (Independente):  
É possível entregá-la sem depender de outras histórias?

É mais fácil enxergar valor e desenvolvê-la quando são independentes, ou seja, quando podemos implementá-las em qualquer ordem sem gerar uma cascata (que pode virar gargalo) de implementação.

Negociable (Negociável):
Uma vez que a história de usuário é um desejo, um ponto de partida para uma conversa, boas histórias captam a essência de uma feature e as conversas ajudam a guiar nos detalhes.

Valuable (valiosa):  
O propósito básico de uma história de usuário é que ela agregue valor ao produto para o cliente.

Algumas situações exigem que as histórias sejam quebradas e quando isso acontece é imprescindível ter atenção para que o valor da feature não seja desconsiderado.

Lembre-se: uma história são pequenas frações de valor das features.

Estimable (estimável):
O time deve ser capaz de estimar os esforços e recursos necessários para realizar a entrega da história de usuário, não algo tão preciso, com exatidão, mas com os detalhes suficientes que permitam essa estimativa.

Small (pequena):
Deve ter o tamanho suficiente para caber em uma sprint.

Normalmente a capacidade é um acordo evolutivo dentro de um time, mas uma história de usuário valiosa deve ser passível de ser desenvolvida dentro desse aprazimento.

Exemplo

Eu como um leitor de livros
Quero realizar a pesquisa de um livro através do título ou autor
Para que eu possa consultar o valor e a sinopse do livro antes de decidir pela compra.

Critérios de Aceite:

  • Os títulos devem ser exibidos em ordem alfabética;
  • Quando a busca for realizada pelo nome do Autor, o resultado deve ser exibido com nome, sobrenome, abreviação e bibliografia do autor
  • Deve exibir a imagem da capa do livro;
  • Na sinopse deve conter o resumo da capa do livro;
  • Se o livro estiver em promoção, deve exibir o valor original e o valor da promoção.
Cenário 1 – Buscar livro pelo título

Dado que estou na tela de busca do aplicativo
E que o livro está cadastrado
Quando eu informar um título de um livro válido
E selecionar a opção “pesquisar”
Então devo visualizar sugestões de livros com o título informado em ordem alfabética
E valor do livro
E capa do Livro
E a sinopse do livro

Cenário 2 – Buscar livro título inexistente

Dado que estou na tela de busca do aplicativo
E que o livro não está cadastrado
Quando eu informar um título de livro inválido
E selecionar a opção “pesquisar”
Então devo visualizar a mensagem “não foi encontrado nenhum livro com esse título”
E deve permitir realizar nova busca

Cenário 3 – Buscar livro pelo autor

Dado que estou na tela de busca do aplicativo
E que o livro está cadastrado
E contem o nome do autor
Quando eu informar o nome de um autor
E selecionar a opção “pesquisar”
Então devo visualizar sugestões de livros do autor informado
E nome do autor
E sobrenome do autor
E sigla do autor
E bibliografia do autor
E nome do livro
E valor do livro
E capa do Livro
E a sinopse do livro

4 – Buscar livro pelo autor inexistente

Dado que estou na tela de busca do aplicativo
E que o autor do livro não está cadastrado
Quando eu informar um autor de livro inválido
E selecionar a opção “pesquisar”
Então devo visualizar a mensagem “nenhum autor encontrado com esse nome”
E deve permitir realizar nova busca

5 – Visualizar preço com desconto

Dado que estou na tela de busca do aplicativo
E que o livro está cadastrado
E que possui valor com desconto
Quando eu realizar uma pesquisa do livro
E ele possuir um valor de desconto
Então devo visualizar o valor do livro original e o valor com desconto

Como resultado da aplicação do Invest, a história de usuário pode ser considerada pronta para ser priorizada.

É claro que sempre haverá possibilidade de mudança e evolução, mas é evidente que é essa é uma prática que gera muito valor.

Acima de tudo, devemos ter consciência de que ainda há muito mais a ser explorado nos contextos de metodologias ágeis e até no conceito Invest.