☕ 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

Mostrar mensagens com a etiqueta hierarquia. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta hierarquia. Mostrar todas as mensagens

sábado, 25 de outubro de 2025

☕🌳 BANCO HIERÁRQUICO: O DINOSSAURO DO MAINFRAME QUE AINDA MOVE BILHÕES

 

Bellacosa Mainframe introduz o Banco de Dados Hierarquico

☕🌳 BANCO HIERÁRQUICO: O DINOSSAURO DO MAINFRAME QUE AINDA MOVE BILHÕES

Entenda de forma simples como o IMS organiza dados como uma árvore gigante ultra rápida 🚀

Quando um programador COBOL júnior escuta:

🌳 “Banco Hierárquico”

normalmente imagina algo complicado, antigo e misterioso.

E sinceramente?

😄 O IMS realmente parece saído de um laboratório secreto da IBM dos anos 70.

Mas depois que você entende a lógica…

tudo começa a fazer MUITO sentido.


🧠 O Que é um Banco Hierárquico?

A ideia principal é simples:

📌 Os dados são organizados como uma árvore.

Exemplo:

CLIENTE
 └── CONTA
      └── CARTAO
           └── MOVIMENTO

Existe:

✅ pai
✅ filho
✅ relacionamento fixo

Igual uma árvore genealógica.


🌳 Pense Numa Árvore Real

Imagine:

TRONCO
 └── GALHO
      └── FOLHA

No IMS é parecido:

CLIENTE
 └── CONTA
      └── MOVIMENTO

Cada nível depende do anterior.


🚀 Diferença Para Banco Relacional

No DB2 ou Oracle:

SELECT * FROM CLIENTE

Tudo funciona via:

  • tabelas

  • joins

  • SQL


🌳 No Banco Hierárquico

Não existem joins clássicos.

Você:

⚡ navega pela árvore.


📦 Exemplo Real Bancário

Imagine um banco:

CLIENTE
 └── CONTA
      └── FATURA
           └── MOVIMENTO

O IMS entende naturalmente que:

✅ cliente possui conta
✅ conta possui fatura
✅ fatura possui movimentos


🧠 O Grande Segredo

No banco hierárquico:

📌 O caminho importa.

Você normalmente começa do topo:

CLIENTE

e vai descendo.


⚡ Por Que Isso é Tão Rápido?

Porque o IMS não precisa:

❌ montar JOIN complexo
❌ calcular relacionamento
❌ pensar demais

Ele já conhece o caminho.

É quase como:

seguir túneis secretos

entre os dados.


🌳 O IMS Usa Ponteiros

O IMS liga os segmentos com:

🔑 ponteiros físicos

Exemplo:

CLIENTE
   ↓
CONTA
   ↓
MOVIMENTO

Então o acesso é extremamente rápido.


💾 Segmentos

No IMS os registros são chamados de:

🟦 Segmentos

Exemplo:

SegmentoSignificado
CLIENTEregistro cliente
CONTAconta bancária
MOVIMENTOtransação

🚀 O Programa COBOL Navega

No IMS o COBOL não faz SQL.

Ele usa:

CALL 'CBLTDLI'

com comandos como:

ComandoFunção
GUbusca única
GNpróximo
GNPpróximo filho
ISRTinsert
REPLupdate
DLETdelete

🌳 Exemplo Mental

Imagine:

CLIENTE JOAO
 └── CONTA 123
      └── MOVIMENTO PIX

O programa faz:

1️⃣ encontra cliente
2️⃣ entra conta
3️⃣ lê movimentos

Tudo navegando pela árvore.


⚔️ Hierárquico vs Relacional

Banco HierárquicoBanco Relacional
árvoretabelas
navegaçãoSQL
pai/filhojoins
muito rápidoflexível
rígidodinâmico

💣 A Desvantagem

O banco hierárquico é MUITO rápido…

mas menos flexível.

Exemplo:

Se o banco foi desenhado assim:

CLIENTE
 └── CONTA

e amanhã você quiser acessar:

CONTA → CLIENTE

pode virar dor de cabeça.


🚀 Então Por Que Bancos Ainda Usam IMS?

Porque para sistemas críticos:

⚡ velocidade importa muito.

Especialmente em:

  • ATM

  • cartão

  • PIX

  • autorização financeira

  • telecom

  • aviação


☕ Curiosidade Bellacosa Mainframe

O IMS nasceu em:

🚀 1968

durante o projeto Apollo da NASA.

Sim.

O mesmo sistema que ajudou a organizar informações da corrida espacial…

continua hoje processando bilhões de transações financeiras.

Enquanto muita tecnologia moderna já morreu…

o “dinossauro” hierárquico continua vivo.

E extremamente rápido.


quarta-feira, 4 de outubro de 2023

🌳 ALAN TURING E O IMS DOS AGENTES — QUANDO O MUNDO VIROU UMA ÁRVORE

 

Bellacosa Mainframe e os grafos do conhecimento

☕ UM CAFÉ NO BELLACOSA MAINFRAME

🌳 ALAN TURING E O IMS DOS AGENTES — QUANDO O MUNDO VIROU UMA ÁRVORE

IMS, agentes de IA, bancos hierárquicos, segmentos, root, parent, child, twins, PCB, PSB, DBD, DL/I, SSA, GU, GN, GNP, ISRT, REPL, DLET, COBOL, contexto, navegação, memória, estado, relacionamentos — e o dia em que Alan Turing descobriu que encontrar um filho pode ser fácil, desde que você saiba quem é o pai.



🎬 PRÓLOGO — ONDE ESTÁ O PEDIDO 8472?

O pequeno agente já estava ficando convencido.

Depois de sobreviver a RACF, SDSF, WLM, JES2, CICS, Db2 e MQ, começava a acreditar que finalmente compreendia sistemas corporativos.

Entrou no CPD com aquela confiança típica de quem acabou de descobrir SQL.

Alan Turing estava tomando café.

— Professor, pode mandar qualquer banco de dados.

Turing levantou uma sobrancelha.

— Qualquer um?

— Qualquer um.

— Encontre o item 0003 do pedido 8472 do cliente 12345.

O agente sorriu.

— Fácil.

Digitou:

SELECT *
FROM ORDER_ITEM
WHERE CUSTOMER_ID = 12345
  AND ORDER_ID    = 8472
  AND ITEM_ID     = 3;

Silêncio.

Nada aconteceu.

— Professor?

— Não estamos no Db2.

— Então qual é a tabela?

— Não existe tabela.

O robô piscou.

— Como assim não existe tabela?

Turing desenhou no quadro:

CUSTOMER
│
├── ORDER 8471
│   ├── ITEM 001
│   └── ITEM 002
│
├── ORDER 8472
│   ├── ITEM 001
│   ├── ITEM 002
│   └── ITEM 003
│
└── ORDER 8473
    └── ITEM 001

O agente ficou alguns segundos olhando.

— Isso é uma árvore.

— Exatamente.

— Então eu preciso procurar o item?

— Sim.

— Pelo número?

— Também.

— Mas preciso chegar primeiro ao pedido?

— Sim.

— E para chegar ao pedido...

Turing aponta para o topo.

CUSTOMER 12345

O robô olha para ele.

Depois para a árvore.

Depois novamente para ele.

— Preciso saber quem é o pai.

Turing sorri.

— Bem-vindo ao IMS.



🌳 CAPÍTULO 1 — NEM TODO BANCO DE DADOS É UMA TABELA

Para quem começou estudando bancos relacionais, banco de dados parece quase sinônimo de:

TABLE
ROW
COLUMN

Você aprende:

SELECT
INSERT
UPDATE
DELETE
JOIN

e naturalmente começa a imaginar o mundo inteiro dessa maneira.

Cliente:

CUSTOMER

Pedido:

ORDER

Item:

ORDER_ITEM

Em um modelo relacional poderíamos representar:

CUSTOMER
--------
CUSTOMER_ID
NAME

ORDER
-----
ORDER_ID
CUSTOMER_ID
DATE

ORDER_ITEM
----------
ORDER_ID
ITEM_ID
PRODUCT_ID
QUANTITY

Depois relacionamos tudo por chaves.

Mas bancos hierárquicos partem de outra ideia.

Em vez de imaginar conjuntos de tabelas relacionadas, imagine:

UMA ÁRVORE.

CUSTOMER
│
├── ORDER
│   │
│   ├── ITEM
│   ├── ITEM
│   └── ITEM
│
└── ORDER
    │
    ├── ITEM
    └── ITEM

A posição de uma informação na hierarquia importa.

Não estamos apenas perguntando:

Qual registro possui ITEM-ID 003?

Podemos estar perguntando:

Qual ITEM 003 pertencente ao ORDER 8472 pertencente ao CUSTOMER 12345?

Isso muda profundamente a maneira de navegar pelos dados.



🦖 CAPÍTULO 2 — MAS O QUE DIABOS É IMS?

IMS significa:

Information Management System.

É uma família histórica e importantíssima de tecnologias IBM para mainframe.

Dentro do universo IMS, dois grandes mundos aparecem:

IMS DB

e:

IMS TM

De forma introdutória:

IMS DB

Gerenciamento de bancos de dados, tradicionalmente associado ao modelo hierárquico.

IMS TM

Transaction Manager, responsável pelo processamento transacional de aplicações e mensagens.

Ou seja, IMS não é simplesmente:

“um banco de dados velho”.

Ele faz parte de uma infraestrutura transacional de enorme importância no universo corporativo.

Bancos, seguradoras, telecomunicações, governo, companhias aéreas e grandes organizações construíram sistemas críticos sobre tecnologias desse ecossistema.

Para nosso programador COBOL iniciante, porém, vamos começar pelo monstro mais visível:

A HIERARQUIA.



🌲 CAPÍTULO 3 — ROOT, PARENT E CHILD

Toda árvore precisa começar em algum lugar.

No topo encontramos o:

ROOT SEGMENT.

Imagine:

CUSTOMER

como root.

Abaixo dele:

ORDER.

CUSTOMER é:

PARENT

de ORDER.

ORDER é:

CHILD

de CUSTOMER.

Agora colocamos:

ITEM

abaixo de ORDER.

Temos:

CUSTOMER
   │
   └── ORDER
          │
          └── ITEM

Nesse relacionamento:

ORDER

é pai de:

ITEM.

E ao mesmo tempo filho de:

CUSTOMER.

Exatamente como uma árvore genealógica.

Alan Turing escreve:

