/ WSJF

Como aplicar a técnica WSJF para priorizar suas entregas

Há um limite do que se pode fazer dentro das 24h de um dia. Por isso, dentre a lista de coisas que precisa concluir, você deve pensar no que fazer primeiro. Inicie imaginando maneiras de priorizar suas atividades: o que é mais urgente, ou o que é mais necessário ou – por que não? – o que você mais gosta. Os critérios usados podem ser bem pessoais, o importante é o que você busca atingir com as suas atividades.

Na gestão de projetos ágeis também é assim. O cliente e o time têm várias ideias para um produto sensacional. E, por onde começar? Saber o que fazer primeiro pode ser crucial para o sucesso do produto.

Todo produto existe por um motivo e esse é o nosso foco inicial. Quais são os objetivos principais que ele deve atender? O que é essencial que ele possua para atingir esses objetivos? É comum pensarmos naquelas funcionalidades que deixarão o produto "uau", mas lembre-se que nessa fase o que você tem são hipóteses, ou seja, o cliente pode ter uma ideia (mais ou menos palpável) da sua necessidade e há grandes chances de que, na prática, a forma de atender essa necessidade seja modificada.

Na gestão ágil, a priorização acontece em todos os níveis da gestão do programa: priorizamos epics, features, stories e enablers. Existem algumas formas de priorizar e em todas consideramos a entrega de valor para o negócio ou produto.

O primeiro exercício de priorização no nível de produto é o MVP, sigla em inglês para Mínimo Produto Viável. Essa versão mínima usável do produto lhe dará um rápido feedback apontando se você está ou não no caminho certo. Um MVP pronto necessariamente deve ir para as mãos dos usuários, já que somente dessa forma será possível receber feedbacks reais – que pode não ser o mesmo do seu cliente (muitas vezes, quem compra não é quem usa). A partir daí seguimos o ciclo de aprender, replanejar, executar e entregar.

Afinal, como priorizar?

Como falei, existem algumas técnicas. A que vou apresentar chama-se Weighted Shortest Job First - WSJF (sem tradução oficial para o português). Se trata de uma técnica de priorização apresentada pelo framework escalável de gestão ágil SAFe.

Lembro que as técnicas são empíricas, ou seja, não precisamos nos preocupar com números absolutos, usamos principalmente a comparação entre os itens para atribuí-los e usamos a escala de Fibonacci modificada (a do planning poker: 1, 2, 3, 5, 8, 13 e 20) para preencher os itens da fórmula, que é composta por:

WSJF = (Business value + Time criticality + RR/OE) / Job size

Business value (Valor para o negócio): avalie o que os usuários preferem. Se for algo muito desejado, o valor de negócio é alto. Se trouxer impacto para a receita do negócio, também.

Time criticality (Tempo crítico): avalie se o valor do negócio diminui se demorarmos para entregá-lo. Temos uma data fixa para entregar (por exemplo, se tivermos que atender alguma lei nova dentro de algum prazo)? Esse item faz parte do caminho crítico do projeto?

Risk reduction-opportunity enablement value (Redução de risco/Habilitação de oportunidade): avalie se a entrega reduz algum risco atual ou futuro para o produto – não é uma questão de urgência. Essa entrega abre novas oportunidades de negócios?

Job size (Tamanho do trabalho): o tamanho do trabalho está ligado à sua duração. No início pode ser difícil porque podemos não saber exatamente quem irá realizá-lo. Use também a sequência de Fibonacci como indicado no início, comparando as entregas.

Comece avaliando cada entrega ou funcionalidade no mesmo critério, depois passe para os demais. Deve haver pelo menos um item com avaliação 1 em cada funcionalidade. Ao final você terá um valor único que será o seu WSJF. Pronto! Quanto maior o valor, mais prioritária a entrega é. Use a tabela abaixo para facilitar a execução e visualização:

WSJF-tabela
Tabela WSJF (Fonte: https://www.scaledagileframework.com/wsjf)

A colaboração de todos do time – em todos os níveis – é fundamental na priorização. Afinal, enquanto o product owner e o cliente definem o valor de cada entrega (business value), o time identifica o esforço (job size) de desenvolvê-la. Essa relação de esforço e valor geram a priorização do backlog do produto.

Algumas atividades não geram valor para o negócio, mas habilitam outras atividades. Ou seja, somente a partir dessas atividades podemos executar as que geram valor para o negócio ou podemos ainda descobrir novas oportunidades para o produto. A essas atividades damos o nome de enablers.

Imagine que, para desenvolver determinado desejo do cliente, o time precise explorar uma tecnologia que ainda não conhece. Podemos considerar esse “tempo de avaliação ou estudo", um enabler, que também entra na concorrência da priorização. Um enabler também pode estar relacionado a uma pesquisa de produto ou a uma arquitetura técnica da solução, um tópico interessante para abordarmos em outro artigo. O fato é que tudo exige esforço e tempo do time envolvido e por isso precisa ser priorizado.

Sabemos: a única certeza é a mudança. Portanto, abrace-a e siga priorizando.

E em seus projetos, será que de fato as atividades mais importantes estão sendo priorizadas?