Translate

sexta-feira, 1 de junho de 2007

☕⚔️💀 BERSERK — O DIA EM QUE UM OPERADOR DE PRODUÇÃO DESCOBRIU QUE O DESTINO ERA O MAIOR BUG DO SISTEMA

 

Bellacosa Mainframe a honra de Berserk

☕⚔️💀 BERSERK — O DIA EM QUE UM OPERADOR DE PRODUÇÃO DESCOBRIU QUE O DESTINO ERA O MAIOR BUG DO SISTEMA

Dados Técnicos da Obra

Título Original: ベルセルク (Beruseruku)
Título Internacional: Berserk
Autor Original: Kentaro Miura
Publicação do Mangá: Agosto de 1989
Revista: Monthly Animal House (posteriormente Young Animal)
Anime Clássico: Berserk (1997)
Data de Lançamento: 7 de outubro de 1997
Estúdio: OLM Team Iguchi (Oriental Light and Magic)
Diretor: Naohito Takahashi
Episódios: 25
Gênero: Dark Fantasy, Seinen, Ação, Horror, Drama Psicológico, Tragédia, Fantasia Medieval
Classificação Indicativa: 18+ (violência extrema, temas adultos e psicológicos)


Introdução

Se existe uma obra que poderia ser utilizada para explicar a palavra "tragédia" para uma inteligência artificial, essa obra seria Berserk.

Enquanto a maioria dos animes apresenta heróis destinados à grandeza, Berserk apresenta um homem condenado desde o nascimento.

Kentaro Miura criou algo muito maior que um mangá de fantasia medieval.

Criou uma reflexão brutal sobre sofrimento, livre-arbítrio, amizade, ambição, trauma, poder, fé e sobrevivência.

Ao estilo Bellacosa Mainframe, Berserk pode ser descrito como:

"O relatório de auditoria de um ambiente em produção que foi comprometido pelo próprio administrador do sistema."


Sinopse

A história acompanha Guts, um guerreiro mercenário que nasceu em circunstâncias macabras, literalmente encontrado sob o cadáver de sua mãe enforcada.

Criado em um ambiente de guerra, violência e abandono, Guts aprende desde cedo que sobreviver é sua única opção.

Sua vida muda quando encontra Griffith, líder da lendária Tropa do Falcão.

Sob a liderança de Griffith, Guts encontra pela primeira vez amizade, propósito e pertencimento.

Mas por trás do sonho grandioso de Griffith existe uma falha catastrófica que acabará destruindo tudo.


A História

O anime de 1997 adapta principalmente o famoso arco:

Golden Age Arc (Arco da Era de Ouro)

Considerado por muitos um dos melhores arcos narrativos já criados.

Acompanhamos:

  • Ascensão da Tropa do Falcão

  • Conquistas militares

  • Relação entre Guts e Griffith

  • Desenvolvimento de Casca

  • Intrigas políticas

  • Ambições de poder

Inicialmente parece uma história de guerra medieval.

Mas aos poucos a narrativa revela elementos sobrenaturais que transformam completamente o universo.

O resultado é um dos finais mais impactantes da história dos animes.


Os Personagens Principais

Guts

O protagonista.

Se Naruto representa esperança e Luffy representa liberdade, Guts representa resistência.

Sua principal característica não é força.

É persistência.

Ele continua avançando mesmo quando tudo ao redor está destruído.

Na linguagem mainframe:

Guts é o operador que continua recuperando o sistema mesmo após um desastre sem backup.


Griffith

Um dos personagens mais complexos da ficção.

Carismático.

Brilhante.

Visionário.

Manipulador.

Sua obsessão por alcançar seu sonho é tão grande que ele passa a enxergar pessoas como recursos descartáveis.

Griffith é a personificação da ambição absoluta.


Casca

Muito além de interesse romântico.

Casca é uma guerreira excepcional e um dos personagens mais importantes da obra.

Sua trajetória explora temas como identidade, vulnerabilidade, amor e trauma.


God Hand

As entidades que operam nos bastidores do universo.

Funcionam como administradores invisíveis do sistema da realidade.

Manipulam eventos através do conceito chamado:

Causalidade

O equivalente a um scheduler cósmico que determina o destino de todos.


Temáticas Profundas

Livre-Arbítrio versus Destino

A principal discussão da obra.

A pergunta central é:

Nossas escolhas realmente importam?

Ou tudo já foi definido antecipadamente?

Berserk desafia constantemente a ideia de que somos donos do próprio destino.


Ambição

Griffith representa o preço dos sonhos.

Kentaro Miura pergunta:

Quanto você estaria disposto a sacrificar para alcançar seu objetivo?

Essa pergunta atravessa toda a narrativa.


Trauma

Muito antes de animes modernos explorarem saúde mental, Berserk já abordava:

  • Abuso

  • Perda

  • Depressão

  • Solidão

  • Transtorno pós-traumático

De maneira extremamente madura.


Humanidade

Mesmo cercado por monstros, demônios e horrores sobrenaturais, Berserk mostra que os piores monstros frequentemente são humanos.


O Que Berserk Tem de Diferente?

Muitos animes mostram heróis vencendo obstáculos.

Berserk mostra um homem tentando sobreviver após perder tudo.

Não existe poder da amizade.

Não existe transformação milagrosa.

Não existe protagonista protegido pelo roteiro.

Cada vitória custa caro.

Cada derrota deixa cicatrizes permanentes.

Essa brutalidade emocional é o que torna a obra única.


As Aventuras de Guts

Durante sua jornada, Guts enfrenta:

  • Exércitos inteiros

  • Nobres corruptos

  • Assassinos

  • Apóstolos demoníacos

  • Criaturas sobrenaturais

  • Seus próprios traumas

Mas seu maior inimigo não é nenhum monstro.

É a memória.

A lembrança constante daquilo que perdeu.


Mensagens Ocultas

A Espada Dragonslayer

A espada simboliza a própria sobrevivência.

Não foi criada para ser elegante.

Foi criada para continuar funcionando.

Como um sistema legado que continua operando décadas depois.


O Eclipse

O Eclipse não é apenas um evento sobrenatural.

Representa:

  • Traição

  • Ruptura da inocência

  • Morte dos sonhos

  • Renascimento através do sofrimento

É uma metáfora para momentos traumáticos que mudam completamente uma vida.


A Marca do Sacrifício

Representa feridas emocionais.

Traumas que continuam nos acompanhando mesmo após o evento original.


Houve Censura?

Sim.

E bastante.

O anime de 1997 reduziu:

  • Violência extrema do mangá

  • Conteúdo sexual explícito

  • Algumas cenas de tortura

  • Diversos elementos sobrenaturais

Mesmo assim, continuou sendo considerado extremamente pesado.

Já as adaptações posteriores também realizaram cortes para adequação televisiva.

Curiosamente, muitos fãs acreditam que nenhuma adaptação conseguiu reproduzir integralmente a intensidade do material original.


Impacto Cultural

Poucas obras influenciaram tanto a cultura pop japonesa.

Berserk inspirou diretamente ou indiretamente:

  • Dark Souls

  • Demon's Souls

  • Bloodborne

  • Elden Ring

  • Final Fantasy

  • Dragon's Dogma

  • Claymore

  • Attack on Titan

  • Vinland Saga

A espada colossal de Guts tornou-se um ícone reconhecido mundialmente.

O arquétipo do guerreiro sombrio moderno praticamente nasceu aqui.


O Legado de Kentaro Miura