LUIGI
│
└── MARIO
    │
    └── PEACH

O programador protesta:

— Professor, isso está genealogicamente errado.

Turing apaga.

— Estava verificando se você ainda estava prestando atenção.

🥚 Easter egg detectado.



👯 CAPÍTULO 4 — E OS TWINS?

Imagine:

CUSTOMER 12345
│
├── ORDER 8471
├── ORDER 8472
└── ORDER 8473

Os três ORDERs possuem o mesmo pai.

Em terminologia IMS, ocorrências do mesmo tipo de segmento sob o mesmo parent podem ser chamadas de:

TWINS.

Não significa que os dados sejam idênticos.

Significa que ocupam posições equivalentes dentro daquela relação hierárquica.

O mesmo acontece:

ORDER 8472
│
├── ITEM 001
├── ITEM 002
└── ITEM 003

Esses ITEMs são ocorrências irmãs daquele tipo sob o mesmo ORDER.

Isso será importante quando começarmos a navegar.


🧭 CAPÍTULO 5 — NO SQL VOCÊ DESCREVE O QUE QUER

No Db2 podemos escrever:

SELECT NAME
FROM CUSTOMER
WHERE CUSTOMER_ID = 12345;

Em linguagem declarativa, estamos basicamente dizendo:

Quero isto.

O banco determina um caminho de acesso adequado com base em vários fatores.

No universo clássico do IMS e DL/I, a navegação é muito mais explícita.

Nosso programa precisa compreender:

onde está
de onde veio
qual segmento procura
qual relacionamento está seguindo
qual posição de navegação possui

Por isso o programador IMS desenvolve uma espécie de mapa mental da árvore.

Ele não pensa apenas:

Quero ITEM 003.

Pensa:

CUSTOMER 12345
      ↓
ORDER 8472
      ↓
ITEM 003

O caminho faz parte do problema.


🗺️ CAPÍTULO 6 — O DBD É O MAPA DO REINO

Precisamos descrever o banco.

Entra o:

DBD — Database Description.

Conceitualmente, o DBD descreve características estruturais do banco IMS.

Para nosso iniciante, pense nele como parte do mapa técnico que diz:

qual banco existe
quais segmentos existem
como estão relacionados
quais campos/chaves são relevantes
como a estrutura está organizada

Uma representação didática:

DBD CUSTOMERDB

CUSTOMER
   │
   ├── ORDER
   │      │
   │      └── ITEM
   │
   └── ADDRESS

O DBD ajuda a definir a estrutura do mundo.

Mas surge outra pergunta:

O programa precisa enxergar tudo?

Nem sempre.


🪪 CAPÍTULO 7 — PSB: O QUE ESTA APLICAÇÃO PODE ENXERGAR?

Entra outro acrônimo clássico:

PSB — Program Specification Block.

Didaticamente, podemos pensar no PSB como a descrição da visão e dos recursos de banco/mensagem necessários para determinada aplicação.

Alan Turing desenha:

BANCO COMPLETO
────────────────

CUSTOMER
├── ORDER
│   └── ITEM
├── ADDRESS
├── CREDIT
└── HISTORY

Mas nosso programa talvez precise apenas de:

CUSTOMER
└── ORDER
    └── ITEM

O agente pergunta:

— Então o programa não precisa necessariamente receber o mapa inteiro do universo?

— Excelente.

Essa ideia nos levará diretamente aos agentes de IA.

Mas ainda falta uma peça.


📋 CAPÍTULO 8 — PCB: A JANELA OPERACIONAL

Dentro desse modelo aparece o:

PCB — Program Communication Block.

Para uma introdução, pense nele como uma estrutura pela qual a aplicação interage com determinados recursos IMS e recebe informações de status relacionadas às operações.

Em programas COBOL IMS tradicionais, o PCB é importantíssimo na comunicação com DL/I.

Depois de uma operação, você não deveria simplesmente pensar:

Fiz a chamada, portanto funcionou.

Você verifica o:

STATUS CODE.

Mainframeiro experiente já começou a sorrir.

Porque acabamos de reencontrar uma velha filosofia:

NÃO CONFIE. VERIFIQUE O RETORNO.

Nosso MAXCC dos Agentes está batendo na porta novamente.


☎️ CAPÍTULO 9 — DL/I: A CONVERSA COM O IMS

Um nome fundamental:

DL/I — Data Language/I.

Aplicações podem utilizar chamadas DL/I para acessar dados IMS.

Em vez de:

SELECT ...

vamos encontrar operações clássicas como:

GU
GN
GNP
ISRT
REPL
DLET

O iniciante olha para a lista.

— Parece ISPF depois de alguém derrubar café no teclado.

Calma.

Vamos traduzir.


🎯 CAPÍTULO 10 — GU: GET UNIQUE

GU significa:

Get Unique.

Queremos recuperar uma ocorrência específica.

Conceitualmente:

GU CUSTOMER 12345

Pense:

Localize este segmento específico.

Podemos imaginar nosso agente procurando:

CUSTOMER-ID = 12345.

Em COBOL, de maneira puramente didática e simplificada:

CALL 'CBLTDLI' USING
     GU-FUNCTION
     CUSTOMER-PCB
     CUSTOMER-IO-AREA
     CUSTOMER-SSA.

Não memorize essa linha como receita universal.

O objetivo aqui é perceber a estrutura mental:

FUNÇÃO
PCB
ÁREA DE DADOS
CRITÉRIO DE SELEÇÃO

Agora apareceu outro acrônimo.

Claro que apareceu.

Estamos no mainframe.

☕


🔍 CAPÍTULO 11 — SSA: DIGA QUAL SEGMENTO VOCÊ QUER

SSA significa:

Segment Search Argument.

É uma forma de indicar segmentos e, quando qualificada, critérios usados na busca.

Conceitualmente:

CUSTOMER
WHERE CUSTOMER-ID = 12345

Podemos imaginar:

CUSTOMER SSA

e depois:

ORDER SSA

e:

ITEM SSA.

Queremos:

CUSTOMER 12345
      ↓
ORDER 8472
      ↓
ITEM 003

Podemos fornecer um caminho hierárquico que ajude a localizar exatamente a ocorrência desejada.

A grande sacada é:

CONTEXTO E CAMINHO IMPORTAM.


➡️ CAPÍTULO 12 — GN: GET NEXT

Agora queremos navegar.

Usamos conceitualmente:

GN — Get Next.

Imagine:

CUSTOMER 12345
│
├── ORDER 8471
├── ORDER 8472
└── ORDER 8473

Depois de posicionados em determinado ponto, podemos solicitar a próxima ocorrência dentro da navegação aplicável.

É como caminhar pela árvore.

GET
NEXT
NEXT
NEXT

Isso parece simples.

Mas existe uma diferença filosófica gigantesca em relação a simplesmente perguntar ao banco:

SELECT *
FROM ORDER;

Estamos mantendo:

POSIÇÃO.

Nosso programa possui contexto de navegação.

Guarde essa palavra:

POSITION.

Ela será importantíssima para agentes.


👨‍👧 CAPÍTULO 13 — GNP: GET NEXT WITHIN PARENT

Agora a coisa fica deliciosa.

Temos:

CUSTOMER
│
├── ORDER A
│   ├── ITEM 1
│   └── ITEM 2
│
└── ORDER B
    ├── ITEM 1
    └── ITEM 2

Estamos dentro de:

ORDER A.

Queremos continuar procurando filhos daquele pai.

Entra conceitualmente:

GNP — Get Next within Parent.

Ou seja:

Continue dentro deste contexto parental.

Isso é muito importante.

Porque:

ITEM 1

sozinho não conta toda a história.

Precisamos saber:

ITEM 1
OF ORDER A.

O pai define contexto.


🧠 CAPÍTULO 14 — ALAN TURING ENCONTRA O PRIMEIRO PARALELO COM AGENTES

Turing escreve:

ITEM 003

Pergunta:

— O que é isto?

O agente responde:

— Item três.

— De qual pedido?

Silêncio.

Turing acrescenta:

ORDER 8472
   └── ITEM 003

— Agora?

— Item três do pedido 8472.

Turing acrescenta:

CUSTOMER 12345
   └── ORDER 8472
       └── ITEM 003

— Agora?

O agente responde:

— Item três do pedido 8472 do cliente 12345.

Turing sorri.

O MESMO NÓ GANHA SIGNIFICADO PELO CAMINHO QUE NOS LEVOU ATÉ ELE.

E aqui IMS encontra inteligência artificial.


🤖 CAPÍTULO 15 — AGENTES TAMBÉM PRECISAM DE CONTEXTO HIERÁRQUICO

Imagine uma conversa:

CLIENTE
└── VIAGEM
    └── HOTEL
        └── RESERVA

O usuário diz:

Cancele.

Cancele o quê?

Sem contexto:

CANCEL

é perigoso.

Com contexto:

CLIENTE
└── VIAGEM PARA EDIMBURGO
    └── HOTEL
        └── RESERVA 8821
            └── CANCELAR

Agora temos significado.

Um agente não deveria possuir apenas uma enorme sopa de tokens.

Pode ser extremamente útil modelar contexto como estruturas explícitas:

USER
│
├── PROJECT
│   ├── TASK
│   │   ├── DOCUMENT
│   │   └── DECISION
│   └── TASK
│
└── TRAVEL
    ├── FLIGHT
    └── HOTEL

Não estou dizendo que um LLM “é um IMS”.

Não é.

A analogia está na arquitetura do contexto:

informação organizada por relações pode ser mais útil do que informação simplesmente acumulada.


🧩 CAPÍTULO 16 — CONTEXTO NÃO É APENAS MEMÓRIA

Existe uma tentação perigosa em agentes:

Vamos colocar tudo no prompt.

Então aparece:

200 páginas
3.000 mensagens
48 documentos
17 APIs
histórico inteiro do cliente
logs
políticas
manuais

e alguém chama isso de:

CONTEXT.

Não.

Isso pode ser apenas:

UM DEPÓSITO.

O IMS nos oferece uma provocação arquitetural interessante.

Talvez devamos perguntar:

qual é o root?
qual é o parent?
qual é o child?
qual caminho importa?
qual subárvore precisamos?

Em vez de entregar o universo inteiro ao agente, entregamos a parte relevante da árvore.


✂️ CAPÍTULO 17 — CONTEXT PRUNING ENCONTRA A ÁRVORE

Imagine:

