A história de uma história

Dia desses escrevi aqui sobre as técnicas que mais usei para levantamento de requisitos. Naquela oportunidade citei que seria interessante um post mais específico para falar sobre o meu método preferido, as user stories, ou histórias de usuário.

A minha predileção por esse método se dá pela sua simplicidade. Estamos falando de papéis coloridos pregados em uma parede e em linguagem natural, aquela que falamos no nosso dia-à-dia. Muito embora o modelo seja simples, alguns cuidados devem ser tomados para seu bom uso e garantir a sua efetividade.

Segundo o meu amigo Heitor Roriz, histórias de usuários…

“…provêem uma apresentação fácil de compreender e de forma concisa sobre uma determinada informação. São geralmente numa linguagem informal e contém o mínimo de detalhes, deixando os demais dados aberto à interpretação. Elas devem ajudar a entender o que o software deve englobar.”

Isso significa que as US (user stories/histórias de usuário) funcionam como um “nivelador de linguagem”, trazendo para o mesmo nível de entendimento o cliente, o cara de negócios, que pode não entender nada de programação e o desenvolvedor, o cara que vai resolver aquele problema usando o conhecimento técnico. É muito interessante pois a US é um convite ao debate, à conversa. Ela é pequena e concisa de propósito, para que você tenha que discutir os detalhes com quem fez a solicitação e durante essa conversa novos tópicos possam surgir.

Um outro ponto importante é que elas devem ser acompanhadas por critérios de aceitação para ajudar a elucidar os comportamentos aonde as histórias pareçam ambíguas. Os critérios de aceitação seriam algo como os testes que indicam a quem for desenvolver quando a sua tarefa foi completada. Os critérios podem ser pequenos e simples, algo como uma regra de validação, ou mesmo mais complexos, dando origens a novas histórias.

Um modelo nos foi sugerido por Mike Cohn, dizendo que opcionalmente eu poderia ter a terceira cláusula (o porquê). Eu respeitosamente discordo, mas vamos falar disso mais adiante. O modelo proposto é o seguinte:

Como um [papel],
eu quero/desejo [objetivo/desejo]
então [benefício/razão]

Entendendo bem as partes, comecemos com o papel. Se você estudou um pouco de UML deve estar fazendo a relação na sua cabeça com o ator de um use case e está correto. Aqui estamos falando da pessoa que se beneficiará se essa história for desenvolvida. Isso é legal, pois como desenvolvedor você saberá com quem tirar suas dúvidas durante o desenvolvimento do produto. Nem sempre você terá funcionalidades que serão utilizadas somente por um único papel, ou mesmo por um papel tão simples que possa ser descrito de maneira sucinta. Nesses casos, o que é recomendado é o uso de personas, que nada mais é do que criar personagens com as características que um determinado perfil de usuário possui. Uma boa persona descreve algumas características básicas como:

  • Um nome, idade e um estilo de trabalho e vida definido
  • Um bordão para distingui-lo de outras personas
  • Atributos chave que afetam uso e expectativas do produto, serviço ou website
  • Tarefas frequentemente realizadas
  • Ferramentas e recursos utilizados
  • Pontos de atenção relevantes ao projeto

Usualmente não se criam mais do que 8 personas por projeto, dada a sua complexidade. É possível fazer algumas atualizações durante o projeto, mas isso é bem incomum. Enfim, não comece o seu projeto criando um punhado de personas, deixe que isso emerja da necessidade. Conforme você for escrevendo suas histórias, vai surgir em algum momento algum papel que precise de um pouco mais de atenção e talvez seja o momento de reunir o seu time e escrever seus personas. Ou sua equipe pode realmente se sentir mais confortável em saber quem vai usar o sistema desde o primeiro momento.

Por hoje é só, no próximo post, falarei algumas dicas de escrita para iniciar o seu backlog.

Posted on: 20 de fevereiro de 2015, by : juliano

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *