☕ Um Café no Bellacosa Mainframe
Gostou do conteúdo? Ajude a manter o café quente, o COBOL compilando e o mainframe acordado. 😄
☕ Pague um café ao Bellacosa

Translate

sábado, 20 de agosto de 2011

🔥 Error Handling Techniques no CICS

 


🔥 Error Handling Techniques no CICS

 


☕ Midnight Lunch, abend na tela e o silêncio mortal

São 12h58.
Usuário digita Enter.
A tela pisca.
ASRA.

No console, ninguém fala.
Alguém finalmente quebra o gelo:

“Isso não foi tratado…”

Hoje o almoço é pesado. Vamos falar de tratamento de erros no CICS — a diferença entre um sistema profissional e um sistema que vive de reza e IPL.


🏛️ História: quando erro virou disciplina

Nos primórdios, erro em CICS era simples:

  • Deu problema → abend

  • Debug → dump

  • Corrige → volta pra produção

Com o crescimento de sistemas 24x7, isso virou inaceitável.
O CICS evoluiu e trouxe mecanismos formais de error handling, muito antes de try/catch virar moda.

📌 CICS não evita erro. Ele oferece ferramentas para dominá-lo.


🧠 Conceito essencial (grave isso)

Erro não tratado = falha arquitetural
Erro tratado = comportamento esperado

Mainframe não tolera improviso.


🧯 Principais técnicas de Error Handling no CICS

Vamos separar por camadas — como todo bom sistema corporativo.


1️⃣ RESP / RESP2 – o primeiro escudo

O que é?

Quase todo comando CICS retorna:

  • RESP → código principal

  • RESP2 → detalhe fino do erro

Exemplo

EXEC CICS READ FILE('ARQCLI') INTO(WS-REG) RESP(WS-RESP) RESP2(WS-RESP2) END-EXEC.

Boa prática

  • Sempre testar RESP

  • Nunca confiar que “vai dar certo”

📌 RESP ignorado é bug incubado.


2️⃣ HANDLE CONDITION – o guarda-costas antigo

O que é?

Permite capturar condições específicas e redirecionar o fluxo.

EXEC CICS HANDLE CONDITION NOTFND(LABEL-NOTFND) DUPREC(LABEL-DUP) END-EXEC.

Vantagens

✔ Simples
✔ Muito usado em código legado

Riscos

❌ Global demais
❌ Difícil de rastrear
❌ Pode mascarar erro

📌 HANDLE CONDITION é faca de cozinha: útil, mas perigosa.


3️⃣ IGNORE CONDITION – o tapa pra debaixo do tapete

O que é?

Ignora explicitamente uma condição.

EXEC CICS IGNORE CONDITION NOTFND END-EXEC.

⚠️ Use só quando:

  • A condição é esperada

  • Você sabe exatamente o impacto

📌 IGNORE CONDITION sem comentário é crime técnico.


4️⃣ HANDLE ABEND – o airbag

O que é?

Intercepta abends CICS antes de matar a transação.

EXEC CICS HANDLE ABEND PROGRAM('ABENDPGM') END-EXEC.

O que dá pra fazer?

  • Logar contexto

  • Gravar TDQ/TSQ

  • Avisar monitoria

  • Encerrar com dignidade

📌 HANDLE ABEND não evita o erro. Evita o caos.


5️⃣ ABEND explícito – erro controlado é maturidade

Às vezes, abendar é a decisão correta.

EXEC CICS ABEND ABCODE('APPL') NODUMP END-EXEC.

Use quando:

  • Integridade foi comprometida

  • Continuar é mais perigoso

  • Auditoria exige parada

📌 Abend consciente é melhor que sucesso falso.


🛠️ Passo a passo Bellacosa (como tratar erro direito)

1️⃣ Capture RESP / RESP2
2️⃣ Decida: recuperar ou encerrar
3️⃣ Registre contexto (log)
4️⃣ Informe o usuário de forma clara
5️⃣ Garanta consistência de dados

📌 Tratamento de erro também é UX.


⚠️ Erros clássicos (easter eggs mainframe)

🐣 RESP nunca testado
🐣 HANDLE CONDITION genérico demais
🐣 IGNORE CONDITION sem explicação
🐣 Dump infinito em produção
🐣 Abend sem log

📌 Todo ASRA famoso começou assim.


📦 Integração com TSQ, TDQ e logs

Boas práticas:

  • TDQ para log de erro

  • TSQ para contexto temporário

  • SMF para auditoria

  • Integração com monitoria (OMEGAMON, Instana)

📌 Erro que não é logado vai voltar.


📚 Guia de estudo para mainframers

Domine estes tópicos:

  • CICS Conditions & RESP codes

  • Abend codes (AEI0, ASRA, APCT)

  • Program Control error handling

  • Recovery & Backout

  • Logging e monitoramento

📖 Manual essencial: CICS Application Programming Guide


🤓 Curiosidades de boteco mainframe

🍺 HANDLE CONDITION é mais antigo que Java
🍺 Muitos sistemas “estáveis” vivem à base de IGNORE CONDITION
🍺 O melhor log é o que nunca precisa ser lido
🍺 Já vi HANDLE ABEND salvar auditoria milionária


💬 Comentário El Jefe Midnight Lunch

“Erro não mata sistema.
Falta de tratamento, sim.”


🚀 Aplicações reais hoje

  • Sistemas bancários 24x7

  • Processamento de cartões

  • Governo e seguradoras

  • Plataformas críticas globais


🎯 Conclusão Bellacosa

CICS não exige perfeição.
Exige responsabilidade.

Quem trata erro direito:

  • Dorme melhor

  • Evita incidente grave

  • Ganha respeito do operador

🔥 Error handling não é opcional. É caráter técnico.


sexta-feira, 19 de agosto de 2011

Sunk Cost Fallacy: Doctor Who, COBOL e o Dia em que Já Tínhamos Gastado Demais para Admitir que Era Hora de Parar

 

Bellacosa Mainframe e o sunk cost fallacy

☕ Um Café no Bellacosa Mainframe

Sunk Cost Fallacy: Doctor Who, COBOL e o Dia em que Já Tínhamos Gastado Demais para Admitir que Era Hora de Parar

Uma viagem pela TARDIS dos incidentes para entender por que tempo, dinheiro, esforço e orgulho já investidos podem nos prender a decisões que deixaram de fazer sentido

23:48.

Sexta-feira.

Sala de mudança.

Café número três.

Projeto iniciado há oito meses.

Orçamento inicial:

R$ 2.000.000

Gasto até agora:

R$ 4.700.000

Prazo original:

6 meses

Tempo transcorrido:

8 meses

Funcionalidades concluídas:

63%

Integração crítica:

ainda instável.

Testes:

atrasados.

Rollback:

complexo.

O gerente olha para a apresentação.

— Precisamos terminar.

Nosso jovem programador COBOL pergunta:

— Ainda vale a pena?

Silêncio.

O diretor responde:

— Depois de quase cinco milhões gastos?

O jovem insiste:

— Justamente.

Outro gerente entra na conversa:

— Não podemos jogar todo esse investimento fora.

O especialista complementa:

— Falta pouco.

Nosso programador olha para:

63%

Não parece exatamente “pouco”.

Mas ninguém quer falar sobre abandonar o projeto.

Porque abandonar significaria admitir que:

o dinheiro já gasto não volta;

os meses já utilizados não voltam;

as noites extras não voltam;

as decisões passadas talvez não fossem tão boas quanto pareciam.

Então surge a frase fatal:

“Agora precisamos continuar para recuperar o investimento.”

VWORP.

VWORP.

VWORP.

A TARDIS materializa-se atrás do projetor.

A porta abre.

O Doctor sai.

Olha para a planilha.

— Quanto dinheiro vocês já gastaram?

— Quase cinco milhões.

— E quanto desse dinheiro volta se vocês continuarem?

Silêncio.

— Nenhum.

— E quanto volta se vocês pararem?

— Nenhum.

O Doctor sorri.

— Excelente.

O diretor parece irritado.

— O que há de excelente nisso?

— Agora podemos finalmente parar de fingir que o dinheiro passado participa da próxima decisão.

Bem-vindo ao:


Sunk Cost Fallacy

Ou:

Falácia do Custo Afundado

A tendência de continuar investindo em uma decisão, projeto, sistema ou estratégia porque já investimos muito nela — mesmo quando os custos passados não podem mais ser recuperados e a melhor decisão daqui para frente seria parar, mudar ou recomeçar.


🌀 Nossa TARDIS dos incidentes já percorreu bastante terreno

Até aqui conhecemos:

Swiss Cheese Model — várias barreiras podem falhar juntas.

Normalization of Deviance — desvios viram rotina.

Hindsight Bias — depois do acidente tudo parece óbvio.

Confirmation Bias — procuramos evidências para aquilo em que já acreditamos.

Anchoring Bias — a primeira informação pesa demais.

Groupthink — grupos podem errar em conjunto.

Authority Gradient — hierarquia pode silenciar informação importante.

Plan Continuation Bias — continuamos um plano que já deveria ser revisto.

Alarm Fatigue — alertas demais viram ruído.

Automation Bias — confiamos demais na máquina.

Drift Into Failure — sistemas derivam lentamente para a borda.

Diffusion of Responsibility — todos veem e ninguém assume.

Normalcy Bias — esperamos que tudo volte ao normal.

Survivorship Bias — olhamos apenas para quem sobreviveu.

Base Rate Neglect — esquecemos as frequências reais.

Availability Heuristic — o que lembramos facilmente parece mais provável.

Outcome Bias — confundimos resultado com qualidade da decisão.

Overconfidence Bias — superestimamos o quanto sabemos.

Planning Fallacy — subestimamos tempo, esforço e complexidade.

Agora chegamos à armadilha seguinte:

depois de investir demais, passamos a usar o passado como argumento para continuar.


🧠 O que é um sunk cost?

Sunk cost significa:

custo afundado.

É algo que já foi gasto e não pode ser recuperado independentemente da decisão futura.

Pode ser:

dinheiro;

tempo;

horas de trabalho;

licenças;

infraestrutura;

treinamento;

consultoria;

energia;

reputação;

orgulho.

Exemplo:

você gastou R$ 1 milhão num projeto.

Esse milhão já foi gasto.

A pergunta racional agora não é:

“Como recuperamos o milhão?”

Mas:

“Dado o estado atual, vale a pena gastar o próximo real?”

Essa mudança de pergunta é gigantesca.


💰 O dinheiro passado não vota

Imagine:

JÁ GASTO: R$ 5 milhões
CUSTO PARA TERMINAR: R$ 4 milhões
VALOR ESPERADO DO SISTEMA: R$ 2 milhões

Alguém diz:

— Mas já gastamos cinco!

Isso não transforma os quatro milhões futuros em bom investimento.

O passado explica:

como chegamos aqui.

Ele não muda automaticamente:

a qualidade do próximo investimento.