CUSTOMER
├── ACCOUNT
│   ├── BALANCE
│   └── TRANSACTIONS
├── INSURANCE
├── MORTGAGE
├── MARKETING
└── SUPPORT

O agente está respondendo:

Qual meu saldo?

Talvez precise:

CUSTOMER
└── ACCOUNT
    └── BALANCE

Não precisa necessariamente carregar:

MARKETING
MORTGAGE
SUPPORT HISTORY

inteiros.

Podemos podar a árvore de contexto.

FULL CONTEXT
      ↓
RELEVANT SUBTREE
      ↓
AGENT

Isso pode reduzir:

tokens
latência
custo
ruído
risco de confusão
exposição desnecessária

Olha o RACF sorrindo novamente.

Menos contexto também pode significar:

MENOR SUPERFÍCIE DE EXPOSIÇÃO.


🔐 CAPÍTULO 18 — PSB ENCONTRA LEAST PRIVILEGE

Lembra do PSB?

Uma aplicação recebe a visão e os recursos necessários para seu trabalho.

Agora imagine um agente.

Agente de cobrança:

CUSTOMER
├── ACCOUNT
├── DEBT
└── PAYMENT

Agente de marketing:

CUSTOMER
├── PROFILE
└── CAMPAIGN

Por que o agente de marketing deveria receber:

ACCOUNT PASSWORD
PAYMENT CREDENTIALS
INTERNAL FRAUD NOTES

se não precisa?

Nossa analogia conceitual:

PSB
↓
APPLICATION VIEW

torna-se:

AGENT CONTEXT POLICY
↓
MINIMUM NECESSARY VIEW.

RACF responde do corredor:

— FINALMENTE VOCÊS ESTÃO APRENDENDO!

😂


🧬 CAPÍTULO 19 — O PROBLEMA DO FILHO SEM PAI

Imagine um RAG retornando:

STATUS = ACTIVE

Excelente.

Ativo o quê?

Cliente?

Contrato?

Cartão?

Conta?

Apólice?

Promoção?

Um fragmento semanticamente semelhante pode ser inútil sem seus ancestrais contextuais.

Em uma representação hierárquica:

CUSTOMER 12345
└── CREDIT_CARD 8821
    └── STATUS ACTIVE

temos muito mais significado.

Portanto uma estratégia de recuperação pode considerar não apenas:

CHUNK

mas também:

ANCESTORS
PATH
ENTITY
RELATIONSHIP
VERSION
TIMESTAMP
SOURCE.

Nosso Db2 dos Agentes volta:

De quando é?

O IMS acrescenta:

Filho de quem?


🧭 CAPÍTULO 20 — O CAMINHO TAMBÉM É PROVENIÊNCIA

Imagine que o agente responde:

O limite é R$ 5.000.

Perguntamos:

— De onde veio?

Resposta ruim:

DOCUMENT 883.

Resposta melhor:

CUSTOMER 12345
└── ACCOUNT 9981
    └── CREDIT_POLICY
        └── LIMIT
            VALUE = 5000

Agora podemos registrar:

SOURCE
PATH
VERSION
READ_AT
VALID_AT.

Isso mistura duas lições anteriores.

Do Db2:

WHEN?

Do IMS:

WHERE IN THE HIERARCHY?

Nosso agente começa a enxergar realidade não apenas como valores, mas como:

VALORES DENTRO DE CAMINHOS, VERSÕES E TEMPO.


✍️ CAPÍTULO 21 — ISRT: INSERINDO UM NOVO FILHO

Agora precisamos modificar a árvore.

Uma função clássica:

ISRT — Insert.

Imagine:

CUSTOMER 12345
└── ORDER 8472

Queremos adicionar:

ITEM 004.

Conceitualmente:

CUSTOMER 12345
└── ORDER 8472
    ├── ITEM 001
    ├── ITEM 002
    ├── ITEM 003
    └── ITEM 004  ← NOVO

Mas observe algo importante.

Para inserir corretamente o filho, precisamos identificar o contexto parental apropriado.

Não queremos colocar ITEM 004 acidentalmente sob:

ORDER 8473.

Mais uma vez:

CONTEXTO É PARTE DA OPERAÇÃO.


🔄 CAPÍTULO 22 — REPL: ALTERANDO SEM PERDER O CONTEXTO

Outra operação clássica:

REPL — Replace.

Recuperamos determinado segmento e queremos alterar seu conteúdo dentro das regras aplicáveis.

Conceitualmente:

GET SEGMENT
↓
MODIFY IO AREA
↓
REPLACE

Para agentes isso lembra nossa discussão de optimistic concurrency e revalidation.

Antes de alterar qualquer coisa crítica, pergunte:

é o mesmo objeto?
é o mesmo pai?
é a mesma versão?
o contexto continua válido?
tenho autoridade?

IMS sozinho não transforma automaticamente qualquer workflow de IA em optimistic concurrency.

Mas a disciplina de identificar precisamente o objeto e seu contexto continua valiosíssima.


🗑️ CAPÍTULO 23 — DLET: APAGAR EM UMA ÁRVORE É COISA SÉRIA

Agora:

DLET — Delete.

O agente diz:

— Fácil. Apaga o segmento.

Turing pergunta:

— Qual?

— Este.

— Qual pai?

— Ah.

— Quais dependências?

— Hmmm.

— Quais regras?

— Professor...

— Quais consequências?

O agente desliga o botão DELETE.

Excelente decisão.

Em estruturas hierárquicas, relacionamentos são parte fundamental do significado.

Em agentes, vale a mesma cautela:

DELETE CHILD

pode afetar:

PARENT STATE
SIBLINGS
BUSINESS RULES
AUDIT
DOWNSTREAM EVENTS.

Não deixe um LLM transformar:

Acho que este nó não é mais necessário.

em:

DLET.

sem controles adequados.

PF3, RACF e human-in-the-loop entram na sala simultaneamente.


🚦 CAPÍTULO 24 — STATUS CODE: A RESPOSTA DO IMS IMPORTA

Nosso programa faz uma chamada.

Depois precisa olhar o resultado.

Isso é básico e fundamental.

Não basta:

CALL DL/I

e continuar como se o universo tivesse obedecido.

Precisamos verificar o retorno no contexto da interface e operação usada.

Conceitualmente:

IF STATUS-OK
    CONTINUE
ELSE
    PERFORM HANDLE-IMS-ERROR
END-IF.

Para agentes:

TOOL CALLED

não significa:

TOOL SUCCEEDED.

E:

HTTP 200

nem sempre significa:

BUSINESS SUCCESS.

Lembra do MAXCC?

Ele ainda está conosco.


🧠 CAPÍTULO 25 — POSITION É ESTADO

Imagine que estamos navegando:

CUSTOMER 12345
│
└── ORDER 8472
    │
    ├── ITEM 001
    ├── ITEM 002  ← VOCÊ ESTÁ AQUI
    └── ITEM 003

Essa posição possui significado.

O próximo movimento depende de onde estamos.

Agentes também possuem estado operacional.

RUN-ID
AGENT-ID
CURRENT-TASK
CURRENT-ENTITY
CURRENT-PARENT
CURRENT-NODE
LAST-ACTION
NEXT-ACTION.

Se o agente reiniciar e perder isso, talvez não saiba onde estava.

Então entra nossa velha amiga:

CHECKPOINT.


💾 CAPÍTULO 26 — CHECKPOINT: MARQUE ONDE VOCÊ ESTAVA

Do JES2 dos Agentes aprendemos que trabalhos longos precisam conseguir sobreviver a falhas.

Agora imagine uma árvore com milhões de ocorrências.

O agente percorreu:

CUSTOMER 000001
...
CUSTOMER 472881

Cai.

Reinicia.

Sem checkpoint:

CUSTOMER 000001.

O operador começa a chorar.

😂

Com estado persistido:

RUN-ID......... R8821
LAST-ENTITY.... CUSTOMER
LAST-KEY....... 472881
STATUS......... CHECKPOINTED

podemos projetar uma retomada controlada.

Mas cuidado:

a realidade pode ter mudado durante a interrupção.

Então:

RESTART

precisa conversar com:

REVALIDATION.

Db2 dos Agentes reaparece.


🔀 CAPÍTULO 27 — UMA ÁRVORE NÃO RESOLVE TODO RELACIONAMENTO

Aqui precisamos evitar uma simplificação.

O mundo real não é sempre uma árvore perfeita.

Uma pessoa pode ter:

múltiplas contas
múltiplos contratos
múltiplos endereços
relações compartilhadas

Um produto pode pertencer a inúmeras estruturas lógicas.

Modelos hierárquicos precisam de mecanismos e estratégias para representar relacionamentos mais complexos.

O ponto não é dizer:

Árvore é superior a tabela.

Nem:

Tabela é superior a árvore.

São modelos diferentes, com características diferentes.

A pergunta correta é:

Qual modelo representa e atende melhor este problema e esta arquitetura?


🕸️ CAPÍTULO 28 — ÁRVORE NÃO É GRAFO

Outra distinção importante.

Árvore:

A
├── B
│   ├── D
│   └── E
└── C

Existe uma hierarquia clara.

Grafos permitem relacionamentos muito mais gerais:

A ── B
│ \  │
C ── D
 \  /
  E

Agentes modernos podem trabalhar com:

relational databases
hierarchical stores
documents
vectors
knowledge graphs
queues
files
APIs

Não transforme toda arquitetura de IA numa árvore só porque acabamos de conhecer IMS.

Turing provavelmente jogaria o apagador em você.


📚 CAPÍTULO 29 — MEMÓRIA DO AGENTE NÃO PRECISA SER UMA SACOLA

Imagine uma memória:

MEMORY
├── PERSON
│   ├── PREFERENCES
│   ├── CONTACTS
│   └── HISTORY
├── PROJECTS
│   ├── PROJECT-A
│   │   ├── DECISIONS
│   │   ├── DOCUMENTS
│   │   └── TASKS
│   └── PROJECT-B
└── CONVERSATIONS

Agora compare com:

VECTOR DATABASE
████████████████████████████

cheio de chunks sem estrutura explícita suficiente.

Vector search é extremamente útil.

Mas similaridade semântica responde principalmente:

O que parece relacionado?

Ela não responde automaticamente:

Qual é o pai lógico deste fato?

A qual projeto pertence?

Qual entidade governa este dado?

Qual contexto deveria acompanhá-lo?

Por isso arquiteturas sofisticadas podem combinar:

SEMANTIC SEARCH
+
STRUCTURED METADATA
+
HIERARCHY
+
RELATIONSHIPS
+
TEMPORALITY
+
AUTHORIZATION.

