Ferramenta 5W2H para levantameto de requisitos e elaboração de User Stories

Confira artigo publicado anteriormente no DevMedia:

Ter os requisitos funcionais bem definidos e entendidos pelo time faz toda a diferença no desenvolvimento de um produto de software. Entretanto, isso nem sempre é algo fácil de ser feito. Aqui será demonstrada uma técnica para o entendimento de requisitos e assim permitir a elaboração de user stories utilizando a ferramenta 5w2h.

INTRODUÇÃO

Em um meio ágil e competitivo, como é o ambiente corporativo, um maior entendimento do que precisa ser feito contribui muito nas atividades que serão desenvolvidas por colaboradores de setores ou áreas diferentes. Quando se desenvolve um produto, a sua concepção deve conter o mínimo de erros, pois isto gera custos, tanto para o cliente quanto para a empresa.

No desenvolvimento de software com boas práticas ágeis o foco é na entrega de valor ao cliente. Sendo assim, necessita-se que as definições de requisitos sejam realizadas de forma eficaz, para que as necessidades do cliente sejam atendidas. Uma prática bastante difundida é o uso de User Stories para escrever os requisitos, pois é uma forma resumida para descrever as funcionalidades que trarão valor ao produto. Para auxiliar no entendimento dos requisitos e na criação das suas respectivas user stories, pode ser utilizada a técnica 5W2H.

E DE ONDE VEM?

A user story deriva da metodologia ágil e foca mais na comunicação verbal do que na documentação. Esta técnica traz uma comunicação clara entre o time de desenvolvimento e o Product Owner (cliente).

É composta por 3 aspectos: descrição usada para planejamento, discussão para concretizar detalhes e critérios de aceitação, que indicam quando a história está pronta. As histórias são independentes, negociáveis, necessitam de valor, estimáveis e pequenas.

Exemplo:

Como hóspede, quero cancelar minha reserva.

  • Constate que um membro Premium poderá cancelar a reserva no mesmo dia sem ter que pagar uma multa.
  • Verificar que um membro deverá pagar uma multa de 10% ao cancelar a reserva no mesmo dia.
  • Comprovar se um e-mail é enviado ao final da transação.

FERRAMENTA 5W2H

O 5w2h é considerado uma ferramenta de planejamento, que é muito utilizada em Administração de Empresas. É um checklist contendo determinadas atividades que os colaboradores da organização precisam desenvolver com o máximo de clareza. Tem um destaque relevante na solução dos problemas, pois elimina por completo qualquer dúvida que possa surgir sobre um processo ou atividade.

O nome desta ferramenta foi definido por juntar as primeiras letras dos nomes (em inglês) das diretrizes utilizadas neste processo. Abaixo você pode ver cada uma delas e o que elas representam:

  • What – O que será feito (etapas)?
  • Why – Por que será feito (justificativa)?
  • Where – Onde será feito (local)?
  • When – Quando será feito (tempo)?
  • Who – Por quem será feito (responsabilidade)?
  • How – Como será feito (método)?
  • How much – Quanto custará fazer (custo)?

ADAPTAÇÃO DO 5W2H PARA O CONTEXTO DE DESENVOLVIMENTO ÁGIL

O atual processo de desenvolvimento da NeoGrid está baseado em boas práticas de métodos ágeis utilizando user stories como forma para descrever os requisitos funcionais. Entretanto, quando começamos a utilizar as user stories, em algumas vezes nos deparávamos com a falta de aprofundamento na descrição. Mesmo tendo um padrão de escrita, nem sempre os dados descritos auxiliavam a concepção correta do requisito. Então, foi preciso inovar!

Adaptamos o 5W2H para o nosso contexto para compor as user stories, onde foi possível conceber os requisitos de forma eficaz e criar critérios de aceitação, que permitem identificar os cenários dos testes a serem realizados. A utilização não é complexa. Na concepção do requisito, basta aplicar as perguntas e coletar as informações. De posse dos dados já é possível compor a user story.

EXEMPLO PRÁTICO

Contexto do Projeto