☕ Bellacosa Mainframe: o projeto que não pode morrer

Todo profissional veterano já encontrou um projeto desses.

Projeto começou com:

“Estratégico.”

Depois virou:

“Prioridade da diretoria.”

Depois:

“Já investimos demais para cancelar.”

E finalmente:

“Agora precisamos terminar nem que seja só para provar que funciona.”

Nesse momento, talvez o projeto já não esteja sendo guiado por valor.

Está sendo guiado por passado.


🧠 Sunk Cost Fallacy versus Plan Continuation Bias

Eles são parentes próximos.

Mas há diferença.

Plan Continuation Bias

Continuamos o plano porque já estamos executando e existe inércia para seguir.

“Agora falta pouco.”

Sunk Cost Fallacy

Continuamos porque já investimos recursos irreversíveis.

“Já gastamos demais para parar.”

Frequentemente aparecem juntos.


▶️ A dupla perfeita

Planejamento:

6 meses.

Planning Fallacy:

subestimamos.

Depois de oito meses:

Plan Continuation Bias:

“Estamos quase lá.”

E:

Sunk Cost Fallacy:

“Já gastamos demais para desistir.”

Agora temos um projeto praticamente imortal.


👻 Easter Egg nº 1 — O corredor errado

Imagine Doctor Who.

Doctor e companion caminham por um corredor durante duas horas.

Companion:

— Doctor, acho que estamos indo para o lado errado.

Doctor:

— Talvez.

— Então voltamos?

— Não podemos.

— Por quê?

— Já caminhamos duas horas.

Companion olha.

— Isso parece uma péssima razão.

Exatamente.

O esforço passado não torna a direção correta.


🍿 O exemplo clássico do cinema

Você compra ingresso para um filme.

Depois de 30 minutos percebe:

é horrível.

Você pensa:

“Já paguei, vou assistir até o fim.”

Mas o dinheiro não volta se você ficar.

A decisão real é:

o que você prefere fazer com as próximas duas horas?

Ficar.

Ou sair.

O preço do ingresso já desapareceu.

Agora troque filme por projeto de TI.

Infelizmente, às vezes o ingresso custa R$ 20 milhões.


💻 COBOL e o programa impossível de salvar

Imagine um programa antigo.

18.000 linhas
900 IFs
120 GO TOs
35 copybooks

Projeto de modernização começa.

Após meses:

tentam adaptar.

Remendar.

Refatorar.

Mais remendos.

Já gastaram milhares de horas.

Um arquiteto diz:

— Talvez seja mais barato reescrever este módulo específico.

Resposta:

— Impossível. Já gastamos seis meses tentando corrigir esse.

Sunk Cost.

Os seis meses não diminuem o custo futuro do remendo.

Talvez justamente provem que a abordagem não funciona.


🧠 Esforço passado pode ser evidência — mas não obrigação

Essa nuance é importantíssima.

O passado pode ensinar.

Exemplo:

gastamos seis meses e descobrimos:

arquitetura muito complexa.

Isso é informação valiosa.

Mas não significa:

“portanto precisamos continuar.”

Pode significar:

“portanto precisamos parar.”

O custo passado é dado histórico.

Não justificativa automática.


🌀 Outcome Bias entra pela porta

Imagine projeto arriscado.

Depois de muito investimento, finalmente funciona.

Todos dizem:

“Viu? Valeu a pena continuar.”

Talvez.

Mas cuidado.

Os projetos que continuaram e falharam podem ter desaparecido.

Agora temos:

Outcome Bias;

Survivorship Bias;

Sunk Cost.

Uma bela família.


🧠 Survivorship Bias protege histórias de persistência

Adoramos histórias:

“Quase desistimos, mas persistimos e vencemos.”

São inspiradoras.

Mas onde estão:

“Persistimos por mais dois anos e perdemos mais R$ 50 milhões”?

Essas histórias recebem menos palestras.

Survivorship Bias faz persistência parecer mais inteligente do que talvez seja.


🎰 “Nunca desista” pode ser péssimo conselho

Existem momentos para persistir.

Existem momentos para parar.

A regra madura não é:

“Nunca desista.”

É:

“Continue enquanto o valor futuro justificar o custo futuro.”

Muito menos épico.

Muito mais útil.


🧠 Escalation of Commitment

Sunk Cost Fallacy costuma aparecer junto de algo chamado:

Escalation of Commitment

A tendência de aumentar investimento numa decisão anterior, especialmente quando surgem sinais de que ela talvez esteja errada.

Exemplo:

projeto atrasado.

Solução:

mais dinheiro.

Continua atrasado.

Mais equipe.

Mais consultoria.

Mais prazo.

Agora parar fica ainda mais doloroso.

O investimento adicional aumenta o sunk cost.

E o sunk cost aumenta pressão para investir ainda mais.

Círculo.


🔄 Espiral do compromisso

INVESTIMOS
↓
PROBLEMA
↓
INVESTIMOS MAIS
↓
SUNK COST AUMENTA
↓
FICA MAIS DIFÍCIL PARAR
↓
INVESTIMOS MAIS

Um projeto pode continuar não porque melhora.

Mas porque abandonar ficou emocionalmente insuportável.


☕ O ego entra no orçamento

Às vezes o custo afundado não é dinheiro.

É:

reputação.

Diretor patrocinou projeto.

Cancelar pode parecer:

admitir erro.

Então projeto continua.

Nesse caso:

o próximo milhão pode estar protegendo uma decisão passada.

Não criando valor futuro.


🧠 Identity Investment

Quanto mais uma pessoa associa sua identidade a uma decisão:

“meu projeto”;

“minha arquitetura”;

“minha estratégia”;

mais difícil abandoná-la.

Agora crítica ao projeto pode parecer crítica à pessoa.

Isso aumenta escalada de compromisso.


🪜 Authority Gradient

Se o projeto pertence ao diretor:

quem diz:

“precisamos cancelar”?

O júnior?

O fornecedor?

O gerente que foi promovido pelo projeto?

Authority Gradient torna sunk cost organizacional ainda mais perigoso.


👥 Groupthink

Diretor quer continuar.

Gerentes concordam.

Ninguém quer ser a voz:

“Talvez devêssemos encerrar.”

Agora consenso social reforça investimento.

Groupthink transforma sunk cost em estratégia coletiva.


🔎 Confirmation Bias

Depois de investir milhões:

equipe começa a procurar evidências de que projeto ainda vai dar certo.

Qualquer pequena vitória:

“Viu? Estamos avançando.”

Problemas:

“normais.”

Críticas:

“pessimismo.”

Confirmation Bias protege o investimento emocional.


⚓ Anchoring Bias

Estimativa inicial:

R$ 2 milhões.

Mesmo quando custo vira R$ 8 milhões, pessoas continuam pensando:

“projeto de dois milhões que atrasou.”

Não.

Agora é outro projeto econômico.

A âncora original ficou obsoleta.


🧠 Planning Fallacy volta

Projeto foi estimado em seis meses.

Depois de seis:

faltam dois.

Depois de oito:

faltam dois.

Depois de dez:

faltam dois.

A famosa:

síndrome dos 90% concluídos.

Projeto permanece 90% pronto por dois anos.


😄 Easter Egg nº 2 — “90% complete”

Existe uma velha piada em software:

Os primeiros 90% do código consomem 90% do tempo.

Os últimos 10% consomem os outros 90%.

Planning Fallacy encontra matemática corporativa alternativa.


🚨 O “quase pronto” é combustível do sunk cost

Se projeto está:

90% completo,

parar parece absurdo.

Mas talvez os últimos 10% contenham:

integração;

performance;

segurança;

migração;

dados;

produção.

Ou seja:

o trabalho mais difícil.

Percentual de conclusão pode ser ilusão.


📊 Percent Complete é perigoso

Pergunte:

90% de quê?

Linhas de código?

Funcionalidades?

Valor?

Risco?

Você pode ter:

CODING: 95%
TESTING: 20%
MIGRATION: 0%
PRODUCTION READINESS: 10%

“90% pronto” vira frase de PowerPoint.


💾 Mainframe: migração parcialmente concluída

Imagine migração de 100 aplicações.

80 migradas.

20 restantes são:

as mais complexas;

mais críticas;

mais acopladas.

Alguém diz:

— Já migramos 80%, não podemos parar.

Mas talvez os últimos 20% custem mais que os primeiros 80.

Quantidade não representa esforço futuro.


🧠 Cost-to-Go

Essa é uma ideia central.

Em vez de olhar:

Cost Spent

olhe:

Cost-to-Go

Quanto falta gastar daqui para frente?

E:

Value-to-Go

Quanto valor ainda podemos obter?

A decisão deve olhar para o futuro.


📊 Uma conta simples

Projeto A:

GASTO:
R$ 10 milhões

FALTA:
R$ 5 milhões

VALOR FUTURO:
R$ 20 milhões

Continuar pode fazer sentido.

Projeto B:

GASTO:
R$ 10 milhões

FALTA:
R$ 8 milhões

VALOR FUTURO:
R$ 3 milhões

O fato de ambos terem gasto R$ 10 milhões não significa mesma decisão.

O sunk cost é igual.

O futuro não.


🧠 Expected Future Value

Pergunta madura:

“Qual o benefício esperado daqui para frente?”

Não:

“Quanto já gastamos?”

Claro que custo histórico importa para aprendizado e governança.

Mas não deveria dominar a decisão marginal.


🎯 Pergunta Bellacosa nº 1

Quando alguém disser:

“Já investimos muito para parar.”

Pergunte:

“Se ainda não tivéssemos investido nada, começaríamos este projeto hoje nas condições atuais?”

Essa é brutalmente eficiente.

Se resposta for não:

sunk cost provavelmente está presente.


🎯 Pergunta Bellacosa nº 2

Outra:

“Qual é o custo daqui para frente?”


🎯 Pergunta Bellacosa nº 3

Outra:

“Qual valor futuro justifica esse custo?”


🎯 Pergunta Bellacosa nº 4

E:

“Estamos tentando criar valor ou justificar decisões antigas?”

Essa pergunta pode deixar a sala silenciosa.

Às vezes silêncio é útil.


🛑 Stop-loss

Finanças conhecem um conceito útil:

stop-loss.

Definir antecipadamente um ponto de saída.

Em projeto:

SE custo > X
SE prazo > Y
SE hipótese de valor falhar
SE condição crítica não for atendida

→ REAVALIAR

Não necessariamente cancelar automaticamente.

Mas parar e decidir novamente.


🧠 Kill Criteria

Podemos chamar:

Kill Criteria

Antes de começar:

“Em quais condições encerraremos?”

Isso é poderoso.

Porque depois de investir:

ficamos emocionalmente comprometidos.

Definir antes reduz viés.


☕ Bellacosa Mainframe: critérios antes do café virar intravenoso

Projeto começa.

Defina:

STOP / REASSESS IF:

- custo exceder 150%
- performance target falhar
- integração crítica inviável
- benefício econômico cair abaixo de X
- prazo ultrapassar Y

