☕ 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

segunda-feira, 6 de abril de 2009

💾 Capítulo 3 — Boot inicial: o mundo além da escola

Bellacosa Mainframe um eterno isekai
 

📚 SÉRIE “Sempre um Isekai”

Por Bellacosa Mainframe
(Memórias de um garoto que aprendeu a trocar de mundo sem sair da sala de aula)


💾 Capítulo 3 — Boot inicial: o mundo além da escola

O fim do colegial chegou rápido — como o ponto final de um livro que a gente queria que tivesse mais capítulos.
Mas o próximo volume já estava sendo escrito: o mundo do trabalho.

Com o diploma técnico em mãos e a curiosidade de quem sempre foi estrangeiro de si mesmo, entrei no universo do Processamento de Dados — ainda não se falava em “TI”.
Era um tempo em que o computador ocupava salas inteiras, e a palavra “mainframe” soava como magia industrial.
Aquele mundo lógico e silencioso me acolheu como nenhum outro.
Ali, finalmente, eu não era o aluno novo — eu era o programador que aprendia a dialogar com máquinas, e cada compile successful era uma nova forma de pertencer.

Percebi que, afinal, viver em trânsito não era desvantagem — era um sistema operacional de alma.
Ser o “novo” sempre me ensinou a observar, adaptar e reconstruir — exatamente o que um bom analista faz.
Minha vida inteira foi um boot contínuo: cada cidade, uma reinicialização; cada escola, uma nova rotina; cada linha de código, uma lembrança em hexadecimal.

Trabalhando como office-boy foi conquistando meu espaço, crescendo, fiz a faculdade, pós-graduação e mestrado, cresci academicamente, mas não abandonei os meus, protegi o quanto pode e ajudei a todos a trilharem o bom caminho. Não imagina que seria apenas o começo e que este isekai iria ainda mais longe, desta vez atravessando o oceano, mas isso já é outra história.

E talvez seja isso o que nos torna humanos no mundo das máquinas: a capacidade de recomeçar sem perder a memória.


☕ Epílogo — O Isekai Real

No fim das contas, percebo que nunca precisei ser transplantado para outro mundo.
Meu isekai sempre foi aqui mesmo — entre escolas, cidades e sistemas que me forjaram.
E, como todo bom personagem de jornada, aprendi que mudar é só outra forma de continuar.


Série “Sempre um Isekai”
Um relato sobre educação, adaptação e vocação — onde cada reboot é também um renascimento.
Assinado: Bellacosa Mainframe


domingo, 5 de abril de 2009

COBOL: Uma Odisseia de 1959 ao IBM Z

 

Bellacosa Mainframe e uma odisseia do Cobol

☕ Um Café no Bellacosa Mainframe

COBOL: Uma Odisseia de 1959 ao IBM Z

Quando um Programador Descobre que o Código Mais Antigo da Nave Ainda Controla os Sistemas Vitais da Civilização

“Abra as portas do processamento, HAL.”
“Sinto muito, programador. O fechamento contábil ainda não terminou.”

Em algum ponto silencioso de um datacenter, protegido por portas reforçadas, sensores, câmeras, autenticação multifator e camadas de segurança que fariam a nave Discovery One parecer uma kombi espacial, existe um programa COBOL trabalhando.

Ele não aparece nos comerciais.

Não possui uma mascote colorida.

Não muda de framework a cada seis meses.

Não publica frases motivacionais sobre inovação disruptiva.

Ele apenas trabalha.

Lê registros.

Valida contas.

Calcula juros.

Atualiza saldos.

Autoriza pagamentos.

Rejeita inconsistências.

Grava resultados.

E, ao terminar, provavelmente deixa uma mensagem curta no relatório:

PROCESSAMENTO CONCLUÍDO COM SUCESSO

Enquanto desenvolvedores discutem qual linguagem dominará o futuro, esse programa continua executando uma missão iniciada décadas atrás.

Talvez tenha sido escrito quando terminais ainda não eram comuns.

Talvez tenha atravessado cartões perfurados, fitas magnéticas, discos removíveis, terminais 3270, redes privadas, interfaces gráficas, internet, APIs, microsserviços, nuvem híbrida e inteligência artificial.

O hardware mudou.

O sistema operacional evoluiu.

As interfaces se transformaram.

Mas a regra de negócio permaneceu.

Essa é a verdadeira razão pela qual o COBOL se recusa a desaparecer.

Não porque esteja preso ao passado.

Mas porque continua sustentando o presente.

E esta é a história de uma das mais impressionantes odisseias da engenharia de software.



Prólogo: o monólito verde de 1976

A capa verde do manual apresentado nesta conversa parece um monólito tecnológico.

Na parte superior, o logotipo da IBM.

No centro, em letras brancas:

IBM DOS Full American National Standard COBOL

Na lateral, uma indicação simples:

DOS/VS COBOL

Na parte inferior:

Seventh Edition — April 1976

Para um observador moderno, pode parecer apenas um manual antigo.

Para um programador mainframe, entretanto, aquilo representa uma passagem para outra era.

Em 1976, os computadores pessoais ainda não faziam parte da vida cotidiana. Não existiam navegadores, smartphones, GitHub, Docker, Kubernetes ou vídeos ensinando programação em dez minutos.

A documentação era física.

O conhecimento vinha em volumes.

O programador precisava consultar tabelas, sintaxes, restrições do compilador, formatos de registros, instruções de entrada e saída e características específicas do sistema operacional.

O manual não era um acessório.

Era parte da estação de trabalho.

Imagine um jovem programador entrando numa sala de processamento de dados em 1976. Ele encontra armários metálicos, impressoras de linha, operadores, formulários contínuos, fitas identificadas, pilhas de relatórios e um computador central que custa uma fortuna.

Em suas mãos está aquele manual verde.

Ele não sabe, mas alguns dos programas que ajudará a escrever poderão sobreviver à sua carreira inteira.

Talvez sobrevivam à empresa que os criou.

Talvez sejam migrados para plataformas sucessivas.

Talvez executem, décadas depois, num IBM Z moderno.

É como se o astronauta David Bowman encontrasse um monólito não na Lua, mas numa biblioteca técnica, e percebesse que aquele objeto contém instruções capazes de atravessar gerações inteiras de computadores.


Capítulo 1 — A missão original do COBOL

COBOL significa:

COmmon Business-Oriented Language

Ou, em português:

Linguagem Comum Orientada aos Negócios.

O nome revela sua missão.

COBOL não nasceu para ser uma linguagem experimental.

Não nasceu para impressionar matemáticos.

Não nasceu para criar efeitos visuais.

Não nasceu para construir jogos ou controlar sondas planetárias.

Ele nasceu para processar os registros do mundo empresarial.

Folhas de pagamento.

Contas bancárias.

Seguros.

Impostos.

Estoques.

Faturas.

Financiamentos.

Contratos.

Pensões.

Transações comerciais.

Registros governamentais.

Sua arquitetura foi moldada por uma pergunta muito concreta:

Como representar e processar dados empresariais de maneira clara, previsível e confiável?

Essa pergunta continua válida.

