image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF
Article image
Vagner Bellacosa
Vagner Bellacosa27/06/2025 15:21
Compartilhe

Sistemas Monólitos para padawans

    Muito se fala, uns atacam, outros defendem, mas os padawans chegando agora no Universo da Tecnologia se perguntam, afinal o que seria um Programas mainframe monolíticos, de maneira geral são sistemas desenvolvidos de forma integrada e centralizada, comumente utilizados em ambientes corporativos de grande porte desde as décadas de 60 e 70, alguns em Logica de Programação Imperativa, outros em Logica de Programação Procedural e mais tardiamente em Logica de Programação Procedural Estruturada.

    Esses programas representam uma arquitetura monolítica, onde todos os componentes do software — interface, lógica de negócio e acesso a dados — estão interligados e funcionam como uma única unidade indivisível. Alguns para horror dos puristas ainda utilizam-se de GO TO, não possuem indentação, como tiveram inumeras evolução, apresentam em sua estrutura um mix de design e o pior, alguns são tão hermeticos, que carinhosamente receberam a alcunha de "Spaghetti Code".

    ⚙️ Características dos Programas Mainframe Monolíticos

    1. Tudo-em-um: Um único programa (ou conjunto de programas fortemente acoplados) realiza múltiplas funções, desde o front-end até o processamento e persistência dos dados.
    2. Fortemente acoplado: As diferentes partes do sistema (ex: cálculo, relatórios, tela) estão integradas e dependem diretamente umas das outras.
    3. Arquitetura da Instituição: Dentro do Programa, além das Funcionalidades Negociais, inclui procedimentos da arquitetura tais como Log, Tratamento de Erros e Anomalias, Acessos e Permissões e em alguns casos facilidades para o acesso online.
    4. Difícil de escalar horizontalmente: Escalar partes específicas do sistema requer replicar o todo.
    5. Desenvolvimento em linguagens como:
    COBOL (a mais comum)
    
    PL/I
    
    Assembler
    
    Natural (em ambientes Adabas)
    
    RPG (em AS/400)
    
    1. Alta integração na Instituição: Como estes softwares são criados sob medida, de acordo com as necessidades da Instituição, finamente adaptada aos serviços ofertados e associados com a Historia e evolução da empresa.
    2. Exemplos de tecnologias envolvidas:
    CICS para transações online
    
    IMS/DC ou IMS/DB
    
    DB2 ou VSAM para armazenamento
    
    JCL para batch
    
    TSO/ISPF como interface de desenvolvimento
    
    Relatorios e extratos de serviços ( Xerox e IBM)
    

    📌 Exemplo Típico

    Um sistema bancário com um programa COBOL que:

    • Lê dados do cliente de um banco DB2
    • Processa regras de negócio para empréstimos
    • Atualiza saldos em tempo real via CICS
    • Gera logs e verifica as permissões
    • Workflow para tratamento de registros
    • Gera relatórios batch à noite via JCL

    Tudo isso, em um ou poucos programas principais interligados, sem APIs externas, microsserviços ou modularização avançada. Em Mainframe a Modularização se faz através do Jobs, scripts em JCL onde são elencados cada parte do processo no STEPs, bem como regras de execução e seus arquivos sejam de input/outputs.

    ✅ Vantagens

    • Performance alta: Otimizado para processamentos em larga escala. Veloz, pois criado nativamente para Mainframe, com as limitações de memória do passado e a necessidade de códigos enxutas e performáticos
    • Robustez e estabilidade: Muitos desses sistemas estão em operação contínua há décadas. Testados e garantindo que cumprem aquilo para qual foram projetados.
    • Controle centralizado: Fica mais fácil entender e manter o estado da aplicação em um único ponto (para equipes experientes no ambiente). O treinamento inicial é lento, porém uma vez dominado o Sistema e navegar em um lago tranquilo.

    ❌ Desvantagens

    • Manutenção complexa: Alterações pequenas podem afetar múltiplas funcionalidades.
    • Dificuldade de modernização: Integrações com APIs, nuvem ou apps móveis requerem camadas adaptadoras.
    • Curva de aprendizado alta: Requer profissionais especializados em tecnologias legadas.

    🛠️ Modernização dos Monólitos

    Atualmente, muitas empresas estão migrando esses monólitos para arquiteturas mais modernas, como:

    • Exposição via z/OS Connect (transforma programas CICS em APIs RESTful)
    • Desacoplamento em microsserviços
    • Conteinerização parcial via zCX (z/OS Container Extensions)
    • Reescrita gradual em Java, .NET ou outras plataformas cloud-native
    • Nos anos 90 do seculo passado existiram processos de Downsize e Rightsize para migrar softwares monólitos.

    ⏳ A prova do Tempo.

    Aqui vai uma opinião minha, vista por meio de 4 décadas trabalhando em TI. A grande maioria das empresas, que migraram seus Monólitos Mainframe nos anos 90, através de downsize e rightsize, palavras que eram o norte, o pico da onda no passado. Não existem mais, faliram ou foram absorvidas e curiosamente aquelas que mantiveram seus Mainframe existem até o nossos dias.

    Onde quero chegar? Os custos de migrar, converter, retreinar a equipe, adquirir novos equipamentos e seguir a nova tendencia vendida como a "Bala de Prata", por consultorias não muito eticas, o gestor antes de ser seduzido pelo canto da sereia, deve analisar bens todos os custos e ainda tentar prever num horizonte temporal médio e longo, se os custos se pagam.

    E fácil vender promessas, o difícil é cumpri-las e coloca-las em pratica. Enfim Monólitos tem riscos e vantagens, a melhor dela é a prova do Tempo. Afim geram lucros para a entidade que se mantém ativa atualmente com tecnologia legada.

    Compartilhe
    Recomendados para você
    BairesDev - Machine Learning Training
    Savegnago - Lógica de Programação
    meutudo - Mobile Developer
    Comentários (0)