Kentaro Miura era conhecido pelo perfeccionismo extremo.

Algumas páginas levavam semanas para serem concluídas.

Seu detalhamento artístico é frequentemente comparado ao trabalho de mestres renascentistas.

Quando faleceu em 2021, o mundo dos mangás perdeu um de seus maiores gênios.

A continuidade da obra por Kouji Mori e Studio Gaga busca preservar fielmente a visão original do autor.


Análise Bellacosa Mainframe

Se Evangelion é uma auditoria psicológica da mente humana e Monster é uma investigação criminal da alma humana, Berserk é um relatório completo de desastre operacional.

Tudo começa como um projeto promissor.

Uma equipe talentosa.

Um líder carismático.

Objetivos claros.

Mas uma única decisão errada corrompe completamente o ambiente.

O resultado é um dos maiores ABENDs emocionais da história dos animes.

Guts passa o restante da obra executando recovery após recovery.

Tentando reconstruir um sistema que jamais voltará ao estado original.

E talvez seja exatamente essa a mensagem central de Berserk:

A verdadeira coragem não é vencer todas as batalhas.

É continuar avançando quando você sabe que jamais poderá recuperar tudo o que perdeu.

Por isso Berserk não é apenas um anime.

É uma das narrativas mais profundas, brutais e filosoficamente complexas já criadas na história da cultura pop.

Nota Bellacosa Mainframe: 10/10 ABENDs cósmicos sem possibilidade de rollback. ☕⚔️💀


sábado, 12 de maio de 2007

O que é retrocompatibilidade?

 

Bellacosa Mainframe explica o que é retrocompatibilidade

O que é retrocompatibilidade?

Imagine comprar um computador novo e descobrir que todos os seus programas antigos continuam funcionando normalmente.

Ou adquirir um videogame de última geração e perceber que ele ainda roda jogos lançados há 20 anos.

Isso é retrocompatibilidade.

No mundo do Mainframe, esse conceito é uma das maiores razões para o sucesso da plataforma IBM.


Definição simples

Retrocompatibilidade é a capacidade de um sistema novo continuar executando programas, dados ou equipamentos desenvolvidos para versões antigas.

Em outras palavras:

A tecnologia evolui sem obrigar o cliente a reescrever tudo do zero.


Origem do termo

A palavra vem de:

  • Retro = voltar ao passado

  • Compatibilidade = capacidade de funcionar junto

Ou seja:

Compatibilidade com versões anteriores.

Em inglês:

Backward Compatibility


Uma analogia simples

Imagine uma tomada elétrica.

Você compra uma televisão nova.

Ela continua funcionando na mesma tomada instalada há décadas.

A tomada evoluiu?

Pouco.

Mas o importante é que tudo continua compatível.

O Mainframe segue a mesma filosofia.


O exemplo clássico do IBM Mainframe

Um programa COBOL escrito em:

1985

Compilado

Executado em um IBM 4381

Anos depois...

IBM zSeries

IBM z9

IBM z10

IBM z13

IBM z14

IBM z15

IBM z16

IBM z17

Em muitos casos, esse mesmo programa continua funcionando com poucas ou nenhuma alteração.

Isso é extraordinário na indústria de tecnologia.


Como isso é possível?

A IBM mantém compatibilidade em diversos níveis.

Compatibilidade da arquitetura

Desde o IBM System/360, lançado em 1964, existe uma preocupação em preservar a arquitetura básica das instruções.

Programas compilados décadas atrás podem continuar executando em processadores modernos.


Compatibilidade do sistema operacional

O z/OS mantém suporte para inúmeras APIs antigas.

Programas escritos para versões anteriores continuam funcionando.


Compatibilidade das linguagens

O COBOL continua aceitando grande parte dos comandos utilizados há décadas.

Embora novos recursos sejam adicionados, o código antigo permanece válido na maioria dos casos.


Compatibilidade de arquivos

Arquivos VSAM criados anos atrás ainda podem ser utilizados.

O mesmo vale para:

  • Sequential

  • PDS

  • PDSE

  • GDG


Compatibilidade do JCL

Um JCL criado nos anos 1990 frequentemente continua executando em versões atuais do z/OS.

Mudanças costumam ser mínimas.


Um exemplo prático

Imagine um banco.

Em 1992 foi criado um sistema de empréstimos.

COBOL

↓

CICS

↓

VSAM

↓

JCL

Em 2026:

Mesmo COBOL

↓

Mesmo CICS

↓

Mesmo JCL

↓

IBM z17

O hardware mudou completamente.

Mas a aplicação continua funcionando.


Retrocompatibilidade no hardware

Os processadores IBM Z ainda entendem instruções criadas há décadas.

Cada nova geração adiciona recursos.

Raramente remove instruções antigas.


Retrocompatibilidade no COBOL

Exemplo.

Código escrito em 1988:

ADD VALOR TO TOTAL.

Continua válido hoje.

Enquanto isso, novas versões adicionaram suporte para:

  • XML

  • JSON

  • UTF-8

  • Unicode

  • funções modernas

  • integração Java

  • APIs REST

Sem quebrar os programas antigos.


Retrocompatibilidade no Db2

Consultas SQL antigas continuam funcionando.

Ao mesmo tempo surgiram:

  • JSON

  • XML

  • IA

  • Machine Learning

  • Índices avançados

  • Compressão

Tudo convivendo com aplicações antigas.


Retrocompatibilidade no CICS

Transações desenvolvidas há décadas ainda executam.

Ao mesmo tempo o CICS passou a oferecer:

  • REST

  • JSON

  • SOAP

  • Web Services

  • HTTP

  • TLS

Sem abandonar a compatibilidade histórica.


Vantagens

Protege o investimento

Empresas não precisam reescrever milhões de linhas de código.


Reduz custos

Menos migração.

Menos riscos.


Alta confiabilidade

Aplicações testadas durante décadas continuam operando.


Evolução gradual

É possível modernizar aos poucos.


Existem desvantagens?

Sim.

Manter compatibilidade aumenta a complexidade do software.

É preciso preservar comportamentos antigos enquanto novos recursos são adicionados.

Isso exige grande esforço de engenharia.


Outros exemplos fora do Mainframe

Retrocompatibilidade também existe em:

  • Windows

  • Linux

  • Intel x86

  • AMD64

  • PlayStation

  • Xbox

  • Nintendo

Mas poucos ecossistemas mantêm compatibilidade por períodos tão longos quanto o IBM Mainframe.


Curiosidades

1. O IBM System/360 mudou a indústria

Lançado em 1964, foi uma das primeiras famílias de computadores projetadas para permitir que programas sobrevivessem à troca de hardware, reduzindo o impacto das atualizações para os clientes.


2. Milhões de linhas de COBOL ainda executam

Grande parte das aplicações escritas nas décadas de 1970, 1980 e 1990 continua em produção graças à retrocompatibilidade da plataforma IBM Z.


3. A retrocompatibilidade facilita a modernização

Empresas podem adicionar APIs REST, aplicações web e serviços em nuvem sem substituir imediatamente os sistemas legados.


4. Compatibilidade não significa ausência de evolução

Embora preserve tecnologias antigas, o Mainframe também incorpora recursos modernos como criptografia avançada, Inteligência Artificial, Linux on Z, containers e DevOps.


Erros comuns de iniciantes

"Retrocompatibilidade significa usar tecnologia ultrapassada"

Não. Significa preservar a capacidade de executar aplicações antigas enquanto a plataforma continua evoluindo.