Agora você possui saída digna.


🧠 Precommitment

Outra vez.

Decisões prévias protegem nosso eu futuro.

Antes:

somos relativamente neutros.

Depois de milhões gastos:

não.

Precommitment cria estrutura.


🚦 Stage Gates

Projetos grandes podem ter pontos formais:

DISCOVERY
↓
GATE

PROTOTYPE
↓
GATE

BUILD
↓
GATE

MIGRATION
↓
GATE

Em cada gate:

ainda vale continuar?

Não:

já começamos, então prossiga.


🧠 Business Case não é documento fossilizado

Projeto aprovado em 2024.

Em 2026:

mercado mudou.

Tecnologia mudou.

Custos mudaram.

Business case precisa ser atualizado.

Não diga:

“Foi aprovado.”

Pergunte:

“Ainda é válido?”


📈 Opportunity Cost

Outro conceito central.

Continuar num projeto ruim não custa apenas dinheiro nele.

Custa:

o que você deixa de fazer com os mesmos recursos.

Equipe presa seis meses aqui.

Não trabalha em projeto melhor.

Esse é custo de oportunidade.


☕ O recurso mais caro pode ser o tempo

R$ 1 milhão pode voltar em receita futura.

Seis meses perdidos:

não voltam.

Especialmente em tecnologia.

Enquanto você insiste:

concorrente avança;

sistema envelhece;

equipe cansa.

Opportunity cost precisa entrar.


🪫 Burnout como sunk cost escondido

Projeto atrasado.

Equipe trabalhando noites.

Direção pensa:

já investimos muito esforço.

Então exige mais.

Agora sunk cost financeiro começa a consumir pessoas.

Muito perigoso.

Não use sacrifício anterior como justificativa para sacrifício futuro.


🧠 “Depois de tudo que fizemos...”

Essa frase é emocionalmente poderosa.

“Depois de todo esforço da equipe, não podemos cancelar.”

Talvez cancelar seja justamente respeitar o esforço e impedir desperdício adicional.

O trabalho passado continua tendo valor de aprendizado.

Mesmo se projeto acabar.


🧬 Knowledge is not wasted

Cancelar projeto não significa que tudo foi desperdiçado.

Você pode preservar:

código;

pesquisa;

POCs;

documentação;

aprendizado;

componentes reutilizáveis.

Sunk cost pode virar conhecimento.

Mas não precisa virar prisão.


👨‍💻 COBOL iniciante: jogar código fora dói

Você passa dois dias numa solução.

Descobre abordagem melhor.

Mas pensa:

“Não vou jogar fora dois dias.”

Então gasta outros cinco tentando salvar.

Todos nós fazemos isso.

A pergunta:

“Se eu visse essas duas soluções agora, sem saber qual escrevi, qual escolheria?”

Essa técnica remove ego e sunk cost.


🔀 Branch mental

Imagine:

Solução A:

já tem 2 dias investidos.

Precisa de mais 5.

Solução B:

zero investido.

Precisa de 2.

Escolha racional:

B.

Mas cérebro diz:

A.

Porque quer recuperar os dois dias.

Não consegue.

Eles já foram gastos.


🐛 Debugging e sunk cost

Você investiga hipótese Db2 por duas horas.

Nenhuma evidência.

Mas pensa:

“Agora vou até o fim.”

Porque abandonar parece admitir que perdeu duas horas.

Resultado:

mais três horas.

Melhor:

timebox.


⏱️ Hypothesis Timebox

Exemplo:

HIPÓTESE:
DB2

TIMEBOX:
20 MIN

SE EVIDÊNCIA FOR FRACA:
ROTACIONAR

Isso combate sunk cost durante incidentes.


🧠 Investigation Sunk Cost

Quanto mais tempo investigamos uma hipótese:

mais difícil abandoná-la.

Isso é uma forma pequena e muito prática de Sunk Cost Fallacy.

War Rooms sofrem disso diariamente.


⚓ Anchoring + Sunk Cost

Primeira hipótese:

rede.

Investe uma hora.

Agora existe:

âncora;

mais custo investido.

Muito mais difícil mudar para MQ.

Por isso checkpoints de hipótese são valiosos.


🔎 Confirmation Bias fica mais forte com investimento

Depois de horas:

qualquer sinal de rede parece:

“Finalmente!”

Mesmo que fraco.

Porque queremos justificar tempo gasto.

Isso é comportamento humano.

Não incompetência.

Processos devem compensar.


🧠 Escalation of Commitment em incidentes

Restart não funcionou.

Tenta novamente.

Depois terceira vez.

— Agora vai.

Por quê?

Porque já investimos.

Talvez devêssemos mudar abordagem.


😄 A definição Bellacosa do insanity loop

RESTART
↓
NÃO FUNCIONOU
↓
RESTART DE NOVO
↓
NÃO FUNCIONOU
↓
“VAMOS TENTAR MAIS UMA VEZ”

Talvez não seja troubleshooting.

Talvez seja religião.


🤖 IA e Sunk Cost Fallacy

Você investe meses numa solução de IA.

Modelo não entrega valor.

Mas empresa continua:

“Já gastamos muito.”

Tecnologia nova torna isso ainda mais comum porque existe hype, reputação e expectativa.

Pergunta permanece:

começaríamos hoje?


🧠 Vendor Lock-in psicológico

Não apenas lock-in técnico.

Empresa investiu:

licenças;

treinamento;

integrações.

Agora trocar fornecedor parece admitir desperdício.

Talvez manter seja correto.

Mas sunk cost não pode ser único argumento.

Avalie TCO futuro.


☁️ Cloud migration

Projeto de migração começa.

Descobre que algumas cargas são mais baratas on-premises.

Mas estratégia era:

“Tudo para cloud.”

Já investimos muito.

Então movemos mesmo assim.

Isso pode ser sunk cost + commitment to narrative.

Tecnologia deveria servir objetivo.

Não slogan.


🧠 Mainframe também

O contrário também pode acontecer.

“Já investimos décadas no mainframe, então tudo deve permanecer nele.”

Também é sunk cost.

A pergunta correta:

qual workload faz mais sentido onde?

Nem cloud por fé.

Nem mainframe por nostalgia.

Arquitetura é decisão presente.


☕ Isso é muito Bellacosa

Mainframe não precisa ser defendido com:

“já temos.”

Pode ser defendido quando:

performance;

custo;

segurança;

disponibilidade;

proximidade dos dados;

economia

fazem sentido.

Se não fizerem:

questione.

A melhor defesa de uma tecnologia é valor atual.

Não custo histórico.


🧠 Technology Tribalism

Sunk Cost pode virar identidade tecnológica:

“Somos Java.”

“Somos mainframe.”

“Somos cloud-first.”

“Somos SAP.”

Isso pode impedir decisões melhores.

Arquitetura madura pergunta:

qual ferramenta resolve este problema?


📊 TCO e sunk cost

Total Cost of Ownership futuro deve incluir:

operação;

licenças;

staff;

migração;

risco;

manutenção.

Custo passado:

registro financeiro.

Custo futuro:

decisão.

Não misture.


🚨 Segurança e sunk cost

Controle antigo custou milhões.

Nova arquitetura torna-o obsoleto.

Organização mantém porque:

foi caro.

Isso não o torna eficaz.

Security theater pode sobreviver décadas graças a sunk costs institucionais.


📋 Governance

Board precisa perguntar:

“Estamos mantendo isso porque funciona ou porque custou caro?”

Excelente pergunta.


🧠 Normalcy Bias

Projeto sempre recebe mais um trimestre.

Normalcy Bias:

vai melhorar.

Sunk Cost:

já gastamos demais.

Plan Continuation:

falta pouco.

Trio perigoso.


🌀 Drift Into Failure

Projeto ruim consome:

dinheiro;

pessoas;

atenção.

Outros sistemas recebem menos manutenção.

Agora insistência local cria risco global.

Sunk Cost pode alimentar Drift Into Failure em outras áreas.


👥 Diffusion of Responsibility

Projeto continua porque ninguém possui autoridade clara para cancelar.

Todo mundo acha:

decisão é do steering committee.

Steering acha:

sponsors querem.

Sponsors:

equipe técnica recomenda.

Ninguém encerra.

Responsabilidade diluída mantém sunk cost vivo.


🎯 Pergunta Bellacosa nº 5

“Quem possui autoridade real para dizer STOP?”

Se resposta não estiver clara:

temos outro risco.


🧠 Face-saving

Cancelar decisão pública pode gerar constrangimento.

Então líderes podem preferir gastar mais a admitir erro.

Isso é chamado em vários contextos de proteção de face.

Cultura madura precisa tornar mudança de rumo aceitável.


🛡️ Cancelar bem é competência

Uma organização deve celebrar:

projeto encerrado cedo após hipótese invalidada.

Isso economiza dinheiro.

Não é fracasso.

É:

detecção antecipada.


🧪 Fail Fast — com significado real

“Fail fast” virou clichê.

Mas aqui faz sentido:

descobrir cedo que hipótese não funciona.

Não:

produzir software ruim rapidamente.

A meta:

baratear aprendizado.


📈 Real Options

Você pode estruturar projetos para investir progressivamente.

Primeiro:

pequena aposta.

Depois:

evidência.

Depois:

mais investimento.

Isso reduz risco de grandes sunk costs antes de descobrir inviabilidade.


🔬 POC antes da fábrica

Antes de gastar R$ 20 milhões:

POC de R$ 100 mil.

Descobre limitação.

Excelente.

Alguns chamam:

“POC fracassou.”

Não.

POC cumpriu missão.

Descobriu cedo.


☕ A melhor falha custa barato

Uma das melhores frases para esta série:

Falhe enquanto o erro ainda cabe numa reunião pequena.

Não quando precisa de conselho, jurídico e imprensa.


🧠 Reversible versus Irreversible Decisions

Decisões reversíveis:

experimente.

Irreversíveis:

mais rigor.

Quanto mais caro for voltar:

mais importante evitar sunk cost psicológico futuro.


🔄 Exit Strategy

Antes de começar:

qual saída?

Projeto.

Contrato.

Tecnologia.

Migração.

Se não existe saída:

risco aumenta.


📋 Checklist anti-Sunk Cost

[ ] Quanto já gastamos?

[ ] Quanto desse gasto é recuperável?

[ ] Quanto ainda precisamos gastar?

[ ] Qual valor futuro esperamos?

[ ] Se começássemos hoje, faríamos igual?

[ ] Existem alternativas melhores agora?

[ ] Estamos continuando para criar valor ou justificar o passado?

[ ] Qual é o custo de oportunidade?

[ ] Qual é nosso kill criterion?

[ ] Quem pode interromper?

[ ] O business case ainda é válido?

[ ] A equipe está sendo usada como buffer?

[ ] Estamos confundindo persistência com competência?

[ ] Que conhecimento podemos preservar se pararmos?

