Dominando Essencial sobre o Sprint Backlog

No Scrum, o Sprint Backlog é o artefato que funcionando como um guia detalhado para o Scrum Team durante uma Sprint. Ele não só detalha o que precisa ser feito, mas também orienta como e por que as tarefas devem ser executadas, alinhando-as ao objetivo estratégico mais amplo do projeto. Este post explora a natureza multifacetada do Sprint Backlog, desde sua criação até sua adaptação durante o ciclo de desenvolvimento, fornecendo uma compreensão clara de como ele é formado, gerenciado e adaptado.

O que é o Sprint Backlog?

Sprint Backlog

O Sprint Backlog é um plano altamente dinâmico e adaptável que serve como o plano para alcançar o Sprint Goal em um Sprint. Ele consiste do Sprint Goal, de itens selecionados do Product Backlog, e um plano detalhado para a entrega desses itens. A responsabilidade pela criação e manutenção é dos Developers, todavia a criação deste plano é uma colaboração entre os membros do Scrum Team. Sendo feito da seguinte forma:

  • O Product Owner propõe o Sprint Goal e os itens prioritários que estavam no Product Backlog.
  • Os Developers avaliam o que conseguem entregar e detalham o plano de como entregar em pequenas unidades de trabalho de até um dia.
  • O Scrum Master faz a facilitação da reunião de Sprint Planning e prove técnicas para auxiliar o trabalho do Product Owner e dos Developers

Importante destacar, o Sprint Backlog é visível e em tempo real, permitindo que todos na equipe acompanhem o progresso e façam ajustes conforme necessário, assegurando que o Sprint Goal permaneça no foco.

Exemplo de um Sprint Backlog em uma Sprint

Consideremos uma equipe que está desenvolvendo um e-commerce com o Sprint Goal de “Permitir o Pagamento de Produtos de um Carrinho de Compras”. O Sprint Backlog pode incluir tarefas como:

  • Permitir pagamentos por Cartão de Crédito utilizando Pagar.me
  • Permitir pagamentos por Pix utilizando Pagar.me

Cada um desses itens será decomposto em pequenas unidades de trabalho de até um dia. No exemplo teríamos as seguintes unidades de trabalho para o item “Permitir pagamentos por Cartão de Crédito utilizando Pagar.me”:

  • Configurar uma conta no Pagar.me e obter as credenciais de API (API Key e Encryption Key).
  • Instalar o SDK do Pagar.me na aplicação (dependendo da linguagem de programação usada).
  • Configurar as variáveis de ambiente com as credenciais do Pagar.me.
  • Criar um endpoint para processar pagamentos via cartão de crédito.
  • Implementar a lógica de captura dos dados do cartão de crédito de forma segura.
  • Integrar o endpoint com a API de pagamentos do Pagar.me, enviando os dados do pagamento.
  • Tratar as respostas da API do Pagar.me, incluindo sucesso, falha e erros de validação.
  • Armazenar as transações no banco de dados com status e informações relevantes.
  • Criar o formulário de pagamento para capturar os dados do cartão de crédito do usuário.
  • Implementar validações client-side para os campos do cartão de crédito (número do cartão, validade, CVV).
  • Integrar o formulário de pagamento com o backend utilizando AJAX ou uma requisição assíncrona.
  • Exibir mensagens de sucesso ou erro para o usuário, dependendo do resultado do pagamento.
  • Implementar HTTPS na aplicação para garantir que os dados do cartão sejam transmitidos de forma segura.
  • Validar e proteger os dados sensíveis, como número de cartão de crédito, no backend.
  • Implementar técnicas de prevenção contra fraudes utilizando as ferramentas oferecidas pelo Pagar.me.
  • Testar o fluxo de pagamento com cartões de crédito de teste fornecidos pelo Pagar.me.
  • Realizar testes de carga para garantir que o sistema lida bem com múltiplas transações simultâneas.
  • Implementar testes automatizados para validar o fluxo de pagamento.
  • Documentar o processo de integração com o Pagar.me, incluindo exemplos de código e instruções de configuração.
  • Documentar como gerenciar e monitorar as transações no painel do Pagar.me.
  • Criar uma documentação para a equipe de suporte, explicando como lidar com problemas comuns relacionados ao pagamento.
  • Implementar o sistema de pagamento na versão de produção.
  • Configurar alertas para monitorar falhas de pagamento e outros problemas críticos.
  • Monitorar as primeiras transações ao vivo para garantir que tudo esteja funcionando corretamente.