# O Cliente:

  • é uma rede de produtos manipulados.
  • a partir da centralização dos pedidos de manipulação e da identificação dos produtos mais comumente solicitados, iniciou-se a produção e distribuição de medicamentos próprios com 20 produtos.
  • possui 4 centrais de manipulação em diferentes estados, conta com uma equipe de 40 farmacêuticos e 220 técnicos de manipulação.
  • produz 140 medicamentos distintos.
  • venda de 22 milhões de unidades/ano.
  • a área administrativa dividida em Financeira (Contas a Pagar e Contas a Receber), Recursos Humanos e Administração de Materiais (Controle de Estoque).
  • as fórmulas dos produtos foram desenvolvidas pela própria empresa, detendo os direitos autorais e de produção.
  • os processos de compra e venda se dá através de dois departamentos: Compras e Vendas.
  • tem como objetivo estratégico tornar-se o maior laboratório de criação de fórmulas e manipulação da América Latina até 2015.

# Descrição do Problema:

Um dos problemas da rede está no controle de produção…

  • As centrais de manipulação possuem o controle dos estoques realizado de modo manual, o que gera um alto grau de desperdício de matéria-prima.
  • As centrais de manipulação utilizam matéria-prima crítica e controlada que, ocasionalmente, deixa de constar no estoque sem que o fim seja identificado.

# Objetivos de Negócio:

  • Controlar o uso da matéria-prima ao longo do processo de manipulação.

# Objetivo Específico do Sistema:

  • O sistema deverá controlar a matéria-prima utilizada, identificando precisamente a necessidade de matéria-prima e controlando seu uso.

A TÉCNICA 5W2H ADAPTADA…

  1. Qual é o objetivo do requisito?
  2. Por que o requisito deve ser implementado?
  3. Onde poderá ser visualizado o requisito?
  4. Quais são os pré-requisitos para este requisito?
  5. Qual é o perfil de acesso para este requisito?
  6. Quais são os critérios de aceitação para este requisito?
  7. Quais serão as mensagens de validação para este requisito?

APLICANDO A TÉCNICA NO CONTEXTO DO PROJETO

1. Qual é o objetivo do requisito?
R: Implementar um ambiente de controle de produção de medicamentos manipulados.

2. Por que o requisito deve ser implementado?
R: Para permitir a identificação precisa da necessidade de matéria-prima e controlar o seu uso eliminando o alto grau de desperdício.

3. Onde poderá ser visualizado o requisito?
R: Em um item de menu específico, conforme layout de tela Homes.

4. Quais são os pré-requisitos para este requisito?
4.1. Ter sido identificado o fluxo de produção.
4.2. Ter acesso às fórmulas dos medicamentos.

5. Qual é o perfil de acesso para este requisito?
R: Responsável pelo controle da produção, por exemplo: técnico em manipulação.

6. Quais são os critérios de aceitação para este requisito?
6.1. O estoque de segurança para matérias-primas críticas deverá ser de 5 dias de produção e para matérias prima simples deverá ser de 3 dias de produção.
6.2. O sistema deverá sinalizar a necessidade de compra de matéria-prima quando tiver estoque para produção para, pelo menos, 7 dias úteis, sem considerar o prazo do estoque de segurança.
6.3. O sistema não deverá disparar um aviso de compra de matéria-prima crítica se não houver produção de medicamentos que utilizem este tipo de insumo nos últimos 30 dias.

7. Quais serão as mensagens de validação para este requisito?
Para o critério de aceitação: O sistema deverá sinalizar a necessidade de compra de matéria-prima quando tiver estoque para produção para, pelo menos, 7 dias úteis, sem considerar o prazo do estoque de segurança.

A mensagem de validação deverá ser:
“Há estoque de matéria-prima X para produção de medicamento durante 7 dias úteis. Deseja efetuar novo pedido de compra? Sim/Não”

CRIANDO UMA USER STORY…

“Como técnico de manipulação, necessito que seja implementado um ambiente de controle de produção de medicamentos manipulados, pois assim poderei identificar de forma precisa a necessidade de matéria-prima e controlar o seu uso.”