Empresas modernas ainda possuem clientes, contas, pagamentos, contratos e regras.

Os nomes das tecnologias mudaram, mas a essência do negócio continua incrivelmente parecida.

Um banco de 1976 precisava saber:

  • quem era o cliente;

  • quanto havia na conta;

  • qual valor seria debitado;

  • qual valor seria creditado;

  • qual regra deveria ser aplicada;

  • qual evidência seria produzida.

Um banco moderno precisa saber exatamente as mesmas coisas.

A diferença é que hoje as transações chegam por aplicativos, APIs, cartões, terminais, redes instantâneas e plataformas digitais.

Mas, em algum ponto do processamento, ainda existe uma regra dizendo:

IF SALDO-DISPONIVEL >= VALOR-TRANSACAO
    SUBTRACT VALOR-TRANSACAO
        FROM SALDO-DISPONIVEL
    MOVE "APROVADA" TO STATUS-TRANSACAO
ELSE
    MOVE "RECUSADA" TO STATUS-TRANSACAO
END-IF

A sintaxe pode parecer simples.

O impacto não é.

Esse pequeno bloco representa uma decisão financeira.

Ele pode autorizar a compra de alimentos, pagar uma conta médica, liberar um empréstimo ou impedir uma operação indevida.

COBOL trabalha no ponto onde código e realidade se encontram.


Capítulo 2 — A linguagem que podia ser lida

Uma das ideias centrais do COBOL era a legibilidade.

Observe este exemplo:

IF IDADE-CLIENTE GREATER THAN OR EQUAL TO 18
    MOVE "CLIENTE MAIOR DE IDADE"
      TO MENSAGEM
ELSE
    MOVE "CLIENTE MENOR DE IDADE"
      TO MENSAGEM
END-IF

Mesmo uma pessoa que nunca estudou COBOL consegue imaginar o que está acontecendo.

Essa característica não é uma fraqueza.

É uma decisão de engenharia.

Sistemas empresariais precisam ser examinados por muitas pessoas:

  • programadores;

  • analistas;

  • auditores;

  • especialistas de negócio;

  • equipes de suporte;

  • profissionais de segurança;

  • responsáveis por conformidade;

  • novos integrantes da equipe.

Num sistema de missão crítica, o código precisa sobreviver ao seu criador.

Uma rotina obscura pode parecer elegante para quem a escreveu, mas se torna perigosa quando ninguém consegue compreendê-la cinco anos depois.

COBOL foi pensado para resistir a esse problema.

Sua verbosidade frequentemente criticada é também uma forma de documentação.

COMPUTE VALOR-JUROS =
        SALDO-DEVEDOR
      * TAXA-JUROS
      / 100

Não há muito mistério.

O código declara a intenção.

Isso é especialmente importante em programas que precisam permanecer compreensíveis durante décadas.

A nave espacial pode trocar seus tripulantes.

O programa precisa continuar operando.


Capítulo 3 — O verdadeiro patrimônio não está no código

Quando alguém olha para um sistema COBOL com milhões de linhas, pode pensar:

“É apenas código antigo.”

Esse é um dos maiores erros de interpretação da história da tecnologia.

O código é apenas a superfície.

O verdadeiro patrimônio está nas regras de negócio acumuladas.

Imagine uma instituição financeira que existe desde 1965.

Ao longo das décadas, seus sistemas precisaram incorporar:

  • mudanças nas leis;

  • novas moedas;

  • alterações tributárias;

  • regras de crédito;

  • métodos de cálculo;

  • produtos bancários;

  • exceções contratuais;

  • fusões entre instituições;

  • novas políticas de segurança;

  • decisões judiciais;

  • exigências regulatórias;

  • prevenção contra fraudes;

  • mudanças contábeis;

  • integrações com outras empresas.

Cada alteração acrescentou conhecimento ao sistema.

Um programa COBOL com quarenta anos não contém apenas quarenta anos de instruções.

Ele contém quarenta anos de decisões empresariais.

Veja uma regra aparentemente estranha:

IF TIPO-CONTRATO = "P7"
   AND DATA-ADESAO < 19940701
   AND CODIGO-REGIAO NOT = 18
    PERFORM CALCULO-ESPECIAL
ELSE
    PERFORM CALCULO-PADRAO
END-IF

Um programador iniciante pode perguntar:

“Por que existe essa exceção?”

Talvez ela tenha sido criada devido a uma mudança legal ocorrida em 1994.

Talvez represente contratos antigos que mantiveram uma condição específica.

Talvez proteja clientes adquiridos numa fusão.

Talvez esteja ligada a uma decisão judicial.

Talvez ninguém da equipe atual conheça todos os detalhes.

Mas o sistema conhece.

Ele carrega aquela regra como a Discovery One carregava instruções secretas sobre sua missão.

O perigo de uma reescrita apressada é remover a condição sem compreender sua origem.

O programa moderno compilará.

Os testes superficiais passarão.

A interface ficará bonita.

E, meses depois, alguém descobrirá que milhares de contratos foram calculados incorretamente.

O erro não estava na nova linguagem.

Estava na perda de conhecimento.


Capítulo 4 — Por que “traduzir para Java” não resolve tudo

Frequentemente aparece a proposta:

“Vamos converter o COBOL para Java.”

Essa frase parece simples porque reduz o problema a uma troca de sintaxe.

Mas modernizar um sistema empresarial é muito mais complexo.

Considere este trecho:

EVALUATE TIPO-OPERACAO
    WHEN "01"
        PERFORM VALIDAR-DEPOSITO
    WHEN "02"
        PERFORM VALIDAR-SAQUE
    WHEN "03"
        PERFORM VALIDAR-TRANSFERENCIA
    WHEN OTHER
        MOVE 12 TO CODIGO-ERRO
END-EVALUATE

Em Java, poderia existir uma estrutura equivalente.

Porém, a questão central não é como converter EVALUATE para switch.

As perguntas importantes são:

Por que o código de erro é 12?

Quem interpreta esse código?

Ele aparece num relatório?

Ele é enviado a outro sistema?

Existe um programa esperando exatamente dois dígitos?

A operação "03" possui regras diferentes em finais de semana?

Há integração com CICS, Db2, VSAM ou IBM MQ?

O programa participa de uma unidade de trabalho?

O que acontece se a gravação ocorrer parcialmente?

Como o sistema realiza recuperação?

Quais controles de auditoria precisam ser preservados?

Qual volume deve ser processado?

Quanto tempo a janela batch permite?

Uma tradução automática pode converter instruções.

Ela não compreende necessariamente a missão completa.

É como reconstruir a inteligência de HAL 9000 apenas traduzindo seus comandos para outra linguagem, sem entender os objetivos contraditórios que governam seu comportamento.


Capítulo 5 — Milhões de horas de produção

Um sistema COBOL antigo possui uma característica difícil de reproduzir: tempo real de uso.

Imagine um programa executado todos os dias durante trinta anos.

Ele passou por:

  • dias comuns;

  • finais de mês;

  • finais de ano;

  • anos bissextos;

  • mudanças de moeda;

  • picos de movimento;

  • falhas de hardware;

  • recuperação de dados;

  • auditorias;

  • alterações de legislação;

  • campanhas comerciais;

  • crises econômicas;

  • migrações de plataforma.