No exemplo teríamos as seguintes unidades de trabalho para o item “Permitir pagamentos por PIX utilizando Pagar.me”:

  • Configurar uma conta no Pagar.me e obter as credenciais de API (API Key e Encryption Key) necessárias para o uso do PIX.
  • Instalar o SDK do Pagar.me na aplicação (dependendo da linguagem de programação usada).
  • Configurar as variáveis de ambiente com as credenciais do Pagar.me.
  • Criar um endpoint para gerar QR Codes de pagamento via PIX.
  • Implementar a lógica para a criação de uma cobrança PIX através da API do Pagar.me.
  • Tratar as respostas da API, garantindo que os dados do QR Code sejam armazenados corretamente.
  • Implementar um webhook ou serviço de callback para receber notificações de confirmação de pagamento do Pagar.me.
  • Armazenar as transações PIX no banco de dados com status e informações relevantes (ex: status de pagamento, código de transação).
  • Criar uma interface para exibir o QR Code gerado, permitindo que o usuário faça o pagamento com seu aplicativo de banco.
  • Exibir mensagens de instrução para o usuário sobre como realizar o pagamento via PIX.
  • Implementar uma forma de verificar automaticamente o status do pagamento e atualizar a interface do usuário em tempo real.
  • Exibir uma confirmação para o usuário assim que o pagamento for detectado como concluído.
  • Implementar HTTPS na aplicação para garantir a segurança na comunicação dos dados de pagamento.
  • Validar e proteger os dados sensíveis relacionados às transações PIX no backend.
  • Garantir que o webhook ou callback esteja protegido contra acessos não autorizados.
  • Testar a geração de QR Codes e o fluxo de pagamento utilizando dados de teste fornecidos pelo Pagar.me.
  • Realizar testes para garantir que as notificações de pagamento sejam corretamente processadas e atualizadas.
  • Implementar testes automatizados para validar o fluxo completo de pagamento por PIX.
  • Documentar o processo de integração do PIX com o Pagar.me, incluindo exemplos de código e instruções de configuração.
  • Documentar como gerenciar e monitorar as transações PIX no painel do Pagar.me.
  • Criar uma documentação para a equipe de suporte, explicando como lidar com problemas comuns relacionados ao pagamento por PIX.
  • Implementar o sistema de pagamento por PIX na versão de produção.
  • Configurar alertas para monitorar falhas de pagamento ou problemas com a confirmação de transações.
  • Monitorar as primeiras transações ao vivo para garantir que tudo esteja funcionando corretamente.

Visualmente esse Sprint Backlog poderia ser representado da seguinte maneira:

Exemplo de Sprint Backlog

Relação entre o Sprint Backlog e o Sprint Goal

O Sprint Backlog e o Sprint Goal estão intrinsecamente ligados. O Sprint Goal define o ‘porquê’ da Sprint, enquanto o Sprint Backlog detalha o ‘o que’ e o ‘como’. Este alinhamento assegura que todas as tarefas contribuam diretamente para o objetivo da Sprint, promovendo uma direção unificada e minimizando o trabalho desnecessário. Mesmo que o Sprint Backlog seja flexível e possa ser ajustado durante a Sprint, qualquer mudança deve sempre suportar e não comprometer o alcance do Sprint Goal. Este compromisso mantém a equipe focada e coesa, mesmo quando surgem desafios inesperados.

Como quebrar Items de Product Backlog em tarefas

Uma prática essencial é a capacidade de dividir itens do Product Backlog em tarefas menores, gerenciáveis e que possam ser concluídas dentro de um intervalo de tempo razoável. Para garantir que os itens sejam entregues com qualidade e de acordo com os critérios estabelecidos, é fundamental que essas tarefas estejam alinhadas com a Definition of Done (DoD), que define quando um item está completamente finalizado e pronto para ser entregue.

A técnica descrita aqui visa garantir que cada tarefa seja pequena o suficiente para ser concluída em um dia ou menos, o que facilita a gestão do trabalho, melhora a previsibilidade e reduz riscos de atraso. Essa abordagem envolve uma série de passos desde a identificação do item no Product Backlog até a validação do tamanho das tarefas e a execução, assegurando que o trabalho seja bem distribuído e alinhado com os objetivos da equipe.

Abaixo, detalhamos os passos dessa técnica, desde a seleção do item de backlog até a revisão e monitoramento das tarefas.

1. Identificação do Item de Product Backlog

O primeiro passo é selecionar o item do Product Backlog que será quebrado. Esse item pode ser uma história de usuário, uma funcionalidade ou qualquer outro tipo de item que precise ser trabalhado pela equipe.

2. Quebra Inicial em Tarefas