Agora estamos construindo memória de verdade.


🔎 CAPÍTULO 30 — RAG HIERÁRQUICO

Imagine um manual:

IBM MANUAL
└── CHAPTER 8
    └── SECURITY
        └── RACF AUTHORIZATION
            └── PARAGRAPH 14

O vector search encontra apenas:

PARAGRAPH 14.

Talvez falte contexto.

Uma estratégia possível:

retrieve leaf
↓
identify parent
↓
retrieve necessary ancestors
↓
construct contextual package
↓
send to agent.

Assim o agente recebe:

DOCUMENT
CHAPTER
SECTION
PARAGRAPH
VERSION
DATE
SOURCE.

Não apenas:

chunk_008821.txt.

Isso é uma lição extremamente IMS:

O CAMINHO ATÉ O DADO PODE FAZER PARTE DO SIGNIFICADO DO DADO.


📨 CAPÍTULO 31 — IMS ENCONTRA MQ

Nosso agente recebe pelo MQ:

CUSTOMER_UPDATED

Mensagem:

CUSTOMER-ID = 12345
ORDER-ID    = 8472
ITEM-ID     = 0003

MQ responde:

Algo aconteceu.

IMS responde:

Eis onde isso vive na hierarquia.

Db2 poderia responder:

Eis o estado relacional atual.

RACF:

Você pode acessar?

WLM:

Você tem recursos?

CICS:

O usuário ainda está esperando!

SDSF:

Eu estou vendo tudo.

JES2:

Se não for urgente, entra na fila.

PF3:

Quer parar essa loucura?

😂

Finalmente nossa arquitetura começa a parecer um verdadeiro CPD dos agentes.


🏛️ CAPÍTULO 32 — IMS TM E OS AGENTES TRANSACIONAIS

Até aqui focamos fortemente na visão de dados hierárquicos.

Mas IMS também possui seu universo transacional.

IMS TM permite construir aplicações orientadas a processamento de transações e mensagens em ambiente mainframe.

Conceitualmente:

INPUT MESSAGE
      ↓
IMS TM
      ↓
APPLICATION
      ↓
DATABASE / SERVICES
      ↓
OUTPUT MESSAGE

Isso deveria soar familiar depois do MQ dos Agentes.

Nosso agente pode participar de arquiteturas nas quais:

mensagem chega
↓
transação é executada
↓
dados são consultados/alterados
↓
resposta é produzida.

Mainframe já fazia processamento transacional em escala muito antes de alguém inventar a palavra:

AI AGENT.

🤖 CAPÍTULO 33 — O IMS DOS AGENTES

Vamos finalmente definir nossa metáfora.

O:

IMS DOS AGENTES

não significa transformar IMS literalmente em memória universal de LLM.

Significa aprender algumas disciplinas arquiteturais:

1. Dados possuem estrutura.

2. Relacionamentos possuem significado.

3. Filhos existem dentro de contexto parental.

4. O caminho até um dado pode importar.

5. Nem todo consumidor precisa enxergar a árvore inteira.

6. Navegação possui estado.

7. Operações precisam verificar retorno.

8. Contexto pode ser selecionado e podado.

9. Reinício exige checkpoint e revalidação.

10. Estrutura sem semântica continua insuficiente.

Essa última vem diretamente do nosso Copybook dos Agentes.


🏗️ CAPÍTULO 34 — ARQUITETURA CONCEITUAL

Turing desenha:

                    HUMAN
                      │
                      ▼
                    CICS
                      │
                      ▼
                   AGENT-A
                      │
          ┌───────────┼───────────┐
          │           │           │
          ▼           ▼           ▼
         MQ          Db2         IMS
          │           │           │
       EVENTS      CURRENT     HIERARCHY
                    STATE       / PATH
          │           │           │
          └───────────┼───────────┘
                      ▼
                  DECISION
                      │
                      ▼
                    ACTION

Em volta:

RACF
AUTHORITY
WLM
RESOURCES
SDSF
OBSERVABILITY
JES2
ASYNC WORK
PF3
HUMAN CONTROL

Nosso agente agora sabe perguntar:

WHO?
WHEN?
WHERE?
WHICH PARENT?
WHICH VERSION?
WHICH MESSAGE?
WHICH AUTHORITY?

Isso está ficando muito mais interessante que:

PROMPT → LLM → RESPOSTA.

🥚 EASTER EGG — O FILHO PERDIDO

02:43.

Produção liga.

— Temos um ITEM órfão.

O programador pergunta:

— Como assim órfão?

— Ele existe.

— Então qual é o problema?

— Ninguém sabe de qual ORDER ele é.

Silêncio.

Alan Turing entra no CPD.

ITEM-ID = 0007
VALUE   = 850.00

Turing pergunta:

— Qual parent?

— Não sabemos.

— CUSTOMER?

— Também não sabemos.

O agente sugere:

— Posso usar inteligência artificial para inferir.

Turing vira lentamente.

— Você quer movimentar R$ 850 baseado em genealogia probabilística?

O agente recua.

— Talvez não.

Do fundo da sala o DBA grita:

— FINALMENTE UMA IA APRENDEU ALGUMA COISA!

😂

Turing escreve no quadro:

CHILD WITHOUT CONTEXT
=
DATA WITHOUT MEANING

E embaixo:

DO NOT GUESS THE PARENT IN PRODUCTION.

🧰 CAPÍTULO 35 — CHECKLIST DO IMS DOS AGENTES

Antes de deixar um agente navegar estruturas hierárquicas, pergunte:

Estrutura

Qual é o root?
Quais são os parents?
Quais são os children?
Existem twins?

Navegação

Qual é o caminho?
Qual é a posição atual?
A operação depende do parent atual?

Identidade

Qual entidade estou acessando?
Qual é a chave?
O mesmo identificador pode existir em contextos diferentes?

Temporalidade

Quando esse dado foi lido?
Ainda é válido?
Precisa revalidar?

Segurança

O agente precisa enxergar esta subárvore?
Tem autorização?
Estamos aplicando least privilege?

Recuperação

Existe checkpoint?
Sabemos retomar?
A retomada é idempotente?

Observabilidade

RUN-ID?
CURRENT PATH?
LAST SEGMENT?
STATUS?
ELAPSED TIME?

Agora conseguimos operar o agente.


🧠 CAPÍTULO 36 — O PAINEL SDSF DO IMS DOS AGENTES

Imagine:

RUN-ID....... AGT004821
AGENT........ CUSTOMER-ANALYZER

DATABASE..... CUSTOMERDB

ROOT......... CUSTOMER
ROOT-KEY..... 12345

CURRENT-PATH:
CUSTOMER/12345
  /ORDER/8472
  /ITEM/0003

OPERATION.... READ
STATUS....... OK

READ-AT...... 10:00:01
VERSION...... 882

ELAPSED...... 42ms

Agora o operador não vê apenas:

PROCESSING...

Ele sabe:

Onde o agente está na árvore?

Se travar:

CURRENT-PATH

pode ser extremamente útil para diagnóstico.

Observabilidade também precisa de contexto.


🧙 CAPÍTULO 37 — O PROGRAMADOR COBOL DESCOBRE QUE JÁ SABIA METADE DISSO

Nosso iniciante olha para tudo:

DBD
PSB
PCB
DL/I
SSA
GU
GN
GNP
ISRT
REPL
DLET

e pensa:

Nunca vou aprender isso.

Calma.

Você já conhece ideias fundamentais.

Você sabe:

estrutura de dados

por causa de copybooks.

Você sabe:

status

por causa de RETURN-CODEs e interfaces.

Você sabe:

hierarquia

porque programas COBOL vivem cheios de níveis:

01 CUSTOMER.
   05 CUSTOMER-ID.
   05 CUSTOMER-NAME.
   05 ADDRESS.
      10 STREET.
      10 CITY.
      10 ZIP-CODE.

Olha só.

Até seu:

01
05
10

já treinou seu cérebro para pensar hierarquicamente.

Não é a mesma coisa que uma estrutura IMS.

Mas cognitivamente você não está começando do zero.


📜 CAPÍTULO 38 — COPYBOOK E IMS SE ENCONTRAM

Imagine o segmento CUSTOMER chegando a uma área COBOL:

01 CUSTOMER-SEGMENT.
   05 CUST-ID          PIC 9(09).
   05 CUST-NAME        PIC X(40).
   05 CUST-STATUS      PIC X.

ORDER:

01 ORDER-SEGMENT.
   05 ORDER-ID         PIC 9(09).
   05 ORDER-DATE       PIC 9(08).
   05 ORDER-STATUS     PIC X.

ITEM:

01 ITEM-SEGMENT.
   05 ITEM-ID          PIC 9(05).
   05 PRODUCT-ID       PIC X(12).
   05 QUANTITY         PIC 9(05).
   05 VALUE            PIC S9(09)V99 COMP-3.

Essas estruturas dizem:

Como os bytes são representados.

IMS acrescenta:

Como esses segmentos se relacionam na estrutura do banco.

E as regras de negócio dizem:

O que tudo isso significa.

Finalmente temos três camadas:

REPRESENTATION
      ↓
STRUCTURE
      ↓
SEMANTICS.

Nosso artigo sobre copybooks estava preparando essa emboscada desde o começo.


⚠️ CAPÍTULO 39 — NÃO CONFUNDA HIERARQUIA COM VERDADE

Um erro importante seria imaginar:

Se está organizado hierarquicamente, então está correto.

Não.

Uma árvore pode conter:

dados antigos
dados incorretos
relações inválidas
contexto incompleto

Logo continuam valendo nossas regras anteriores:

PROVENANCE
TIMESTAMP
VERSION
VALIDATION
AUTHORIZATION
REVALIDATION.

IMS resolve problemas de organização e acesso dentro de seu modelo.

Não elimina a necessidade de governança.

Nenhuma tecnologia elimina.


🧠 CAPÍTULO 40 — O GRANDE ENSINAMENTO PARA IA

Hoje falamos muito sobre:

context windows
RAG
vector databases
knowledge graphs
agent memory
long-term memory
tool context
conversation state

IMS nos oferece uma ideia antiga que continua extremamente moderna:

RELACIONAMENTO É INFORMAÇÃO.

Não basta armazenar:

ITEM 003.

Talvez precisemos armazenar:

CUSTOMER 12345
→ ORDER 8472
→ ITEM 003.

Não basta recuperar:

“limite = 5000”.

Precisamos talvez recuperar:

CUSTOMER
→ ACCOUNT
→ CREDIT POLICY
→ LIMIT
→ 5000

junto com:

VERSION
SOURCE
VALIDITY
AUTHORITY.

Essa é uma diferença brutal entre:

ENCONTRAR TEXTO

e:

COMPREENDER CONTEXTO.


🏰 CAPÍTULO 41 — NOSSO MAINFRAME DOS AGENTES ESTÁ QUASE VIRANDO UMA CIDADE

Alan Turing volta ao quadro.

Escreve:

RACF
Quem pode?

Depois:

PF3
Posso parar?
SDSF
O que está acontecendo?
MAXCC
Funcionou?
WLM
Quem recebe recursos?
JES2
Quem começa e quando?
CICS
Quanto tempo o humano pode esperar?
Db2
Qual realidade o agente está vendo?
MQ
Como a notícia viaja?

Finalmente:

IMS
ONDE ESTA INFORMAÇÃO VIVE
E POR QUAL CAMINHO CHEGAMOS ATÉ ELA?

O agente olha para o quadro.

— Professor...

— Sim?

— Isso tudo já existia antes de IA?

— Praticamente todos esses problemas fundamentais, sim.

— Então estamos reinventando o mainframe?

Turing bebe o café.

— Não.

Pausa.

— Estamos descobrindo novamente por que ele ficou complicado.

😂


☕ EPÍLOGO — ENCONTRE O FILHO

Voltamos ao desafio inicial.

CUSTOMER 12345

O agente encontra o root.

Depois:

ORDER 8472.

Posiciona-se no parent correto.

Depois:

ITEM 003.

Encontrado.

Na tela:

RUN-ID......... A004821

PATH...........
CUSTOMER/12345
ORDER/8472
ITEM/003

STATUS......... FOUND

Turing pergunta:

— Qual é o item?

O agente responde:

— ITEM 003.

Turing permanece olhando.

O agente percebe a armadilha.

Corrige:

— ITEM 003, pertencente ao ORDER 8472, pertencente ao CUSTOMER 12345.

Turing sorri.

— Melhor.

— Porque o contexto faz parte da identidade?

— Exatamente.

O agente olha para a árvore.

Horas atrás acreditava que dados eram valores.

Depois descobriu que dados tinham tempo.

Com MQ descobriu que informações viajavam.

Agora IMS ensinava algo ainda mais estranho.

DADOS TAMBÉM POSSUEM VIZINHANÇA.

Um valor pode possuir:

pai
filhos
irmãos
ancestrais
caminho
posição
contexto.

E retirar o valor dessa estrutura pode retirar parte de seu significado.

O pequeno robô abre seu próprio arquivo de memória.

Antes:

MEMORY
────────────────
coffee
COBOL
customer
order
Turing
MQ
Db2
item

Ele reorganiza:

MEMORY
│
├── MAINFRAME
│   ├── COBOL
│   ├── Db2
│   ├── MQ
│   └── IMS
│
├── CUSTOMER
│   └── ORDER
│       └── ITEM
│
└── TEACHERS
    └── ALAN TURING

Turing observa.

— Melhor?

O agente responde:

— Agora eu sei não apenas o que lembro.

Pausa.

— Sei onde cada lembrança pertence.

No terminal aparece:

GU
GN
GNP

Depois:

ROOT
PARENT
CHILD
PATH
CONTEXT

E finalmente:

DATA
+
RELATIONSHIP
+
TIME
+
PROVENANCE
=
CONTEXTUAL KNOWLEDGE

Turing termina o café.

Antes de sair escreve uma última frase no quadro:

“NÃO PERGUNTE APENAS QUAL É O DADO. PERGUNTE DE ONDE ELE VEIO, QUANDO ERA VERDADEIRO E A QUAL RAMO DA REALIDADE ELE PERTENCE.”

O agente olha para o ITEM 003.

Agora entende por que demorou tanto para encontrá-lo.

Não estava procurando apenas um registro.

Estava procurando:

UM REGISTRO DENTRO DE UMA HISTÓRIA.

E talvez esse seja um dos maiores desafios das futuras inteligências artificiais.

Elas conseguirão armazenar bilhões de fatos.

Conseguirão recuperar documentos em milissegundos.

Conseguirão conversar com bancos, APIs, filas e outros agentes.

Mas inteligência operacional exigirá algo mais:

WHO?
WHAT?
WHEN?
WHERE?
WHY?
WHICH VERSION?
WHICH PARENT?
WHICH PATH?

Porque informação sem relacionamento vira ruído.

Memória sem estrutura vira depósito.

Contexto sem origem vira suposição.

E um filho sem pai...

Bem.

Esse fica para o plantão das 02:43.

IF CHILD-FOUND
   AND PARENT-KNOWN
   AND CONTEXT-VALID
       MOVE 'OK' TO AGENT-STATUS
ELSE
       MOVE 'DO-NOT-GUESS'
         TO AGENT-STATUS
END-IF.

READY

☕ Bellacosa Mainframe — porque até uma inteligência artificial precisa aprender que, antes de sair procurando os filhos, é melhor descobrir quem são os pais.

☕ UM CAFÉ NO BELLACOSA MAINFRAME

🤖 Alan Turing entra no CPD

O mapa dos agentes de IA explicado por um mainframer

Esta série acompanha a evolução de uma ideia: compreender os problemas modernos dos agentes de inteligência artificial usando conceitos conhecidos por quem trabalha com mainframe, IBM Z e sistemas corporativos.

A viagem começa pelas pessoas e pela experiência de uso, passa por observabilidade, priorização e execução, chega às transações, estado e mensageria e termina na organização hierárquica do contexto.

01
FEV / 2023

🧠 O currículo invisível da inteligência artificial

Antes de construir agentes inteligentes precisamos preparar as pessoas que trabalharão com eles. Técnica, pensamento crítico, conhecimento de negócio, segurança, ética e responsabilidade formam o currículo que nem sempre aparece no certificado.

02
MAR / 2023

🤖 A UX dos agentes

Quando uma IA deixa de apenas responder e começa a executar ações, sua interface precisa mostrar objetivos, progresso, permissões e resultados. PF3, MAXCC e RACF tornam-se excelentes analogias para controle, retorno e privilégio mínimo.

04
MAI / 2023

⚖️ O WLM dos agentes

CPU, GPU, tokens, APIs e bancos de dados são recursos finitos. O Workload Manager inspira uma discussão sobre prioridades, objetivos de serviço, importância do trabalho e distribuição dinâmica de recursos entre agentes.

06
JUL / 2023

⚡ O CICS dos agentes

Uma coisa é uma IA produzir texto. Outra é permitir que ela execute operações reais de negócio. CICS introduz a conversa sobre processamento transacional, concorrência, segurança e integridade.

07
AGO / 2023

🗄️ O Db2 dos agentes

Agentes precisam manter estado, checkpoints, decisões e resultados. O Db2 fornece o ponto de partida para discutir unidade de trabalho, consistência, COMMIT, ROLLBACK e recuperação.

10
SET / 2026

☕ Alan Turing entra no CPD — O mapa completo

O artigo-âncora reúne toda a evolução da ideia: pessoas, UX, observabilidade, prioridade, orquestração, transações, estado, mensageria e contexto transformam artigos independentes em uma arquitetura conceitual para agentes de IA.

🖥️ Leitor da série

Selecione qualquer capítulo acima para abri-lo normalmente. O painel abaixo é apenas um recurso adicional de navegação.

sexta-feira, 9 de julho de 2010

Authority Gradient: Doctor Who, COBOL e o Dia em que o Júnior Estava Certo — Mas o Chefe Mandou Continuar

Bellacosa Mainframe e o authority gradient

☕ Um Café no Bellacosa Mainframe

Authority Gradient: Doctor Who, COBOL e o Dia em que o Júnior Estava Certo — Mas o Chefe Mandou Continuar

Uma viagem pela TARDIS dos incidentes para entender por que hierarquia, autoridade e medo de contestar podem transformar conhecimento em silêncio

02:17.

Madrugada de implantação.

Sala de mudança.

Café número quatro.

Olheiras número incontável.

A alteração deveria ter terminado à 01:30.

Mas ainda não terminou.

O gerente olha para o relógio.

— Precisamos liberar.

O especialista de infraestrutura responde:

— Podemos seguir.

O DBA:

— Por mim, GO.

O responsável pela aplicação:

— GO.

Nosso jovem programador COBOL olha para a tela.

Existe uma coisa estranha.

Uma pequena diferença na reconciliação.

Nada gigantesco.

Mas existe.

INPUT RECORDS : 12.481.731
OUTPUT RECORDS: 12.481.729

DIFFERENCE    : 2

Ele levanta a mão.

— Desculpe... temos dois registros de diferença.

O gerente olha.

— Só dois?

— Sim.

— Em doze milhões?

— Sim.

— Provavelmente arredondamento ou algum registro técnico.

O analista sênior acrescenta:

— Isso acontece.

Nosso programador olha novamente.

Pensa:

“Mas contagem de registros não arredonda.”

Quer dizer.

Não diz.

O gerente pergunta:

— Então podemos liberar?

Silêncio.

— Vamos seguir.

Todos assentem.

Inclusive nosso programador.

Nesse exato instante...

VWORP.

VWORP.

VWORP.

A TARDIS materializa-se entre a impressora e uma mesa cheia de copos de café.

A porta abre.

O Doctor aparece.

Olha para a tela.

DIFFERENCE: 2

Olha para o jovem.

— Você acha que isso está certo?

— Não.

— Então por que concordou?

O programador aponta discretamente para o gerente.

O Doctor olha para o gerente.

Depois novamente para o programador.

— Ah.

Pausa.

— Então o problema talvez não esteja no programa.

Olha ao redor.

— Pode estar na distância entre essas duas cadeiras.

Bem-vindo ao:



Authority Gradient

ou:

Gradiente de Autoridade

O fenômeno pelo qual diferenças de hierarquia, experiência, cargo, prestígio ou poder podem tornar difícil para uma pessoa questionar outra — mesmo quando ela possui informação importante para a segurança.


🌀 Recapitulando nossa viagem pela TARDIS

Até aqui conhecemos uma bela fauna de monstros cognitivos e organizacionais.

Primeiro veio o Swiss Cheese Model.

Aprendemos que sistemas possuem diversas barreiras e que cada barreira possui buracos.

Depois:

Normalization of Deviance.