🧪 Passo a passo para combater Sunk Cost Fallacy

Passo 1 — Separe passado e futuro

Colunas diferentes.


Passo 2 — Calcule cost-to-go

Quanto ainda falta?


Passo 3 — Recalcule value-to-go

Quanto valor ainda existe?


Passo 4 — Ignore temporariamente o gasto histórico

Pergunte:

começaríamos hoje?


Passo 5 — Liste alternativas

Talvez exista solução melhor agora.


Passo 6 — Considere custo de oportunidade

O que deixamos de fazer?


Passo 7 — Use stage gates

Reavalie formalmente.


Passo 8 — Crie kill criteria

Antes do apego emocional.


Passo 9 — Permita cancelamento sem caça às bruxas

Senão ninguém encerra nada.


Passo 10 — Preserve aprendizado

Parar não precisa apagar conhecimento.


📊 Decision Board

Uma tela simples:

PAST SPEND:
R$ 5M

COST TO GO:
R$ 4M

EXPECTED VALUE:
R$ 2.5M

ALTERNATIVE COST:
R$ 1.5M

ALTERNATIVE VALUE:
R$ 5M

Agora a decisão fica mais clara.

Não agradável.

Mas clara.


🧠 Uma decisão pode ter sido boa no passado e ruim agora

Importantíssimo.

Talvez iniciar projeto tivesse sido racional.

Circunstâncias mudaram.

Hoje parar pode ser racional.

Isso não significa:

decisão inicial foi estúpida.

Essa distinção reduz ego.


🌀 Hindsight Bias

Depois de cancelar:

“Nunca deveríamos ter começado.”

Talvez não.

Cuidado.

Com dados disponíveis na época, talvez fosse boa aposta.

O mundo mudou.

Ou descobrimos coisas.

Decisões têm tempo.


🧠 Dynamic Decision Quality

Uma decisão pode ser:

boa em janeiro;

ruim em agosto.

Reavaliar não é contradição.

É adaptação.


💻 COBOL: solução temporária virou projeto

Você cria workaround.

Funciona.

Investe tempo.

Depois arquitetura muda.

Agora workaround não faz mais sentido.

Mas:

“já investimos tanto nesse framework.”

Talvez esteja na hora de deletar.

Deletar código também é engenharia.


🗑️ Código removido não é trabalho perdido

Se uma rotina foi útil por cinco anos e depois apagada:

cumpriu sua função.

Software não precisa viver eternamente para justificar seu custo.


👻 Easter Egg nº 3 — Time Lords e apego

Companion:

— Doctor, você vai destruir essa máquina depois de passar três episódios construindo-a?

Doctor:

— Sim.

— Mas você trabalhou tanto!

— E?

— Não dói?

— Muito.

Pausa.

— Ainda assim ela continua sendo uma péssima ideia.

Isso é maturidade.


🧠 Em incidentes: quando parar uma investigação

War Room.

Hipótese:

network.

Tempo:

90 minutos.

Evidência:

nenhuma.

Não diga:

“já investimos 90 minutos.”

Diga:

“temos evidência suficiente para continuar?”

Se não:

rotacione.


📍 Hypothesis Board

NETWORK
TIME SPENT: 20m
CONFIDENCE: 40%

After 20m:
EVIDENCE: weak
CONFIDENCE: 15%

ACTION:
DEPRIORITIZE

A confiança deve cair com evidência fraca.

Não subir porque gastamos tempo.


🧠 Learning Value

Às vezes continuar investigação ainda faz sentido não porque hipótese principal seja provável, mas porque informação obtida tem valor.

Ótimo.

Declare isso.

“Vamos gastar mais 20 min porque o teste elimina três hipóteses.”

Agora existe valor futuro.

Não sunk cost.


💸 Orçamento anual e “use it or lose it”

Outro comportamento curioso.

Área recebeu orçamento.

Final do ano sobra.

Gasta porque:

senão perdemos ano que vem.

Não é exatamente sunk cost clássico, mas mostra como estruturas de incentivo podem criar gastos desconectados de valor.

Economia comportamental mora em toda organização.


🧠 Incentivos criam vieses sistemáticos

Se cancelar projeto prejudica carreira:

ninguém cancela.

Se terminar projeto ruim dá bônus:

todos terminam.

Viés individual vira comportamento institucional.


🏛️ Governance saudável

Board deveria premiar:

decisões de parar bem fundamentadas;

aprendizado;

reallocação de capital.

Não apenas:

quantos projetos chegaram ao fim.

Porque conclusão não é sinônimo de valor.


📓 Diário do Doctor

Se guardar apenas algumas ideias desta viagem, guarde estas:

Sunk Cost Fallacy é a tendência de continuar porque já investimos recursos irrecuperáveis.

Custos passados não devem dominar decisões futuras.

A pergunta correta é: vale investir o próximo recurso?

Sunk Cost frequentemente alimenta Escalation of Commitment.

Planning Fallacy cria atrasos; Sunk Cost dificulta abandonar o plano.

Plan Continuation Bias aparece quando o plano já está em execução.

Survivorship Bias torna histórias de persistência bem-sucedida mais visíveis que os fracassos.

Outcome Bias pode transformar persistência sortuda em “boa estratégia”.

Cost-to-go e value-to-go são mais úteis para decisão futura que gasto histórico.

Kill criteria e stage gates ajudam.

Cancelar cedo pode ser competência.

E principalmente:

O dinheiro, o tempo e o café de ontem já foram consumidos. A única coisa que ainda podemos decidir é o que fazer com o próximo real, a próxima hora e a próxima xícara.


🕰️ De volta à reunião

Projeto:

GASTO:
R$ 4.7M

FALTA:
estimativa R$ 3.2M

VALOR ATUAL ESPERADO:
R$ 1.8M

O diretor repete:

— Já gastamos quase cinco milhões.

Nosso programador responde:

— Eu sei.

— Então precisamos terminar.

— Por quê?

— Para não perder o investimento.

O Doctor pergunta:

— O investimento volta?

— Não.

— Então já foi perdido como caixa.

Silêncio.

O programador abre outra opção:

OPÇÃO B

REAPROVEITAR:
componentes existentes

CUSTO:
R$ 1.1M

VALOR:
R$ 4M

O diretor olha.

— Então você quer cancelar?

— Quero decidir entre A e B olhando para amanhã.

Não para ontem.

A reunião fica longa.

Desconfortável.

Finalmente:

projeto A encerrado.

Parte do código reaproveitada.

Equipe realocada.

Novo plano.

Ninguém comemora muito.

Cancelar não tem a adrenalina de um go-live.

Seis meses depois:

a solução alternativa entra em produção.

Custo total menor que o restante previsto do projeto original.

O diretor encontra o programador.

— Ainda dói pensar nos cinco milhões.

Ele responde:

— Claro.

— Então não foram desperdiçados?

Nosso jovem pensa.

— Parte talvez tenha sido.

Pausa.

— Mas gastar mais só para evitar admitir isso teria desperdiçado ainda mais.

O Doctor sorri.

— Finalmente.

VWORP.

VWORP.

VWORP.


🥚 Easter Egg final

Na manhã seguinte surge:

BELLACOSA.BIAS(SUNKCOST)

Dentro:

       IF MONEY-SPENT > ZERO
           CONTINUE
       END-IF.

       IF FUTURE-VALUE < FUTURE-COST
           PERFORM REASSESS
       END-IF.

       IF ONLY-REASON-TO-CONTINUE =
          'WE-SPENT-TOO-MUCH'
           PERFORM STOP-AND-THINK
       END-IF.

O programador encara o primeiro IF.

Sorri.

— Esse CONTINUE está perfeito.

Outro comentário:

* YESTERDAY'S MONEY
* CANNOT PAY TOMORROW'S VALUE.

Outro:

* PERSISTENCE IS NOT A BUSINESS CASE.

E naturalmente:

* BAD WOLF ALREADY PAID.

Nosso jovem fecha o membro.

Pouco depois recebe mensagem:

“Estamos investigando rede há duas horas. Queremos tentar mais um teste.”

Ele pergunta:

— Que nova evidência justifica?

Resposta:

— Nenhuma, mas já investimos bastante.

Nosso programador olha para a tela.

Sorri.

— Então o tempo investido está tentando tomar a próxima decisão.

— Como assim?

— Vamos voltar aos dados.

A hipótese de rede é abandonada.

Dez minutos depois encontram o problema numa aplicação downstream.

Nenhuma magia.

Nenhum heroísmo.

Apenas uma decisão pequena:

parar de pedir ao passado permissão para mudar de ideia.

VWORP.

VWORP.

VWORP.

A TARDIS desaparece.

No quadro da War Room permanece:

Não continue para justificar aquilo que já gastou. Continue apenas se aquilo que ainda pode ganhar justificar aquilo que ainda terá de gastar.

☕🌀

Next stop: Status Quo Bias — quando mudar parece tão arriscado que continuamos usando um processo ruim principalmente porque ele já está lá, funciona “mais ou menos” e ninguém quer ser a pessoa que mexeu nele.

quarta-feira, 10 de agosto de 2011

Kyousougiga (京騒戯画) — Quando o Mainframe Desenha um Universo e os Filhos Precisam Reiniciar o Sistema

 

Bellacosa Mainframe apresenta o anime kyousougiga

☕ Um Café no Bellacosa Mainframe

Kyousougiga (京騒戯画) — Quando o Mainframe Desenha um Universo e os Filhos Precisam Reiniciar o Sistema

"Alguns sistemas são escritos em COBOL. Outros são desenhados com um pincel. Mas ambos carregam a mesma pergunta: quem continuará mantendo o sistema quando o arquiteto desaparecer?"


Introdução

Existem animes que contam uma história.

Existem animes que fazem você pensar.

E existe Kyousougiga, uma obra que parece um dump hexadecimal de um universo paralelo, onde cada frame esconde um significado diferente.

Lançado inicialmente como uma Original Net Animation (ONA) em 2011, e posteriormente expandido para uma série de TV em 2013, Kyousougiga tornou-se um dos maiores "tesouros escondidos" da animação japonesa moderna. Produzido pela Toei Animation e dirigido por Rie Matsumoto, o anime rompe praticamente todas as convenções narrativas tradicionais, utilizando uma linguagem visual extremamente dinâmica e simbólica. (Wikipedia)

Para muitos espectadores, os primeiros episódios parecem caóticos.

Para quem insiste em assistir até o fim...

...descobre uma das histórias mais bonitas já escritas sobre família.

No Bellacosa Mainframe, eu costumo descrevê-lo assim:

Imagine que alguém compilou "Alice no País das Maravilhas", "A Viagem de Chihiro", budismo, física quântica, computação distribuída e relações familiares... tudo dentro de um único ambiente z/OS.


Ficha Técnica