"Todo programa antigo funciona sem nenhuma alteração"

Nem sempre. Mudanças em compiladores, configurações ou dependências podem exigir pequenos ajustes, embora a compatibilidade seja muito alta.


"Retrocompatibilidade impede inovação"

Na prática ocorre o contrário: ela permite que empresas inovem gradualmente, protegendo investimentos feitos ao longo de décadas.


Conclusão

A retrocompatibilidade é um dos pilares da arquitetura dos Mainframes IBM. Ela garante que aplicações, linguagens, arquivos e sistemas desenvolvidos há décadas continuem funcionando em equipamentos modernos, protegendo investimentos e reduzindo riscos. Essa filosofia explica por que o IBM Z consegue evoluir continuamente sem abandonar o passado, permitindo que organizações modernizem suas aplicações passo a passo, em vez de reconstruí-las do zero. Para quem trabalha com COBOL, CICS, Db2 ou z/OS, compreender esse conceito é essencial para entender por que o Mainframe permanece uma das plataformas mais estáveis e duradouras da história da computação.

sexta-feira, 11 de maio de 2007

O que é IML (Initial Microcode Load)?

Bellacosa Mainframe apresenta o que é o initial microcode load



O que é IML (Initial Microcode Load)?

O IML é o procedimento que carrega o Licensed Internal Code (LIC) — o microcódigo/firmware da IBM — para os processadores e componentes do Mainframe.

Sem o IML, o computador é apenas um conjunto de circuitos eletrônicos.

Depois do IML, ele passa a reconhecer:

  • CPUs

  • memória

  • canais de I/O

  • criptografia

  • PR/SM

  • LPARs

  • dispositivos físicos

Somente após isso é possível fazer o IPL do z/OS.


Pense em um computador comum

Quando você liga um PC, acontece algo parecido:

Energia

↓

BIOS/UEFI

↓

Firmware

↓

Boot Loader

↓

Windows/Linux

No Mainframe IBM Z:

Energia

↓

IML

↓

Licensed Internal Code (LIC)

↓

PR/SM

↓

LPAR

↓

IPL

↓

z/OS

O IML equivale aproximadamente ao papel do BIOS/UEFI em um PC, porém muito mais sofisticado.


O que o IML faz?

Durante o IML o sistema:

Inicializa os processadores

Verifica:

  • CP

  • zIIP

  • IFL

  • zAAP (modelos antigos)

  • SAP


Inicializa a memória

Faz testes.

Mapeia a RAM.

Verifica erros ECC.


Inicializa os canais

Reconhece:

  • FICON

  • OSA

  • HiperSockets

  • Crypto Express


Carrega o PR/SM

O Processor Resource/System Manager é um hipervisor implementado em firmware.

Ele permite criar:

LPAR 1

LPAR 2

LPAR 3

LPAR 4

Sem IML não existe PR/SM.

Sem PR/SM não existem LPARs.


Inicializa os adaptadores

São preparados:

  • placas de rede

  • canais FICON

  • criptografia

  • aceleradores


Onde fica o microcódigo?

Ele não está no z/OS.

Ele fica armazenado em memória não volátil do equipamento.

Quando ocorre o IML:

Firmware IBM

↓

Memória interna

↓

Processadores

↓

Hardware operacional

Quem executa o IML?

Normalmente:

  • IBM CE (Customer Engineer)

  • Administradores de Hardware

  • Equipe de infraestrutura

Quase nunca o operador do sistema.

Muito menos o programador COBOL.


HMC

Todo o processo é iniciado pela Hardware Management Console.

Na HMC é possível:

  • escolher a imagem de firmware;

  • iniciar o IML;

  • acompanhar o progresso;

  • visualizar erros;

  • administrar LPARs.


Quando fazemos um IML?

Situações comuns:

Instalação de um novo Mainframe

Sempre.


Upgrade de firmware

Após instalar uma nova versão do Licensed Internal Code.


Troca de CPU

Quando novos processadores são instalados.


Expansão do hardware

Adicionar:

  • memória

  • canais

  • placas


Correção crítica

Após determinadas manutenções.


O que acontece depois?

Depois do IML:

Hardware OK

↓

LPAR pronta

↓

Seleciona dispositivo IPL

↓

IPL do z/OS

↓

Master Scheduler

↓

JES2

↓

Subsystems

↓

CICS

↓

Db2

↓

MQ

Um detalhe interessante

O IML não carrega apenas "firmware".

Ele também ativa recursos exclusivos do IBM Z:

  • PR/SM

  • Dynamic Partition Manager

  • Resource Manager

  • Crypto

  • Capacity on Demand

  • Diagnóstico interno


O programador COBOL percebe isso?

Praticamente nunca.

Quando ele chega ao trabalho:

  • o hardware já fez o IML;

  • o z/OS já fez o IPL;

  • CICS já iniciou;

  • Db2 já está ativo.

Para ele, basta abrir o ISPF.

Mas nos bastidores houve dezenas de etapas antes.


IML x IPL

IMLIPL
FirmwareSistema Operacional
HardwareSoftware
Muito raroMais frequente
Executado via HMCExecutado na LPAR
Inicializa o IBM ZInicializa o z/OS

Curiosidade histórica

Nos primeiros IBM System/360 e System/370, parte do microcódigo era carregada por mídias externas, como fitas ou discos especiais, durante a inicialização. Com a evolução das gerações (System/390 e IBM Z), o firmware passou a ficar armazenado internamente e o processo tornou-se muito mais automatizado, seguro e confiável.


Curiosidade técnica

Uma única máquina IBM Z pode conter dezenas de LPARs executando diferentes sistemas operacionais (como z/OS, z/VM, Linux on Z e z/VSE). Todas essas partições dependem do mesmo microcódigo carregado durante o IML. Em outras palavras, um único IML prepara toda a infraestrutura física sobre a qual diversos sistemas operacionais funcionarão.


Resumindo em uma frase

O IML é a etapa que "dá vida" ao hardware do Mainframe IBM, carregando o microcódigo (Licensed Internal Code), habilitando recursos como PR/SM e LPARs e preparando a máquina para que, em seguida, o IPL possa carregar o z/OS e os demais sistemas operacionais.

O que é IML no Mainframe?

Se você está estudando Mainframe, pode encontrar a sigla IML, principalmente em materiais sobre hardware IBM, processadores e suporte técnico.

Muitos iniciantes confundem IML com IPL, mas são processos diferentes.


Definição simples

IML significa:

Initial Microcode Load

Em português:

Carga Inicial do Microcódigo

É o processo de carregar o microcódigo (firmware) que controla os componentes de hardware do Mainframe IBM.

Em outras palavras:

  • IML inicializa o hardware.

  • IPL inicializa o sistema operacional.


O que é microcódigo?

O microcódigo é um software de baixo nível gravado para controlar o funcionamento interno do processador e de outros componentes do sistema.

Ele fica entre o hardware físico e o sistema operacional.

Aplicações

↓

z/OS

↓

Firmware (Microcódigo)

↓

Hardware IBM Z

Sem esse microcódigo, o hardware não consegue operar corretamente.


Quando o IML é utilizado?

O IML normalmente ocorre:

  • quando um novo Mainframe é ligado;

  • após manutenção de hardware;

  • depois de uma atualização de firmware;

  • na substituição de processadores ou placas;

  • após determinadas falhas de hardware.

É um procedimento muito menos frequente que um IPL.


Diferença entre IML e IPL