Uma vez que o item foi identificado, o próximo passo é quebrá-lo em tarefas menores. Essas tarefas devem ser pensadas de forma a alcançar a Definition of Done (DoD). A Definition of Done é um conjunto de critérios que definem quando um item está completamente finalizado e pronto para ser entregue. Esses critérios podem incluir aspectos como desenvolvimento, testes, documentação, revisão de código, entre outros.

Exemplo: Se o item do Product Backlog é “Adicionar a funcionalidade de login com redes sociais”, as tarefas podem ser:

  • Implementar o botão de login para cada rede social.
  • Configurar a integração com a API de cada rede.
  • Testar a funcionalidade de login com diferentes contas.
  • Garantir que a segurança esteja adequada.
  • Documentar o processo de login com redes sociais.

3. Validação do Tamanho das Tarefas

Após a quebra do item em tarefas, cada tarefa é revisada para validar seu tamanho. A métrica utilizada aqui é o tempo que cada tarefa levará para ser completada.

Regra: Se uma tarefa é estimada para levar mais de um dia de trabalho, isso é um indicativo de que a tarefa ainda está grande demais.

4. Quebra das Tarefas Maiores que um Dia

Se qualquer tarefa for identificada como maior que um dia, ela deve ser quebrada em passos menores. Esses passos devem ser pequenas partes do trabalho que podem ser concluídas individualmente e que, idealmente, levam menos de um dia para serem completadas.

Exemplo: Se a tarefa “Configurar a integração com a API de cada rede” é estimada em dois dias, ela pode ser dividida em:

  • Configurar a integração com a API do Facebook.
  • Configurar a integração com a API do Google.
  • Configurar a integração com a API do LinkedIn.

Cada um desses passos é específico e pode ser concluído em menos tempo.

5. Revisão Final e Priorização

Depois de quebrar as tarefas grandes, o próximo passo é revisar todas as tarefas resultantes para garantir que todas estejam alinhadas com a Definition of Done e que sejam realizáveis dentro do tempo estimado. Essa revisão final também permite que a equipe priorize as tarefas, se necessário, para garantir que o trabalho mais importante seja feito primeiro.

6. Execução e Monitoramento

Com as tarefas bem definidas e quebradas em tamanhos gerenciáveis, a equipe pode começar a trabalhar. Durante o processo de desenvolvimento, as tarefas menores ajudam a manter um ritmo constante e facilitam o monitoramento do progresso, pois é mais fácil ver o que já foi feito e o que ainda falta.

Conclusão

Compreender e aplicar de maneira eficaz a técnica de quebra de itens do Product Backlog em tarefas menores é essencial para o sucesso de uma Sprint. Ao garantir que cada tarefa esteja alinhada com a Definition of Done e seja pequena o suficiente para ser concluída em um dia, as equipes Scrum conseguem manter um foco claro no Sprint Goal, melhorar a previsibilidade e reduzir riscos de atrasos. Essa abordagem meticulosa não apenas facilita o gerenciamento e o monitoramento do trabalho, mas também promove uma colaboração mais eficaz dentro do time, assegurando que todos os membros estejam alinhados em direção ao objetivo comum. No fim, o resultado é um processo de desenvolvimento mais ágil, transparente e focado em entregar valor contínuo ao produto.

Treinamentos

Todos os nossos treinamentos

Foco em melhorar a empregabilidade das pessoas e ajudar em uma recolocação.

Certified Scrum Product Owner®
R$2.399,00R$2.449,00

Anderson Hummel

Certified ScrumMaster®
R$2.399,00R$2.449,00

Anderson Hummel

Advanced Certified ScrumMaster®
Original price was: R$3.099,00.Current price is: R$2.699,00.

Anderson Hummel

Kanban System Design – KSD | KMP1
Original price was: R$2.899,00.Current price is: R$2.200,00.

Alcides Vieira Jr | André Lima

Kanban System Improvement – KSI | KMP2
Original price was: R$2.899,00.Current price is: R$2.200,00.

André Lima

Combos de Treinamento

Nossos combos para você

Nossos treinamentos com um super desconto especial para você.
Entre em contato com nossos especialistas para ter mais informação.

+

Scrum Roles Combo

CSM® + CSPO®

de 5798,00 por 4598,00

+

Kanban Management Professional

KSD® + KSI®

de 5879,00 por 4400,00

+

Super Scrum Master Combo

CSM® + M3.0 Foundation Workshop®

de 4599,00 por 3649,00

+

Starter Combo

CSM® + KSD®

de 5798,00 por 4599,00

+

Produteiro Combo

CSM® + KSD®

de 5798,00 por 4599,00

Precisa de ajuda para escolher seu combo?