ItemInformação
Título Original京騒戯画 (Kyousougiga)
Título InternacionalKyousougiga
CriadorIzumi Todo
DireçãoRie Matsumoto
EstúdioToei Animation
MúsicaGo Shiina (TV) / Hiroshi Takaki (ONA inicial)
Lançamento ONA6 de dezembro de 2011
ONA complementaragosto a dezembro de 2012 (5 episódios curtos)
Série TV2 de outubro a 25 de dezembro de 2013
Episódios TV10 principais + episódios especiais/recapitulações (13 ao todo)
Duraçãoaproximadamente 25 minutos

O estúdio

Quando pensamos em Toei Animation, normalmente lembramos de:

  • Dragon Ball

  • One Piece

  • Digimon

  • Sailor Moon

  • Saint Seiya

Todos grandes sucessos comerciais.

Kyousougiga, entretanto, foi um projeto completamente diferente.

A Toei permitiu que Rie Matsumoto experimentasse uma direção extremamente autoral, resultando em uma das animações mais ousadas do estúdio. A obra é frequentemente citada por fãs como uma "joia escondida" justamente por fugir do estilo mais convencional da Toei. (Reddit)


Sinopse

Há muito tempo...

Um monge chamado Myōe possuía um dom extraordinário:

Tudo o que desenhava ganhava vida.

Foi assim que nasceram:

  • uma cidade;

  • uma família;

  • um universo inteiro.

Quando seus criadores desaparecem, esse mundo continua existindo sozinho.

Anos depois...

Uma garota chamada Koto, acompanhada de seus irmãos A e Un, invade essa dimensão procurando sua mãe.

Sem perceber...

Ela inicia a maior mudança que aquele universo já sofreu.


Resumo da História

A Capital do Espelho (Mirror Capital) é uma realidade paralela inspirada em Kyoto.

Ela funciona como uma espécie de "sandbox" criado por Myōe.

Ali vivem:

  • espíritos;

  • demônios;

  • humanos;

  • animais vivos desenhados;

  • máquinas;

  • divindades.

Tudo permanece congelado no tempo.

Até que Koto chega.

Seu enorme martelo literalmente quebra as regras daquele mundo.

Enquanto parece uma aventura caótica, a história verdadeira fala sobre:

  • abandono;

  • aceitação;

  • amadurecimento;

  • família;

  • recomeços.



Os principais personagens

Koto

A protagonista.

Cheia de energia.

Curiosa.

Impulsiva.

Seu martelo destrói qualquer barreira.

Ela representa mudança.


Myōe (Yakushimaru)

Talvez o personagem mais complexo.

Foi adotado.

Recebeu uma vida que nunca escolheu.

É praticamente imortal.

Carrega enorme culpa.

No Mainframe seria:

O Administrador que herdou um sistema legado impossível de desligar.


Kurama

O intelectual.

Quer descobrir o mundo exterior.

É a curiosidade científica.

Seria o arquiteto que deseja migrar o legado para uma nova plataforma.


Yase

Vive presa ao passado.

Coleciona objetos.

Coleciona memórias.

Tem medo da mudança.


Lady Koto

A mãe.

Representa amor.

Mas também ausência.

Sua figura move praticamente toda a narrativa.


Inari

O criador.

Possui poderes quase divinos.

Mas emocionalmente é falho.

É um excelente arquiteto...

...e um péssimo administrador da própria família.


O que torna Kyousougiga diferente?

Praticamente tudo.

Enquanto a maioria dos animes explica o universo ao espectador...

Kyousougiga faz exatamente o contrário.

Você precisa montar o quebra-cabeça.

Ele utiliza:

  • narrativa não linear;

  • múltiplas linhas temporais;

  • simbolismo budista;

  • metáforas visuais;

  • mudanças repentinas de ritmo;

  • enquadramentos experimentais;

  • animação extremamente fluida.

É um anime que confia totalmente na inteligência do espectador.


Temática

Embora pareça fantasia...

Os temas são profundamente humanos.

Família

Toda a obra gira em torno da pergunta:

O que realmente faz alguém ser pai ou mãe?


Crescimento

Os personagens precisam aceitar mudanças.

Exatamente como sistemas que precisam evoluir.


Identidade

Quem somos?

Nossos criadores?

Nossas escolhas?

Ou aquilo que construímos?


Livre Arbítrio

Mesmo criados por outra pessoa...

Os personagens escolhem seus próprios caminhos.


Classificação

Gêneros

  • Fantasia

  • Ação

  • Drama

  • Sobrenatural

  • Psicológico

  • Família

  • Isekai (conceitualmente)

Classificação indicativa

Aproximadamente 14 anos, por conter ação intensa, temas existenciais e conflitos emocionais. (A classificação pode variar conforme o país e a distribuidora.)


As aventuras

Cada episódio parece uma corrida desenfreada.

Explosões.

Perseguições.

Combates.

Portais.

Deuses.

Coelhos.

Espelhos.

Mas...

Quase todas essas aventuras possuem significado simbólico.

O martelo de Koto não serve apenas para destruir.

Ele quebra:

  • ressentimentos;

  • culpas;

  • ciclos familiares;

  • estagnação.


Mensagens ocultas

O espelho

Representa a realidade refletida.

Nem tudo é verdadeiro.

Nem tudo é falso.


O coelho

Na tradição japonesa...

O coelho frequentemente simboliza transformação.

Aqui ele também representa maternidade.


Desenhos vivos

Os personagens desenhados são metáfora para filhos.

Foram criados.

Mas passam a existir por conta própria.


Kyoto

A Capital do Espelho é inspirada na antiga Kyoto.

Mistura:

  • budismo;

  • folclore;

  • arquitetura tradicional;

  • modernidade.


A e Un

Representam "Alpha" e "Omega" da tradição budista japonesa.

O começo.

E o fim.


Bellacosa Mainframe interpreta

Imagine que Myōe seja um programador COBOL.

Ele escreve um sistema gigantesco.

Depois...

Vai embora.

Os filhos herdam:

  • milhares de módulos;

  • documentação incompleta;

  • regras antigas;

  • processos que ninguém entende.

Durante décadas...

Todos apenas mantêm o ambiente funcionando.

Até que chega uma jovem chamada Koto.

Ela não tenta entender tudo.

Ela muda tudo.

Esse é exatamente o papel da nova geração de profissionais.

Às vezes...

É preciso coragem para recompilar um sistema inteiro.


Impacto cultural

Kyousougiga nunca vendeu como um grande blockbuster.

Entretanto...

É extremamente respeitado entre animadores e fãs por sua direção visual e narrativa experimental. Em comunidades como r/anime, costuma ser citado como um dos maiores "hidden gems" (tesouros escondidos) da década de 2010. (Reddit)

Rie Matsumoto tornou-se uma diretora admirada justamente por esse trabalho e posteriormente dirigiu projetos de grande destaque, como Blood Blockade Battlefront. (Crunchyroll)


Houve censura?

Praticamente não.

A obra não sofreu grandes casos de censura internacional conhecidos.

Isso ocorre porque:

  • não possui violência gráfica extrema;

  • não utiliza fan service excessivo;

  • não contém temas politicamente controversos.

Sua "dificuldade" sempre foi narrativa.

Não moral.


Mangá, Novels e Games

Mangá

Sim.

Existe uma adaptação em mangá:

  • Autor: Izumi Todo

  • Arte: Mercre

  • Revista: Dengeki Maoh

  • Volumes: 2

  • Publicação: dezembro de 2011 a janeiro de 2014. (Wikipedia)

Light Novel

Não existe uma light novel oficial que adapte a história principal.

Como Kyousougiga nasceu como um projeto original para animação, o anime é a obra-base.

Games

Também não há um jogo oficial dedicado à franquia em consoles ou PC. Os personagens apareceram apenas de forma promocional em materiais relacionados à Banpresto, sem um título próprio de grande porte. (Wikipedia)

Conclusão

Kyousougiga é um daqueles raros animes que não podem ser medidos apenas pelo roteiro.

Ele deve ser sentido.

Cada cor.

Cada explosão.

Cada silêncio.

Cada frame.

Tudo possui propósito.

No universo Bellacosa Mainframe, ele nos lembra uma grande verdade:

Os sistemas mais importantes nunca são apenas programas. São as pessoas que continuam mantendo-os vivos quando seus criadores já partiram.

Assim como um ambiente z/OS atravessa décadas graças às gerações de analistas que o compreendem, a Capital do Espelho continua existindo porque seus habitantes escolhem preservar laços, enfrentar mudanças e reconstruir o que parecia impossível. No fim, Kyousougiga nos ensina que herdar um legado não significa viver preso ao passado — significa encontrar coragem para recompilá-lo e entregá-lo ainda melhor para a próxima geração.

domingo, 10 de julho de 2011

Planning Fallacy: Doctor Who, COBOL e o Dia em que uma Mudança de Seis Horas Foi Planejada para Quarenta Minutos

Bellacosa Mainframe e o planning fallacy


☕ Um Café no Bellacosa Mainframe

Planning Fallacy: Doctor Who, COBOL e o Dia em que uma Mudança de Seis Horas Foi Planejada para Quarenta Minutos

Uma viagem pela TARDIS dos incidentes para entender por que subestimamos tempo, esforço, riscos e complexidade — mesmo quando temos um histórico inteiro dizendo que estamos sendo otimistas demais

Segunda-feira.

10:02.

Sala de planejamento.

Café número um.

Nenhum incidente.

Nenhuma pressão.

Ainda.

Na tela:

MUDANÇA:
ALTERAÇÃO DE REGRA DE CÁLCULO

ATIVIDADES:
1. Deploy COBOL
2. Bind Db2
3. Restart CICS
4. Validação
5. Reconciliação
6. Liberação

TEMPO ESTIMADO:
40 minutos

Nosso jovem programador COBOL olha para a planilha.

Depois olha para o especialista.

— Quarenta minutos?

— Sim.

— Quanto levou a última mudança parecida?

Silêncio.

Alguém consulta o histórico.

ÚLTIMA:      4h17
ANTERIOR:    5h02
ANTERIOR:    3h48
ANTERIOR:    6h11

Nosso programador franze a testa.

— Então por que quarenta minutos?

O gerente responde:

— Porque agora conhecemos o processo.

O especialista complementa:

— Da última vez tivemos problemas excepcionais.

Outro:

— Desta vez vai ser mais simples.

Nosso jovem olha novamente para a tabela.

Quatro mudanças anteriores.

Todas muito acima de quarenta minutos.

Mas a reunião continua.

10:37.

Plano aprovado.

Janela:

00:00 → 01:00

Uma hora.

Porque quarenta minutos deixam vinte de margem.

Perfeito.

Ou quase.

VWORP.

VWORP.

VWORP.

A TARDIS materializa-se atrás do projetor.

A porta abre.

O Doctor sai.

Olha para a planilha.

Depois para os tempos históricos.

Depois para:

ESTIMATIVA: 40 MIN

— Interessante.

O gerente pergunta:

— Algum problema?

— Talvez.

O Doctor aponta para as quatro execuções anteriores.

