Systems Thinking
Feedback loops, leverage points, stocks & flows — o porquê de problemas voltarem
Pensamento sistêmico: deixa de olhar "o que aconteceu" e olha "que estrutura faz isso acontecer repetidamente". Bug que volta, time que se exausta, fila que cresce — quase sempre é uma estrutura de sistema, não falha pontual. Donella Meadows ("Thinking in Systems") e Diana Montalion ("Learning Systems Thinking") são as referências.
Stocks e Flows
Tudo em um sistema é ou stock (estado acumulado) ou flow (mudança no stock).
- Stock: a quantidade no tempo — backlog de bugs, dívida técnica, número de incidentes abertos, moral do time
- Inflow: o que aumenta o stock — bugs reportados, features adicionadas
- Outflow: o que diminui o stock — bugs corrigidos, dívida paga
O nível do stock só muda se inflow ≠ outflow. Se você fixa 10 bugs por semana e novos 12 chegam, o backlog cresce — não importa quão eficiente seja o time. A pergunta certa é "como reduzo o inflow ou aumento o outflow?", não "como faço o time correr mais rápido?".
Exemplo: backlog de bugs
Sistema: backlog de bugs
Bugs reportados (inflow)
│
▼
┌─────────────┐
│ Stock: 245 │ ← este número você vê na dashboard
│ bugs abertos│
└─────────────┘
│
▼
Bugs corrigidos (outflow)
Inflow > Outflow → backlog cresce
Inflow = Outflow → equilíbrio
Inflow < Outflow → backlog reduz
O perigo de só olhar o stock
Quando você vê o backlog crescendo, a tentação é "corrigir mais rápido" (aumentar outflow). Mas se a causa é inflow alto (testes ruins, code review superficial, deploys sem flag), você está enxugando gelo.
Pensamento sistêmico pergunta: por que o inflow é alto? E investe lá.
Por que algumas iniciativas de "reduzir bug backlog" falham mesmo com time grande?
Porque atacam o stock (corrigir bugs existentes) sem alterar o inflow (taxa em que novos bugs entram). Em 2 meses o time aniquilou 200 bugs, mas 220 novos entraram. O backlog "voltou". A solução sistêmica é mexer no inflow: testes de regressão automáticos, code review com critério, observability que pega bugs antes de virarem ticket. O outflow (corrigir bugs) ainda importa — mas sem mexer no inflow, é trabalho infinito.