Para aceitar:

  1. O estoque de segurança para matérias-primas críticas deverá ser de 5 dias de produção e para matérias prima simples deverá ser de 3 dias de produção.
  2. O sistema deverá sinalizar a necessidade de compra de matéria-prima quando tiver estoque para produção para, pelo menos, 7 dias úteis, sem considerar o prazo do estoque de segurança.
  3. Conforme item anterior, quando houver a necessidade de compra, o sistema deverá exibir a seguinte mensagem:
    “Há estoque de matéria-prima X para produção de medicamento durante 7 dias úteis. Deseja efetuar novo pedido de compra? Sim/Não”
  4. O sistema não deverá disparar um aviso de compra de matéria-prima crítica se não houver produção de medicamentos que utilizem este tipo de insumo nos últimos 30 dias.
  5. O usuário terá acesso ao menu Produção > Controle da Produção.

Para considerar:

  • O acesso às fórmulas deverá estar de acordo com as regras estabelecidas pela empresa.
  • São matérias-primas críticas os insumos utilizados para a fabricação de medicamentos manipulados de uso controlado (tarja preta).
  • Este módulo deverá ser pré-requisito para o módulo ‘Compras’.

CONCLUSÃO

Ao adotar a ferramenta para compor as user stories, obtivemos resultados significativos no entendimento dos requisitos funcionais. Ganhamos mais habilidade crítica, pois conseguimos captar mais no detalhe o que o Product Owner queria nos dizer. Também conseguimos melhorar a cobertura de testes, uma vez que foi possível ter uma maior abrangência dos critérios de aceitação a partir das perguntas e assim poder sinalizar quando está efetivamente “pronta”. Nossas user stories estão com tamanho mais adequado, onde já se consegue identificar um “épico” e assim fracionar em requisitos menores. Para os requisitos não funcionais também é utilizado do mesmo procedimento, o que possibilitou uma melhoria na qualidade da escrita e, consequentemente, na implementação destes requisitos. Como estamos em um ambiente de melhoria contínua, identificamos a necessidade de ampliar a utilização da ferramenta para demais as áreas da empresa que trabalham com a ferramenta de SGR.

Autoras:

Dieine da Silva
Pós-graduada em Melhoria do Processo de Software pela Universidade Federal de Lavras e bacharel em Ciência da Computação pela UEPG. Com 8 anos de experiência na área de Teste de Software e Qualidade de Software. Atualmente, é Analista de Testes, Qualidade e Processos da equipe de Arquitetura e Frameworks na NeoGrid.

Patrícia Araújo Gonçalves
Pós-graduada em Teste e Garantia da Qualidade de Software pela Universidade Feevale e bacharel em Administração de Empresa com ênfase em Análise de Sistemas pela PUCRS. Tem 8 anos de experiência na área de Teste de Software. Atualmente, é Analista de Teste da equipe Projetos Especiais na NeoGrid.

Esses artigos podem completar essa leitura

Ver todos conteúdos
Como a inteligência artificial tem revolucionado a cadeia de consumo?
Como a inteligência artificial tem revolucionado a cadeia de consumo?

Entenda o que podemos esperar do futuro da IA e como as aplicações dela nas empresas pode revolucionar a cadeia... Saiba mais

5 dicas para aproveitar o conceito ESG na cadeia de suprimentos
5 dicas para aproveitar o conceito ESG na cadeia de suprimentos

Conheça detalhes desse conceito que ganha cada vez mais espaço dentro das organizações. Saiba mais

Como evitar perdas financeiras na cadeia de suprimentos? 
Como evitar perdas financeiras na cadeia de suprimentos? 

Ninguém gosta de perder dinheiro. Quando se fala em algo gigante e que funciona 24/7, como a supply chain, qualquer... Saiba mais

Nível de serviço logístico: o que é e por que o varejo deve acompanhar 
Nível de serviço logístico: o que é e por que o varejo deve acompanhar 

Dentre as várias métricas e indicadores que garantem o bom funcionamento da cadeia de suprimentos, o nível de serviço logístico... Saiba mais

Market share: o que é, qual o cálculo e como aumentar o seu
Market share: o que é, qual o cálculo e como aumentar o seu

Neste post, vamos mostrar o que é market share, qual a sua importância e como calculá-lo, além de dar dicas... Saiba mais