š„ļø CICS: O Coração do Processamento Online no Mainframe
Salve jovem padawan em mais um artigo de nossa jornada, desmitificando o Mainframe, vamos falar sobre um Softwares, que trabalha nas sombras, mas que sem ele, o mundo mainframe não poderia atender aos milhões de usuÔrios, que interagem com os diversos sistemas COBOL e de outras linguagens de Alta Plataforma.
Você jÔ se perguntou como sistemas bancÔrios, de companhias aéreas ou de seguradoras conseguem responder a milhares de transações por segundo com segurança e rapidez? A resposta pode estar em três letrinhas: CICS.
š O que Ć© o CICS?
CICS (Customer Information Control System) Ʃ um monitor de transaƧƵes desenvolvido pela IBM na dƩcada de 1960. Ele Ʃ amplamente utilizado em ambientes mainframe z/OS para controlar e executar aplicaƧƵes online, especialmente aquelas escritas em COBOL.
Em termos simples: o CICS gerencia aplicações interativas que processam transações simultâneas em tempo real.
š Um Pouco da História
šļø O CICS foi lanƧado em 1968, quando a IBM percebeu a necessidade de um sistema que permitisse mĆŗltiplos acessos simultĆ¢neos ao mesmo programa, sem travar ou perder dados.
š§ O projeto foi liderado por engenheiros da IBM em Des Moines, Iowa (EUA). A primeira versĆ£o era bem mais limitada que o que conhecemos hoje, mas logo se tornou peƧa-chave nos grandes sistemas corporativos.
š Antes dos terminais 3270 e o CICS, toda a informação era gerada em relatórios em papel zebrado e continuo, enormes caixas circulavam entre a Matriz com as Impressoras e as AgĆŖncias, um verdadeiro inferno de logĆstica, gastando toneladas de papel, o padrĆ£o eram relatórios com 255 caracteres e 80 caracteres.
š§š· No Brasil esse tipo de processamento em papel foi bem comum atĆ© meados da dĆ©cada de 80 no sĆ©culo passado, quando os primeiros 3270 comeƧaram a expandir-se, devido Ć reserva de mercado. Vivemos um certo atraso, porĆ©m jĆ” no final da dĆ©cada, tĆnhamos as ATMs, o Banco telefĆ“nico e os cartƵes magnĆ©ticos, ainda somente com fita, o chip veio surgir uns 10 ou 15 anos depois.
A primeira instituição financeira a utilizar o CICS em suas transações bancarias foi o Banco do Brasil, no final dos anos 60.
š” Por Que o CICS Ć© TĆ£o Importante?
Imagine uma agĆŖncia bancĆ”ria nos anos 70 recebendo milhares de clientes por dia. Cada saque, depósito ou consulta de saldo Ć© uma transação que precisa ser registrada, validada e respondida em tempo real. O CICS tornou isso possĆvel com:
- Alta disponibilidade
- Baixa latĆŖncia
- Suporte a múltiplos usuÔrios
- Recuperação de falhas
- SeguranƧa transacional
O CPD Centro de Processamento de Dados do Bradesco
Um IBM 1401 com 4 Kilobytes de memoria.
Uma agĆŖncia do Banespa
Sem computadores somente papel e calculadoras
Agencia do Banco Real na PUC RIO
Antes do CICS
Uma era de listagens e mais listagens de papel, atualizados manualmente e posteriormente planilhados em folhas de digitação e enviadas a Matriz ou Centros de Digitação. Eram criadas fitas magnĆ©ticas, que eram consolidados no processamento Batch diĆ”rio e impresso ao final da madrugada, por essa razĆ£o as agĆŖncias bancarias abriam as portas as 10 da manhĆ£. Um processo de logĆstica imenso entrava em ação para levar as informaƧƵes para cada AgĆŖncia.
Essa era a logĆstica do processo de impressĆ£o.
Folha de impressão zebrada e continua.
Após o CICS e os terminais 3270
O processo ficou muito mais rƔpido, com a chegada dos discos magnƩticos, o arquivo indexado VSAM e os primeiros bancos de dados IMS DL/I Adabas, o processamento de dados ganhou mais velocidade.
Porém, no Brasil havia mais uma barreira a ser vencida, a precaridade das linhas de comunicação telefÓnicas e em algumas regiões problemas estruturais de falta de eletricidade. Mas ai, são pontos para outra história.
Uma criação do inventor escocês Shepherd-Barron, o primeiro caixa eletrÓnico do Mundo foi inaugurado em 27 de junho de 1967 em uma agência do banco Barclays em Enfield, no norte de Londres, um de seis encomendados pelo banco.
𧾠Um Exemplo de Código COBOL com CICS
Aqui estÔ um exemplo bÔsico de um programa COBOL com comandos CICS que lê dados de uma tela e responde com uma mensagem:
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLOCICS.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NOME PIC X(30).
01 WS-MENSAGEM PIC X(80).
PROCEDURE DIVISION.
EXEC CICS
RECEIVE MAP('TELA001')
MAPSET('MAPA001')
END-EXEC
MOVE 'Ola, ' TO WS-MENSAGEM
STRING WS-NOME DELIMITED BY SPACE
' seja bem-vindo ao CICS!' DELIMITED BY SIZE
INTO WS-MENSAGEM
END-STRING
EXEC CICS SEND MAP('TELA001') MAPSET('MAPA001') FROM(WS-MENSAGEM)
ERASE
END-EXEC
EXEC CICS
RETURN
END-EXEC.
š Este exemplo usa comandos EXEC CICS para interagir com o terminal. Isso permite que o programa leia dados do usuĆ”rio, processe e envie uma resposta de forma transacional e segura.
Porém, com o podem ter notado, o COBOL não estÔ sozinho, aqui ele usa comando CICS para gerir a comunicação com os terminais, necessita de um Mapa BMS em HLASM para gerar o front-end, o programador ainda necessita compilar o programa. No CICS criar transação, associar a transação ao programa, associar o mapa ao programa, criar o link ao programa e instalar todos os componentes.
š¤ Curiosidades sobre o CICS
š¹ O CICS Ć© usado por mais de 90% dos bancos do mundo para processar transaƧƵes crĆticas. š¹ Estima-se que o CICS processe mais de 30 bilhƵes de transaƧƵes por dia globalmente. š¹ CICS Ć© compatĆvel com linguagens como COBOL, PL/I, C, Java, Node.js e atĆ© APIs REST via z/OS Connect. š¹ O nome original era "Customer Information Control System", mas o significado acabou caindo em desuso ā hoje, CICS Ć© só CICS mesmo.
š CICS no Mundo Moderno
Hoje, o CICS evoluiu para suportar arquitetura orientada a serviços, REST APIs, integração com Kafka, MQ, Java EE, entre outros. à um exemplo clÔssico de tecnologia "legado vivo", que se modernizou sem perder sua robustez.
š¬ ConclusĆ£o
Então jovem padawans, neste pequeno artigo, conhecemos a origem, a historia, um pequeno exemplo dos diversos componentes. Caso aja maior interação vamos criar mais artigos com uma maior precisão técnica sobre o Online no Mainframe.
Se vocĆŖ trabalha ou pretende trabalhar com mainframe, entender o CICS Ć© essencial. Ele nĆ£o Ć© apenas uma tecnologia antiga ā Ć© uma das engrenagens que fazem o mundo digital girar silenciosamente, 24 horas por dia.
Se quiser saber mais, comente ou me mande mensagem! š© Vamos manter o legado vivo e atualizado! šš»
#Mainframe #CICS #COBOL #IBM #Tecnologia #TI #Desenvolvimento #Legado #ZOS #Zmainframe #DevMainframe #Modernização