IMLIPL
Initial Microcode LoadInitial Program Load
Inicializa o hardwareInicializa o z/OS
Carrega firmwareCarrega o sistema operacional
Executado por engenheiros de hardwareExecutado por operadores e administradores
Ocorre raramentePode ocorrer sempre que o sistema é reiniciado

Ordem de inicialização

Em um Mainframe IBM Z, a sequência simplificada é:

Energia

↓

IML

↓

Hardware operacional

↓

IPL

↓

z/OS iniciado

↓

CICS, Db2, MQ e aplicações

Quem realiza o IML?

Na maioria dos ambientes, o IML é responsabilidade de:

  • engenheiros de hardware IBM;

  • equipes de suporte da IBM;

  • administradores de infraestrutura especializados.

Programadores COBOL normalmente nunca executam um IML.


Relação com a HMC

O procedimento é controlado pela HMC (Hardware Management Console).

Por meio dela é possível:

  • carregar novo microcódigo;

  • verificar o estado do hardware;

  • inicializar componentes;

  • monitorar processadores;

  • administrar LPARs.


Atualizações de microcódigo

A IBM libera periodicamente novas versões do firmware para:

  • corrigir falhas;

  • aumentar estabilidade;

  • melhorar desempenho;

  • adicionar suporte a novos recursos;

  • corrigir vulnerabilidades de segurança.

Após determinadas atualizações, pode ser necessário realizar um IML.


Exemplo prático

Imagine que um banco adquiriu novos processadores para um IBM z17.

Antes que o z/OS possa utilizá-los, é necessário:

Instalação do hardware

↓

Atualização do microcódigo

↓

IML

↓

Hardware reconhece os novos recursos

↓

IPL

↓

z/OS disponível

O IML afeta aplicações?

Indiretamente, sim.

Enquanto o hardware está passando por um IML, o sistema não está disponível para execução das cargas de trabalho. Por isso, o procedimento costuma ser planejado em janelas de manutenção.


Curiosidades

1. O IML existe desde os primeiros Mainframes IBM

Embora a tecnologia tenha evoluído muito, a necessidade de carregar o firmware do equipamento continua presente nas gerações atuais do IBM Z.


2. Firmware moderno é muito mais complexo

O microcódigo atual controla recursos como virtualização, criptografia por hardware, gerenciamento de energia e diagnóstico automático.


3. Nem todo IPL exige um IML

É comum reiniciar apenas o sistema operacional (IPL) sem recarregar o microcódigo do equipamento.


4. Atualizações podem ser feitas com mínima interrupção

Em modelos recentes do IBM Z, diversos componentes permitem manutenção e atualização planejadas para reduzir indisponibilidade, embora algumas alterações ainda exijam um IML.


Erros comuns de iniciantes

"IML e IPL são a mesma coisa"

Não. O IML prepara o hardware, enquanto o IPL carrega o sistema operacional.


"Todo reboot faz um IML"

Não. Em muitos casos, basta realizar um IPL do z/OS.


"O programador COBOL precisa conhecer IML em detalhes"

Normalmente não. É um conceito importante para entender a arquitetura do Mainframe, mas sua execução fica a cargo das equipes de infraestrutura e hardware.


Conclusão

O Initial Microcode Load (IML) é um procedimento fundamental da arquitetura dos Mainframes IBM. Ele prepara o hardware carregando o firmware que controla processadores, memória e demais componentes físicos. Somente após um IML bem-sucedido é possível realizar o IPL (Initial Program Load) e iniciar o z/OS. Embora seja pouco visível para programadores COBOL, compreender a diferença entre IML e IPL ajuda a entender melhor como um IBM Z é inicializado e por que o Mainframe é reconhecido por sua confiabilidade e robustez.

quinta-feira, 10 de maio de 2007

O que é o banco de dados IDMS?

 

Bellacosa Mainframe o que é um banco de dados idms

O que é o banco de dados IDMS?

Se você trabalha ou pretende trabalhar com Mainframe, provavelmente ouvirá falar de Db2, IMS e, em empresas mais antigas, do IDMS.

Embora hoje o Db2 seja muito mais difundido, o IDMS (Integrated Database Management System) continua presente em diversas organizações que executam aplicações críticas desenvolvidas há décadas.


Definição simples

O IDMS é um Sistema Gerenciador de Banco de Dados (SGBD) criado originalmente pela Cullinane Corporation no início da década de 1970, posteriormente adquirido pela Computer Associates (CA Technologies) e hoje pertencente à Broadcom.

Ele foi projetado para computadores de grande porte (mainframes) e utiliza principalmente o modelo de banco de dados em rede (Network Database Model), padronizado pelo grupo CODASYL.

Em resumo:

IDMS é um banco de dados de alta performance para Mainframes baseado no modelo em rede, muito utilizado antes da popularização dos bancos relacionais.


Origem do nome

IDMS significa:

Integrated Database Management System

Ou seja:

Sistema Integrado de Gerenciamento de Banco de Dados.


Um pouco de história

Na década de 1970 praticamente não existiam bancos relacionais comerciais.

Os principais modelos eram:

  • Hierárquico (IMS)

  • Em Rede (IDMS)

  • Arquivos Sequenciais

  • VSAM

O IDMS rapidamente tornou-se um dos bancos mais utilizados em ambientes corporativos.

Era comum encontrá-lo em:

  • bancos;

  • seguradoras;

  • governos;

  • telecomunicações;

  • indústrias.


A empresa responsável

Linha do tempo:

1972

Cullinane Corporation

Cullinet Software

Computer Associates (CA)

CA Technologies

Broadcom

Mesmo após diversas aquisições, o produto continua sendo mantido.


O modelo em rede (Network Database)

O IDMS não é relacional.

Ele utiliza registros ligados diretamente entre si.

Imagine uma árvore genealógica onde uma pessoa pode possuir vários relacionamentos simultaneamente.

Exemplo:

CLIENTE
    │
    ├────────CONTA
    │
    ├────────EMPRÉSTIMO
    │
    └────────CARTÃO

Cada registro conhece diretamente seus relacionamentos.

Não existe JOIN como no SQL tradicional.


Como funciona

O programador navega pelo banco.

Em vez de perguntar:

SELECT *
FROM CLIENTE
JOIN CONTA

Ele faz algo parecido com:

Encontrar CLIENTE

↓

Ir para CONTA

↓

Ir para CARTÃO

↓

Ir para EMPRÉSTIMO

É chamada de navegação por ponteiros.


O conceito de SET

A estrutura principal do IDMS chama-se SET.

Um SET representa um relacionamento.

Exemplo:

CLIENTE

↓

SET

↓

CONTA

Ou

DEPARTAMENTO

↓

SET

↓

FUNCIONÁRIO

OWNER e MEMBER

Cada relacionamento possui:

OWNER

Registro principal.

MEMBER

Registro dependente.

Exemplo:

CLIENTE (OWNER)

↓

CONTA (MEMBER)

Banco orientado a navegação

O IDMS não procura dados como um banco SQL moderno.

Ele percorre caminhos previamente definidos.

CLIENTE

↓

CONTA

↓

MOVIMENTO

↓

LANÇAMENTO

Por isso era extremamente rápido.


Linguagens utilizadas

O IDMS possui integração com:

  • COBOL

  • PL/I

  • Assembler

  • C

O COBOL foi, de longe, a linguagem mais utilizada.


DML do IDMS

Em vez de SQL, o programador utiliza comandos específicos.

