Você vai ler sobre:
Você certamente já ouviu falar em Scrum e Kanban, não é mesmo? Hoje, as metodologias são duas das ferramentas mais populares quando o assunto é desenvolvimento de software. Apesar disso, muitas empresas ainda não sabem qual delas melhor se adequa aos seus projetos. Por isso, é tão importante entender as diferenças que existe entre elas. Quer saber quais são essas diferenças e identificar qual é o método mais adequado para seu cenário? Então continue com a gente, pois é sobre isso que falaremos nesse artigo.
Entendendo a diferença entre Scrum e Kanban
Bom, a primeira coisa que é preciso se destacar é que não existe uma metodologia “melhor”, afinal ela é apenas um meio para que o trabalho possa ser finalizado. É importante levar sempre em consideração o primeiro valor do Ágil: indivíduos e suas interações mais do que processos e ferramentas. É muito comum ver a equipe surgir com uma espécie de mix de ambos, utilizando práticas de um e ritos do outro. Por outro lado, também é importante em um determinado momento utilizá-los como descrito na metodologia, para que a equipe se estruture e tenha mais maturidade.
O Scrum é uma metodologia de desenvolvimento iterativo-incremental para projetos complexos e adaptativos. Ele foca no trabalho em equipe, melhoria contínua e em muitos outros princípios que mais tarde originariam o Manifesto Ágil. Enquanto o Kanban, foca no mapeamento e otimização do fluxo de valor de maneira que as pessoas que trabalhem no mesmo e façam com a maior eficiência possível, resumidamente: mantendo um lead time baixo com qualidade total.
Pelo fato de tanto o Kanban quanto o Scrum serem Metodologias Ágeis, compartilham das mesmas bases:
- Utilizam a transparência para garantir um processo melhor.
- Dividem o trabalho em partes.
- Tem foco na entrega rápida e frequente do software.
- Utilizam times auto organizáveis.
- Dividem o trabalho em partes.
Em relação às cerimônias, podemos destacar um comparativo:
Mas é analisando suas diferenças que conseguimos entender melhor de que maneira eles podem ajudar no processo de desenvolvimento de um projeto. Podemos destacar o quadro abaixo suas principais diferenças:
Sendo assim, podemos decidir qual é a melhor Metodologia a ser adotada analisando os diferentes cenários para melhor atender aos desejos dos seus clientes.
Melhor cenário para utilizar o Scrum:
- O projeto está começando hoje. O backlog é imenso, e ainda existe uma série de questões estruturantes para serem feitas. O MVP está longe de poder ser usado por um cliente de fato. Uma única tarefa ou história não agrega valor sozinha, pois ainda é muito cedo. O software ainda não está minimamente maduro para que cada pedaço faça sentido ser colocado em produção.
Benefícios do Scrum:
- Time Box estabelecida;
- Times multifuncionais estabelecidos;
- Estimativa estabelecida;
- Iterações em andamento não podem receber novos itens;
- Scrum board reinicia a cada Sprint;
- Velocidade é a métrica padrão para planejamento e melhorias.
O Scrum é melhor aplicado no período de mudança, visto que têm papéis bem definidos e mantém um pouco de estrutura para empresas mais tradicionais. Outro ponto é que existe o conceito da Sprint que foca no planejamento.
Melhor cenário para utilizar o Kanban:
- O produto está no ar há mais de um ano ou mais. O backlog já não cresce mais tanto, geralmente entrando para o time (agora bem menor) uma série de ajustes, correções, melhorias pontuais e raramente alguma demanda mais complexa. Diz-se que o software entrou em modo de sustentação, sendo que cada task já gera valor individualmente e os clientes têm acesso a melhorias diariamente.
Benefícios do Kanban:
- Iterações com Time Box opcionais;
- Times multifuncionais opcionais. Times especialistas permitidos;
- Estimativa opcional;
- Novos itens podem ser adicionados se tiver capacidade;
- Kanban Board persistente;
- Lead Time é a métrica padrão para planejamento e melhorias.
O método Kanban é especialmente indicado para empresas que necessitam de flexibilidade, especialmente na entrada de tarefas, bem como no acompanhamento destas, a priorização, a supervisão da equipe de trabalho e os relatórios de dedicação.
O que é Scrumban?
Após essas explicações, é importante ressaltar que isso são apenas sugestões. Existem times que iniciam projetos do zero e utilizam muito bem o Kanban e também times de sustentação que da mesma maneira optam pelo Scrum. Agora, segue um bom exemplo para podermos aplicar as duas metodologias ao mesmo tempo: Scrumban
O Scrumban é baseado em sistema puxado, onde a equipe já não planeja o trabalho durante a sprint planning, em vez disso, o refinamento é feito continuamente. Utiliza a natureza prescritiva do Scrum para ser ágil e ao mesmo tempo usa a melhoria de processo do Kanban para permitir que a equipe melhore continuamente seu processo.
Melhor cenário para utilizar o Scrumban:
- Quando houver projeto de manutenção, onde o trabalho é orientado a eventos. Histórias de usuários frequentes e inesperadas ou erros de desenvolvimento e também equipes focadas no desenvolvimento de novos produtos. Quando o Scrum apresentar problemas de fluxo de trabalho, recursos e processos e gerenciar melhorias durante e/ou após o início do uso do Scrum.
Benefícios do Scrumban:
- Qualidade;
- Just-in-time (decisões e fatos justamente quando são necessários);
- Prazo curto de entrega;
- Melhoria Contínua;
- Minimização de desperdício (tudo o que não agrega valor ao cliente);
- Melhoria de processo, adicionando alguns valores do Scrum como e quando necessário.
Segue quadro Scrum x Kanban x Scrumban:
Como vimos, mais do que simplesmente adotar métodos ágeis, para sua empresa superar os desafios da Transformação ágil é fundamental conhecer as particularidades de cada metodologia. É com esse conhecimento que as organizações vão identificar qual é o método mais adequado para o cenário que estão inseridas, garantindo assim os melhores resultados.