Cada execução revelou problemas.

Cada correção fortaleceu o sistema.

Isso não significa que programas antigos sejam perfeitos.

Sistemas COBOL também possuem defeitos, dívidas técnicas, trechos obscuros e decisões ultrapassadas.

Mas muitos deles foram refinados por décadas de operação real.

Essa maturidade possui enorme valor.

Testes automatizados são fundamentais.

Ambientes de homologação são indispensáveis.

Simulações são úteis.

Porém, nada substitui completamente décadas de comportamento observado em produção.

Um programa que processou bilhões de registros acumulou uma espécie de experiência operacional.

Ele pode não possuir inteligência artificial.

Mas carrega cicatrizes.


Capítulo 6 — O hardware envelheceu, a plataforma evoluiu

Outro erro comum é imaginar que programas COBOL antigos continuam executando exatamente nas mesmas máquinas de quarenta anos atrás.

Em muitos casos, isso não é verdade.

As aplicações foram movidas por diferentes gerações de hardware e software.

A plataforma mainframe evoluiu continuamente.

O IBM Z moderno não é um computador congelado nos anos 1970.

É uma plataforma empresarial contemporânea, projetada para altos volumes, segurança, disponibilidade e integração.

O mesmo ambiente pode reunir:

  • COBOL;

  • Java;

  • Python;

  • Linux;

  • bancos relacionais;

  • mensageria;

  • APIs;

  • automação;

  • observabilidade;

  • ferramentas DevOps;

  • criptografia avançada;

  • inteligência artificial;

  • processamento transacional;

  • processamento batch.

O programa COBOL permanece porque o ecossistema se modernizou ao redor dele.

Imagine uma nave cuja estrutura central é continuamente aperfeiçoada.

Novos motores são instalados.

Os sensores são substituídos.

A navegação é atualizada.

Os canais de comunicação evoluem.

Mas o módulo que controla o oxigênio continua sendo usado porque funciona, foi testado e todos dependem dele.

Substituí-lo apenas para dizer que a nave está “mais moderna” seria irresponsável.


Capítulo 7 — A compatibilidade como filosofia

Uma das maiores forças da cultura mainframe é a continuidade.

Em muitas áreas da tecnologia, uma nova versão pode abandonar rapidamente os sistemas anteriores.

No universo empresarial, isso pode ser desastroso.

Uma empresa investe durante anos em programas, dados, processos, treinamento e integração.

Ela não pode simplesmente descartar tudo a cada mudança tecnológica.

A compatibilidade permite que investimentos antigos continuem produzindo valor.

Isso não significa nunca mudar.

Significa mudar sem destruir.

Essa é uma diferença essencial.

Modernização responsável procura combinar:

  • preservação do que funciona;

  • eliminação de riscos;

  • documentação das regras;

  • criação de testes;

  • exposição por APIs;

  • renovação de interfaces;

  • automação de entrega;

  • melhoria da observabilidade;

  • substituição gradual de componentes.

O objetivo não é conservar cada linha para sempre.

O objetivo é evitar que a modernização se transforme num ABEND corporativo.


Capítulo 8 — O aplicativo moderno e o motor invisível

Imagine uma cliente usando o celular para pagar uma conta.

Ela toca no aplicativo.

A tela mostra uma animação elegante.

Em poucos segundos, aparece:

Pagamento realizado com sucesso.

Por trás dessa experiência podem existir várias camadas:

Aplicativo móvel
       ↓
API Gateway
       ↓
Serviço Java
       ↓
IBM MQ
       ↓
Transação CICS
       ↓
Programa COBOL
       ↓
Db2 ou VSAM

A cliente não precisa conhecer essa arquitetura.

Para ela, tudo é um aplicativo moderno.

Mas o núcleo da transação pode ser um programa COBOL.

Isso demonstra uma verdade importante:

Modernização não exige necessariamente substituição total.

Um programa confiável pode ser encapsulado.

Pode receber chamadas por API.

Pode participar de fluxos modernos.

Pode interagir com aplicações web, dispositivos móveis, mensageria e nuvem híbrida.

O COBOL não precisa aparecer na tela para continuar sendo essencial.

Ele é como o computador central da nave: invisível para os passageiros, decisivo para a missão.


Capítulo 9 — Batch: o turno da madrugada

Durante o dia, sistemas online recebem transações individuais.

Durante a noite, entra em cena outro universo: o processamento batch.

É quando grandes volumes são consolidados.

Extratos são gerados.

Contas são fechadas.

Juros são calculados.

Relatórios são produzidos.

Arquivos são enviados.

Dados são reconciliados.

Um job pode executar vários passos:

//FECHAMEN JOB ...
//STEP01   EXEC PGM=VALIDA01
//ARQENT   DD DSN=BANCO.MOVIMENTO.DIA,DISP=SHR
//ARQSAI   DD DSN=BANCO.MOVIMENTO.OK,
//            DISP=(NEW,CATLG,DELETE)
//STEP02   EXEC PGM=CALCJURO
//STEP03   EXEC PGM=GERAEXTR

Para um iniciante, isso pode parecer apenas uma sequência técnica.

Para a empresa, é uma linha de produção digital.

Se o primeiro passo falha, os seguintes podem não executar.

Se um arquivo está incorreto, o fechamento pode atrasar.

Se o job perde sua janela, o sistema online do dia seguinte pode ser afetado.

Por isso o ambiente mainframe desenvolveu uma cultura intensa de disciplina operacional.

Horários.

Dependências.

Retornos.

Códigos de condição.

Recuperação.

Reprocessamento.

Auditoria.

COBOL sobreviveu também porque se encaixa extraordinariamente bem nesse universo de processamento previsível e volumoso.


Capítulo 10 — Precisão decimal: onde um centavo importa

Muitas linguagens foram criadas com forte orientação científica ou de sistemas.

COBOL foi criado para negócios.

Negócios trabalham com números decimais.

Dinheiro exige precisão.

Considere:

01  VALOR-COMPRA        PIC 9(7)V99.
01  TAXA-DESCONTO       PIC 9(3)V99.
01  VALOR-DESCONTO      PIC 9(7)V99.
01  VALOR-FINAL         PIC 9(7)V99.

COMPUTE VALOR-DESCONTO ROUNDED =
        VALOR-COMPRA * TAXA-DESCONTO / 100

COMPUTE VALOR-FINAL =
        VALOR-COMPRA - VALOR-DESCONTO

Um sistema financeiro precisa definir:

  • quantidade de casas decimais;

  • forma de arredondamento;

  • tamanho máximo;

  • sinal;

  • tratamento de overflow;

  • regras específicas do produto.

Um erro de R$ 0,01 pode parecer pequeno.

Multiplicado por milhões de transações, deixa de ser pequeno.

Além disso, o problema não é apenas o valor total.

É a confiança.

Um cliente que identifica cálculo incorreto começa a questionar todo o sistema.

COBOL foi projetado para tornar estruturas numéricas e formatos empresariais explícitos.