Exemplos:

  • FIND

  • GET

  • STORE

  • MODIFY

  • ERASE

  • CONNECT

  • DISCONNECT


Exemplo

Em COBOL:

FIND CLIENTE

↓

GET CONTA

↓

MODIFY CONTA

SQL existe?

Sim.

Versões modernas possuem suporte SQL.

Mas milhares de aplicações continuam usando a DML tradicional.


Estrutura física

O banco é dividido em:

  • Área (Area)

  • Página (Page)

  • Registro (Record)

  • Set

  • Segmentos

Tudo cuidadosamente organizado para reduzir acesso a disco.


Vantagens

Performance

Extremamente rápida.


Pouco espaço

Muito eficiente.


Alta estabilidade

Muitas bases funcionam há décadas.


Grande escalabilidade

Milhões de registros.


Excelente integração com COBOL

Foi desenvolvido pensando nisso.


Desvantagens

Curva de aprendizado

Maior que SQL.


Navegação complexa

Exige conhecer o modelo.


Poucos profissionais

Hoje existem poucos especialistas.


Menor flexibilidade

Mudanças estruturais costumam ser mais trabalhosas.


Onde ainda é utilizado?

Ainda pode ser encontrado em:

  • bancos;

  • seguradoras;

  • previdência;

  • órgãos públicos;

  • sistemas fiscais;

  • empresas de telecomunicações.

Principalmente em aplicações desenvolvidas entre os anos 1970 e 1990.


IDMS x IMS

IDMSIMS
RedeHierárquico
CODASYLIBM
PonteirosHierarquia
Mais flexívelMais rígido

IDMS x Db2

IDMSDb2
RedeRelacional
NavegaçãoSQL
SETJOIN
PonteirosÍndices

Curiosidades

1. O IDMS ajudou a popularizar o modelo CODASYL

Antes do domínio dos bancos relacionais, o padrão CODASYL era amplamente adotado para aplicações corporativas de alto desempenho, e o IDMS tornou-se sua implementação comercial mais conhecida.


2. Muitas empresas ainda executam aplicações IDMS

Apesar da idade da tecnologia, existem sistemas que processam operações críticas diariamente, especialmente em grandes organizações que investem em estabilidade e continuidade.


3. O desempenho sempre foi um diferencial

Como os relacionamentos são feitos por ponteiros, muitas operações de navegação podem ser extremamente rápidas, sem a necessidade de realizar junções complexas entre tabelas.


4. Modernização sem substituição

Em diversas empresas, aplicações COBOL que utilizam IDMS vêm sendo modernizadas por meio de APIs e integrações, mantendo o banco de dados em produção enquanto novas interfaces são desenvolvidas.


Erros comuns de iniciantes

"IDMS é um banco relacional"

Não. Seu modelo principal é o banco de dados em rede (Network Database) baseado no padrão CODASYL.


"Ele foi substituído completamente pelo Db2"

Embora muitas organizações tenham migrado para bancos relacionais, ainda existem ambientes produtivos que utilizam IDMS por sua estabilidade e desempenho.


"Quem aprende IDMS está estudando uma tecnologia morta"

O mercado é menor do que o de Db2, mas profissionais que dominam COBOL e IDMS continuam sendo procurados em empresas que mantêm aplicações legadas críticas.


Vale a pena aprender?

Se você pretende trabalhar em bancos, seguradoras, governo ou grandes empresas com sistemas legados, conhecer os conceitos do IDMS pode ser um diferencial importante.

Mesmo que seu foco principal seja Db2, estudar IDMS ajuda a compreender a evolução dos bancos de dados corporativos e dos modelos de navegação que influenciaram muitas tecnologias modernas.


Conclusão

O IDMS é um dos bancos de dados mais importantes da história do Mainframe. Baseado no modelo CODASYL em rede, ele foi projetado para oferecer alta performance e confiabilidade em aplicações corporativas críticas. Embora tenha sido ofuscado pelos bancos relacionais, continua presente em diversos ambientes produtivos e representa um capítulo fundamental da evolução dos sistemas de informação. Para um programador COBOL, compreender seus conceitos amplia a visão sobre arquiteturas legadas e facilita a manutenção e modernização de sistemas que ainda movimentam negócios em todo o mundo.

terça-feira, 8 de maio de 2007

O que é uma IDE COBOL?

 

Bellacosa Mainframe e o que é uma ide cobol

O que é uma IDE COBOL? 

Imagine programar um sistema bancário de milhões de linhas de código.

Você precisa:

  • editar programas COBOL;

  • compilar;

  • encontrar erros;

  • depurar (debug);

  • pesquisar milhares de arquivos;

  • integrar com Git;

  • acessar o z/OS;

  • executar testes.

Fazer tudo isso apenas com um editor de texto seria extremamente trabalhoso.

É para isso que existe uma IDE (Integrated Development Environment).


Definição simples

Uma IDE COBOL é um ambiente integrado de desenvolvimento que reúne, em um único programa, todas as ferramentas necessárias para criar, editar, testar, depurar e manter aplicações COBOL.

Em outras palavras:

Uma IDE é a bancada de trabalho do programador COBOL.


O que uma IDE oferece?

Uma boa IDE normalmente possui:

  • editor inteligente;

  • destaque de sintaxe;

  • autocomplete;

  • navegação entre programas;

  • compilação;

  • debug;

  • gerenciamento de projetos;

  • integração com Git;

  • acesso ao Mainframe;

  • análise de código;

  • testes.


Antigamente

Durante muitos anos o desenvolvimento era feito diretamente no terminal 3270.

3270

↓

ISPF

↓

Edit

↓

Compile

↓

JCL

↓

Resultado

Funcionava muito bem.

Mas exigia bastante conhecimento do ambiente.


Hoje

O desenvolvimento ficou mais moderno.

VS Code

↓

Extensão COBOL

↓

Git

↓

IBM Z

↓

Compilação

↓

Debug

Ou

Eclipse

↓

IDz

↓

IBM Z

Principais IDEs COBOL

1. IBM Developer for z/OS (IDz)

É considerada a IDE corporativa mais completa para desenvolvimento Mainframe.

Image

Image

Image

Image

Image

Recursos

  • Eclipse

  • COBOL

  • PL/I

  • HLASM

  • JCL

  • CICS

  • Db2

  • IMS

  • Debug

  • Remote Edit

  • Git

  • Code Review

  • ZUnit

É amplamente utilizada em bancos e seguradoras.

Ideal para

Grandes empresas.


2. IBM Z Open Editor (VS Code)

Uma das ferramentas mais populares atualmente.

Image

Image

Image

Image

Image

Ela funciona dentro do Visual Studio Code.

Possui:

  • autocomplete;

  • syntax highlight;

  • snippets;

  • Git;

  • Zowe;

  • acesso remoto ao z/OS;

  • integração DevOps.

É gratuita.

Excelente para iniciantes.


3. Visual Studio Code + Extensões COBOL

Mesmo sem o IBM Z Open Editor existem diversas extensões.

Algumas oferecem:

  • syntax highlight;

  • formatter;

  • lint;

  • snippets;

  • outline.

Muito utilizadas para estudar COBOL.


4. Micro Focus Enterprise Developer

Uma das IDEs comerciais mais conhecidas.

Image

Image

Permite desenvolver:

  • COBOL

  • CICS

  • IMS

  • JCL

Inclusive simulando Mainframe no Windows ou Linux.

Muito usada em projetos de migração.


5. GnuCOBOL + VS Code

Para aprendizado.

