Incremento do Produto e a Definição de Pronto

Sem a Definição de Pronto um Incremento do Produto não pode ser construído, ambos garantem o sucesso na aplicação do framework scrum em uma organização.

3

Incremento do Produto e a Definição de Pronto

“Incremento do Produto” e a “Definição de Pronto”: O que você sabe sobre eles?

Neste artigo vou falar sobre esse tema que é fundamental na metodologia scrum.

Como de praxe, começo os artigos aqui do blog citando trechos do Guia do Scrum para me embasar durante a escrita, então vamos lá:

Quando um item do Backlog do Produto ou um incremento é descrito como “Pronto”, todos devem entender o que o “Pronto” significa. Embora, isso possa variar por Time Scrum, os integrantes devem ter um entendimento compartilhado do que significa o trabalho estar completo, assegurando a transparência. Esta é a “Definição de Pronto” para o Time Scrum e é usado para assegurar quando o trabalho esta completado no incremento do produto..” 

Lembre-se que como dito em meu primeiro artigo Qual o Proposito Desse Blog, todos os textos aqui são para efeito de aprendizagem a fim de conquistar minhas certificações Scrum. Os conteúdos aqui não devem ser considerados práticos, mas sim teóricos, mesmo que os artigos levem em consideração conselhos ou entrevistas com especialistas. No entanto, se você quiser aplicar isso na prática você pode desde que não diga que eu o incentivei a fazê-lo.

O Incremento do Produto

Antes de começarmos de fato falar sobre o incremento, precisamos saber o que ele é..

O Guia do Scrum nos diz que o incremento é a soma de todos os itens completados do Backlog do Produto, ou seja, tudo o que o Time de Desenvolvimento entrega no final de cada Sprint.

Acontece da seguinte maneira, no final de um Sprint, o Time de Desenvolvimento deverá ter cumprido a meta de trabalho planejado durante o Planejamento da Sprint, ex: criar um formulário de cadastro de clientes… esse formulário é chamado de incremento.

Para que esse formulário seja considerado um incremento ele deve estar “pronto”, isso significa que ele está em uma condição utilizável e atende à “Definição de Pronto” do Time Scrum.

Você pode estar se perguntando: “Ok, mas e essa “Definição de Pronto” aí que você citou?”

Definição de Pronto

Vamos lá, se um produto para ser considerado um incremento e estar pronto para uso deve atender a “Definição de Pronto” então vamos entender o que pronto significa.

Você pode estar rindo nesse momento e dizendo, ora essa, pronto é pronto, não tem segredo… E é aí que você se engana, “Pronto” pode ser muita coisa e pode variar de time para time, de empresa para empresa, lembra da nossa referência ao texto do Guia do Scrum no quarto parágrafo desse texto? Se não, volte lá e releia.

Vamos a um exemplo, imagine que você é contratado para fazer uma prospecção de empresas para uma empresa de RH. A empresa que te contratou considera uma definição de “Pronto” simples, pronto para ela são os contratos com as empresas que você prospectou e ponto final… Já para você, a “Definição de Pronto” é mais complexa, inclusive tem várias fases, por exemplo:

  1. Fase de Pesquisa:
    1. Pesquisar as empresas certas para a empresa de RH (Teria que perguntar quais ele prefere?…, se vira.. hehe.);
    2. Estudar as empresas;
    3. Contactar as empresas;
    4. Montar apresentação de Slides;
  2. Fase de Apresentação:
  3. Fase: ……
No exemplo acima, cada passo é necessário e não pode ser menosprezado, também não pode ser pulado, você não pode por exemplo, contactar a empresa antes de pesquisar quais as melhores empresa, entendeu?
 
Percebeu a diferença entre como a “Definição de Pronto” é diferente para cada ponto de vista? Isso se aplica a maioria dos casos, geralmente o que é pronto para um lado não significa muito para o outro.

Requisitos mínimos

Vamos imaginar que você esteja construindo um aplicativo, então o mínimo que se espera em uma “Definição de Pronto” é o seguinte:

  • Codificação;
  • Código Revisado (Code Review);
  • Testes Unitários passando (Unit Tests);
  • Testes Funcionais passando (manuais ou automatizados);
  • Versionado (Git, por exemplo);
  • Homologado (geralmente pelo Product Owner).
Este é apenas um exemplo, a recomendação é que seu time faça um lista de requisitos que funcione para ele, é isso mesmo, eu disse “seu time” por que uma “Definição de Pronto” deve ser definida por todos, isso por que se não houver consenso entre os membros do que deve ser feito, provavelmente a lista de requisitos será sabotada.

Que legal, e de onde surgiu isso?

Bom, essa não é uma pergunta simples, estive pesquisando para encontrar uma resposta sobre o por que Ken Schwaber e Jeff Sutherland decidiram colocar isso no Guia do Scrum.

Felizmente encontrei uma discussão nos fóruns da scrum.org que me ajudou a me aproximar mais da resposta, e nesse ponto temos duas respostas interessantes, a primeira do Membro Ian Mitchell que é um guru do Scrum, ele disse que a “Definição de Pronto” começou a ser observada por MacCormack [97] quando ele reuniu dados extensos sobre 29 projetos de software da Hewlett Packard para avaliar práticas de desenvolvimento.

O documento completo pode ser acessado abaixo:

“The Scrum Papers”, Sutherland and Schwaber:
https://www.scruminc.com/scrumpapers.pdf

Considerações finais sobre o Incremento do Produto e a Definição de Pronto

Chegamos ao final de mais um artigo sobre o Scrum, eu estava relutante em que parte do framework escrever, mas acredito que fui feliz ao escolher falar sobre o incremento e a definição de pronto. Isso me permitiu aprender muito sobre isso devido as extensivas pesquisas que fiz para conseguir falar com mais propriedade.

Eu sugiro que você continue estudando sobre o “Incremento” e a “Definição de Pronto”, eu vou deixar abaixo alguns links que usei como referência para os meus estudos.

Espero que faça bom proveito!

Com isso concluímos nosso artigo, tomara que tenha gostado e fique a vontade para comentar, dúvidas ou sugestões são bem vindas!

Leia outros artigos do blog:

Backlog da Sprint

Referências do artigo:

Scrum Guide oficial, Definição de Pronto – Fóruns Scrum.org, Esta Pronto, só falta testar, Como criar uma Definição de Pronto que funciona?, A Definição de Pronto e o Incremento.

3 COMENTÁRIOS