— Vocês têm quatro experiências reais dizendo aproximadamente quatro a seis horas.

Depois aponta para a estimativa.

— E uma experiência imaginária dizendo quarenta minutos.

Pausa.

— E decidiram confiar na imaginária.

Bem-vindo ao:



Planning Fallacy

Ou:

Falácia do Planejamento

A tendência humana de subestimar quanto tempo, esforço, dinheiro ou recursos uma atividade futura exigirá — mesmo quando experiências anteriores mostram repetidamente que tarefas semelhantes levam mais tempo.


🌀 A TARDIS já percorreu uma longa estrada

Nossa série começou estudando como sistemas falham.

Depois descobrimos algo muito mais interessante:

sistemas falham também porque seres humanos possuem maneiras previsíveis de interpretar mal a realidade.

Já conhecemos:

Swiss Cheese Model — várias defesas podem falhar juntas.

Normalization of Deviance — desvios viram rotina.

Hindsight Bias — o passado parece previsível depois.

Confirmation Bias — buscamos provas daquilo que acreditamos.

Anchoring Bias — a primeira informação pesa demais.

Groupthink — grupos convergem rapidamente.

Authority Gradient — hierarquia pode silenciar informação.

Plan Continuation Bias — continuamos mesmo quando deveríamos parar.

Alarm Fatigue — alertas demais viram ruído.

Automation Bias — confiamos demais na máquina.

Drift Into Failure — sistemas derivam lentamente para a borda.

Diffusion of Responsibility — todos sabem e ninguém assume.

Normalcy Bias — esperamos que tudo volte ao normal.

Survivorship Bias — estudamos apenas quem sobreviveu.

Base Rate Neglect — ignoramos frequências reais.

Availability Heuristic — o que lembramos facilmente parece mais provável.

Outcome Bias — confundimos resultado com qualidade da decisão.

Overconfidence Bias — acreditamos que sabemos e controlamos mais do que realmente sabemos.

Agora chegamos a um fenômeno especialmente importante para projetos, mudanças, migrações e incidentes:

subestimar sistematicamente o futuro.


🧠 O que é Planning Fallacy?

Imagine uma tarefa.

Você pensa:

“Se tudo correr normalmente, termino em duas horas.”

O problema está escondido numa expressão:

“se tudo correr normalmente.”

Seu plano mental costuma representar:

o caminho ideal;

sem interrupções;

sem erro;

sem retrabalho;

sem dependência indisponível;

sem atraso humano;

sem mudança de requisito;

sem aquela coisa misteriosa que acontece sempre às 03:17.

Ou seja:

planejamos o futuro como se ele tivesse obrigação de cooperar.

Representando:

PLANO MENTAL:

START
 ↓
A
 ↓
B
 ↓
C
 ↓
DONE

Vida real:

START
 ↓
A
 ↓
ERRO
 ↓
CORREÇÃO
 ↓
B
 ↓
ESPERA
 ↓
DEPENDÊNCIA
 ↓
RETESTE
 ↓
C
 ↓
ROLLBACK
 ↓
NOVO TESTE
 ↓
DONE

O curioso?

Nós já sabemos disso.

E ainda planejamos como se o primeiro desenho fosse mais realista.


☕ Bellacosa Mainframe: “é só alterar um copybook”

Existem algumas palavras que deveriam provocar imediatamente uma pequena sirene no cérebro de qualquer mainframeiro.

Uma delas:

“Só.”

“É só alterar um copybook.”

“É só aumentar o campo.”

“É só recompilar.”

“É só fazer o bind.”

“É só restartar.”

“É só mudar um parâmetro.”

Toda frase que começa com:

“É só...”

merece uma investigação.

Porque muitas vezes o “só” esconde dependências.


💻 O famoso campo de 5 para 7 posições

Imagine:

01 WS-CODIGO PIC 9(5).

Negócio pede:

PIC 9(7).

Gerente:

— Mudança simples.

Programador iniciante:

— É só aumentar o campo.

Veterano sorri.

Porque sabe.

Copybook usado por:

17 programas.

3 arquivos.

2 interfaces.

DB2.

Relatório.

BMS.

MQ.

Sistema externo.

Agora:

“MUDAR 5 PARA 7”

virou:

IMPACT ANALYSIS
COPYBOOK
RECOMPILE
DATASET
LAYOUT
SORT
DB2
INTERFACE
TEST
REGRESSION
DEPLOY
RECONCILIATION

O código mudou em um minuto.

O sistema levou três semanas.

Isso é uma das belezas do mainframe.

A linha de código pode ser simples.

A história dela, não.


🧠 Por que subestimamos?

Porque nossa mente tende a usar algo chamado:

Inside View

Pensamos na tarefa específica.

Nosso plano.

Nossa equipe.

Nossa experiência.

Imaginamos:

primeiro faço isso, depois aquilo.

Cada passo parece curto.

Então somamos.

10 + 10 + 10 + 10
=
40 minutos

Perfeito.

Só esquecemos:

espera;

reunião;

permissão;

deploy;

problema;

rollback;

latência;

validação;

ambiguidade.

O Inside View conta a história ideal do projeto.


🔭 Outside View

Existe uma defesa extraordinária:

Outside View

Em vez de perguntar:

“Quanto achamos que esta atividade levará?”

Pergunte:

“Quanto atividades semelhantes realmente levaram?”

Nosso exemplo:

3h48
4h17
5h02
6h11

Talvez quarenta minutos não seja uma estimativa.

Talvez seja literatura fantástica.


📊 Reference Class Forecasting

Essa abordagem é conhecida como Reference Class Forecasting.

A ideia:

  1. encontre uma classe de projetos parecidos;

  2. observe resultados reais;

  3. use essa distribuição para estimar o novo projeto;

  4. só depois ajuste por diferenças concretas.

Exemplo:

Últimas 10 mudanças desse tipo:

2h50
3h20
3h42
4h01
4h17
4h50
5h02
5h35
6h11
7h03

Agora alguém diz:

“Nossa leva 40 minutos.”

Pergunta:

O que mudou materialmente para justificar essa redução?

Se houver resposta forte:

ótimo.

Se resposta for:

“Desta vez vai dar certo.”

temos Planning Fallacy.


👻 Easter Egg nº 1 — TARDIS não resolve cronograma

Companion:

— Doctor, quanto tempo vai levar?

— Dez minutos.

Corta para:

três planetas destruídos;

dois paradoxos;

uma invasão Cyberman;

um chá interrompido;

e 47 minutos de episódio.

Talvez até Time Lords sofram Planning Fallacy.

A diferença é que eles possuem máquina do tempo.

Nós temos Change Window.

Muito pior.


⏱️ A soma das tarefas não é o tempo do projeto

Esse ponto é importantíssimo.

Você pode ter:

Tarefa A: 10 min
Tarefa B: 15 min
Tarefa C: 20 min

Total ingênuo:

45 minutos.

Mas pode existir:

espera aprovação: 20
transição: 10
validação: 30
problema eventual: 25
comunicação: 10

Tempo real:

140 minutos.

O trabalho inclui:

tempo entre os trabalhos.


🧠 Queueing Time

Em sistemas, entendemos fila.

Mas curiosamente esquecemos filas humanas.

Você termina seu código.

DBA precisa fazer bind.

DBA está em outro incidente.

Sua atividade “de cinco minutos” espera 40.

Elapsed time ≠ CPU time.

O mainframeiro deveria entender isso perfeitamente.


😄 Easter Egg nº 2 — CPU TIME versus ELAPSED TIME

JCL mostra:

CPU TIME:     00:01:23
ELAPSED:      00:47:18

A humanidade inteira poderia aprender planejamento apenas olhando essa diferença.

Trabalho efetivo:

1 minuto.

Mundo real:

Planejamento também possui elapsed time.


🧠 Optimism Bias

Planning Fallacy frequentemente possui um companheiro:

Optimism Bias.

Tendemos a acreditar:

“As coisas provavelmente correrão bem conosco.”

Não é necessariamente ingenuidade.

Pode ser motivador.

Mas cronogramas precisam ser baseados em distribuição.

Não esperança.


🧠 Overconfidence Bias volta imediatamente

Nosso capítulo anterior encaixa perfeitamente.

Especialista:

— Eu faço isso em meia hora.

Por quê?

— Tenho experiência.

Overconfidence diz:

minha habilidade reduz quase toda variabilidade.

Planning Fallacy responde:

então posso estimar agressivamente.

A dupla transforma:

experiência

em:

cronograma impossível.


🎯 “Desta vez é diferente”

Talvez seja.

Mas precisamos explicar:

como?

Exemplo válido:

mudança anterior levava cinco horas porque deployment era manual.

Agora pipeline reduz essa etapa em duas horas.

Excelente.

Dados.

Outro:

“A equipe está mais preparada.”

Quanto?

Que etapa diminuiu?

Como medimos?

Sem evidência:

otimismo.


⚓ Anchoring Bias no cronograma

Alguém fala primeiro:

— Duas horas.

Pronto.

Agora toda negociação gira em torno de duas horas.

Outra pessoa pensa:

quatro.

Mas começa:

“Talvez três?”

A primeira estimativa virou âncora.

Isso é Planning Fallacy + Anchoring Bias.


👥 Groupthink do prazo

Gerente:

— Dá para sexta?

Primeira pessoa:

— Acho que sim.

Segunda:

— Sim.

Terceira olha.

Talvez pense:

não.

Mas todos estão concordando.

— Sim.

Groupthink transformou desejo em plano.


🪜 Authority Gradient

Diretor pergunta:

— Conseguimos fazer durante a janela de uma hora?

Especialista sabe:

provavelmente não.

Mas responde:

— Vamos tentar.

Adivinhe qual número entra na planilha?

Uma hora.

Agora o cronograma não representa engenharia.

Representa hierarquia.


💰 Pressão comercial também distorce

Planning Fallacy não é apenas viés individual.

Pode ser incentivado.

Exemplo:

fornecedor diz:

Projeto A:

6 meses.

Fornecedor B:

Fornecedor C:

Quem ganha?

Talvez C.

Então existe incentivo para subestimar.

Depois:

aditivo contratual.

Atraso.

Replanejamento.

Às vezes o sistema recompensa previsões otimistas.


🧠 Strategic Misrepresentation

Aqui precisamos separar uma coisa.

Planning Fallacy é geralmente uma distorção genuína.

A pessoa realmente acredita no prazo.

Outra coisa é prometer conscientemente prazo irreal para obter aprovação.

Isso é diferente.

Mas ambos podem coexistir em organizações.


☕ “Venda primeiro, resolva depois”

Equipe comercial vende três meses.

Engenharia descobre:

Planning Fallacy?

Talvez.

Incentivo?

Talvez.

Governança precisa distinguir.


📈 Dados históricos salvam novamente

Nosso arsenal está ficando repetitivo.

Isso é bom.

Porque algumas defesas combatem vários vieses.

Use:

últimas mudanças;