A PICTURE, representada por PIC, funciona como um contrato de dados.

01 VALOR-SALDO PIC S9(11)V99 COMP-3.

Essa declaração informa que existe sinal, onze posições inteiras, duas decimais e representação decimal compactada.

Para um iniciante, parece apenas sintaxe.

Para o sistema, é a forma física do dinheiro.


Capítulo 11 — O perigoso mito do software velho

“Antigo” e “ruim” não são sinônimos.

“Novo” e “bom” também não são.

Um sistema deve ser avaliado por critérios concretos:

  • atende ao negócio?

  • é confiável?

  • possui suporte?

  • é seguro?

  • consegue evoluir?

  • integra-se com outros sistemas?

  • seu custo é justificável?

  • seus riscos são conhecidos?

  • existe mão de obra?

  • há documentação e testes?

  • a arquitetura permite manutenção?

Um programa antigo pode estar bem estruturado, documentado e estável.

Um programa novo pode ser frágil, confuso e inseguro.

A data de criação não determina a qualidade.

O problema real aparece quando o sistema se torna impossível de compreender, manter ou adaptar.

Por isso a pergunta correta não é:

“O COBOL é antigo?”

A pergunta correta é:

“Este sistema ainda entrega valor com risco aceitável?”

Em muitos casos, a resposta continua sendo sim.


Capítulo 12 — Passo a passo para o Padawan COBOL

Ao encontrar um programa antigo, não tente compreender tudo de uma vez.

Aproxime-se como um astronauta examinando um artefato desconhecido.

Primeiro passo: identifique a missão

Leia o cabeçalho.

Procure comentários.

Observe o nome do programa.

Descubra quais dados entram e quais resultados saem.

Pergunte:

Qual problema empresarial este programa resolve?

Segundo passo: examine a Data Division

Comece pelos dados.

WORKING-STORAGE SECTION.

01 WS-CLIENTE.
   05 WS-CODIGO        PIC 9(8).
   05 WS-NOME          PIC X(40).
   05 WS-SALDO         PIC S9(9)V99 COMP-3.
   05 WS-STATUS        PIC X(01).

A estrutura dos dados costuma revelar grande parte da história.

Terceiro passo: localize o fluxo principal

Procure a sequência central:

PROCEDURE DIVISION.

    PERFORM INICIALIZAR
    PERFORM PROCESSAR UNTIL FIM-ARQUIVO
    PERFORM FINALIZAR

    STOP RUN.

Esse é o mapa da missão.

Quarto passo: siga cada PERFORM

Analise uma rotina por vez.

PROCESSAR.
    READ ARQUIVO-CLIENTES
        AT END
            MOVE "S" TO FIM-ARQUIVO
        NOT AT END
            PERFORM VALIDAR-CLIENTE
            PERFORM ATUALIZAR-CLIENTE
    END-READ.

Não pule diretamente para trechos complexos.

Siga o fluxo.

Quinto passo: observe arquivos e bancos

Descubra onde os dados residem.

Pode ser:

  • arquivo sequencial;

  • VSAM;

  • Db2;

  • IMS;

  • fila MQ;

  • área temporária CICS.

Sexto passo: procure códigos de retorno

IF SQLCODE NOT = ZERO
    MOVE 08 TO RETURN-CODE
    PERFORM TRATAR-ERRO
END-IF

Esses pontos revelam como o programa reage a falhas.

Sétimo passo: descubra quem chama o programa

Ele é executado por JCL?

Recebe comando CICS?

É chamado por outro COBOL?

Consome uma mensagem?

É exposto por uma API?

Nenhum programa existe isoladamente.

Oitavo passo: não altere uma regra sem contexto

Antes de remover um IF estranho, descubra:

  • quando foi criado;

  • qual problema resolveu;

  • quais dados o acionam;

  • quem depende dele;

  • quais testes existem.

A linha mais feia do programa pode ser justamente a linha que impede um desastre.


Capítulo 13 — Curiosidades da odisseia COBOL

COBOL nasceu no final da década de 1950, quando a indústria buscava uma linguagem comercial mais portável e compreensível.

Uma figura central nessa história foi Grace Hopper, pioneira na ideia de linguagens mais próximas da comunicação humana e no desenvolvimento de compiladores.

Muitos programas foram escritos numa época em que cada coluna do código possuía significado específico.

O formato tradicional incluía áreas reservadas para numeração, indicadores, conteúdo e identificação.

Daí surgiram marcas culturais conhecidas por programadores experientes, como a famosa coluna 7.

Em ambientes antigos, um asterisco nessa posição podia indicar comentário:

      * ESTE É UM COMENTÁRIO

Outro símbolo conhecido era o hífen na coluna de continuação, usado quando uma instrução precisava prosseguir na linha seguinte.

Essas características faziam sentido em cartões perfurados e formatos rígidos.

O COBOL moderno evoluiu muito e oferece formato livre, recursos estruturados, integração e capacidades que os pioneiros dificilmente imaginariam.

Ainda assim, conhecer as origens ajuda a compreender por que certos programas possuem determinada aparência.

É como encontrar uma seção antiga da Discovery One e perceber que alguns painéis foram projetados segundo tecnologias anteriores à missão atual.


Capítulo 14 — Easter eggs encontrados no setor 3270

Há uma semelhança curiosa entre 2001: Uma Odisseia no Espaço e o universo mainframe.

Na obra, o computador HAL 9000 fala com voz calma.

Ele observa tudo.

Ele controla funções críticas.

Todos dependem dele.

No mainframe, o operador também conversa com uma entidade central.

Não por voz, mas por comandos, mensagens e painéis.

HAL poderia dizer:

“Esta missão é importante demais para permitir que você execute esse job sem validar o parâmetro de data.”

Outro paralelo está no monólito.

Na história, o monólito aparece em momentos de transformação da humanidade.

No mainframe, o manual verde aparece no início da jornada do programador.

Ele também representa uma transformação: o momento em que o estudante deixa de ver COBOL como um fóssil e começa a enxergá-lo como engenharia.

E existe ainda o monólito definitivo:

IEF142I JOB12345 STEP01 - STEP WAS EXECUTED - COND CODE 0000

Para o operador, poucas mensagens possuem tanta beleza.

É o equivalente mainframe da imagem da Terra vista do espaço.


Capítulo 15 — Modernizar não é destruir a nave

Uma estratégia madura de modernização pode seguir etapas.

1. Inventariar

Quais programas existem?

Quais arquivos usam?

Quais tabelas acessam?

Quais jobs os executam?

Quais sistemas dependem deles?

2. Medir

Quais programas são mais utilizados?

Quais consomem mais recursos?

Quais causam mais incidentes?

Quais mudam com maior frequência?

3. Documentar

Mapeie regras de negócio.

Registre dependências.

Explique exceções.

Crie diagramas.

4. Testar

Construa testes de regressão.

Capture entradas e resultados conhecidos.

Compare comportamento antes e depois das mudanças.

5. Modularizar

Separe regras.

Reduza acoplamento.

Crie interfaces claras.

6. Expor serviços

Permita que aplicações modernas utilizem funções COBOL por APIs ou mensageria.

7. Automatizar

