Antes de qualquer coisa, para não correr o risco de fazermos confusão com o tema que iremos explorar, é de extrema importância compreender, de forma breve, o que é o desenvolvimento Ágil de Software.
O desenvolvimento Ágil é uma abordagem utilizada de forma colaborativa entre equipes multidisciplinares que atuam na área do desenvolvimento de Software. Essa abordagem vem sendo bastante utilizada dentro das empresas de programação, tendo por objetivo conduzir toda equipe de forma flexível e rápida. Em palavras claras, podemos dizer que Ágil é uma abordagem que promove uma boa “organização” entre as equipes de desenvolvimento de Software.
Dito isso, vamos ao que realmente interessa:
Compreender o que é um desenvolvimento Ágil de Software já é meio caminho andado, pois não faria sentido explicar a história de usuário sem antes abordar onde ela é utilizada. E é isso mesmo que você leu. A história de usuário é um dos principais componentes na abordagem Ágil, sendo considerado a menor unidade de trabalho dessa estrutura.
Mas afinal, o que é isso? Podemos dizer que uma História de Usuário é uma explicação informal, escrita a partir da visão do usuário/cliente sobre aquilo que se espera do produto do Software. São frases ditas em linguagem simples que serviram como um caminho para o resultado que se espera. Ou seja, é colocar a visão do cliente sobre o produto, além de determinar para toda a equipe o verdadeiro contexto e o motivo de estarem desenvolvendo o projeto.
Olhando dessa forma, o processo aparenta ser bem tranquilo, o que realmente é. Porém, mais do que isso, é necessário analisarmos que não basta somente entregar várias histórias de usuários para os desenvolvedores, eles não irão se beneficiar de nada. Pelo contrário, poderá gerar conflitos com diversas interpretações, impactando na entrega do produto final. É necessário entendermos que existe um padrão de escrita de História de Usuários, que da forma correta servirá como um norteador para toda equipe de desenvolvimento.
Existem alguns padrões de escrita, alguns modelos que são mais utilizados pelos profissionais (templates). Como por exemplo: papel-função-benefício (Como: tipo de usuário / Quero: uma ação / Para: um benefício e valor), os 3W (Who: quem / What (o quê) / Why (por que) e a técnica dos 3C (Card (cartão) / conversation (conversa) / confirmation (confirmação).
Mas como escrever e colocar isso em prática utilizando cada uma dessas técnicas?
A base para um bom desenvolvimento é seguir o modelo apresentado em cada técnica, como se fossem “começo, meio e fim”. Informações necessárias para a criação de uma boa história de usuário.
Como: apresentar o autor da ação. Ex: (Dono de restaurante)
Quero: a funcionalidade desejada / a ação necessária. Ex: (Visualizar os alimentos em estoque)
Para: o benefício que se espera dessa funcionalidade, o valor. Ex: (Ter o controle dos alimentos para não correr o risco de faltar)
Essa técnica possui praticamente todas as informações que a técnica de Papel- Função- Benefício, sendo necessário somente explicitar detalhadamente cada tópico.
Who (Quem?): referenciar qual público deve ser atingido. Qual a persona da história.
What (O quê?): qual a funcionalidade esperada no projeto. O que é desejado?
Why (Por quê?): qual a motivação? Qual o valor esperado pelo usuário/cliente?
Se observarmos, veremos que essa técnica é utilizada como um complemento da técnica 3W. A mesma apresenta alguns pontos que devem ser levados em consideração na hora de desenvolver os questionamentos.
Cartão: A história de usuário não deve ser longa, deve ser possível escrever em um único cartão;
Conversa: o conteúdo criado deve levantar discussões de alinhamento entre a equipe sobre aquilo que se deseja atender;
Confirmação: necessita possuir alguns critérios de aceitação para uma validação com êxito na construção e entrega do produto de Software.
Esses critérios servem como um check list, funcionando como uma forma de detalhar melhor o que realmente se deve possuir na história. Definindo as condições, restrições e regras que precisam ser atendidas antes de serem entregues à equipe.
Dessa forma, entendemos que não é somente criar qualquer história de usuário. Existem padrões a serem seguidos, e não somente isso, mas que após todo desenvolvimento, é necessário que os mesmos possuam alguns critérios de aceitação, uma espécie de refinamento e reforçador daquilo que realmente não pode faltar.
As histórias de usuários possuem vários benefícios, o principal deles é de ser um norteador para os desenvolvedores, mantendo o foco da equipe nas tarefas que precisam ser realizadas, além de promover a criticidade de todos, em busca de soluções e ideias criativas. Sem contar no incrível trabalho em equipe.
Sendo assim, podemos concluir dizendo que se todas as nossas atividades possuíssem histórias de usuários, com certeza conseguiríamos atingir os reais objetivos com as motivações corretas.
Análise os valores e motivações do seu cliente para com o projeto.
Parecem somente detalhes, mas são os
detalhes que fazem toda a diferença!
Cadastre-se e mantenha-se atualizado (a) sobre o que está acontece no mundo digital
Obrigado por se inscrever. Em breve novidades na sua caixa de e-mail!