Kanban no gerenciamento de projeto e de continuidade de produtos

otavio publicou em 31/05, 00:46 hs , e editou pela última vez há mais de 6 anos atrás.

Recentemente fizemos uma melhoria em relação à utilização do Redmine na Fidelize que tem se mostrado bastante eficiente. Adotamos o Kanban como modelo de acompanhamento do desenvolvimento.

A primeira vez que li um artigo interessante sobre a aplicação do Kanban em desenvolvimento de software (principalmente em desenvolvimento ágil), foi através do blog da Crisp.se. O Kanban aplicado a software ajuda no desenvolvimento contínuo, com visibilidade dos gargalos de produção e com mais flexibilidade que o Scrum.

Já usamos Scrum na Fidelize, com experiências melhores e piores que Kanban. Para mim, a maior diferença de aplicabilidade é:

  • Scrum é mais apropriado para Projetos
  • Kanban é mais apropriado para gerenciamento continuo de evolução e correção de bugs de produtos existentes.

Mas existem outras questões. Kanban é mais flexível a oscilação do tamanho do time, na entrada de novos requisitos, inovações, bugs e evoluções emergenciais (que chamamos de “fast track”) sem prazo de início e fim. Fluxo contínuo.

Mas Kanban e Scrum não devem ser tratados como ferramentas excludentes. Nosso acompanhamento das iterações do Scrum (sprints) são feitas usando Kanban. Ele é usado de forma complementar ao gráfico de burndown, porque dá clareza sobre o estágio de cada tarefa e ajuda a prever se o sprint será completado com sucesso.

Após testarmos vários plugins para o Redmine, resolvemos desenvolver ele dentro do Fidelize Reports, que é nosso ambiente de relatórios personalizados do Redmine. O principal ponto era permitir ter flexibilidades diferentes para uso com versões (sprint) e desenvolvimento contínuo. Outro problema era que nenhum plugin permitia enxergar subprojetos e consolidar o uso de toda a equipe.

Criamos então de forma que a tela pudesse ser uma dashboard de acompanhamento em uma tv instalada na área de desenvolvimento. Algo mais próximo dos cartões, mas atualizando automaticamente. Isso é importante porque comandamos uma equipe local e outra remota de desenvolvimento.

A tela de Kanban, para a Fidelize ficou assim:

Kanban usando o Fidelize Reports para Redmine

No Kanban de gerenciamento contínuo também não mostramos, por motivos óbvios, as tarefas fechadas e publicadas. Já no Scrum, por se tratar de projetos e termos que dar visibilidade dos entregáveis, os tickets fechados são mostrados.

Hoje, estamos organizando os grupos de tarefas assim:

  • Não Aprovados Ainda: tarefas com status de Novo e que não foram avaliadas pela equipe de desenvolvimento ainda.
  • Nem Começou: tarefas com status de Aprovada. Essas tarefas foram avaliadas e estão disponíveis para o grupo de desenvolvedores.
  • Programando: status de Em andamento, Feedback e Correção.
  • Em teste: status de Teste
  • Finalizado: status de Resolvido.

Para a Fidelize, Resolvido é um status de avaliado em ambiente de homologação. Ao ser publicado essa tarefa passa para o status de Fechada.

if(typeof jQuery == 'undefined'){ document.write("