O desvio acontece, nada dá errado, repetimos e gradualmente começamos a achar normal aquilo que originalmente era exceção.

Depois:

Hindsight Bias.

Após o incidente, tudo parece absurdamente previsível.

Depois:

Confirmation Bias.

Escolhemos uma teoria e passamos a procurar evidências que confirmem nossa escolha.

Depois:

Anchoring Bias.

A primeira informação gruda na investigação e começa a puxar todo o raciocínio.

Depois:

Groupthink.

O grupo começa a concordar tão rapidamente que consenso vira substituto de evidência.

Agora chegamos a uma pergunta essencial:

E se alguém perceber que o grupo está errado, mas não sentir que pode falar?

É aqui que entra o Authority Gradient.


🪜 Imagine uma escada invisível

Toda organização possui hierarquia.

Isso não é necessariamente ruim.

Precisamos saber:

quem decide;

quem responde;

quem coordena;

quem autoriza;

quem executa.

O problema não é a existência de autoridade.

O problema é quando a distância psicológica entre dois níveis fica tão grande que a informação deixa de subir.

Imagine:

DIRETOR
   ↑
GERENTE
   ↑
COORDENADOR
   ↑
ESPECIALISTA
   ↑
PLENO
   ↑
JÚNIOR

Formalmente, informação pode subir.

Mas psicologicamente?

Talvez não.

O júnior pensa:

“O especialista certamente sabe mais.”

O especialista pensa:

“O gerente já decidiu.”

O gerente pensa:

“Ninguém levantou objeção.”

Pronto.

Uma organização inteira acaba confundindo silêncio com segurança.


✈️ Por que o conceito aparece tanto em aviação?

Authority Gradient é especialmente conhecido em estudos de fatores humanos na aviação.

Historicamente, existiram situações em que tripulantes perceberam riscos, mas não desafiaram adequadamente decisões de comandantes mais seniores.

Isso ajudou a impulsionar práticas associadas a Crew Resource Management, o CRM.

Uma das grandes ideias do CRM é simples:

uma cabine segura precisa permitir que informações importantes circulem independentemente de hierarquia.

O comandante continua comandante.

Mas copiloto e demais tripulantes precisam conseguir dizer:

“Há algo errado.”

E, quando necessário:

“Precisamos interromper.”

Agora troque cockpit por War Room.

Bem-vindo à informática.


🖥️ O cockpit do mainframe

Imagine uma mudança crítica de produção.

Temos:

  • Change Manager;

  • gerente;

  • sysprog;

  • DBA;

  • especialista CICS;

  • operador;

  • programador;

  • fornecedor.

Isso é quase uma tripulação.

Existe pressão temporal.

Existem procedimentos.

Existem riscos.

Existe responsabilidade.

E decisões precisam ser tomadas rapidamente.

A diferença?

No avião, todo mundo sabe que uma decisão ruim pode terminar dramaticamente.

Em TI, às vezes descobrimos apenas depois que processamos cinco milhões de transações erradas.

O princípio humano é o mesmo.


☕ O caso dos dois registros

Voltemos ao nosso exemplo.

INPUT : 12.481.731
OUTPUT: 12.481.729

Para o gerente:

dois registros em doze milhões parecem insignificantes.

Para o programador:

existe uma propriedade lógica simples:

ENTRADA = SAÍDA + REJEITADOS

Se:

REJEITADOS = 0

então:

ENTRADA deveria ser igual a SAÍDA.

O problema não é a quantidade.

É a inconsistência.

Duas transações erradas podem representar:

R$ 2;

R$ 200 milhões;

dois registros técnicos;

dois clientes;

duas bombas-relógio.

Ainda não sabemos.

E exatamente porque não sabemos, deveríamos investigar.


🧠 O júnior pode estar certo

Essa talvez seja uma das lições mais difíceis em organizações técnicas.

Cargo e verdade não possuem relação matemática obrigatória.

Podemos escrever:

SENIORIDADE ≠ INFALIBILIDADE

Um profissional com 30 anos de experiência possui enorme conhecimento.

Isso aumenta muito a qualidade média de suas decisões.

Mas não transforma opinião em fato.

Da mesma forma:

JÚNIOR ≠ ERRADO

O iniciante pode:

ver um dado diferente;

fazer uma pergunta nova;

não carregar uma suposição antiga;

identificar inconsistência óbvia que veteranos normalizaram.

A engenharia precisa de ambos.


👻 Easter Egg nº 1 — “Yes, sir”

Imagine uma nave espacial em Doctor Who.

O comandante diz:

— Vamos abrir a comporta.

Um técnico percebe:

— Senhor, o sensor externo indica vácuo instável.

Comandante:

— O sensor está errado.

Técnico:

— Sim, senhor.

Doctor:

— Não!

Pausa.

— A resposta correta para “o sensor está errado” não é “sim, senhor”.

É:

“Como sabemos?”

Essa talvez seja uma das melhores perguntas de segurança existentes.


🧀 Authority Gradient vira um buraco no Swiss Cheese

Vamos voltar ao primeiro capítulo.

Uma das nossas fatias pode ser:

revisão humana.

Outra:

aprovação operacional.

Outra:

GO/NO-GO.

Mas imagine que todas dependem da possibilidade de contestação.

Se ninguém desafia autoridade:

BARREIRA 1 — REVIEW
“Chefe aprovou.”

BARREIRA 2 — GO/NO-GO
“Diretor quer GO.”

BARREIRA 3 — OPERAÇÃO
“Ninguém vai interromper.”

Temos três fatias.

Mas talvez um único buraco social atravesse todas:

ninguém quer contradizer quem manda.

Essa é uma falha de modo comum extremamente interessante.


🧠 Authority Gradient não depende apenas de cargo

Aqui existe uma sutileza importante.

Autoridade pode vir de várias fontes.

Autoridade formal

Diretor.

Gerente.

Coordenador.

Autoridade técnica

Especialista famoso.

Arquiteto.

DBA lendário.

Autoridade por experiência

“Ele está aqui há 30 anos.”

Autoridade social

Pessoa respeitada pelo grupo.

Autoridade por personalidade

Pessoa dominante, segura, eloquente.

Autoridade externa

Consultor.

Fornecedor.

IBM.

Auditoria.

Às vezes o cargo da pessoa nem é superior.

Mas todos a tratam como oráculo.

Isso também cria gradiente.


🧙 O Mago do Mainframe retorna

Em capítulos anteriores conhecemos o nosso lendário:

Mago do Mainframe.

Aquele profissional que sabe tudo.

Quando o sistema quebra às 03:14:

— Ligue para ele.

Ele atende.

Executa três comandos misteriosos.

Produção volta.

Lenda reforçada.

Depois de dez anos, ninguém questiona suas hipóteses.

Perigoso.

Não porque ele seja ruim.

Provavelmente é excelente.

Mas excelência repetida pode criar uma aura onde contestação parece estupidez.

E o especialista também precisa de alguém capaz de dizer:

“Você considerou esta possibilidade?”


🔥 O desastre começa quando autoridade substitui evidência

Considere:

Especialista:

— Esse RC=04 pode ser ignorado.

Pergunta correta:

— Por quê?

Resposta boa:

“Porque esse utilitário retorna 4 quando encontra registros duplicados já previstos; validamos os counts e está documentado aqui.”

Excelente.

Resposta perigosa:

“Porque eu estou dizendo.”

Essa diferença define cultura técnica.


🧠 Authority Gradient + Groupthink

Agora nossos monstros formam outra aliança.

Gerente fala primeiro:

“É rede.”

Isso cria:

Anchoring Bias.

A equipe começa a procurar evidências de rede:

Confirmation Bias.

Ninguém quer contrariar o gerente:

Authority Gradient.

Todos assentem:

Groupthink.

Depois descobrem que era storage.

No post-mortem:

“Era óbvio.”

Hindsight Bias.

E descobrimos que storage já apresentava warnings há meses:

Normalization of Deviance.

Finalmente:

várias barreiras falharam juntas.

Swiss Cheese Model.

Parabéns.

Nossa série agora começa a formar um ecossistema completo.


📞 O perigo da frase “já está decidido”

Imagine:

mudança apresenta risco.

Analista comenta:

— Gostaria de revisar mais um indicador.

Resposta:

— Já está decidido.

Talvez seja realmente necessário seguir.

Mas essa frase possui efeito secundário:

ela ensina que informação adicional não importa.

Na próxima vez, o analista talvez nem fale.

Assim nasce silêncio organizacional.


🧠 O aprendizado oculto das reuniões

Organizações treinam comportamento mesmo quando não percebem.

Se alguém levanta preocupação e recebe:

“Você está complicando.”

aprende:

não levante preocupações.

Se alguém diz STOP e depois é ridicularizado porque era falso alarme:

aprende:

não diga STOP.

Se alguém desafia gerente e perde oportunidades:

os outros aprendem também.

Cultura não é apenas documento.

É aquilo que acontece depois que alguém fala.


🚨 “Speak up” precisa ser mais que um cartaz

Muitas organizações dizem:

“Aqui todos podem falar.”

Ótimo.

O teste real ocorre quando o júnior diz:

“Eu acho que o diretor está errado.”

E agora?

A reação define a cultura.

Não o pôster.


✋ Stop the Line

Existe um conceito extraordinariamente importante em ambientes de alta confiabilidade:

pessoas precisam possuir capacidade real de interromper algo quando identificam risco grave.

Podemos chamar genericamente de:

Stop the Line.

Na informática:

parar deploy;

bloquear go-live;

interromper batch;

suspender processamento;

abortar migração.

Isso não significa que qualquer preocupação derrube produção indefinidamente.

Significa que existe um mecanismo formal para:

  1. levantar risco;

  2. pausar;

  3. verificar;

  4. decidir conscientemente.


🧪 Um STOP saudável

Programador:

— STOP. A reconciliação não fechou.

Gerente:

— Entendido. Qual divergência?

— Dois registros.

— Impacto conhecido?

— Ainda não.

— Quanto tempo para validar?

— Dez minutos.

— Pausamos.

Isso é maturidade.

Não houve crise de autoridade.

Houve uso inteligente da hierarquia.


🪜 Gradiente muito alto

Agora imagine outro ambiente:

Programador:

— Temos divergência.

Gerente:

— Continue.

Programador:

— Mas...

Gerente:

— Eu assino o risco.

Fim.

O problema é que “assinar o risco” não muda o comportamento do software.

Governança não altera física.

