Prefácio
Escrito em Brasilia provavelmente em 2010
Se você de maneira análoga à minha (eu caí de paraquedas) se deparou com a tarefa de trabalhar com mainframe esse livro foi escrito pra você ! Não digo para esquecer tudo que aprendeu na sua faculdade de computação e correlatas, ela foi válida, mas quando nos deparamos com um mainframe pela primeira vez, o sentimento que melhor descreve a sensação é perplexidade e a frase que resume é "não acredito que é assim".
Nessa obra nem de longe abordaremos a totalidade de assuntos relacionados a programação em mainframe. Daremos uma ideia geral e nos aprofundaremos no que você vai utilizar no seu dia a dia como programador de aplicações para "sistemas informáticos de grande porte". Serão citados por vezes aspectos de arquitetura do mainframe (infra-estrutura) e seu funcionamento (produção) tudo de maneira um tanto quanto superficial mas com sugestões de referências para aprofundamento de seus estudos.
O mainframe como referenciado nesse livro é o conjunto da obra, isto é, o computador em si (hardware) e o sistema operacional z/Os (software) com seus produtos e aplicativos instalados, pode-se também entender esse conjunto como sendo uma plataforma.
O mainframe não é nem de longe parecido com o computador da sua casa. Se você tiver a oportunidade de visitar fisicamente um mainframe notará algumas similaridades e conseguirá propor paralelos como uma colmeia de HD´s com seus HD´s mas tem outros que não tem como, que é o caso de fitas, na verdade são cartucho! Existem instalações de mainframe que utilizam fitas magnéticas até hoje (digamos que escrevi isso em 2018)!). O "processador" que é maior que uma geladeira com o seu processador intel i não sei das quantas e assim vai, mas quero deixar claro que não podemos comparar coisas incomparáveis, não existe algo do tipo, quantos micros iguais o lá de casa preciso são equivalente ao mainframe seilá da Visanet, sic, Cielo.
O sistema operacional do mainframe é baseado no legado, o que isso significa ? Que um programa que alguém escreveu em 1900 e bolinha, na época do cartão perfurado, funciona até hoje sem ter que atualizar nada. Sensacional não ? Depende do seu ponto de vista !
Eu acho interessante essa história de legado ainda mais para quem usa mainframe pois não precisa desenvolver/re-escrever aplicativos só porque a versão do sistema operacional foi evoluída. No windows isso é um SACO, no mac menos e no linux nao tenho nem opinião formada pois para cada distribuição tem que dar uma customizadinha aqui ou ali. Existem os que defendem essa compatibilidade total e dizem que é o que mantém o mainframe vivo até hoje - eu até concordo - porque não tem como reescrever bilhões de linhas de código de uma companhia para adaptá-los a uma nova versão do sistema operacional.
Mas fica aqui a dica:
- "Se for começar hoje pretira o mainframe, utilize "microinformática" - algo como cloud computing, big data e outros que estão na moda."
- "Se você roda seu negócio em mainframe contrate novos funcionários e os treine pois em poucos anos seus dinossauros se aposentarão e ninguém saberá como manter seu negócio rodando direito !"
Bom, o sistema operacional do mainframe para você começou a utilizar computador pós windows 95, mac panther ou OS2 dificilmente se deparou com comandos via teclado, se você é fução e utiliza linux o console já é seu conhecido porém nada comparável com o que é o mainframe ! Sinceramente não encontro definição em palavras para um mainframe...
O acesso ao mainframe é via terminal - caso nunca tenha visto um terminal não tem problema - hoje o terminal é peça de museu embora se você plugar um na rede (via cabo coaxial) ele ainda funcione - seja ele "tela verde" 3270 emulado ou algo mais "modernoso" estilo web, via browser e afins. O terminal está presente até a atualidade pois em algum dia no passado o tráfego de dados era algo caro e lento. A saída à época foi de só capturar e transmitir dados ao mainframe quando alguma tecla de função fosse pressionada (control, Pf's etc). Hoje em dia não há muito sentido nisso, mas o lance é se funciona bem desse jeito pra que mudar e faz sentido ainda mais se você pensar que as linhas de transmissão de dados que chegam/saem do mainframe tem velocidade de 256k ! O que ? Escreveu errado ! Nada disso é 256k mesmo ! Um monte de vezes menor que seu net virtua de 3 mega ! Isso porque o tráfego de dados é mínimo.
Em mainframe não temos fotos, músicas, vídeos, jogos... temos dados, nada mais nada menos. O mainframe é um grande repositório de dados. A inclusão, acesso, consulta, manipulação, atualização, sumarização e o que você imaginar é realizado com o auxílio dos aplicativos/produtos instalados no mainframe e as aplicações criadas pela sua empresa ou terceiros.
Nos últimos anos (desde que a IBM comprou a Cognos lá em 2007) tem havido uma grande evolução nos processos de mineração de dados no mainframe e o tráfego de dados que era bem tranquilo sofreu uma mudança significativa com consultas sendo executadas à partir da baixa plataforma e retornando bilhões de dados do mainframe, isso tudo instantaneamente e por vezes gerando gráficos para monitoração de produtos e serviços que estão rodando no mainframe.
Existe na internet uma escassez de material sobre mainframe e não vislumbro alteração nesse cenário. Os livros impressos em língua portuguesa são de décadas atrás e de difícil acesso (embora o conteúdo seja, por mais incrível que pareça, atual !). Existem umas 3 publicações no século 21 e olhe lá. O maior acervo de artigos, livros, dicas sobre mainframe e seus aplicativos/produtos é a própria IBM - se não sabia digamos que só existe ela como fabricante de mainframes atualmente - você encontra (nao com facilidade, mas encontra) no site da empresa uma vasta gama de informações sobre o “produto” e todos seus agregados..
Aplicativos/produtos não IBM devem possuir os manuais em algum local de sua empresa, se não existir e você os utilizar é interessante entrar em contato com o fabricante e solicitá-los.
Mas se tudo já existe então porque escrevo esse livro ? Simples, porque é muito mais fácil e cômodo pegar o passo a passo escrito em linguagem coloquial, com exemplos, explicando o que é o que por quem já passou e por vezes ainda passa os mesmos apuros que você.
Sem contar que o pessoal que trabalha com mainframe há muitas décadas é averso a novidades (as pessoas depois de uma certa idade em geral ficam assim) e preferem que as "coisas" fiquem do jeito que estão, provavelmente em sua empresa/instalação (ou Shop como diriam os Americanos) os programas são em sua grande maioria em COBOL, sei que é complicado, mas se não houver restrições, vá aos poucos inserindo mudanças - desde que justificáveis e para melhorar o sistema, crie um novo programa em C ao invés de COBOL por exemplo ! Discuta padrão de codificação, nomenclatura, performance, documente seu sistema, comente seu código e teste, teste muito porque às vezes você vai ter que voltar a versão!
Não leve os ritos constantes neste livro ao pé da letra, verifique os ensinamentos de sua instituição e adapte o conteúdo deste livro à cultura de sua empresa !
Se você copiou certinho ou baixou do site e não está funcionando é porque está errado me avise! Afinal trata-se de nossa primeira edição e blablabla.
Boa leitura,
Buga
Last updated