| Bellacosa Mainframe apresenta engenharia militar parte vi |
☕ Um Café no Bellacosa Mainframe
Engenharia Militar sem Mistérios para Programadores COBOL
Capítulo VI — Inteligência, Reconhecimento e Espionagem: A Guerra é Vencida por Quem Enxerga Primeiro
Quando um Programador COBOL Descobre que o Maior Perigo Não Está no Inimigo... Está nas Decisões Tomadas Sem Informação
A névoa cobria completamente o vale.
Do alto da muralha, o jovem samurai apertava os olhos tentando distinguir algum movimento entre as árvores.
Nada.
Silêncio absoluto.
Mesmo assim, o velho comandante permaneceu imóvel.
Depois de alguns minutos perguntou:
— O que você vê?
— Nada.
— Então ainda não aprendeu a observar.
O rapaz ficou confuso.
— Se não existe ninguém...
...o que devo procurar?
O comandante sorriu.
— Pegadas.
Galhos quebrados.
Fumaça.
Pegadas de cavalos.
Pegadas de carroças.
Marcas de rodas.
Cinzas recentes.
Pássaros levantando voo.
Silêncio onde normalmente existem insetos.
A guerra nunca começa quando vemos o inimigo.
Ela começa muito antes.
Séculos depois...
04h11 da madrugada.
Uma equipe de produção recebia um chamado urgente.
Uma aplicação havia parado.
Todos olhavam para o programa COBOL.
O analista mais experiente, entretanto, fazia outra pergunta.
— O que mudou hoje?
Silêncio.
Ninguém sabia.
Naquele instante, o jovem desenvolvedor descobriu que investigar sistemas críticos parecia muito mais com o trabalho de um detetive do que com o de um programador.
Pegue seu café.
Hoje caminharemos pela parte mais silenciosa da engenharia militar.
Porque toda fortaleza que sobreviveu durante séculos possuía excelentes muralhas.
Mas também possuía excelentes observadores.
1. A inteligência vem antes da batalha
Ao longo da História, inúmeros conflitos foram decididos antes mesmo do primeiro combate.
Por quê?
Porque um dos lados conhecia:
o terreno;
a quantidade de tropas;
os suprimentos;
as rotas;
o clima;
as intenções do adversário.
Conhecimento reduz incerteza.
E reduzir incerteza significa aumentar a qualidade das decisões.
O melhor comandante não é necessariamente aquele que luta melhor.
É aquele que luta apenas quando compreende o cenário.
2. O reconhecimento
Na engenharia militar existe uma atividade essencial.
Reconhecimento.
Antes de mover milhares de soldados é necessário descobrir:
Existe ponte?
Existe rio?
Existe lama?
Existe floresta?
Existe emboscada?
Existe água?
Existe alimento?
Existe rota alternativa?
Essa etapa parece lenta.
Mas economiza vidas.
Na programação ocorre exatamente igual.
Antes de alterar um programa COBOL devemos realizar reconhecimento técnico.
3. O reconhecimento de um programa COBOL
Imagine que você receba uma manutenção.
Antes de escrever qualquer linha, investigue.
Quem chama este programa?
Quem é chamado por ele?
Quais copybooks utiliza?
Quais arquivos lê?
Quais tabelas atualiza?
Existe CICS?
Existe MQ?
Existe Db2?
Existe VSAM?
Existe API?
Existe JCL específico?
Existe scheduler?
Existe documentação?
Existe histórico de incidentes?
Esse levantamento parece burocrático.
Na realidade...
é inteligência operacional.
4. O explorador imprudente
Existe um erro muito comum entre iniciantes.
Abrir o programa.
Encontrar o IF.
Alterar.
Compilar.
Testar.
Implantar.
Sem compreender o restante.
Isso equivale a um explorador entrar em uma floresta desconhecida olhando apenas dois metros à frente.
Talvez consiga atravessar.
Talvez encontre um penhasco.
A diferença está na informação.
5. O mapa vale mais que a espada
Os antigos cartógrafos eram considerados profissionais estratégicos.
Um mapa correto permitia:
economizar dias de viagem;
evitar montanhas;
encontrar água;
transportar suprimentos;
escapar de cercos.
Hoje nossos mapas são diferentes.
Podem ser:
diagramas;
fluxogramas;
inventários;
dependências;
arquiteturas;
linhagem de dados;
catálogos de APIs;
runbooks.
Quanto melhor o mapa...
menor o risco da campanha.
6. O Investigador COBOL
Antes de modificar qualquer rotina, transforme-se em investigador.
Exemplo de roteiro.
Etapa 1
Leia toda a especificação.
Etapa 2
Descubra quando o programa executa.
Etapa 3
Descubra quem depende dele.
Etapa 4
Procure alterações semelhantes.
Etapa 5
Leia comentários antigos.
Etapa 6
Converse com especialistas.
Etapa 7
Somente então altere o código.
Muitas vezes metade do problema desaparece durante essa investigação.
7. O poder das perguntas
Um bom engenheiro não começa respondendo.
Começa perguntando.
Perguntas como:
Por que essa regra existe?
Quando surgiu?
Quem solicitou?
Quem aprovou?
Ela ainda é necessária?
Existe legislação envolvida?
Qual processo de negócio depende disso?
Qual seria o impacto de removê-la?
Essas perguntas frequentemente revelam mais que horas examinando código.
8. A espionagem na História
Espiões existiram em praticamente todas as civilizações.
No Japão feudal encontramos diversas formas de coleta de informação.
Na China antiga, Sun Tzu dedicou um capítulo inteiro ao uso estratégico de agentes.
Na Europa medieval, mercadores frequentemente transportavam notícias entre reinos.
Nem toda informação vinha de soldados.
Quem conhece primeiro...
decide primeiro.
9. Inteligência não é espionagem
Essa diferença é importante.
Espionagem é apenas uma das formas possíveis de obter informação.
Inteligência significa:
coletar;
organizar;
correlacionar;
analisar;
interpretar;
transformar dados em decisão.
No Data Center fazemos isso diariamente.
Logs.
SMF.
RMF.
Estatísticas.
Alertas.
Métricas.
SQL.
Performance.
Tudo isso produz inteligência operacional.
10. O CSI do Mainframe
Durante nossas conversas utilizamos diversas vezes a metáfora da série CSI.
Ela funciona muito bem.
O investigador não pergunta:
"Quem parece culpado?"
Pergunta:
"O que as evidências mostram?"
Da mesma forma, um bom analista não começa culpando:
o COBOL;
o Db2;
o CICS;
o storage.
Primeiro coleta evidências.
Depois formula hipóteses.
Finalmente valida cada hipótese.
É exatamente o método científico.
11. O Log é uma testemunha
Muitos iniciantes enxergam logs apenas como mensagens.
Na verdade eles são testemunhas.
Um log bem construído informa:
quem executou;
quando;
o que ocorreu;
qual registro foi processado;
qual erro apareceu;
qual decisão foi tomada.
Sem logs...
uma investigação transforma-se em adivinhação.
12. O ABEND também conta uma história
Quando um ABEND acontece...
não devemos perguntar apenas:
"Como removê-lo?"
Precisamos perguntar:
"Por que ele apareceu?"
Um ABEND pode revelar:
erro de dados;
erro de integração;
erro operacional;
erro de infraestrutura;
erro humano;
erro arquitetural.
Eliminar o sintoma não elimina necessariamente a causa.
13. Goblin Slayer e o reconhecimento
Goblin Slayer dificilmente invade uma caverna imediatamente.
Primeiro observa.
Conta pegadas.
Calcula entradas.
Analisa vento.
Verifica fumaça.
Escuta sons.
Pergunta aos moradores.
Somente depois define o plano.
Ele nunca confunde coragem com imprudência.
Essa postura deveria inspirar qualquer profissional de TI.
14. Shogun e a informação
Em Shogun, informação vale mais que milhares de soldados.
Quem conhece:
as alianças;
os comerciantes;
os missionários;
os portos;
os rumores;
os interesses políticos;
possui enorme vantagem.
As guerras raramente são decididas apenas pela força.
São decididas pela qualidade das informações disponíveis.
15. Attack on Titan e as hipóteses
Uma das grandes qualidades da obra é mostrar personagens mudando de estratégia quando surgem novos fatos.
Eles revisam hipóteses.
Questionam crenças.
Reavaliam decisões.
Na engenharia acontece igual.
Quando novas evidências aparecem...
precisamos estar dispostos a abandonar explicações antigas.
16. A inteligência dos dados
Hoje falamos muito sobre Inteligência Artificial.
Mas IA depende profundamente da qualidade dos dados.
Existe um antigo princípio.
Garbage In, Garbage Out.
Se os dados estão incorretos...
o modelo produzirá decisões incorretas.
O mesmo vale para programas COBOL.
A lógica pode ser perfeita.
Dados ruins produzem resultados ruins.
17. Curiosidade Histórica
Durante a Segunda Guerra Mundial, a quebra de códigos criptográficos e a análise sistemática de mensagens tiveram impacto estratégico comparável ao de grandes batalhas. Informações obtidas e corretamente interpretadas permitiram antecipar movimentos, proteger comboios e reduzir perdas.
Nos ambientes corporativos modernos, a análise de logs, métricas, eventos de segurança e indicadores operacionais desempenha papel semelhante. A capacidade de transformar dados em decisões rápidas aumenta significativamente a resiliência dos sistemas críticos.
18. Easter Egg — O IF que Nunca Foi Executado
Conta uma antiga história de um banco que existia um trecho de código aparentemente inútil.
IF WS-CONTROLE = 'S'
PERFORM PROCESSAMENTO-ESPECIAL
END-IF
Durante quinze anos...
ninguém viu aquela condição ser verdadeira.
Um novo desenvolvedor decidiu removê-la.
Parecia código morto.
Os testes passaram.
Produção também.
Até chegar o fechamento anual.
Naquele único dia do ano...
um sistema externo enviava exatamente o valor "S".
O processamento especial alimentava relatórios exigidos por um órgão regulador.
O IF nunca estava morto.
Apenas aguardava o momento correto.
Depois do incidente, um comentário foi adicionado:
* EXECUTADO SOMENTE NO FECHAMENTO ANUAL.
* NÃO REMOVER SEM VALIDAR PROCESSO REGULATÓRIO.
O problema não era a condição.
Era a investigação incompleta.
19. Checklist do Investigador COBOL
Antes de modificar qualquer sistema:
✔ Descobri quem chama este programa?
✔ Conheço seus consumidores?
✔ Li os comentários?
✔ Consultei a documentação?
✔ Analisei logs anteriores?
✔ Verifiquei histórico de incidentes?
✔ Entendi o objetivo da regra?
✔ Existe impacto legal?
✔ Existe impacto contábil?
✔ Existem dependências ocultas?
✔ Os testes representam produção?
✔ Registrei minhas descobertas?
Conclusão — O Homem que Aprendeu a Observar
O jovem samurai caminhava ao lado do velho comandante.
Pararam diante da floresta.
O mestre perguntou:
— Ainda não vê ninguém?
O rapaz sorriu.
— Vejo muito mais do que soldados.
Vejo trilhas.
Vejo árvores quebradas.
Vejo fumaça distante.
Vejo que passaram carroças pesadas.
Vejo que alguém alimentou uma fogueira há poucas horas.
Vejo que os pássaros evitam determinada região.
O velho assentiu.
— Agora você começou a enxergar.
Na madrugada do Data Center, o jovem programador recebeu mais um chamado.
Em vez de abrir imediatamente o editor COBOL, fez algo diferente.
Consultou os logs.
Leu o histórico.
Verificou o scheduler.
Comparou os arquivos.
Analisou os SQLCODEs.
Conversou com a operação.
Depois de vinte minutos concluiu:
O programa estava correto.
O problema era um dataset produzido com layout antigo por outro sistema.
Nenhuma linha de COBOL precisou ser alterada.
O veterano aproximou-se e perguntou:
— O que você aprendeu esta noite?
O rapaz respondeu:
— Descobri que programar é importante.
Mas investigar é indispensável.
O comandante sorriu.
No horizonte, a névoa começava a desaparecer.
Não porque o inimigo tivesse ido embora.
Mas porque alguém finalmente aprendera a enxergar através dela.
E aquele era o primeiro passo para tornar-se não apenas um programador COBOL...
...mas um verdadeiro engenheiro de sistemas críticos.
Este capítulo encerra o primeiro ciclo da série mostrando que estratégia, logística, segurança e arquitetura dependem de inteligência e observação.
☕ Um Café no Bellacosa Mainframe
Engenharia Militar sem Mistérios para Programadores COBOL
Uma campanha completa sobre estratégia, logística, inteligência, segurança, liderança, continuidade, sistemas críticos, IBM Z e COBOL.
Um Data Center analisado como uma fortaleza em guerra
A série Engenharia Militar sem Mistérios para Programadores COBOL compara castelos, exércitos, muralhas, cadeias de comando, logística, inteligência e operações militares com os ambientes IBM Z responsáveis por bancos, governos, seguros, transportes e serviços essenciais.
Cada artigo apresenta uma parte dessa arquitetura: aplicações COBOL, Jobs JCL, transações CICS, bancos Db2, filas MQ, segurança RACF, monitoramento, contingência, liderança, documentação e continuidade operacional.
Índice da campanha
Links completos da série Engenharia Militar
Esta relação permanece disponível no HTML da página para mecanismos de busca, leitores de tela, navegadores sem JavaScript e ferramentas de arquivamento.
- Engenharia Militar sem Mistérios para Programadores COBOL
- Prólogo — O Chamado do Guardião
- Capítulo I — O Castelo, a Ponte e o Job que Não Podia Falhar
- Capítulo II — Estratégia, Operação e Tática
- Capítulo III — A Cadeia de Comando
- Capítulo IV — Logística
- Capítulo V — As Muralhas Invisíveis
- Capítulo VI — Inteligência, Reconhecimento e Espionagem
- Capítulo VII — A Arte da Guerra Aplicada ao Mainframe
- Capítulo VIII — Liderança, Moral e Disciplina
- Capítulo IX — Inovação, Evolução e o Futuro
- Capítulo X — O Legado do Engenheiro
- Capítulo XI — O Guardião Invisível
- Capítulo XII — A Fortaleza Invisível
- Capítulo XIII — Os Sentinelas da Madrugada
- Capítulo XIV — A Civilização Invisível
- Capítulo XV — Engenharia de Cerco
- Glossário IBM Z + Engenharia Militar
- Apêndice A — Correspondências Históricas e Técnicas
- Os 10 Animes Mais Emblemáticos Sobre Engenharia Militar
- Os 10 Animes Mais Emblemáticos Sobre Logística Militar
- Os 10 Animes Mais Emblemáticos Sobre Tática Militar
- Os 10 Animes Mais Emblemáticos Sobre Estratégia Militar
- Especial — Guerrilha Urbana
- Especial — Guerrilha no Campo e na Floresta
Sem comentários:
Enviar um comentário