Quem trabalha com desenvolvimento de software sabe que a discussão de qual metodologia usar é sempre longa e acalorada. Cada um tem seus preferências. Mesmo com essas diferenças, é preciso chegar a uma escolha e focar em fazer.

Quando falamos em métodos ágeis, Scrum ganhou muitos adeptos por ser uma maneira mais fácil de adoção desse tipo de desenvolvimento por um time. Fazer uma sprint, uma reunião diária e algumas cerimonias é mais simples do que adotar todas as práticas de XP, em especial as que envolvem engenharia: como testes, programação em par, versões pequenas etc.

Mas quando atendemos um cliente querendo aplicar Scrum em manutenção, precisamos falar sobre o elefante na sala:

  • Como você faz um planejamento de sprint se não sabe o que precisará ser feito até o final da semana?
  • Faço reuniões de estimativa quando? Paro toda a minha equipe quando uma atividade entra?
  • Software funcionando somente no final da sprint?

Difícil responder isso, não?

Para manutenção, e mesmo em outros casos, acreditamos que você não deva se preocupar em montar uma sprint, negociar as atividades das próximas semanas e aguardar semanas para ter seu software rodando em produção. Muitas cerimônias e burocracias enquanto seu usuário está sofrendo com problemas.

Mais do que adequar suas demandas de manutenção a um método, você pode adotar um método que se adeque a rotina atual. Que permita enxergar os gargalos e estimule a melhoria contínua.  Já deu uma olhada no Kanban?

O que é Kanban?

Kanban é um método desenvolvido pelos engenheiros da Toyota na década de 1950. É uma forma visual de gerenciamento de projetos e funciona de acordo com a demanda.
Muita gente já vem adaptando estas ideias da linha de produção para o desenvolvimento de software. No fim das contas, surgiu o Método Kanban, criado por David Anderson.

Porque Kanban na manutenção?

Assim como no chão de fábrica da Toyota, manutenção é feita sob demanda. Um fator externo determina o que precisa ser feito. Não faz muito sentido você colocar um número X de bugs e problemas do usuário que devem ser feitos em um espaço Y de tempo.

Mais perguntas que são difíceis de responder quando se faz, por exemplo, Scrum em manutenção:

Por que gastar energia planejando algo que é muito mais eficiente se for simplesmente feito?

Não é muito melhor saber quanto tempo demora para que uma solicitação seja resolvida do que quantas devem ser feitas em uma semana ou 15 dias?

Para o desenvolvimento de software, em especial na área de manutenção, Kanban se encaixa muito bem. Inclusive, os dois primeiros exemplos do livro de David Anderson são da aplicação de Kanban neste contexto. Extraindo uma citação do livro:

“… um sistema kanbam parecia se adequar bem aos problemas funcionais do trabalho de manutenção. Eu não fui para a Corbis (empresa que ele trabalhou) com a intenção de ‘fazer Kanban’. Eu fui lá com a intenção de melhorar a satisfação do cliente com o time de desenvolvimento de software. Foi uma feliz coincidência que o primeiro problema a ser resolvido era a falta de previsibilidade no que se refere a entrega do time de manutenção de TI.”

Benefícios:

Eficiência é a melhor forma de uma manutenção bem sucedida. Quanto mais rápido um problema for resolvido, melhor para todos. O cliente fica mais feliz de ver seu problema resolvido com rapidez. A equipe passa mais tempo executando do que em reuniões e a empresa se torna mais eficiente e lucrativa.

Com Kanban é possível ver onde estão os gargalos. Que tipo de problema sua equipe tem gasto mais tempo. Quantas pessoas precisam ser alocadas para cada tipo de problema. E o mais importante: o que tem sugado seu dinheiro nessa operação. Afinal, sem essas informações, é bem mais difícil saber que parte da equipe está com mais trabalho do que aguenta e qual está com menos do que deveria. A alocação de recursos se torna mais simples.

Conclusão:

Kanban foi a forma da Toyota sair de uma crise de quase falência para se tornar uma das maiores montadoras do mundo. Foi implementado para melhorar a eficiência de recursos. Em muitas áreas de desenvolvimento ele vem sendo aplicado com sucesso.

Achamos que Kanban é a pedida certa para seu time de manutenção. Por se adequar ao processo existente, incentivar a melhoria contínua, diminuir o tempo gasto em cerimônias com os envolvidos e garantir um ritmo de entrega. Tudo isso fará com que o time entregue mais valor e melhore a relação de confiança entre time e áreas de negócio.

E por último e não menos importante, use o Kanban não só para manutenção!