Possui:

  • compilador gratuito;

  • multiplataforma;

  • Linux;

  • Windows;

  • macOS.

Não substitui um Mainframe.

Mas é excelente para aprender COBOL.


6. Net Express (Histórico)

Foi extremamente popular.

Hoje praticamente não recebe novos desenvolvimentos.

Ainda existe em muitos sistemas legados.


7. Visual COBOL

Também da Micro Focus/OpenText.

Voltado para:

  • Windows

  • Linux

  • Cloud

  • Containers

Integra COBOL com aplicações modernas.


8. Eclipse + Plug-ins

Algumas empresas utilizam Eclipse com plug-ins próprios para:

  • COBOL

  • Git

  • Jenkins

  • DevOps


Funcionalidades importantes

Uma IDE moderna oferece:

Syntax Highlight

Coloração do código.


Auto Complete

Completa comandos COBOL.


Code Folding

Esconde partes do programa.


Pesquisa Global

Encontra referências rapidamente.


Refactoring

Renomeia variáveis.

Move procedimentos.

Atualiza referências.


Debug

Executa passo a passo.

Permite visualizar:

  • variáveis;

  • registros;

  • tabelas;

  • índices.


Git

Commit.

Push.

Merge.

Branch.

Tudo integrado.


Integração Mainframe

Pode:

  • editar PDS;

  • enviar JCL;

  • consultar SDSF;

  • acessar Db2;

  • executar programas.

Sem sair da IDE.


Comparação

IDEMainframeGratuitaIniciante
IBM Developer for z/OSSimNãoMédio
IBM Z Open EditorSimSimExcelente
VS Code + ExtensõesParcialSimExcelente
Enterprise DeveloperSimulaçãoNãoExcelente
GnuCOBOL + VS CodeNãoSimExcelente

Qual aprender?

Se deseja trabalhar em bancos

Aprenda:

  • IBM Developer for z/OS

  • IBM Z Open Editor

  • VS Code


Se quer estudar em casa

Comece por:

  • VS Code

  • GnuCOBOL

São gratuitos.


Se trabalha com modernização

Aprenda também:

  • Enterprise Developer

  • Visual COBOL


Tendências

As IDEs modernas estão incorporando:

  • Inteligência Artificial;

  • geração automática de código;

  • explicação de programas COBOL;

  • documentação automática;

  • análise de impacto;

  • testes automatizados;

  • integração com ChatGPT e IBM watsonx Code Assistant.


Curiosidades

1. O terminal 3270 continua vivo

Mesmo com IDEs modernas, muitos desenvolvedores experientes ainda utilizam ISPF para tarefas específicas, especialmente pela velocidade e eficiência em operações diretamente no z/OS.


2. VS Code revolucionou o desenvolvimento Mainframe

A chegada do IBM Z Open Editor aproximou a experiência do programador COBOL da vivida por desenvolvedores Java, Python e JavaScript, facilitando a entrada de novos profissionais.


3. Eclipse dominou o mercado corporativo por muitos anos

O IBM Developer for z/OS, baseado no Eclipse, tornou-se padrão em diversas instituições financeiras por reunir desenvolvimento, depuração, testes e integração com ferramentas corporativas.


4. A IA está mudando as IDEs

Recursos de sugestão de código, geração de testes, documentação automática e explicação de programas COBOL já fazem parte das IDEs mais modernas, aumentando a produtividade dos desenvolvedores.


Qual IDE eu recomendaria para cada perfil?

  • Iniciante estudando COBOL: VS Code + GnuCOBOL.

  • Iniciante focado em Mainframe: VS Code + IBM Z Open Editor + Zowe.

  • Profissional em banco: IBM Developer for z/OS (IDz).

  • Projetos de modernização e migração: OpenText Enterprise Developer ou Visual COBOL.


Conclusão

Uma IDE COBOL é muito mais do que um editor de texto. Ela reúne ferramentas para edição, compilação, depuração, testes, integração com Git e acesso ao ambiente IBM Z, tornando o desenvolvimento mais produtivo e seguro.

Hoje, o mercado oferece opções para todos os perfis. O IBM Developer for z/OS (IDz) continua sendo a principal IDE corporativa para grandes empresas, enquanto o IBM Z Open Editor, integrado ao Visual Studio Code, tornou-se a porta de entrada ideal para novos desenvolvedores Mainframe. Já soluções como GnuCOBOL e OpenText Enterprise Developer atendem desde estudantes até projetos de modernização, mostrando que o ecossistema COBOL continua evoluindo para acompanhar as práticas modernas de desenvolvimento.

segunda-feira, 7 de maio de 2007

O Futuro do Mainframe

 

Bellacosa Mainframe e o futuro do Mainframe

O Futuro do Mainframe

Imagine voltar ao ano de 1995.

Naquela época, era comum ouvir frases como:

"O Mainframe vai desaparecer."

Depois vieram novas previsões.

Nos anos 2000:

"Agora a Internet vai matar o Mainframe."

Em 2010:

"Cloud Computing acabou com o Mainframe."

Em 2020:

"Agora é a Inteligência Artificial."

Entretanto, chegamos à segunda metade da década de 2020 e o IBM Z continua processando algumas das operações mais críticas do planeta.

A pergunta correta deixou de ser:

"O Mainframe vai acabar?"

E passou a ser:

"Como o Mainframe continuará evoluindo?"


Definição simples

O futuro do Mainframe não é substituir todas as tecnologias nem ser substituído por elas.

O futuro é:

Integrar-se ao restante do ecossistema de TI.

Hoje o IBM Z faz parte de arquiteturas híbridas compostas por:

  • Cloud

  • APIs

  • Containers

  • Kubernetes

  • Linux

  • Inteligência Artificial

  • Microsserviços

  • DevOps


Uma analogia simples

Imagine um aeroporto.

Existem:

  • aviões pequenos;

  • cargueiros;

  • helicópteros;

  • jatos executivos.

Nenhum substitui completamente o outro.

Cada um possui uma missão.

O Mainframe é semelhante.

Ele continua sendo o "avião cargueiro" da computação.

Enquanto outras plataformas fazem diversas tarefas, o IBM Z permanece responsável pelas cargas mais críticas e de maior volume.


O Mainframe continua crescendo?

Sim.

O volume de dados processados continua aumentando.

Especialmente em:

  • PIX

  • Open Finance

  • cartões

  • comércio eletrônico

  • bolsas de valores

  • seguros

  • governo digital

  • telecomunicações

Quanto mais transações digitais existem, maior tende a ser a necessidade de plataformas confiáveis.


O futuro será híbrido

Hoje praticamente nenhuma grande empresa trabalha com uma única tecnologia.

Exemplo:

Aplicativo Android

↓

Cloud

↓

API Gateway

↓

z/OS Connect

↓

CICS

↓

COBOL

↓

Db2

O cliente enxerga apenas o aplicativo.

Mas a transação financeira continua sendo processada pelo Mainframe.


APIs serão ainda mais importantes

Antigamente.

3270

↓

CICS

↓

COBOL

Hoje.

Aplicativo

↓

REST API

↓

JSON

↓

z/OS Connect

↓

COBOL

No futuro praticamente tudo conversará através de APIs.


Inteligência Artificial

A IA não substituirá o Mainframe.

Ela será integrada.

Por exemplo.

IA

↓

Analisa Fraude

↓

COBOL

↓

Autoriza Pagamento

Ou.

LLM

↓

Resumo

↓

Consulta Mainframe

↓

Resposta

Linux on IBM Z