Integre compilação, testes, análise e implantação em pipelines.

8. Substituir seletivamente

Componentes problemáticos podem ser reescritos.

Mas isso deve acontecer com evidência, não por moda.

Modernização é uma cirurgia na nave em movimento.

Desligar todos os sistemas e reconstruir do zero raramente é uma opção realista.


Capítulo 16 — A geração que precisa assumir o painel

Existe um argumento frequente:

“Os programadores COBOL estão envelhecendo.”

Essa preocupação é real, mas não significa que a linguagem esteja condenada.

Significa que conhecimento precisa ser transferido.

Empresas devem formar novos profissionais.

Programadores iniciantes precisam aprender mais do que sintaxe.

Precisam compreender:

  • processos empresariais;

  • arquivos;

  • processamento batch;

  • transações online;

  • integridade;

  • recuperação;

  • auditoria;

  • desempenho;

  • segurança;

  • disciplina operacional.

O profissional COBOL não é apenas alguém que escreve MOVE.

Ele é alguém que compreende a relação entre código, dados e negócio.

Um grande programa COBOL pode ser tecnicamente simples e empresarialmente complexo.

Por isso o conhecimento do domínio vale tanto quanto o conhecimento da linguagem.


Capítulo 17 — O que realmente mantém COBOL vivo

COBOL não sobrevive apenas por causa de compatibilidade.

Ele sobrevive por uma combinação de fatores:

  1. Os sistemas continuam cumprindo funções essenciais.

  2. As regras acumuladas possuem enorme valor.

  3. A reescrita completa custa caro e envolve alto risco.

  4. A plataforma moderna continua oferecendo desempenho e suporte.

  5. O processamento empresarial combina naturalmente com os pontos fortes da linguagem.

  6. Sistemas antigos podem ser integrados a arquiteturas modernas.

  7. A continuidade operacional é mais importante do que seguir tendências.

O mercado não preserva tecnologias por caridade.

Ele preserva aquilo que continua entregando valor.

Se COBOL fosse completamente inútil, teria desaparecido há muito tempo.

Sua permanência é resultado de sua utilidade.


Epílogo — Além de Júpiter

Ao final de 2001: Uma Odisseia no Espaço, a jornada não termina numa resposta simples.

Ela termina numa transformação.

O astronauta atravessa o desconhecido e se torna algo diferente.

O programador iniciante também passa por uma transformação quando compreende o COBOL.

No começo, vê uma linguagem antiga.

Depois, vê programas extensos.

Em seguida, percebe arquivos, jobs, transações e bancos.

Mais tarde, enxerga regras de negócio.

Finalmente, entende que o mainframe não é apenas uma máquina.

É uma memória operacional da civilização.

Nele estão registrados salários, seguros, impostos, contratos, contas, benefícios, movimentos logísticos e incontáveis decisões empresariais.

O COBOL permaneceu porque foi construído para esse mundo.

Um mundo no qual os dados precisam fechar.

No qual centavos importam.

No qual auditorias exigem evidências.

No qual sistemas não podem simplesmente “tentar novamente amanhã”.

A pergunta, portanto, não deveria ser:

“Por que COBOL ainda não morreu?”

A pergunta correta é:

“Como uma linguagem criada há mais de seis décadas conseguiu continuar relevante enquanto tantas tecnologias desapareceram?”

A resposta está em sua missão.

COBOL não prometeu mudar o universo.

Prometeu processar negócios com precisão, clareza e confiabilidade.

Cumpriu essa promessa em computadores que já não existem.

Cumpre hoje em sistemas IBM Z modernos.

E poderá continuar cumprindo enquanto organizações precisarem de continuidade, controle e confiança.

Em algum datacenter, o próximo job já entrou na fila.

O JES recebeu a missão.

O programa foi carregado.

Os arquivos foram abertos.

Os registros começaram a atravessar a nave.

No console, uma mensagem aparece:

JOB COBOL001 STARTED

O monólito verde continua de pé.

A odisseia continua.

E o velho programa, silencioso como o espaço, executa mais uma vez exatamente aquilo para o qual foi criado.

BELLACOSA MAINFRAME TEMPORAL SYSTEM
> INICIANDO CONTAGEM HISTÓRICA...

COBOL 00 ANOS

Uma odisseia temporal desde 1º de abril de 1959

DATA DE ORIGEM 01/04/1959
DATA DO SISTEMA CARREGANDO...
TEMPO DECORRIDO CALCULANDO...
SISTEMAS VITAIS OPERACIONAIS
“O código muda. A regra permanece. A missão continua.”

quinta-feira, 19 de março de 2009

☕🌎🔄💣 HIGURASHI NO NAKU KORO NI REI — O IPL ACIDENTAL QUE LEVOU RIKA PARA UM UNIVERSO ONDE O ABEND NUNCA ACONTECEU

 

Bellacosa Mainframe em destaque Higurashi no naku koro ni rei

☕🌎🔄💣 HIGURASHI NO NAKU KORO NI REI — O IPL ACIDENTAL QUE LEVOU RIKA PARA UM UNIVERSO ONDE O ABEND NUNCA ACONTECEU

"Depois de milhares de dumps, infinitos loops e incontáveis tragédias, o sistema finalmente estabilizou. Mas e se a correção tivesse criado uma realidade onde você nunca existiu?"


Dados Técnicos

Título Original: ひぐらしのなく頃に礼 (Higurashi no Naku Koro ni Rei)

Título Internacional: When They Cry – Gratitude / Rei

Autor Original: Ryukishi07

Obra Base: Visual Novel da 07th Expansion

Estúdio: Studio Deen

Direção: Toshifumi Kawase

Lançamento: Fevereiro de 2009 a Agosto de 2009

Formato: OVA (Original Video Animation)

Quantidade de Episódios: 5


Gênero

  • Terror Psicológico

  • Mistério

  • Drama

  • Sobrenatural

  • Ficção Científica Psicológica

  • Slice of Life

  • Reflexão Filosófica


Classificação Indicativa

16 anos

Contém:

  • Temas psicológicos complexos

  • Reflexões existenciais

  • Algumas cenas violentas

  • Conteúdo emocional intenso


O Que é Higurashi Rei?

Muitos fãs acreditam que Rei seja apenas um epílogo.

Erro de diagnóstico.

ABEND conceitual.

Na verdade, Rei funciona como:

FASE 1 -> PERGUNTAS
(Higurashi)

FASE 2 -> RESPOSTAS
(Higurashi Kai)

FASE 3 -> AUDITORIA FINAL
(Higurashi Rei)

Rei pergunta algo que nenhuma das temporadas anteriores teve coragem de perguntar:

"Depois de salvar o mundo, você consegue viver com as consequências?"


Sinopse

Após os acontecimentos de Kai, tudo parece finalmente resolvido.

O ciclo de tragédias acabou.

O destino foi alterado.

Os amigos sobreviveram.

O sistema está estável.

Então ocorre um acidente.

Rika sofre um evento inesperado e desperta em uma realidade alternativa.

Uma realidade onde Hinamizawa é diferente.

Uma realidade onde certas tragédias jamais aconteceram.

