Muitas pessoas acreditam que Scrum e Kanban são duas opções mutuamente exclusivas para fazer o desenvolvimento de software. Com muita frequência, você se depara com sessões de conferência ou artigos de sites/blogs intitulado “Scrum ou Kanban” – que reforçam essa crença. A realidade é que eles são de fato absolutamente complementares!
O Kanban é um processo ou método evolutivo para fazer mudanças graduais e não disruptivas para melhorar qualquer processo que você esteja usando atualmente. Sim, até mesmo o Scrum! Como David Anderson enfatizou em seu livro azul Kanban, o Kanban não é uma metodologia de desenvolvimento de software ou de gerenciamento de projetos. É um método para melhorar o que quer que você faça. Na verdade, o Kanban não pode ser aplicado ou implementado sem a existência de um processo.
Portanto, o Kanban não compete com o Scrum. Em vez disso, o Kanban (princípios) aplicados em cima de suas práticas Scrum existentes podem ajudá-lo a obter melhor visibilidade de como seu processo está realmente funcionando, onde pode haver gargalos e oportunidades de melhoria, e ajudá-lo a melhorar seu fluxo (de trabalho), seu tempo para o mercado ou tempo para valorizar e sua previsibilidade.
Scrum, mas…: Desafios Comuns que as Equipes Scrum reportaram
Embora o Scrum tenha tido adoção e sucesso mundial, muitas equipes e organizações têm lutado para implementar todos os seus aspectos. O refrão popular nos círculos Agile diz: “Estamos fazendo Scrum, mas…”.
De modo geral, estes desafios podem ser agrupados nas áreas:
Se você enfrentou alguns ou todos esses desafios e está procurando maneiras de melhorar seus processos Scrum, então você deve considerar o Kanban – para ajudá-lo a melhorar e gerenciar melhor seu trabalho e sua equipe.
Mesmo que o Scrum (ou qualquer outro método para esse fim) esteja funcionando bem para você, há sempre espaço para melhorias. Como você determina se e onde existem gargalos em seus processos? Como você sabe que está cumprindo os compromissos de SLA para diferentes classes de serviços que suas equipes devem prestar? Como você decide se poderia melhorar seu tempo de colocação no mercado? Que tipo de obstáculos sua equipe está enfrentando que impedem o fluxo de trabalho? Quão equilibrados são seus recursos entre as diferentes funções dentro da equipe?
Todas estas são perguntas que você deve fazer à sua equipe – e considerar o uso do Kanban para isso.
Outra área de provável melhoria é o que seu Product Owner gerencia – a tarefa geral de preparação do backlog, planejamento do roteiro, priorização de histórias de usuários de forma colaborativa que garante um fornecimento constante de trabalho para sua equipe de desenvolvimento no início de cada reunião de planejamento de sprint. Os desafios que um Product Owner enfrenta não são apreciados por muitas pessoas. Embora existam ferramentas como o mapeamento de histórias para ajudar o Product Owner, dar visibilidade ao processo de iniciar a partir de um conjunto de temas ou épicos de alto nível e quebrá-los para que sejam programados em releases e sprints específicos, é crucial para que todas as partes interessadas cheguem a um acordo rápido e amigável em uma base contínua.
A capacidade do Kanban para abordar este processo e alimentar a equipe de desenvolvimento é abordada no corpo de trabalho que agora é denominado Upstream Kanban ou Discovery Kanban. Isto também é um motivo pelo qual você deve considerar o Kanban.
Kanban é um processo ou uma estrutura para melhorar o que você já está fazendo gradualmente. Kanban ajuda você a visualizar seu fluxo de trabalho, limita o trabalho em andamento e gerencia o fluxo de trabalho. Ele o ajuda a começar com o que você tem e a evoluir gradualmente, fazendo mudanças em seus processos que melhoram seu fluxo e rendimento – e a qualidade do produto final.
A maioria das equipes Scrum usa um Taskboard e tem um fluxo de trabalho Pronto – Fazendo – Feito para acompanhar o progresso das tarefas associadas a diferentes histórias de usuários.
Entretanto, este quadro não o ajuda a acompanhar o processo geral que cada história de usuário está seguindo. O processo que uma história de usuário segue provavelmente se assemelha mais ou menos a isto:
Você pode aplicar Kanban neste nível para entender como suas histórias estão fluindo sem problemas; onde estão os gargalos em termos de altos tempos de espera, onde eles podem estar ficando bloqueados devido à dependência de recursos externos ou internos, etc. O quadro refletirá o processo acima –
Usando esta visualização, junto com os Limites WIP e a implementação do “puxar” no nível da história, você começará a aplicar Kanban dentro de seu ambiente Scrum.
Equipes Agile ao redor do mundo estão avaliando, testando ou adotaram completamente o Kanban. Como eles fizeram mudanças no processo para melhorar sua capacidade de entrega, estas equipes chamaram o processo resultante de Scrumban, Scrum-Kanban ou apenas Kanban! Chame-o como você quiser, aplicar Kanban a seus processos Scrum (ou outros) ajuda você a pegar seu processo que não está funcionando para você e transforma-o em um processo que funciona.
Não se trata apenas de Visualização e Limites WIP (embora isso seja muito!).
Outros Recursos para Scrumban
Perguntas adicionais que você pode ter