Cada vez mais empresas utilizam:

  • Linux

  • Java

  • Python

  • Node.js

No próprio IBM Z.

Ou seja.

O Mainframe já não é apenas COBOL.


Containers

OpenShift.

Docker.

Kubernetes.

Também fazem parte do ecossistema IBM Z.

Aplicações modernas convivem lado a lado com programas COBOL.


Cloud Híbrida

O futuro dificilmente será:

Tudo no Mainframe.

Ou:

Tudo na Cloud.

Será:

Cloud

↓

API

↓

IBM Z

↓

Linux

↓

IA

↓

Storage

Cada tecnologia executando aquilo em que é melhor.


COBOL continuará existindo?

Sim.

Enquanto houver sistemas críticos.

O COBOL continuará evoluindo.

Hoje já possui:

  • JSON

  • XML

  • UTF-8

  • APIs

  • integração Java

  • DevOps

  • Git

  • VS Code

É um COBOL muito diferente daquele dos anos 1980.


DevOps

O desenvolvimento Mainframe está cada vez mais semelhante ao restante da indústria.

Utiliza:

  • Git

  • GitHub

  • Jenkins

  • GitLab

  • Azure DevOps

  • IBM DBB

  • Zowe

  • Ansible

  • OpenShift

O ciclo de entrega ficou muito mais automatizado.


Segurança

O crescimento dos ataques cibernéticos aumenta a importância do Mainframe.

IBM Z oferece:

  • criptografia em hardware;

  • isolamento lógico;

  • RACF;

  • auditoria;

  • alta disponibilidade.

Tudo isso tende a ganhar ainda mais valor.


Computação Quântica

Ainda está em estágio inicial.

Mas provavelmente será utilizada como complemento.

O fluxo poderá ser:

Aplicação

↓

IBM Z

↓

Quantum

↓

IBM Z

O Mainframe continuará coordenando o processamento.


Sustentabilidade

Uma tendência importante é reduzir o consumo de energia por transação.

O IBM Z concentra grande capacidade de processamento em poucos equipamentos, o que pode reduzir espaço físico, refrigeração e consumo energético quando comparado a centenas de servidores executando a mesma carga de trabalho.


O profissional do futuro

O Programador Mainframe mudará bastante.

Além de COBOL, conhecerá:

  • APIs

  • Python

  • Java

  • Cloud

  • Linux

  • Kubernetes

  • Git

  • DevOps

  • Segurança

  • IA

Será um profissional híbrido.


O Analista Mainframe

Precisará entender:

  • negócio;

  • arquitetura;

  • integração;

  • segurança;

  • microsserviços;

  • observabilidade;

  • automação.

Cada vez menos será apenas um programador COBOL.


O maior desafio

O desafio não será tecnológico.

Será humano.

Muitos especialistas experientes estão se aposentando.

Ao mesmo tempo.

A demanda continua crescendo.

Transmitir conhecimento para novas gerações tornou-se prioridade para muitas organizações.


Curiosidades

1. O Mainframe já "acabou" várias vezes

Desde os anos 1980 surgem previsões sobre seu fim. Até agora, ele permaneceu evoluindo e acompanhando as mudanças da indústria.


2. O IBM Z executa muito mais do que COBOL

Hoje é comum encontrar Java, Linux, Python, APIs REST, containers, OpenShift e ferramentas modernas convivendo com aplicações tradicionais.


3. A IA precisa de dados confiáveis

Grande parte dos dados utilizados por aplicações de Inteligência Artificial continua sendo gerada e armazenada em sistemas corporativos executados em Mainframes.


4. O futuro será de integração

Em vez de substituir plataformas, as empresas tendem a combinar Mainframe, nuvem, IA e microsserviços em arquiteturas híbridas.


Erros comuns de iniciantes

"O Mainframe vai desaparecer"

Há décadas essa previsão é feita. Até o momento, a tendência observada é de modernização contínua e integração com novas tecnologias.


"Quem aprende COBOL ficará preso ao passado"

Na prática, profissionais de Mainframe modernos trabalham com APIs, DevOps, Git, Linux, segurança, automação e serviços em nuvem, além do COBOL.


"Cloud substitui Mainframe"

Em muitos ambientes, as duas tecnologias trabalham juntas. A nuvem oferece flexibilidade para diversos serviços, enquanto o Mainframe continua sendo uma plataforma de destaque para cargas transacionais críticas.


Um possível cenário para 2035

Uma transação financeira poderá seguir este caminho:

Smartphone

↓

IA Conversacional

↓

API Gateway

↓

OpenShift

↓

z/OS Connect

↓

CICS

↓

COBOL

↓

Db2

↓

Resposta em menos de 1 segundo

Para o usuário, tudo parecerá uma única aplicação, mesmo envolvendo diversas tecnologias.


Conclusão

O futuro do Mainframe não está em competir com a nuvem, a Inteligência Artificial ou os microsserviços, mas em trabalhar em conjunto com essas tecnologias. O IBM Z continua sendo uma das plataformas mais confiáveis para processamento transacional, enquanto evolui para oferecer integração por APIs, suporte a Linux, containers, DevOps, automação e soluções de IA.

Para quem inicia uma carreira em Mainframe, a maior oportunidade está em desenvolver um perfil multidisciplinar: dominar COBOL e os fundamentos do IBM Z, mas também compreender arquiteturas híbridas, segurança, APIs, computação em nuvem e Inteligência Artificial. O profissional do futuro não será apenas um especialista em Mainframe; será um especialista em negócios, integração e plataformas críticas, usando o IBM Z como peça central de um ecossistema tecnológico cada vez mais conectado.

domingo, 6 de maio de 2007

O que é a Metodologia Waterfall

 

Bellacosa Mainframe e o que é a metodologia waterfall

☕ Um Café no Bellacosa Mainframe

O que é a Metodologia Waterfall ?

Quando um Programador Descobre que Construir um Sistema Bancário é Mais Parecido com Construir uma Usina Hidrelétrica do que com Criar um Aplicativo de Celular

Existe uma cena clássica em praticamente todos os filmes sobre construção de grandes obras.

Antes de alguém colocar o primeiro tijolo, engenheiros passam meses desenhando plantas, calculando estruturas, especificando materiais e validando cada detalhe.

Ninguém começa construindo o telhado.

Ninguém instala os elevadores antes das fundações.

Tudo acontece em uma sequência lógica.

Curiosamente, durante décadas, foi exatamente assim que nasceram praticamente todos os grandes sistemas bancários, governamentais, seguradoras e companhias aéreas do planeta.

Essa forma de desenvolver software recebeu um nome que se tornou uma das metodologias mais famosas da Engenharia de Software:

Waterfall, ou Modelo em Cascata.

Se você trabalha ou pretende trabalhar com IBM Mainframe, COBOL, CICS ou Db2, entender Waterfall é quase uma viagem no tempo para compreender como surgiram alguns dos maiores sistemas corporativos ainda em produção.

Prepare seu café. Hoje vamos descobrir por que uma simples cachoeira acabou se tornando uma das metodologias mais importantes da história da computação.



O que é Waterfall?

Waterfall (Cascata) é um modelo de desenvolvimento de software linear e sequencial.

Cada etapa deve ser concluída antes da próxima começar.

Em outras palavras:

Requisitos
      ↓
Análise
      ↓
Projeto
      ↓
Desenvolvimento
      ↓
Testes
      ↓
Implantação
      ↓
Manutenção

É exatamente como uma cascata.