Se há inconsistência, ela continua existindo.


⚠️ “Eu assumo a responsabilidade” não corrige sistema

Essa frase aparece bastante:

“Pode executar. Eu assumo.”

Administrativamente talvez resolva responsabilidade.

Tecnicamente não resolve nada.

O computador não interpreta:

MANAGER-ASSUMED-RISK = TRUE

e então magicamente corrige os dados.

Produção permanece produção.


🧠 Gradiente baixo demais também pode ser problema

Agora uma nuance importante.

Se não existe autoridade clara, ocorre outro problema.

Todos discutem.

Ninguém decide.

Incidente se prolonga.

Logo, o objetivo não é eliminar hierarquia.

É criar:

autoridade clara + contestação segura.

O comandante decide.

Mas ouve.

O Incident Commander coordena.

Mas pode ser desafiado com dados.

O gerente assume responsabilidade.

Mas não monopoliza verdade.


⚖️ A autoridade ideal

Podemos imaginar:

MUITO ALTO
medo → silêncio → risco

MUITO BAIXO
caos → indecisão → risco

EQUILÍBRIO
clareza + contestação + decisão

Esse meio-termo é onde queremos chegar.


🗣️ Assertividade graduada

Em ambientes críticos, uma técnica útil é aumentar gradualmente a assertividade.

Comece:

“Estou preocupado com a reconciliação.”

Se ignorado:

“Acredito que devemos parar porque os counts não fecham.”

Depois:

“Recomendo STOP até validar os dois registros.”

Se risco grave:

“STOP. Não considero seguro prosseguir.”

Isso transforma contestação em procedimento.

Não em confronto pessoal.


📢 CUS Words

Uma técnica conhecida em segurança e healthcare utiliza uma progressão semelhante:

Concerned

“I am concerned.”

Uncomfortable

“I am uncomfortable.”

Safety issue

“This is a safety issue.”

Podemos adaptar para TI:

“Tenho uma preocupação.”

“Não considero seguro continuar.”

“Solicito STOP até validarmos.”

Linguagem padronizada reduz ambiguidade.


☕ Bellacosa Mainframe: linguagem operacional

Imagine um protocolo simples:

LEVEL 1 — QUESTION
“Pode explicar por que consideramos isso seguro?”

LEVEL 2 — CONCERN
“Estou preocupado com esta divergência.”

LEVEL 3 — RECOMMENDATION
“Recomendo não prosseguir.”

LEVEL 4 — STOP
“STOP. Precisamos validar antes.”

Isso dá ao júnior uma ferramenta.

Ele não precisa inventar como enfrentar o chefe às 03:00.

O processo já fornece palavras.


🧠 Two-Challenge Rule

Outra ideia vinda de ambientes onde comunicação importa:

se uma preocupação crítica for ignorada, levante novamente de forma mais explícita.

Primeira vez:

— Os counts não fecham.

Ignorado.

Segunda:

— Estou levantando novamente: temos divergência e recomendo não liberar.

Se continuar ignorado, deve existir escalonamento.

Isso evita:

“Eu falei uma vez baixinho.”


🪜 Escalation Path

Toda equipe deveria saber:

se meu gestor discorda e acredito existir risco crítico, para quem escalo?

Exemplo:

ANALISTA
   ↓
TECH LEAD
   ↓
INCIDENT COMMANDER
   ↓
CHANGE MANAGER
   ↓
EXECUTIVE / RISK OWNER

Sem caminho formal, discordância vira conflito pessoal.

Com caminho formal, vira governança.


👨‍💻 O programador COBOL iniciante precisa aprender isso cedo

Existe um erro cultural terrível:

ensinar iniciantes apenas a obedecer.

Claro que precisam aprender.

Escutar.

Respeitar experiência.

Mas também precisam aprender:

quando questionar.

Uma ótima postura:

“Posso estar entendendo errado, mas os números não fecham. Poderia me ajudar a entender?”

Isso é humilde.

Mas não silencioso.


🧮 A matemática não respeita organograma

Essa frase merece destaque:

A matemática não respeita organograma.

Se:

100 = 98

está errado.

Mesmo se o diretor disser que está certo.

Se débito não iguala crédito quando deveria:

temos problema.

Se input não reconcilia com output + reject:

investigue.

Hierarquia pode decidir aceitar um risco.

Não pode transformar inconsistência em consistência.


💰 Authority Gradient em sistemas financeiros

Imagine uma reconciliação:

DÉBITOS  : R$ 100.000.000
CRÉDITOS : R$ 99.999.997

Gerente:

— Diferença irrelevante.

Talvez financeiramente seja pequena.

Mas tecnicamente existe pergunta:

por que há diferença?

Pode ser:

arredondamento legítimo;

regra documentada;

falha;

duplicidade;

fraude;

processamento parcial.

Primeiro explique.

Depois aceite.


🔐 Segurança e autoridade

Imagine analista de segurança:

— Essa mudança remove MFA temporariamente.

Diretor:

— Precisamos entregar.

Analista:

— Mas aumenta exposição.

Diretor:

— Faça.

Esse é um momento onde governança precisa existir.

Quem possui autoridade para aceitar risco?

Por quanto tempo?

Quais controles compensatórios?

Quando volta?

Sem isso, autoridade vira bypass.


🧀 Normalization of Deviance entra novamente

Primeira vez:

gerente autoriza bypass.

Nada acontece.

Segunda:

também.

Depois:

“Fazemos assim quando é urgente.”

Parabéns.

Authority Gradient ajudou a criar Normalization of Deviance.

O bypass virou cultura.


🔄 Exceção precisa expirar

Qualquer exceção aprovada por autoridade deveria possuir:

RISCO:
CONTROLE REMOVIDO:
QUEM APROVOU:
JUSTIFICATIVA:
VALIDADE:
CONTROLE COMPENSATÓRIO:
PLANO DE REVERSÃO:

Principalmente:

validade.

Sem prazo, “temporário” vira geológico.


🏥 Medicina e voz discordante

Em medicina também existe forte preocupação com hierarquia.

Imagine enfermeiro percebendo dose incomum prescrita por médico experiente.

Se a cultura for:

“médico não se questiona”

o sistema perde uma barreira.

Se for:

“doses incomuns devem ser confirmadas”

a contestação deixa de ser pessoal.

Vira procedimento.

TI pode aprender muito com isso.


🧠 Transforme confronto em protocolo

Em vez de:

“Acho que você está errado.”

use:

“O critério de GO exige reconciliação 100%, e ainda temos dois registros divergentes.”

Agora não é ego contra ego.

É critério contra evidência.

Isso reduz Authority Gradient.


📋 GO/NO-GO precisa de critérios prévios

Se decidirmos critérios durante pressão, autoridade ganha peso demais.

Antes da mudança:

GO SE:
- testes 100%
- reconciliação fechada
- monitoring ok
- rollback validado
- sem severity 1/2 aberta

NO-GO SE:
- qualquer inconsistência financeira
- rollback indisponível
- baseline fora do limite

Agora quando aparece diferença:

não precisamos discutir personalidade.

Regra já existe.


🎯 Precommitment

Isso é uma forma de precommitment.

Decidimos antes:

“Se X acontecer, paramos.”

Por quê?

Porque antes do incidente estamos menos pressionados.

Durante a crise:

prazo;

ego;

custo;

diretoria;

cansaço;

tudo interfere.

Critérios prévios protegem decisões.


🧠 Plan Continuation Bias aparece no horizonte

Imagine mudança quase concluída.

Gastamos oito horas.

Diretor quer terminar.

Surge alerta.

Alguém diz:

— Talvez devêssemos voltar.

Resposta:

— Depois de tudo isso?

Estamos aproximando-nos de outro monstro:

Plan Continuation Bias.

Quanto mais avançamos no plano, mais difícil parar.

Authority Gradient pode potencializá-lo quando líder insiste em continuar.

Esse será um excelente episódio futuro.


🗣️ Como um líder reduz Authority Gradient

Aqui está a parte mais importante para gestores e seniors.

Não basta dizer:

“Minha porta está aberta.”

Durante decisão, faça perguntas como:

“O que estou deixando passar?”

“Quem discorda de mim?”

“Qual é o pior argumento contra minha decisão?”

“Quero ouvir o mais júnior primeiro.”

“O que faria vocês pedirem STOP?”

Isso muda a dinâmica.


🪑 O mais sênior deveria falar por último

Em algumas decisões, excelente prática:

juniores primeiro;

plenos;

seniors;

gestor por último.

Por quê?

Se o diretor começa:

“Minha opinião é X.”

todo mundo recebe uma âncora e uma pressão de autoridade ao mesmo tempo.

Combo premium de vieses.


📝 Brainwriting volta à TARDIS

Antes da reunião:

cada pessoa registra individualmente:

GO;

NO-GO;

riscos;

hipóteses.

Depois discutem.

Assim a opinião do gerente não altera retroativamente aquilo que todos “sempre acharam”.


🎭 “Eu também pensei nisso”

Curioso fenômeno.

Chefe:

— Acho que é rede.

Cinco minutos depois:

— Eu também estava pensando em rede.

Talvez.

Ou talvez agora seu cérebro esteja reconstruindo memória.

Hindsight Bias e Authority Gradient adoram trabalhar juntos.

Por isso registros prévios são úteis.


🧠 Psychological Safety novamente

Para Authority Gradient baixo e saudável, precisamos de segurança psicológica.

Mas segurança psicológica não significa:

todo mundo sempre confortável.

Uma reunião onde ninguém sente desconforto talvez esteja evitando assuntos difíceis.

Significa:

posso levantar uma preocupação sem medo desproporcional de retaliação.


🛡️ Proteja o mensageiro

Existe frase antiga:

“Don't shoot the messenger.”

Em operação isso é vital.

Pessoa traz informação ruim.

Ela não criou necessariamente o problema.

Se quem traz notícia ruim sofre, notícias ruins começam a chegar tarde.

Excelente para autoestima gerencial.

Terrível para confiabilidade.


📉 Bad News Escalation

Organização saudável quer:

más notícias cedo.

Não bonitas.

Não completas.

Cedo.

Exemplo:

“Ainda não sabemos a causa, mas existem duas inconsistências e recomendo segurar.”

Isso é muito melhor que descobrir quinze minutos depois do GO.


👽 Easter Egg nº 2 — UNIT

Quem acompanha Doctor Who talvez se lembre da UNIT.

Imagine uma organização militar dizendo ao Doctor:

— Temos ordens.