últimos projetos;

últimos incidentes;

tempo médio;

mediana;

percentis.

Não apenas:

melhor caso.


📊 Média pode enganar

Tempos:

1h
1h
1h
1h
10h

Média:

2h48.

Mediana:

1h.

Mas se o atraso de 10 horas acontece 20% das vezes, talvez sua janela precise considerar cauda.

Planejamento crítico precisa olhar distribuição.


🐉 Tail Risk

Caudas importam.

Um projeto pode normalmente levar:

2h.

Mas em 10%:

8h.

Se sua janela operacional é 3h:

temos problema.

Não basta usar “tempo típico”.

Precisamos pensar:

P50;

P80;

P90;

P95.


📊 P50 versus P90

Imagine histórico:

P50:

3h.

P90:

6h.

Se você precisa de confiança alta:

planeje mais perto de 6h.

Se usar 3h:

metade dos casos pode estourar.

Isso é escolha.

Não surpresa.


☕ Bellacosa Mainframe: Change Window

Mudança precisa caber em:

00:00–04:00

Tempo estimado:

3h30.

Parece caber.

Mas rollback leva:

1h.

Agora não cabe.

Porque janela precisa incluir:

execução;

validação;

decisão;

rollback.

O tempo de saída também é parte do plano.


🛑 Last Safe Moment volta

Do Plan Continuation Bias:

qual o último momento seguro de retorno?

Se mudança leva 3h e rollback 1h:

você não possui janela de 4h para executar.

Possui menos.

Precisa reservar saída.


🧠 Planning Fallacy alimenta Plan Continuation Bias

Plano previa:

40 minutos.

Após 50:

— Já estamos atrasados.

Uma hora:

— Falta pouco.

Duas:

— Já investimos demais.

Agora Planning Fallacy produziu Plan Continuation Bias.

Subestimamos.

Depois insistimos.


🚨 O atraso muda risco

Quando plano estoura:

equipe cansa;

janela diminui;

rollback aperta;

pressão aumenta.

Logo, erro de estimativa não é apenas problema de agenda.

É:

risco operacional.


🧀 Swiss Cheese e cronograma impossível

Imagine barreiras:

teste;

validação;

reconciliação;

rollback.

Cronograma apertado começa a consumir.

— Não dá tempo para teste completo.

Primeiro buraco.

— Validação pode ser reduzida.

Segundo.

— Reconciliação depois.

Terceiro.

Planning Fallacy pode literalmente criar buracos no Swiss Cheese.


🌀 Drift Into Failure

Ano 1:

mudanças têm 6h.

Pressão por janela menor.

Ano 2:

4h.

Ano 3:

3h.

Ano 4:

2h.

Processo continua funcionando porque pessoas improvisam.

A margem desaparece.

Planning Fallacy institucional pode alimentar drift.


🧠 Normalization of Deviance

Primeiro atraso:

exceção.

Depois:

normal.

Cronograma continua oficialmente 1h.

Tempo real:

3h.

Todos sabem.

Ninguém atualiza plano.

Agora o documento vive num universo.

Operação em outro.


🗺️ Work as Imagined versus Work as Done novamente

Planejamento:

00:00 deploy
00:20 restart
00:30 test
00:40 done

Vida real:

00:00 deploy
00:25 problema de acesso
00:48 autorização
01:15 deploy
01:40 bind
02:05 restart
02:30 teste
03:12 reconciliação

Se isso acontece repetidamente:

não temos incidente excepcional.

Temos estimativa ruim.


🔔 Alarm Fatigue do cronograma

Quando todos os projetos estão atrasados:

atraso deixa de parecer alerta.

“Projeto sempre atrasa.”

Normalization of Deviance.

Mas por que continuamos usando estimativas que nunca funcionam?

Talvez porque o plano não está servindo como previsão.

Está servindo como desejo.


🎯 Pergunta Bellacosa nº 1

Quando alguém estimar:

“Duas horas.”

Pergunte:

“Quanto levaram as últimas cinco atividades parecidas?”


🎯 Pergunta Bellacosa nº 2

Outra:

“O que precisa acontecer perfeitamente para caber nesse prazo?”

Se a lista for longa:

prazo frágil.


🎯 Pergunta Bellacosa nº 3

Outra:

“Que tempo estamos reservando para falha e recuperação?”


🎯 Pergunta Bellacosa nº 4

E:

“Qual percentil de confiança representa essa estimativa?”

Talvez:

duas horas = P30.

Quatro = P80.

Agora discussão fica madura.


🧪 Como combater Planning Fallacy

Passo 1 — Use Outside View

Antes de estimar:

histórico.


Passo 2 — Crie Reference Class

Compare com tarefas realmente parecidas.


Passo 3 — Separe esforço de elapsed time

Horas de trabalho ≠ duração calendário.


Passo 4 — Liste dependências

Quem precisa participar?


Passo 5 — Inclua validação

Teste também leva tempo.


Passo 6 — Inclua rollback

Saída faz parte do plano.


Passo 7 — Inclua margem

Não planeje até o último minuto.


Passo 8 — Use ranges

Não:

2h.

Mas:

P50 = 2h30; P90 = 5h.


Passo 9 — Registre estimativa versus real

Aprenda.


Passo 10 — Atualize modelo

Não repita o mesmo erro infinitamente.


📓 Estimation Journal

Antes:

EXPECTED:
2h

P90:
4h

MAIN RISKS:
DBA availability
MQ restart
reconciliation

Depois:

ACTUAL:
4h27

Pergunte:

por quê?

Com o tempo:

melhora calibração.


📊 Estimate Accuracy

Não puna apenas quem “errou prazo”.

Meça padrões.

Equipe A sempre estima metade do real?

Multiplique por fator histórico enquanto corrige processo.

Chamemos brincando de:

Bellacosa Reality Factor

Se:

Estimado médio: 2h
Real médio:      4h

Fator:

Próxima estimativa de 3h:

baseline realista:

6h.

Não é elegante.

Mas funciona melhor que fingir surpresa.


😄 Hofstadter’s Law entra para o café

Existe uma observação famosa conhecida como Lei de Hofstadter:

tarefas levam mais tempo do que esperamos, mesmo quando levamos em conta que levam mais tempo do que esperamos.

É humor.

Mas descreve maravilhosamente o Planning Fallacy.


💻 Desenvolvimento de software

Programador:

— Esse bug leva uma hora.

Primeiros 20 minutos:

descobre que não entende causa.

Depois:

ambiente não reproduz.

Depois:

log insuficiente.

Depois:

correção quebra teste.

Agora:

um dia.

Todo desenvolvedor conhece isso.


🐛 Debugging não é linha reta

Estimativa de debugging é particularmente difícil.

Porque, se você soubesse exatamente o problema, talvez já tivesse resolvido.

Incerteza faz parte.

Melhor:

ranges;

timeboxes;

checkpoints.


🧠 Unknown Unknowns voltam

Projeto novo contém coisas que nem sabemos que precisam ser feitas.

Isso não significa adicionar 10% arbitrário e acreditar que resolveu.

Pode exigir:

spikes;

prototipagem;

descoberta;

buffers.


🧪 Spike técnico

Antes de prometer:

faça pequeno experimento.

Exemplo:

“Precisamos integrar COBOL com nova API.”

Não estime projeto inteiro só por documentação.

Primeiro:

proof of concept.

Agora unknowns diminuem.


📚 Requirements também crescem

Planning Fallacy não acontece apenas porque somos ruins em estimar execução.

Escopo muda.

Negócio aprende durante projeto.

Isso precisa entrar no modelo.

Se projetos parecidos sempre crescem 20% de escopo:

trate isso como histórico.


💰 Custo também sofre

Projeto:

R$ 1 milhão.

Depois:

1,5.

Mesma estrutura.

Planning Fallacy existe em:

tempo;

dinheiro;

equipe;

complexidade.


👨‍💻 O COBOL iniciante e a estimativa

Chefe:

— Quanto leva?

Não responda imediatamente:

“uma hora.”

Faça perguntas.

Qual ambiente?

Há teste?

Copybook é compartilhado?

Precisa DB2?

Impact analysis?

Deploy?

Janela?

Rollback?

Depois:

“Alteração em si é pequena, mas ponta a ponta eu estimaria 1–3 dias, dependendo dos impactos.”

Isso é maturidade.


🧠 Não confunda precisão com confiança

“2 horas e 17 minutos.”

Parece científico.

Talvez seja invenção com casas decimais.

Às vezes:

“entre 3 e 5 horas”

é mais honesto.


📏 False Precision

Outro fenômeno relacionado.

Quanto mais incerta a tarefa, menos sentido existe em precisão excessiva.

Não faça:

ETA = 47 MIN

se erro histórico é:

±3h.


🪜 Authority Gradient e estimativa

Se gerente precisa ouvir “sexta”, equipe pode produzir sexta.

Depois:

sábado.

segunda.

quarta.

Uma cultura madura permite:

“Ainda não sabemos; preciso fazer descoberta.”

Isso reduz cronograma ficcional.


👥 Groupthink em projetos

Se todas as equipes dizem:

“sim, dá”

pergunte:

alguém fez estimativa independente?

Talvez todos estejam ancorados no prazo desejado.


📝 Independent Estimation

Antes de reunião:

cada especialista estima separadamente.

Depois compare.

Exemplo:

João: 2h
Maria: 5h
Carlos: 6h
Ana: 1h30

Excelente.

Há divergência.

Discuta.

Não force média silenciosa.


🎲 Planning Poker — com cuidado

Métodos de estimativa relativa podem ajudar.

Mas não eliminam Planning Fallacy.

Se todo grupo compartilha mesma visão otimista:

consenso continua errado.

Reference data melhora.


📊 Monte Carlo Simulation

Em planejamentos mais maduros, podemos modelar distribuição de duração e simular múltiplos cenários.

Não precisamos fazer cálculo avançado para toda mudança COBOL.

Mas a ideia importa:

futuro possui distribuição.

Não ponto único.


🧠 Prazos são probabilísticos

Quando dizemos:

“terminará sexta”

deveríamos mentalmente perguntar:

com qual confiança?

Talvez:

50%.

90%.

99%.

Essa diferença muda compromisso.


📆 Deadline versus Forecast

Outra distinção fundamental.

Deadline:

quando precisa terminar.

Forecast:

quando provavelmente terminará.

Se deadline é sexta e forecast é terça seguinte:

o problema não desaparece chamando terça de sexta.

Precisamos mudar:

escopo;

recursos;

sequência;

risco.


🧠 Plano não altera capacidade física

Essa ideia lembra Authority Gradient.

Diretor dizer:

“tem que acabar sexta”

não faz automaticamente o trabalho caber.

Cronograma não obedece hierarquia.

Tal como matemática.


🔥 O triângulo clássico

Tempo.

Escopo.

Recursos.

Qualidade/risco.

Se comprimimos tempo sem alterar nada:

alguma coisa absorve.

Frequentemente:

