Engenharia de Software: Metodologias ágeis: Scrum e Kanban
As metodologias ágeis transformaram a forma de conduzir projetos de software, sobretudo porque aumentam a adaptabilidade e focam na entrega contínua. Além disso, Scrum e Kanban são de longe os frameworks mais adotados em equipes modernas. Neste post, exploraremos como cada um funciona, suas diferenças, um EXEMPLO PRÁTICO, código demonstrativo, fluxograma, tabelas e gráficos para clarear o entendimento.
Por que usar metodologias ágeis?
As metodologias ágeis fornecem vários benefícios: maior visibilidade do progresso, feedback constante, prioridades mais claras e capacidade de mudar rumo conforme novas necessidades surgem. Ao adotar Scrum ou Kanban, equipes podem responder melhor a mudanças e reduzir desperdícios.
Em vez de planejar tudo com antecedência (como no modelo cascata), ágil permite entregas incrementais e melhoria contínua. Assim, riscos são mitigados e valor é entregue cedo e frequentemente.
Principais características de Scrum e Kanban
A seguir, uma tabela comparativa com os aspectos centrais:
| Característica | Scrum | Kanban |
|---|---|---|
| Iterações / time boxes | Sim — Sprints fixas (ex: 1 a 4 semanas) | Não — fluxo contínuo |
| Papéis definidos | Product Owner, Scrum Master, Time de Desenvolvimento | Não há papéis prescritos, permite flexibilidade |
| Mudanças durante execução | Desaconselhadas dentro do Sprint | Permitidas, desde que respeitadas as políticas |
| Limitação de trabalho em progresso (WIP) | Indiretamente via escopo de Sprint | Diretamente via limites WIP por coluna |
| Feedback e revisão | Sprint Review, Retrospective | Reuniões periódicas de melhoria (feedback loop) |
| Visibilidade visual | Burndown chart, quadro do Sprint | Quadro Kanban visual, fluxo contínuo |
| Métricas típicas | Velocidade, backlog, burndown | Lead time, throughput, cycle time |
Como se vê, os pontos de aplicação e o controle variam bastante entre os dois frameworks.
Como Scrum funciona – passo a passo
- Criação do Product Backlog (lista priorizada de requisitos).
- Em planejamento de Sprint, seleciona-se itens do backlog para o Sprint.
- Time trabalha nas tarefas durante o Sprint, com reuniões diárias (Daily Scrum).
- Ao final do Sprint, há Sprint Review para mostrar o que foi entregue.
- Em seguida ocorre a Sprint Retrospective para identificar melhorias para o próximo Sprint.
Esse ciclo se repete continuamente.
Como Kanban funciona – passo a passo
- Visualizar fluxo de trabalho em um quadro (colunas como “A Fazer”, “Em Progresso”, “Feito”).
- Estabelecer limites de WIP para cada coluna, evitando sobrecarga.
- O time “puxa” novas tarefas quando tiver capacidade.
- Monitorar métricas como tempo de ciclo (cycle time) e throughput.
- Realizar reuniões de melhoria contínua (feedback loop), ajustando políticas e fluxo.
O foco de Kanban está em otimizar o fluxo de trabalho e eliminar gargalos.
Fluxograma: funcionamento integrado de Scrum e Kanban

[Início do ciclo]
↓
[Gerenciar backlog]
↓
[Planejamento de Sprint (Scrum) ou seleção contínua (Kanban)]
↓
[Desenvolvimento / Execução]
↓
[Daily / feedback contínuo]
↓
[Entrega parcial / incremento]
↓
[Revisão e Retrospectiva (Scrum) ou reunião de melhoria (Kanban)]
↓
[Refinar backlog / ajustar políticas]
↓
[Próximo ciclo]
Esse fluxograma evidencia como ambos os modelos possuem iteração e melhoria contínua, mas com diferenças no ritmo e controle.
EXEMPLO PRÁTICO:
Imagine uma equipe de desenvolvimento que vai criar um módulo de autenticação para um sistema. Eles decidem usar Scrum + Kanban (híbrido).
- Eles mantêm um backlog com histórias como “login de usuário”, “recuperação de senha”, “login via redes sociais”.
- No Sprint Planning, escolhem “login de usuário” e “recuperação de senha”.
- No quadro Kanban para aquele Sprint, limitam WIP em “Em Progresso” para 2 tarefas simultâneas.
- Cada dia fazem o Daily: dizem o que fizeram, o que vão fazer e impedimentos.
- Ao final do Sprint, apresentam o módulo funcional de login.
- Na retrospectiva, identificam que “integração social” requer mais pesquisa e decide-se quebrar em subtarefas menores no próximo Sprint.
⚠️ Alerta: se quiser executar esse exemplo prático, faça isso em um ambiente seguro, previamente preparado (sandbox, ambiente de testes) e sob sua inteira responsabilidade — principalmente se envolver dados sensíveis ou autenticação real.
Código de exemplo: simulação de workflow simples em Python
from collections import deque
import time
class Task:
def __init__(self, name):
self.name = name
self.status = "Todo"
def __repr__(self):
return f"{self.name} [{self.status}]"
# Colunas do Kanban
todo = deque([Task("Login usuário"), Task("Recuperação senha"), Task("Login social")])
in_progress = []
done = []
WIP_LIMIT = 2
def move_to_in_progress():
while len(in_progress) < WIP_LIMIT and todo:
task = todo.popleft()
task.status = "In Progress"
in_progress.append(task)
def move_to_done():
for task in list(in_progress):
# simula finalização
task.status = "Done"
done.append(task)
in_progress.remove(task)
def print_board():
print("Todo:", list(todo))
print("In Progress:", in_progress)
print("Done:", done)
print("-" * 40)
def simulate():
print_board()
move_to_in_progress()
print_board()
time.sleep(1)
move_to_done()
print_board()
if __name__ == "__main__":
simulate()
Esse código simula um mini workflow Kanban com limite de WIP = 2, movendo tarefas de “Todo” para “In Progress” e depois para “Done”.
Gráficos e vetores de apoio
- Gráfico de burndown (para Scrum): mostra quantos pontos ou tarefas restam ao longo do Sprint versus tempo.
- Gráfico de lead time vs throughput (para Kanban): exibe quanto tempo cada item demora, quantos itens são concluídos por unidade de tempo.
- Quadro visual (vetor): colunas “Todo → In Progress → Done”, cada tarefa representada por cartão movendo-se à medida que progride.
Esses componentes visuais ajudam a entender como o trabalho flui e onde ocorrem gargalos.
Conclusão
Neste post você viu:
- As diferenças essenciais entre Scrum e Kanban no contexto de engenharia de software.
- Como cada metodologia funciona, seus papéis, limites de WIP e métricas.
- Um EXEMPLO PRÁTICO simulando um módulo de login com Scrum + Kanban.
- Um código-fonte em Python que simula o fluxo de tarefas com limite de WIP.
- Um fluxograma geral integrando os passos dos frameworks.
- Tabelas comparativas e sugestões de gráficos para reforçar a visualização.
Resumo técnico: Scrum e Kanban são métodos ágeis complementares. Scrum baseia-se em iterações regulares (Sprints) com papéis definidos e revisão formal, enquanto Kanban foca em fluxo contínuo, limites de WIP e adaptação constante. Aplicar ambos — em regime híbrido ou ajustado — pode aproveitar os pontos fortes de cada método conforme contexto da equipe e do projeto.
NOTA TÉCNICA: ágil, Sprint, backlog, WIP, fluxo, iteração, feedback, métricas, melhoria contínua.


Pingback: Controle de Versões com Git