Uma realidade onde algumas pessoas vivem vidas felizes.

Mas existe um problema.

Nesse novo ambiente...

A própria existência de Rika parece ser um erro de sistema.


Resumo da História

Se Kai foi a correção do programa...

Rei é o teste de homologação.

Rika recebe a oportunidade de observar uma realidade onde muitas dores nunca aconteceram.

A princípio parece um sonho.

Mas logo surge um dilema brutal.

Se este mundo é melhor...

Por que voltar?

E se voltar significar destruir a felicidade de pessoas inocentes?


O Grande Diferencial de Rei

As temporadas anteriores focavam em:

  • mistério

  • sobrevivência

  • conspirações

  • loops temporais

Rei muda completamente o foco.

Agora a discussão é:

"O que define uma vida legítima?"

A série deixa de ser um thriller.

Torna-se uma reflexão filosófica.


A História Vista Como Mainframe

Ao estilo Bellacosa Mainframe:

Imagine que um ambiente de produção apresentou falhas durante anos.

Após incontáveis correções, finalmente o sistema estabiliza.

Então alguém apresenta um novo ambiente.

AMBIENTE A
(PRODUÇÃO ORIGINAL)

AMBIENTE B
(PRODUÇÃO ALTERNATIVA)

AMBOS FUNCIONAM

A pergunta passa a ser:

Qual deles é o verdadeiro?

Existe uma resposta objetiva?

Ou verdade é apenas a versão do sistema na qual estamos executando?


Personagens Principais

Rika Furude

A protagonista absoluta.

Rei é praticamente uma análise psicológica completa da personagem.

Pela primeira vez vemos Rika confrontando algo maior que o destino:

A própria identidade.


Hanyu

Continua sendo uma figura fundamental.

Agora mais ligada à dimensão filosófica da narrativa.


Keiichi Maebara

Representa a amizade que ajudou a quebrar o ciclo.

Mesmo aparecendo menos, continua sendo peça importante.


Rena Ryugu

Mais uma vez simboliza os laços emocionais que sustentam Hinamizawa.


Satoko Houjou

Sua presença torna-se ainda mais importante diante das escolhas que Rika precisa fazer.


Temáticas Profundas

Identidade

Quem somos?

Nossas memórias?

Nossas escolhas?

Ou nossas relações?


Sacrifício

Uma das questões centrais.

Vale a pena abrir mão da própria felicidade para preservar a dos outros?


Realidade

Existe uma realidade mais legítima que outra?

A série evita respostas fáceis.


Aceitação

Talvez a mensagem mais importante de Rei.

Nem toda dor pode ser apagada.

Algumas precisam ser aceitas.


Crescimento

Rika finalmente aprende algo que nem milhares de loops ensinaram.

Viver não é apenas sobreviver.


As Aventuras de Rei

As aventuras aqui não são físicas.

São existenciais.

Cada episódio funciona como uma exploração dos limites da identidade de Rika.

É quase uma jornada filosófica.

Menos ação.

Mais reflexão.

Menos mistério.

Mais significado.


As Mensagens Ocultas

O Mundo Perfeito Não Existe

Mesmo uma realidade aparentemente ideal possui problemas.


Sofrimento Também Constrói Quem Somos

Uma mensagem controversa.

Rei sugere que apagar toda dor também pode apagar parte da pessoa que nos tornamos.


O Valor das Conexões Humanas

O que torna uma vida significativa não é a ausência de sofrimento.

São os vínculos criados ao longo do caminho.


Não Podemos Reescrever Tudo

Após passar anos tentando corrigir o destino, Rika aprende que algumas imperfeições fazem parte da existência.


O Arco Saikoroshi-hen

Aqui encontramos o verdadeiro coração de Rei.

Muitos fãs consideram esse arco uma das melhores histórias escritas por Ryukishi07.

Por quê?

Porque ele obriga Rika a enfrentar uma pergunta impossível:

"Você escolheria um mundo perfeito para todos os outros se isso significasse apagar sua própria vida?"

Poucos animes têm coragem de abordar esse tema.

Menos ainda conseguem fazê-lo tão bem.


Houve Censura?

Muito menos que nas temporadas anteriores.

O foco de Rei não é violência.

É reflexão.

Consequentemente houve pouca controvérsia.

As eventuais alterações internacionais concentraram-se em pequenas cenas de violência residual.


Impacto Cultural

Embora menos famoso que Kai, Rei é extremamente respeitado pelos fãs veteranos.

Muitos o consideram:

  • o verdadeiro encerramento da saga clássica

  • a conclusão emocional de Rika

  • uma das melhores reflexões filosóficas dos animes de horror

Seu impacto pode ser percebido em obras posteriores que exploram universos alternativos e identidade pessoal.


O Que Ryukishi07 Fez de Genial Aqui?

Ele percebeu que resolver o mistério não era suficiente.

Após responder:

"Como escapar do ciclo?"

ele resolveu perguntar:

"O que fazer depois da liberdade?"

Essa é uma questão muito mais difícil.

E muito mais humana.


Veredito Bellacosa Mainframe

Se Higurashi foi o dump.

Se Kai foi a análise da causa raiz.

Então Rei é o relatório final de auditoria.

INCIDENTE ENCERRADO

CAUSA RAIZ IDENTIFICADA

AÇÃO CORRETIVA EXECUTADA

SISTEMA ESTÁVEL

Mas antes de arquivar definitivamente o chamado, Ryukishi07 faz uma última pergunta ao operador:

VOCÊ TEM CERTEZA
QUE ESTA É A REALIDADE
QUE DESEJA MANTER?

E é nesse momento que Higurashi Rei deixa de ser um anime de terror.

Torna-se uma profunda reflexão sobre memória, identidade, perdas e o valor da própria existência.

☕🌎🔄💣 Nota Bellacosa Mainframe: 10/10 auditorias existenciais aprovadas em produção.

Status Final:

JOB: HINAMIZAWA

LOOP ENCERRADO

MEMÓRIAS PRESERVADAS

RETURN CODE = 0000

Ou pelo menos até o próximo operador decidir reinicializar o universo. 🌾🩸🔄☕💣


quarta-feira, 18 de março de 2009

🌿 SHISO VERMELHO – A ERVA JAPONESA QUE PINTA A MEMÓRIA

 

Bellacosa Mainframe apresenta shiso vermelho

🌿 SHISO VERMELHO – A ERVA JAPONESA QUE PINTA A MEMÓRIA

 

Se você já assistiu anime, leu mangá ou se aventurou numa receita japonesa mais raiz, uma hora esbarrou nele: shiso vermelho. Às vezes discreto, às vezes protagonista, mas sempre ali, rodando em background como um daemon cultural do Japão.

Hoje vou te contar a história dessa erva que parece simples, mas carrega cor, aroma, superstição, medicina, comida e memória.


shiso

🌱 O QUE É SHISO?

Shiso (紫蘇) é uma erva da família da hortelã.
Existem dois tipos principais:

  • 🟢 Shiso verde (aojiso) – fresco, herbal, muito usado como folha

  • 🔴 Shiso vermelho (akajiso) – mais intenso, levemente amargo, usado para cor, conserva e fermentação