margem;

teste;

pessoas.

Isso pode produzir incidente.


🪫 Burnout como buffer escondido

Às vezes cronogramas “funcionam” porque pessoas trabalham:

noite;

fim de semana;

horas extras.

Projeto parece bem estimado.

Na verdade:

buffer foi retirado dos seres humanos.

Perigoso.


🧠 Survivorship Bias nas estimativas

Você lembra projetos entregues heroicamente.

Os cancelados desaparecem.

Conclui:

“Sempre damos um jeito.”

Talvez os sobreviventes só existam porque alguém trabalhou 80 horas.

Inclua custo humano.


🦸 Outcome Bias

Projeto atrasado, mas termina.

Diretor:

“No fim deu certo.”

Então planejamento irreal não é corrigido.

Outcome Bias protege Planning Fallacy.

Próximo projeto:

mesma estimativa.


🧠 Overconfidence + Outcome + Planning

Temos um círculo:

PLANO OTIMISTA
↓
EQUIPE COMPENSA
↓
RESULTADO BOM
↓
OUTCOME BIAS
↓
“PLANO ERA BOM”
↓
OVERCONFIDENCE
↓
PLANO AINDA MAIS OTIMISTA

Até quebrar.

Isso é praticamente Drift Into Failure organizacional.


🚧 Hidden Work

Outra pergunta poderosa:

“Que trabalho não aparece no cronograma?”

Comunicação.

Aprovação.

Análise.

Coordenação.

Documentação.

Waiting.

Essas coisas consomem tempo.


🧮 80% de utilização é diferente de 100%

Sistemas em 100% de utilização acumulam filas.

Pessoas também.

Se equipe está 100% alocada:

qualquer evento novo atrasa tudo.

Planejar como se pessoas tivessem disponibilidade infinita cria atraso sistêmico.


📈 Buffer não é desperdício

Um buffer bem dimensionado absorve variabilidade.

Sem buffer:

qualquer variação vira atraso.

Isso conecta Planning Fallacy com margem de segurança do Drift Into Failure.


🧠 Critical Chain e buffers

Existem abordagens de planejamento que usam buffers explícitos.

A ideia geral é saudável:

não esconder margem dentro de cada tarefa de forma aleatória.

Gerencie incerteza conscientemente.


🔍 Post-mortem de estimativa

Quando projeto termina:

não pergunte apenas:

atrasou?

Pergunte:

  • qual estimativa inicial?

  • quando percebemos erro?

  • quais dependências faltaram?

  • qual trabalho estava invisível?

  • qual risco materializou?

  • qual parte foi pura variabilidade?

Isso melhora próximo plano.


📉 Error Ratio

Exemplo:

ESTIMATED: 40 min
ACTUAL:    240 min

Razão:

6x.

Se isso ocorre repetidamente:

não é azar.

É modelo.


🧠 Uma estimativa errada é dado

Não vergonha.

Use.

Se pessoas são punidas por errar estimativa:

começam a esconder ou inflar.

Queremos aprendizado.


☕ Bellacosa Mainframe e SLA

Imagine batch:

estimado:

2h.

Real:

3h50.

SLA:

4h.

Equipe diz:

cumprimos.

Ótimo.

Mas margem:

10 min.

Planning Fallacy + Drift.

Cuidado.

Sucesso no SLA não significa estimativa saudável.


🔧 Capacity Planning

Planning Fallacy também vale para capacidade.

“Storage aguenta mais dois anos.”

Baseado em quê?

Se crescimento real:

20% ao mês,

talvez não.

Projection.

Trend.

Outside View.


🧠 Normalcy Bias

“Sempre conseguimos fechar dentro da janela.”

Sim.

Mas margem caiu:

90;

60;

30;

10 minutos.

Planning Fallacy olha para duração esperada.

Normalcy Bias olha para histórico de sucesso.

Drift olha para margem.

Os três juntos são perigosos.


🛑 Kill Criteria para projetos

Assim como mudança precisa de STOP criteria, projetos podem precisar:

se custo passar X;

se prazo passar Y;

se hipótese de negócio falhar;

reavaliar.

Sem isso:

Planning Fallacy inicial vira Plan Continuation Bias.


🎯 Pergunta Bellacosa nº 5

“Se o projeto levar o dobro, ainda faz sentido?”

Excelente.

Porque muitos projetos têm valor apenas dentro de determinadas condições.


🧪 Pre-mortem para prazo

Imagine:

“Estamos seis meses atrasados.”

Por quê?

Liste:

dependências;

aprovações;

bugs;

escopo;

turnover;

ambiente;

integração.

Agora veja quais já são plausíveis hoje.

Incorpore.


📋 Checklist anti-Planning Fallacy

[ ] Qual a duração de trabalhos semelhantes?

[ ] Estamos usando Inside View ou Outside View?

[ ] Que dependências existem?

[ ] Quanto tempo é trabalho e quanto é espera?

[ ] Incluímos teste?

[ ] Incluímos validação?

[ ] Incluímos rollback?

[ ] Incluímos comunicação e handoff?

[ ] Qual é P50?

[ ] Qual é P90?

[ ] Que margem existe?

[ ] O que pode atrasar?

[ ] Estamos aceitando prazo imposto sem evidência?

[ ] O sistema mudou desde a última vez?

[ ] Estamos usando “desta vez será diferente” sem explicar por quê?

[ ] Se levar 2x, qual o plano?

🧬 Regeneração organizacional

Uma organização madura contra Planning Fallacy:

mantém histórico;

mede estimado versus real;

usa reference classes;

trabalha com ranges;

expõe premissas;

preserva buffers;

inclui rollback;

protege tempo de validação;

faz pre-mortem;

e separa forecast de deadline.

Principalmente:

abandona o teatro da precisão.

Troca:

“fica pronto sexta”

por:

“Com base em 12 projetos semelhantes, temos 50% de chance até sexta e 90% até terça.”

Talvez seja menos elegante no PowerPoint.

É muito mais útil para administrar realidade.


📓 Diário do Doctor

Se guardar algumas ideias desta viagem, guarde estas:

Planning Fallacy é a tendência de subestimar tempo, custo e esforço necessários para tarefas futuras.

Planejamos frequentemente o caminho ideal, não a distribuição real.

Inside View conta a história do nosso projeto; Outside View pergunta o que aconteceu em projetos semelhantes.

Reference Class Forecasting é uma poderosa defesa.

Tempo de trabalho e elapsed time são diferentes.

Rollback e validação também consomem janela.

Buffers são proteção contra variabilidade, não desperdício automático.

Overconfidence e Optimism Bias alimentam estimativas agressivas.

Anchoring, Groupthink e Authority Gradient podem transformar prazo desejado em estimativa oficial.

Planning Fallacy frequentemente termina em Plan Continuation Bias.

E principalmente:

Um plano não fica realista porque cabe na planilha. Fica realista quando sobrevive ao contato com o histórico, as dependências e a incerteza.


🕰️ De volta à reunião das 10:02

TARDIS.

VWORP.

A planilha:

ESTIMATIVA:
40 MIN

O Doctor pergunta:

— Quanto levaram as quatro últimas?

Nosso programador lê:

— 4h17, 5h02, 3h48 e 6h11.

— Excelente.

— Excelente?

— Sim. Vocês possuem dados.

O gerente diz:

— Mas desta vez estamos mais preparados.

O Doctor responde:

— Ótimo. Quanto isso reduz?

Silêncio.

A equipe começa a decompor.

Deploy automatizado:

menos 30 minutos.

Novo script de validação:

menos 20.

Bind permanece.

CICS permanece.

Reconciliação permanece.

Rollback:

1h.

Calculam novamente.

Reference class.

A nova estimativa:

P50: 3h20
P90: 5h30
ROLLBACK: 1h

Janela de uma hora?

Impossível.

A mudança é movida para janela maior.

Durante execução:

4h02.

Quase exatamente dentro da distribuição histórica.

O gerente olha.

— Então nossa primeira estimativa estava errada por mais de três horas.

O programador sorri.

— Sim.

— Isso não é constrangedor?

O Doctor responde:

— Um pouco.

Pausa.

— Mas muito menos que descobrir às 03:00.


🥚 Easter Egg final

No dia seguinte surge:

BELLACOSA.BIAS(PLAN)

Dentro:

       IF ESTIMATE = 'BEST-CASE'
           PERFORM CHECK-HISTORY
       END-IF.

       IF SOMEONE-SAYS
          'ONLY-FORTY-MINUTES'
           PERFORM FIND-HIDDEN-WORK
       END-IF.

       IF DEADLINE < P90
           PERFORM DISCUSS-RISK
       END-IF.

Comentário:

* CPU TIME IS NOT ELAPSED TIME.

Outro:

* HOPE IS NOT A BUFFER.

Depois:

* THE FUTURE HAS QUEUES TOO.

E naturalmente:

* BAD WOLF ESTIMATED 20 MINUTES.
* IT TOOK THREE EPISODES.

Nosso jovem programador fecha o membro.

Pouco depois chega um pedido:

— Dá para alterar esse campo até amanhã?

Ele olha.

Antigamente responderia:

“Sim.”

Agora pergunta:

— Em quantos programas o copybook é usado?

— Não sei.

— Existem interfaces?

— Acho que sim.

— Precisa Db2?

— Talvez.

— Então ainda não tenho uma estimativa.

O gerente olha desconfiado.

— Você não consegue dizer quanto leva?

O jovem responde:

— Consigo dizer quanto leva depois que souber o que realmente estamos mudando.

Pausa.

— Antes disso eu só consigo inventar um número.

Em algum lugar do espaço-tempo:

VWORP.

VWORP.

VWORP.

A TARDIS desaparece.

No quadro da sala permanece:

Se o histórico diz seis horas e o planejamento diz quarenta minutos, talvez o problema não esteja no relógio.

E essa talvez seja uma das maiores lições da Falácia do Planejamento:

o futuro sempre contém mais coisas do que cabem no nosso primeiro rascunho.

☕🌀

Next stop: Sunk Cost Fallacy — quando já gastamos tanto tempo, dinheiro e café num projeto que parar começa a parecer mais doloroso do que continuar fazendo algo que já não faz sentido.

Vagner Renato Bellacosa, IBM Champion e especialista em IBM Mainframe
IBM Z17 SYSTEM ONLINE
Sobre o autor

Vagner Renato Bellacosa

IBM Champion 2026 • Especialista em IBM Mainframe

Vagner Renato Bellacosa trabalha com IBM Mainframe desde 1988 , é IBM Champion e especialista em COBOL, CICS, Db2, z/OS e IBM Z. Compartilha experiências profissionais, conhecimento técnico, história da computação e práticas do universo mainframe para aproximar novas gerações das tecnologias que sustentam empresas, bancos e governos ao redor do mundo.

IBM Champion IBM Z COBOL CICS Db2 z/OS Mainframe desde 1988
GitHub LinkedIn
Inicializando conteúdo...