E o Doctor respondendo:

— Ordens são excelentes até começarem a competir com a sobrevivência do planeta.

Em incidentes, procedimento e hierarquia são fundamentais.

Mas devem existir mecanismos para dizer:

“A realidade mudou.”


🤖 Authority Gradient com IA

Agora entramos num terreno moderno.

Pessoa pergunta a uma IA.

IA responde com segurança.

Usuário iniciante pensa:

“A IA sabe mais que eu.”

Isso também pode criar um gradiente de autoridade.

Especialmente se a resposta vier:

fluente;

bem formatada;

confiante.

Mas fluência não é evidência.

IA também deve ser questionada.

Principalmente em:

produção;

segurança;

finanças;

configuração;

código crítico.


🧠 Automation Bias

Isso nos leva a outro conceito relacionado:

Automation Bias.

Tendência a confiar excessivamente em recomendações automáticas.

Sistema diz:

SAFE.

Pessoa vê dado estranho.

Mas pensa:

“Se o sistema diz SAFE...”

Mesma lógica.

Authority Gradient pode existir entre humano e máquina.

Esse é um monstro fantástico para outro episódio.


👨‍💻 COBOL não argumenta com você

Essa é uma curiosidade maravilhosa.

COBOL não respeita senioridade.

O programa não pensa:

“Este código foi escrito pelo arquiteto principal, portanto deve estar correto.”

Ele executa.

Se está errado:

erra com disciplina industrial.

Talvez milhões de vezes por segundo.

É por isso que precisamos de humanos capazes de questionar humanos.


🔬 Como detectar Authority Gradient

Observe reuniões.

Procure padrões:

  • gestor sempre fala primeiro;

  • ninguém contradiz especialista;

  • juniores quase nunca participam;

  • objeções são tratadas como atraso;

  • “porque fulano disse” aparece como justificativa;

  • falso alarme gera ridicularização;

  • decisões de GO não registram dissenso;

  • pessoas falam diferente depois que chefe sai.

Essa última é maravilhosa.

Reunião termina.

Chefe sai.

Alguém diz:

— Eu sabia que isso ia dar errado.

Pergunta:

por que você não disse durante a reunião?

Talvez acabamos de encontrar o gradiente.


🧪 Passo a passo para reduzir Authority Gradient

Passo 1 — Defina direito de questionar

Formalmente.

Não implicitamente.

“Qualquer participante pode levantar STOP por risco técnico.”


Passo 2 — Crie critérios objetivos

GO/NO-GO precisa depender de evidência.

Não apenas autoridade.


Passo 3 — Faça líderes falarem por último

Especialmente em diagnóstico.


Passo 4 — Peça dissent explicitamente

“Quem vê risco que ainda não discutimos?”


Passo 5 — Use assertividade graduada

Preocupação.

Recomendação.

STOP.


Passo 6 — Crie Two-Challenge Rule

Se preocupação crítica não for respondida adequadamente, repita e escale.


Passo 7 — Tenha escalation path

Ninguém deveria depender de confronto improvisado.


Passo 8 — Proteja falso positivo honesto

Quem pede STOP com boa justificativa e depois descobre que estava tudo certo não deveria ser punido.


Passo 9 — Registre dissenso

Post-mortem precisa saber:

quem levantou risco;

quando;

como foi tratado.

Não para caça às bruxas.

Para aprender fluxo de decisão.


Passo 10 — Treine líderes para receber contestação

É muito fácil dizer:

“Quero que falem.”

Mais difícil é ouvir:

“Sua decisão está errada.”

e responder:

“Mostre-me os dados.”

Isso é liderança operacional madura.


☕ A Regra Bellacosa da Agulha

Existe um princípio operacional extremamente útil:

decisões importantes precisam de autorização clara, validação e registro.

Pedido verbal desaparece com uma facilidade extraordinária quando alguma coisa dá errado.

Portanto:

se uma decisão relevante foi tomada verbalmente, confirme por escrito:

“Se entendi corretamente, seguiremos com X apesar de Y, com aprovação de Z. Correto?”

Isso possui dois efeitos.

Governança.

E clareza.

Muitas decisões absurdas ficam muito menos confortáveis quando precisam ser escritas.


📝 O poder do “confirme, por favor”

Imagine:

Gerente:

— Pode seguir mesmo com divergência.

Você envia:

Conforme alinhado, temos divergência de dois registros
na reconciliação e a orientação é prosseguir com o GO.

Por favor, confirme se este entendimento está correto.

Talvez a resposta seja:

“Espera. Vamos validar primeiro.”

Curioso.

A escrita desacelera impulsividade.


🧠 Não use isso como arma

Importante:

registro não deve ser utilizado com espírito:

“Vou me proteger e deixar o problema explodir.”

Isso destrói colaboração.

O objetivo é:

clareza;

responsabilidade;

rastreabilidade;

segunda chance de reflexão.

Não guerra corporativa.


🧯 O melhor incidente é o que alguém teve coragem de interromper

Existe uma categoria invisível de sucesso.

Mudança cancelada.

Problema encontrado.

Nada aconteceu.

Talvez alguém reclame:

— Perdemos a janela.

Mas talvez tenham evitado:

cinco horas de indisponibilidade;

perda financeira;

reprocessamento;

reputação;

auditoria.

Prevenção raramente recebe manchete.

Mas merece respeito.


🧠 Authority Gradient e Near Miss

Near miss pode revelar hierarquia tóxica.

Pergunte:

“Alguém percebeu antes?”

Se resposta:

“Sim, mas não quis contrariar.”

Isso é descoberta importantíssima.

Não encerre com:

“Da próxima vez fale.”

Pergunte:

“O que no ambiente tornou difícil falar?”

A resposta pode envolver:

cultura;

liderança;

histórico;

processo;

falta de canal;

medo.

Aí temos algo corrigível.


🧬 Regeneração organizacional

Depois de detectar Authority Gradient, uma organização madura regenera assim:

  1. cria linguagem padronizada para contestação;

  2. estabelece STOP authority;

  3. define escalonamento;

  4. protege discordância técnica;

  5. cria critérios prévios;

  6. faz líderes falarem por último;

  7. registra decisões de risco;

  8. analisa near misses;

  9. treina comunicação;

  10. mede se pessoas realmente sentem que podem falar.

A palavra-chave é:

contestabilidade.

Uma decisão crítica precisa poder ser questionada.


📓 Diário do Doctor

Se guardar apenas algumas ideias desta viagem, guarde estas:

Authority Gradient é a distância psicológica que dificulta questionar pessoas percebidas como superiores em autoridade ou expertise.

Hierarquia não é o problema; silêncio forçado é.

Júnior pode possuir informação que senior não possui.

Especialista não é oráculo.

Consenso hierárquico não substitui evidência.

Critérios prévios reduzem decisões baseadas em poder.

STOP precisa ser um mecanismo real.

Líderes precisam aprender a receber discordância.

Silêncio pode significar medo, não concordância.

Más notícias devem subir rapidamente.

E principalmente:

Se a segurança de seu sistema depende de o júnior ter coragem extraordinária para contrariar o diretor, o problema não é a coragem do júnior. É o desenho do sistema.


🕰️ De volta às 02:17

A TARDIS desaparece.

Mas nosso jovem programador continua olhando:

INPUT : 12.481.731
OUTPUT: 12.481.729

O gerente pergunta novamente:

— Vamos?

Desta vez ele respira.

— Tenho uma preocupação.

A sala olha.

— Os counts não reconciliam. Não consigo explicar os dois registros.

O especialista responde:

— É uma diferença mínima.

— Concordo que é pequena. Mas nosso critério de GO exige reconciliação. Recomendo segurar até explicar.

Silêncio.

O gerente olha para o relógio.

Depois para o painel.

— Quanto tempo?

— Dez minutos.

— Faça.

Sete minutos depois encontram os dois registros.

Ambos pertencem à mesma condição de restart.

Em determinado cenário, poderiam ser processados novamente no próximo ciclo.

Duas ocorrências hoje.

Talvez milhares amanhã.

O gerente olha para o jovem.

— Boa.

Ele sorri.

Não porque estava certo.

Mas porque pôde falar.

A correção é realizada.

Counts:

INPUT : 12.481.731
OUTPUT: 12.481.731

DIFFERENCE: 0

GO.

Produção liberada.

Nenhum incidente.

Nenhuma manchete.

Nenhum executivo saberá que algo quase aconteceu.

Esse é frequentemente o formato de uma excelente noite operacional:

absolutamente nada acontece.


🥚 Easter Egg final

Na manhã seguinte, nosso programador encontra um membro estranho:

BELLACOSA.BIAS(CAPTAIN)

Dentro:

       IF RANK > YOUR-RANK
           CONTINUE
       END-IF.

       IF DATA-SAYS-STOP
           PERFORM SPEAK-UP
       END-IF.

Ele estranha.

Existe um comentário:

* DON'T CONFUSE AUTHORITY WITH TRUTH.

Outro:

* TWO CHALLENGES ARE BETTER THAN ONE SILENCE.

E finalmente:

* THE DOCTOR WAS HERE.

Ele olha para o corredor.

Nada.

Apenas máquinas.

Monitores.

Um café esquecido.

E o velho IBM Z trabalhando como se absolutamente nada tivesse acontecido.

Talvez porque alguém decidiu que “nada aconteceu” era exatamente o resultado que queria produzir.

O telefone toca.

Novo GO/NO-GO.

O gerente começa:

— Minha opinião...

Para.

Sorri.

— Na verdade, os mais juniores primeiro. O que vocês estão vendo?

Nosso programador abre os gráficos.

A TARDIS talvez esteja muito longe dali.

Mas alguma coisa ficou.

Não uma tecnologia.

Não um procedimento.

Uma pergunta:

“O que você está vendo que eu talvez não esteja?”

E talvez essa seja uma das frases mais poderosas que um líder pode pronunciar diante de um sistema complexo.

☕🌀

Next stop: Plan Continuation Bias — quando o plano já está claramente dando errado, mas todo mundo continua porque “agora falta pouco”.

Este capítulo fecha uma conexão muito forte com Groupthink: o primeiro explica por que o grupo converge; Authority Gradient explica por que justamente quem percebe a inconsistência muitas vezes não consegue quebrar esse consenso. A partir daqui, Plan Continuation Bias é o próximo passo perfeito: a equipe ouviu o alerta, viu o risco e, mesmo assim, continua porque já investiu tempo demais para desistir.

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...