Tudo que você precisa saber sobre Agile Release Planning

📑 Tópicos

Num cenário perfeito, tudo sempre acontece de acordo com o planejado. 

Times de desenvolvimento e project managers sabem como é importante ter noção do dimensionamento de histórias do usuário (são os story points) e o número de sprints necessários para ver o lançamento do produto de acordo com o gerenciamento ágil das releases.

Mas mesmo para Scrum Masters e outros(as) profissionais experientes, acaba sendo difícil conseguir premeditar o que pode acontecer – a longo prazo – em um projeto de desenvolvimento de software. 

Afinal, tudo pode levar a retrabalhos, noites mal dormidas e estresse quando se precisa lidar com prazos inflexíveis. 

Neste artigo, desdobramos de A-Z o planejamento de releases (release planning) e mostramos como implementar esse ritual na sua empresa – das reuniões até a criação do seu próprio modelo de planejamento.

O que é o Agile Release Planning?

O Agile Release Planning, ou planejamento ágil da release, é um método de gerenciamento de produto onde você consegue planejar lançamentos de forma incremental. É diferente de um planejamento tradicional de software, onde se foca em entregas maiores. 

No planejamento ágil, preparamos os releases em etapas e depois quebramos isso em diferentes sprints e iterações. E dependendo da estrutura da equipe e tamanho do projeto, podemos ter até vários sprints rodando ao mesmo tempo.

Pense que um sprint termina com um novo incremento no produto, mas isso não quer dizer necessariamente que haverá uma release. É como escrever um livro – cada sprint, ao final, corresponde a um novo rascunho. Mas, só porque você tem um rascunho finalizado para o seu cliente (editor, publicador, etc.) revisar, não significa que você o libere para o público.

Talvez, você acabe criando ali uma versão 1.1, 1.12, 1.14, 1.2 e por aí vai, cada uma incorporando novos recursos (features) e melhorias da versão anterior. Mas você só vai fazer a release das “grandes versões” (1.1 e 1.2, etc). 

Utilizar um plano de release ajuda a planejar quais incrementos de produto (versões) serão lançados no mercado e quando. E isso é uma parte integrante do Agile SDLC (Ciclo de vida de desenvolvimento de software) porque também pode dar tranquilidade aos seus superiores de que existe uma estrutura e um plano além do próximo sprint e ajuda equipes ágeis a permanecerem no caminho certo.

Qual é o propósito do Agile Release Planning?

Dentro da metodologia ágil, o objetivo do planejamento da release é garantir que o produto esteja sempre se movendo na direção certa e que essas releases ocorram com frequência.

Esse plano descreve lançamentos para futuros imediatos – não considera os próximos anos – e também é exclusivo de um roadmap de produto (escopo e cronograma de alto nível) porque entra em mais detalhes. 

Quem não tem familiaridade com o processo ágil acaba se preocupando se cada versão de um produto não vai acabar se tornando uma coleção aleatória de features, e é justamente o release planning que vai garantir a criação de uma versão coerente do produto. 

É uma ótima ferramenta para combinar mudanças que terão um impacto significativo na experiência do usuário em um período de tempo mais curto. Na verdade, implementar o modelo ágil pode ajudar a reduzir o tempo de lançamento de um novo produto no mercado em até 70%.

Quando o Release Planning acontece no Scrum?

Esse planejamento acontece após a definição da 🔗 visão de produto e do roadmap do produto. 

Já que o foco do scrum é na realização de sprints mais curtos, alguns times nem mesmo realizam o planejamento de releases. Ao invés disso, fazem apenas os lançamentos dos incrementos mesmo. Isso mantém o foco na velocidade e adaptação às necessidades do stakeholder no momento. 

Quem é responsável pelo Release Planning no Scrum?

No scrum, o processo de planejar releases não é exclusivo a project managers ou c-levels. A pessoa product owner e o time também devem participar. Inclusive, a depender da estrutura da empresa, o próprio time pode ser o responsável por planejar essas releases. 

No geral, o time ágil é quem está mais conectado ao status atual software e às partes interessadas, por isso, tende a liderar a tomada de decisões. O ciclo de lançamento deve sempre ser conduzido por aqueles mais próximos do projeto. Caso contrário, você corre o risco de criar um obstáculo ao invés de um roadmap. 

Como implementar o Release Planning?

Importante ressaltar que as instruções abaixo assumem que você já tem familiaridade com os princípios ágeis, e que já implementou um ritmo de trabalho ágil na sua empresa. Se este for o caso, implementar o release planning é bem simples:

1. Avalie a visão e o roadmap de produto e destaque os resultados esperados

A visão de produto e o roadmap devem guiar todo o processo. Foque nos resultados que são mais importantes a curto e médio prazo e de acordo com as demandas dos stakeholders e clientes.

2. Expanda e priorize o backlog do produto com base nesses resultados

Se você usa o scrum, se reúna com o time para fazer um refinamento do backlog do produto. Quebre os resultados esperados em histórias do usuário e as adicione no backlog. 

Priorize esse backlog de acordo com os resultados desejados, começando com o MVP (mínimo produto viável). Para frameworks ágeis que não usam um backlog de produto, como o Feature-Driven Development, revise o item equivalente. Nesse caso do FDD, é a lista de features.

3. Defina uma meta de release clara que combine itens lógicos do backlog do produto

Crie uma meta de release combinando diferentes histórias de usuário que resultem em uma mudança significativa na experiência do usuário final. Por exemplo, a capacidade de um usuário acessar diferentes relatórios analíticos em um aplicativo mobile. Se você estiver criando vários relatórios, faz sentido lançá-los juntos, em vez de separados.

4. Quebre as releases em diferentes sprints ou iterações

Depois de definir sua meta de release e mapear as histórias de usuário, é hora de começar a planejar seus sprints reais.

Ah, não esqueça os principais valores do scrum:

  • Mantenha os sprints curtos e comprometa-se com um número possível de histórias de usuários;
  • Concentre-se em um sprint de cada vez;
  • Tenha a coragem de interferir no plano de release quando for absolutamente necessário;
  • Respeite a perspectiva de todos ao escolher itens e estimar o escopo.

O mais importante para lembrar nesta etapa é não superestimar ou tentar lidar com uma grande release de uma só vez, equilibrando a necessidade de lançamentos oportunos – um princípio do desenvolvimento ágil. 

Aprimorar essa habilidade é uma arte que melhora com a prática, portanto, não tenha medo de ajustar o planejamento da release e da sprint à medida que avança. É disso que se trata ser ágil.

Este post é uma tradução livre do artigo 🔗“Everything you need to know about Agile release planning” publicado no blog da monday.com.

Que tal compartilhar este post?

Acesso rápido
Posts relacionados
plugins premium WordPress