O shiso vermelho é o sysprog da cozinha japonesa: não aparece sempre, mas quando entra… muda tudo.


🏯 ORIGEM & HISTÓRIA

O shiso veio da China há mais de 2.000 anos, mas foi no Japão que ele ganhou identidade própria.

Originalmente usado como:

  • Planta medicinal

  • Conservante natural

  • Antídoto contra intoxicações alimentares

📜 Textos antigos diziam que shiso “acalma o espírito e limpa o sangue”.
Ou seja: debug emocional e físico.


🍙 USO CLÁSSICO NA CULINÁRIA

O shiso vermelho aparece em:

  • Umeboshi (ameixa japonesa)

  • Umezu (líquido da conserva)

  • Furikake

  • Conservas de legumes

  • Bebidas fermentadas

  • Doces tradicionais

👉 Ele é responsável pela cor vermelha icônica da umeboshi.
Sem shiso, a ameixa fica bege, triste, sem alma.
É tipo CICS sem terminal: funciona, mas não encanta.


🧪 CURIOSIDADE TÉCNICA (EASTER EGG BOTÂNICO)

A cor vermelha do shiso vem da antocianina, que:

  • Muda de cor conforme o pH

  • Fica vermelho intenso em meio ácido

  • Era usada como indicador natural antes da química moderna

📌 Sim, o shiso era um pH meter ancestral.


🥋 SHISO EM ANIMES & CULTURA POP

Você já viu shiso em:

  • 🍙 Animes slice of life – preparo de onigiri e umeboshi

  • 🏯 Animes históricos – conservas caseiras

  • 👘 Cenários rurais – quintais e hortas tradicionais

  • 🧘 Obras contemplativas – símbolo de cuidado e tempo

Ele quase nunca é explicado.
Porque no Japão, todo mundo sabe o que é shiso.


🧠 DICAS DE VETERANO

✔ Não confundir com manjericão
✔ Shiso vermelho é mais forte que o verde
✔ Seco dura meses
✔ Fresco estraga rápido (volatile dataset)
✔ Aroma lembra hortelã + canela + terra molhada


👀 FOFOQUICES DE COZINHA

🍃 Criança japonesa que ajuda a fazer umeboshi fica com as mãos roxas
🍃 Casas antigas tinham shiso no quintal como “erva de proteção”
🍃 Era usado para “neutralizar” peixe suspeito antes da refrigeração


🧠 FILOSOFIA ESCONDIDA

Shiso vermelho ensina:

  • Mottainai – nada se desperdiça

  • Tempo – não se apressa fermentação

  • Wabi-sabi – beleza na imperfeição da cor

  • Memória – sabor que atravessa gerações


🏁 CONCLUSÃO BELLACOSA

O shiso vermelho não grita.
Não aparece em propaganda.
Não pede holofote.

Mas sem ele, a cozinha japonesa perde alma, cor e história.

É a erva que roda silenciosa no background…
igual mainframe.

🌿Aqui, até a erva tem memória.

terça-feira, 17 de março de 2009

🧠 Agile de Verdade: Por que Planejar Tudo no Início Falha (e o que Fazer em Vez Disso)

 

Bellacosa Mainframe agile kanbam estouro de prazo

🧠 Agile de Verdade: Por que Planejar Tudo no Início Falha (e o que Fazer em Vez Disso)

Por El Jefe — Estilo Bellacosa Mainframe


Introdução: o som dos prazos passando voando

Douglas Adams resumiu melhor do que qualquer framework:

“Eu amo prazos. Adoro o som que eles fazem quando passam voando. Whoosh!”

Se você trabalha com projetos — especialmente em TI, mainframe, DevOps ou software corporativo — já ouviu esse som.
Planejamos tudo no início, cravamos uma data… e erramos.

A pergunta não é se isso vai acontecer.
A pergunta é: por que insistimos em fazer isso?


O erro clássico: decidir tudo quando você sabe o mínimo

No início de um projeto, sabemos quase nada:

  • Requisitos ainda são hipóteses

  • Sistemas dependentes mudam

  • Patches surgem

  • Prioridades do negócio se ajustam

Mesmo assim, é exatamente nesse momento que:

  • Criamos cronogramas longos

  • Estimamos prazos fixos

  • Prometemos entregas distantes

📌 Bellacosa rule #1

Não decida tudo no ponto em que você sabe menos sobre o problema.


A analogia dos pinguins (e por que ela funciona)

Imagine atravessar um campo cheio de pinguins em movimento.

  • No início, você escolhe os primeiros passos

  • No meio do caminho, o cenário já mudou

  • Quanto mais avança, melhor é sua visão

Agora troque:

  • Pinguins por dependências

  • Campo por projeto

  • Movimento por mudança constante

Isso é desenvolvimento de software.
Isso é modernização de sistemas.
Isso é Agile.


Planejamento iterativo: navegar, não adivinhar

Agile não elimina planejamento.
Ele elimina planejamento ilusório.

A ideia é simples:

  • Planeje o que você conhece agora

  • Avance um pouco

  • Aprenda

  • Ajuste

  • Repita

🎯 Precisão real:

  • Planejar 3 meses à frente → ~50% de acurácia

  • Planejar 2 semanas → quase 100%

📌 Bellacosa rule #2

Agile não tenta ser onisciente. Agile aprende rápido.


O segundo grande erro: trocar cargos sem mudar mentalidade

Quando empresas “viram Agile”, algo perigoso costuma acontecer:

  • Product Manager vira Product Owner

  • Project Manager vira Scrum Master

  • Time de desenvolvimento vira “Scrum Team”

Tudo isso sem treinamento.

Resultado? Fracasso previsível.


Product Manager ≠ Product Owner

  • Product Manager

    • Cargo

    • Foco em orçamento e operação

  • Product Owner

    • Papel do Scrum

    • Visionário

    • Conecta negócio e tecnologia

    • Define valor e experimentos

📌 Podem ser a mesma pessoa? Sim.
📌 Devem ser automaticamente? Não.


Project Manager ≠ Scrum Master

Aqui mora o choque cultural.

Project Manager

  • Controla tarefas

  • Cobra plano

  • Documenta riscos

Scrum Master

  • Atua como coach

  • Remove impedimentos

  • Protege o time

  • Incentiva auto-organização

📌 Diferença brutal
O Project Manager pergunta:

“Como você vai se destravar?”

O Scrum Master diz:

“Deixa comigo. Vai produzir.”


Development Team ≠ Scrum Team

  • Development Team: só desenvolvedores

  • Scrum Team: time cross-functional

Inclui:

  • Dev

  • Teste

  • Ops

  • Segurança

  • Negócio

📌 Agile sem time multidisciplinar é teatro corporativo.


Sem apoio da gestão, Agile não escala

Essa é a verdade que dói.

Gestão tradicional pergunta:

  • “O que você entrega até o fim do ano?”

Gestão ágil pergunta:

  • “O que você entrega nas próximas duas semanas?”

  • “Qual valor chega ao cliente neste sprint?”

📌 Bellacosa rule #3

Agile só funciona quando a liderança muda as perguntas.