A água nunca sobe.

Ela sempre segue para o próximo nível.



Por que recebeu esse nome?

Imagine uma cachoeira.

████████████
     ↓
████████████
     ↓
████████████
     ↓
████████████

Depois que a água passa por uma etapa, ela não volta.

O mesmo acontece no Waterfall.

Terminou os requisitos?

Segue para análise.

Terminou análise?

Vai para projeto.

E assim sucessivamente.


Um pouco de história

Embora existam ideias semelhantes desde os anos 1960, o modelo ficou famoso em 1970, quando Winston W. Royce publicou um artigo sobre desenvolvimento de grandes sistemas.

Curiosamente, um dos maiores "mistérios" da Engenharia de Software é que Royce não defendia um Waterfall rígido. No próprio artigo ele alertava que executar todas as fases sem revisões trazia riscos e sugeria iterações e validações intermediárias.

Mesmo assim, a indústria adotou o modelo simplificado em cascata porque ele era fácil de entender, documentar e controlar.

Naquela época:

  • computadores eram extremamente caros;
  • alterar software custava muito;
  • testes consumiam semanas;
  • compilações demoravam;
  • documentação era obrigatória.

O Waterfall fazia muito sentido.


Por que o Mainframe adotou Waterfall?

Porque o ambiente Mainframe era perfeito para esse modelo.

Imagine um banco em 1985.

Uma alteração simples podia envolver:

  • dezenas de programas COBOL;
  • centenas de JCLs;
  • arquivos VSAM;
  • tabelas Db2;
  • transações CICS;
  • equipes diferentes.

Nada podia falhar.

Um erro poderia impedir milhões de pagamentos.

Logo, planejar tudo antes de programar era a escolha natural.


As sete fases do Waterfall

1. Levantamento de Requisitos

Tudo começa entendendo o negócio.

Perguntas como:

  • O que o cliente precisa?
  • Quem utilizará o sistema?
  • Quais regras devem ser atendidas?
  • Existem exigências legais?
  • Há integrações com outros sistemas?

Exemplo:

"Precisamos criar um sistema para pagamento de aposentadorias."

Ainda não existe código.

Existe apenas a necessidade.


2. Análise Funcional

Agora o analista transforma as necessidades em especificações.

São produzidos documentos como:

  • regras de negócio;
  • fluxogramas;
  • casos de uso;
  • modelos de dados;
  • especificações funcionais.

Aqui nasce o projeto.


3. Projeto Técnico

É o momento de definir como o sistema será construído.

Exemplos:

  • COBOL ou PL/I?
  • CICS ou Batch?
  • Db2 ou VSAM?
  • MQ?
  • APIs REST?
  • Estrutura das tabelas?
  • Layout dos arquivos?

É como desenhar a planta de um edifício antes de iniciar a obra.


4. Desenvolvimento

Agora os programadores entram em ação.

Escrevem:

  • programas COBOL;
  • JCLs;
  • Stored Procedures;
  • BMS Maps;
  • SQL;
  • REXX;
  • CLIST;
  • utilitários.

É a fase mais conhecida, mas não é a primeira nem a única.


5. Testes

Tudo precisa ser validado.

No Mainframe encontramos testes como:

  • unitários;
  • integração;
  • regressão;
  • desempenho;
  • homologação.

Cada programa é executado em diversos cenários para garantir que o comportamento esperado foi atendido.


6. Implantação

Depois da homologação, chega a hora de colocar o sistema em produção.

Normalmente envolve:

  • geração de pacotes;
  • controle de versões;
  • promoção entre ambientes;
  • execução de jobs;
  • validações finais.

É a passagem do ambiente de testes para o mundo real.


7. Manutenção

O software entra em produção, mas o trabalho continua.

A manutenção pode ser:

  • corretiva;
  • adaptativa;
  • evolutiva;
  • preventiva.

Muitos sistemas COBOL estão nessa fase há mais de 40 anos.


Exemplo prático

Imagine um novo módulo de PIX para um banco.

Cliente solicita PIX
          │
          ▼
Levantamento dos requisitos
          │
          ▼
Análise funcional
          │
          ▼
Projeto técnico
          │
          ▼
Programação COBOL
          │
          ▼
Testes
          │
          ▼
Produção

Cada fase depende da anterior.


Virtudes do Waterfall

O modelo ganhou popularidade por oferecer várias vantagens em projetos de grande porte:

  • documentação completa;
  • planejamento detalhado;
  • cronograma previsível;
  • fácil acompanhamento gerencial;
  • responsabilidades bem definidas;
  • excelente para ambientes regulados;
  • facilita auditorias;
  • reduz ambiguidades quando os requisitos são estáveis.

Em setores como bancos, seguradoras, telecomunicações e governo, essas características sempre foram muito valorizadas.


Defeitos do Waterfall

Apesar de suas qualidades, o modelo apresenta limitações importantes.

Entre elas:

  • mudanças são caras depois que o projeto avança;
  • o cliente demora para ver o sistema funcionando;
  • erros nos requisitos podem ser descobertos tardiamente;
  • excesso de documentação pode tornar o processo lento;
  • pouca flexibilidade para projetos inovadores ou com requisitos em constante mudança.

Por isso, em muitos cenários modernos, metodologias iterativas e ágeis passaram a ganhar espaço.


Waterfall no Mainframe atual

Mesmo com a adoção de práticas como Scrum, Kanban e DevOps, o Waterfall não desapareceu.

Em muitos projetos de IBM Z ele ainda é utilizado, principalmente quando há:

  • requisitos legais bem definidos;
  • integração com sistemas críticos;
  • necessidade de documentação formal;
  • auditorias frequentes;
  • mudanças de alto risco.

Na prática, muitas organizações utilizam um modelo híbrido: planejamento e governança inspirados no Waterfall, combinados com entregas incrementais, integração contínua e automação de testes.


Curiosidades

  • Grande parte dos sistemas bancários criados entre as décadas de 1970 e 1990 foi desenvolvida seguindo o modelo Waterfall.
  • O artigo de Winston Royce é frequentemente citado como a origem da metodologia, embora ele próprio recomendasse mecanismos de revisão e feedback para reduzir riscos.
  • O sucesso do Waterfall ajudou a consolidar profissões como analista de sistemas, analista funcional, arquiteto de software e gerente de projetos em ambientes corporativos.

Dicas para quem está começando

  1. Aprenda primeiro a levantar requisitos.
  2. Desenvolva o hábito de documentar bem.
  3. Domine fluxogramas e modelagem de processos.
  4. Entenda a diferença entre análise funcional e projeto técnico.
  5. Estude também metodologias ágeis para compreender quando cada abordagem é mais adequada.
  6. Lembre-se de que, em Mainframe, planejamento continua sendo um dos maiores diferenciais de um bom profissional.

Conclusão

O Waterfall marcou a história da Engenharia de Software ao organizar o desenvolvimento em etapas claras e sequenciais. Em ambientes Mainframe, onde confiabilidade, rastreabilidade e estabilidade sempre foram prioridades, ele ajudou a construir sistemas que processam milhões de transações diariamente e permanecem em operação por décadas.

No universo do Bellacosa Mainframe, compreender o Waterfall é entender como nasceram os gigantes da computação corporativa. Mesmo que hoje convivamos com métodos ágeis e práticas DevOps, a disciplina de planejar, analisar, projetar, implementar, testar e documentar continua sendo um dos pilares que sustentam o sucesso de aplicações críticas no IBM Z.

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