Como montar um kanban eficiente?

Agilidade
kanban

Quando falamos em kanban, a primeira ideia que normalmente vem a cabeça é um quadro com várias colunas sequenciais.  E se você também pensou isso, já sabe bem do que estou falando.

O quandro kanban, realmente é formado por colunas de um fluxo de trabalho, tem começo, meio e fim. Mas como já falei em um artigo sobre conceitos e origem do Kanban, a metodologia vai muito além disso.

No entanto, nesse artigo não vou abordar tanto os conceitos e princípios da metodologia. Quero focar mais no Downstream kanban, que basicamente é o quadro do time de desenvolvimento. Se você quiser saber como funciona esse conceito de separar o quadro da gestão e do time de desenvolvimento, dê uma lida no artigo sobre Upstream kanban.

Bem, já estamos alinhados, então bora para as dicas de como montar um kanban eficiente para o time de desenvolvimento.

Por onde devo começar a montar meu kanban?

O ponto de partida é mapear seu workflow completo. Ou seja, quais são as etapas pelas quais uma demanda passa, desde o momento que ela chega refinada para o time de desenvolvimento. Até o momento que ela é, efetivamente entregue para o cliente.

Destaquei a palavra refinada acima, pois devemos lembrar que para uma demanda chegar no board do time de desenvolvimento, ela precisa estar definida e refinada.

Depois de mapear todo o seu fluxo, crie as colunas do quadro. Lembre-se que as colunas devem representar o seu fluxo de trabalho atual e não aquele que você idealiza. Ficar adicionando passos a mais neste momento vai atrapalhar o time, a evolução é um próximo passo.

É importante também avaliar a necessidade de criar as colunas de espera, por exemplo: você cria a coluna “Em teste”, mas o ideal é ter uma “Aguardando teste” também. O Kanban nos ajuda muito a identificar GAPs, e algumas vezes a tarefa fica mais tempo na coluna de espera, do que na de ação. Isso precisa ser medido.

Lembre-se também de validar e simular todo o fluxo do quadro kanban com o time. É essencial que todos entendam o que cada coluna representa.

kanban

Qual o fluxo ideal para o meu kanban?

Quando se trata de Kanban, podemos adaptá-lo da melhor forma possível. Como já falei acima, ele é um processo evolucionário, devemos começar com o básico e evoluí-lo junto com o time.

Mas falando em template, temos passos que normalmente fazem parte do fluxo de trabalho de alguns de times de desenvolvimento.

Vou citar algumas dessas etapas abaixo, e se fizer sentido você pode incorporá-las ao quadro kanban do seu time.

Pronto para desenvolver

Coluna onde ficam todas as tarefas que estão prontas para o time iniciar o desenvolvimento. Se quiser dicas definir bem as atividades para o time, leia esse artigo aqui: Como escrever tarefas para o time de desenvolvimento?

Em desenvolvimento

Todas as atividades que estão sendo desenvolvidas pelo time. É importante que nenhum membro da equipe pode estar desenvolvendo duas tarefas ao mesmo tempo, então só pode haver uma tarefa no nome de cada pessoa, nessa coluna.

Em casos de urgência como bugs ou nova priorização de atividades, é necessário dar um destino para o card com no qual o desenvolvedor estava trabalhando antes.

Pronto para Revisão de código (Code Review)

Se dentro da sua empresa existe a cultura de Code Review entre os membros do time, é interessante manter essa coluna. Onde ficarão as atividades que estão aguardando o Code Review.

É importante avaliar a necessidade dessa coluna, se houver automatização entre o repositório do código e o canal de comunicação do time (Slack por exemplo). E a equipe já tenha a cultura de realizar o code review, talvez essa coluna não seja necessária, e você pode colocar apenas a próxima.

Em Revisão de Código

Toda atividade que for desenvolvida por um dev X, terá o código revisado por outro dev Y. Lembre-se que revisão de código precisa ser baseada em padrões e boas práticas escolhidos pelo time, e que isso não é o mesmo que o trabalho da fase de teste (QA).

Pronto para testar

Aqui vão ficar as atividades que estão prontas para serem testadas. Ou seja, se você tiver um ambiente de QA, a feature precisa estar disponível nesse ambiente para entrar nessa coluna. Normalmente existe um gargalo nessa coluna, se não houver um profissional de QA no time.

Por isso é importante manter o mapeamento dessa coluna.

Em teste

As atividades que estão sendo validadas. Enquanto o teste não for finalizado, a atividade continua aqui.

Pronta para homologação

Se o seu cliente participa do processo de validação, e isso vai depender do momento que o projeto está, essa fase é importante. Da mesma forma da pronto para teste, o card deve entrar aqui quando a atividade estiver disponível para o cliente homologar.

Lembre-se que o nome pronto para homologar é proposital, pois a demanda só estará pronta se o cliente tiver acesso ao ambiente e os dados necessários para teste. Como usuário e senha por exemplo, é básico mas as vezes esquecemos desses detalhes.

Em homologação

Aqui ficam os cards referentes as tarefas que o cliente está homologando. Se for possível utilizar um board que o cliente tenha acesso, será muito bom. Dar visibilidade do andamento do trabalho pra ele, é fundamental.

Pronto para publicar

As tarefas que foram aprovadas pelo cliente, e estão aguardando para serem publicadas no ambiente de produção. Se o seu time tiver um processo de deploy automático, não há necessidade de manter essa coluna.

Finalizado

Finalmente, acabou! Atividades finalizadas, tudo certo.

Bem, essa é uma estrutura sugerida para você montar seu downstream kanban. Mas com certeza cabe adaptações, é sempre necessário avaliar aquilo que faz sentido para o seu time.

Qualquer dúvida, deixe nos comentários.

Entre com seus dados para a ligação.