Ferramentas não tornam ninguém ágil

Kanban, Jira, ZenHub, GitHub…
Ferramentas não criam mindset.

Elas apenas:

  • Dão visibilidade

  • Sustentam o processo

  • Reduzem ruído

Se o processo é Waterfall, o Kanban vira um Gantt disfarçado.


Kanban sem frescura: simples, visual e honesto

Kanban é só isso:

  • O que preciso fazer

  • O que estou fazendo

  • O que já fiz

Trabalho flui da esquerda para a direita.
Sem mágica. Sem burocracia.


Pipelines: uma visão clara do fluxo

Um Kanban típico tem:

  • New Issues – entrada

  • Icebox – longo prazo

  • Product Backlog – tudo que queremos

  • Sprint Backlog – próximas duas semanas

  • In Progress – trabalho ativo

  • Review / QA – validação

  • Done – concluído

📌 Uma única fonte da verdade.
📌 Atualizada automaticamente onde o dev já trabalha.


Conclusão: Agile não é moda, é sobrevivência

Agile não é sobre:

  • Framework

  • Cerimônia

  • Ferramenta

Agile é sobre:

  • Aprender rápido

  • Planejar melhor

  • Entregar valor continuamente

  • Aceitar que o desconhecido faz parte do jogo

📌 Bellacosa final rule

Quem tenta controlar o futuro perde o presente.
Quem aprende continuamente constrói o futuro.



📌 Resumo para ir mais longe

 Um dos princípios mais importantes do movimento Agile é reconhecer uma realidade que muitos projetos tentam ignorar: é impossível planejar tudo com precisão absoluta. Mercados mudam, clientes alteram prioridades, tecnologias evoluem e novos desafios surgem constantemente. Por isso, metodologias ágeis não eliminam o planejamento; elas transformam o planejamento em um processo contínuo.

Durante décadas, muitas organizações acreditaram que documentos extensos e cronogramas detalhados seriam suficientes para prever todo o futuro de um projeto. Na prática, porém, quanto maior o prazo, maior a probabilidade de mudanças. O Agile surgiu justamente para lidar com essa incerteza de forma estruturada.

Em vez de definir todos os detalhes antecipadamente, equipes ágeis trabalham com objetivos claros e ciclos curtos de entrega. A cada sprint, novas informações são analisadas, permitindo ajustes rápidos e redução de riscos. O aprendizado contínuo passa a ser parte integrante do processo.

Outro conceito fundamental é o feedback constante. Clientes, usuários e equipes colaboram para identificar melhorias antes que pequenos problemas se transformem em grandes falhas. Essa abordagem aumenta a capacidade de adaptação e melhora a qualidade das entregas.

O verdadeiro Agile não promete prever o futuro. Ele oferece mecanismos para responder às mudanças de maneira eficiente, permitindo que pessoas, equipes e organizações evoluam continuamente em um ambiente cada vez mais dinâmico e imprevisível.

terça-feira, 3 de março de 2009

SMP/E : SYSMOD sem mistério = Parte 2

 

Bellacosa Mainframe apresenta IBM SMP/E

📘 Série SMP/E para Iniciantes

Parte 2 – SYSMOD sem mistério  

“No SMP/E, tudo gira em torno do SYSMOD.
Entendeu o SYSMOD, entendeu metade do sistema.”


🧠 O que é SYSMOD (de verdade)

SYSMOD (System Modification) é a unidade básica de mudança controlada pelo SMP/E.

👉 Em português Bellacosa:

SYSMOD é o envelope lacrado que traz código, regras e avisos.

Dentro dele vêm:

  • Código novo ou corrigido

  • Instruções (MCS)

  • Dependências

  • Restrições

  • Alertas (HOLD, ERROR)


🧩 Tipos de SYSMOD (decore isso)

🔹 1. FUNCTION

É a base de tudo.

  • Instala um produto ou grande componente

  • Cria o “chão” para os outros SYSMODs

  • Exemplo: instalação inicial do JES2, CICS, DB2

📌 Sem FUNCTION, nada existe.


🔹 2. PTF (Program Temporary Fix)

É a correção prática do dia a dia.

  • Corrige defeitos

  • Resolve APARs

  • É o SYSMOD mais comum

📌 PTF não é opcional. Segurança agradece.


🔹 3. APAR (Authorized Program Analysis Report)

Não é exatamente uma correção.

  • É o registro do problema

  • Documento técnico da IBM

  • Normalmente leva a um PTF

👉 APAR explica, PTF corrige.


🔹 4. USERMOD

É a customização do cliente.

  • Criado pelo próprio site

  • Não vem da IBM

  • Usado para ajustes locais

📌 USERMOD é poder — e risco.


🧬 SYSMOD não vem sozinho

Um SYSMOD pode ter:

  • Pré-requisitos

  • Co-requisitos

  • Dependentes

  • Exclusões

Tudo isso é descrito nas MCS.

👉 SMP/E não aceita “jeitinho”.


🔁 SYSMOD e o fluxo SMP/E

Todo SYSMOD passa por:

1️⃣ RECEIVE
👉 Entra no controle do SMP/E

2️⃣ APPLY
👉 Vai para TARGET (executável)

3️⃣ ACCEPT
👉 Atualiza o DLIB (baseline)

📌 Pular etapa é pedir problema.


🚨 HOLD e ERROR: os avisos do SYSMOD

🔴 ++HOLD

Indica:

  • Conflitos conhecidos

  • Ações manuais necessárias

  • Restrições de ambiente

📌 Sempre leia o texto do HOLD.


🔥 ++ERROR

Indica:

  • Defeito conhecido no PTF

  • Correção parcial ou problemática

👉 Aplique só se souber o que está fazendo.


🧪 Exemplo prático de SYSMOD

++PTF(UJ12345). ++VER(Z038) FMID(HJES770). ++HOLD(SYSTEM) REASON(REQUIRES IPL).

📌 Tradução Bellacosa:

  • É um PTF

  • Serve para JES2

  • Exige IPL


📦 SYSMOD x FMID (confusão comum)

  • FMID → identifica o produto (ex: HJES770)

  • SYSMOD → mudança aplicada ao produto

👉 SYSMOD sempre aponta para um FMID.


🎓 Como aprender SYSMOD na prática

🧪 Laboratório essencial

  • SMP/E for z/OS Workshop

  • APPLY CHECK

  • Leitura de HOLDS

  • Análise de ERROR

📘 Leitura obrigatória

  • APARs

  • PTF cover letters

  • ++HOLD text

💡 Dica Bellacosa:

“Quem não lê o texto do PTF não sabe o que está instalando.”


🧠 Curiosidades Bellacosa

  • Um único SYSMOD pode alterar centenas de módulos

  • Um ++HOLD ignorado pode gerar outage

  • USERMOD mal feito é pesadelo em migração


🧾 Comentário final – Parte 2

SYSMOD não é só correção.
SYSMOD é contrato.
Quebrou o contrato, o SMP/E cobra.


📌 Próxima Parte da Série

👉 Parte 3 – MCS na prática: ++VER, ++HOLD, ++ERROR sem medo

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