Você (ainda) precisa mesmo de... Cobol?
Extraído da Coluna News & Tips Programação
Esta linguagem empresarial tão mal-falada, mas amadurecida pelas batalhas, está se adaptando aos novos tempos. E você ?
CLAIRE TRISTAM
O tempo de ficar adiando decisões sobre programas legados COBOL está se esgotando. No passado, quando o espaço de armazenamento era escasso, os Programadores Cobol tiveram a brilhante idéia de poupar alguns bytes assumindo que o campo de data tinha anos começando com "19".
Em uma grande companhia comum existem milhões de linhas de código COBOL, inclusive nos aplicativos de contabilidade mais críticos, todas rodando com programas que desmoronarão no ano 2000. E não se cometa o erro de pensar que quatro anos é muito tempo para fazer a mudança: portar ou reescrever todos esses aplicativos é uma tarefa que levará anos para se completar.
Pense nisso como uma oportunidade de finalmente transformar os moribundos aplicativos legados usando uma linguagem de programação estado-da-arte – uma que ofereça aos desenvolvedores ferramentas visuais de front-end, objetos reutilizáveis e bastante independência de plataforma. Após considerar tudo isso, pode acontecer de simplesmente se chegar a conclusão de que a melhor linguagem para se fazer tudo isso é ... COBOL.
Há algumas razões claras e óbvias pelas quais o COBOL pode fazer sentido para uma companhia – ainda que seja uma versão mais nova capaz de aceitar datas do próximo milênio. Por exemplo, a atualização do código COBOL existente será mais barata do que reescrever os programas do zero em uma nova linguagem, particularmente quando consideramos os ciclos de testes adicionais necessários antes de confiar as contas de uma empresa a um aplicativo inteiramente novo.
Além disso, é provável que os programadores tenham muito mais experiência com COBOL do que com uma linguagem de Quarta geração. "A companhia típica da Fortune 500 tem 500 programadores Cobol", diz Marc Sokol, vice-presidente de estratégia de produtos da Computer Associates International. "Estas pessoas tem muita experiência no ramo. O que nós ouvimos dos clientes é: ‘Quero que pessoas que conhecem minha empresa administrem meus negócios’. Isso significa que o Cobol continuará a ser importante".
De fato, um estudo de 1994 conduzido pela International Data Corp. Revelou que 60% das companhias do mundo todo estão atualmente aplicando um plano para manter, ou mesmo aumentar, sua dependência do Cobol no futuro.
Existe mais a favor do COBOL do que a mera inércia tecnológica ou o nível de conforto dos funcionários. Como muito do que existe lá fora está congelado em antiquados programas monolíticos, é fácil dizer que já se foi o tempo desta linguagem. Mas não nos enganemos. O COBOL já não é aquele do tempo antigo. Eis algumas das vantagens que os novos desenvolvimentos do COBOL podem propiciar a uma organização:
Novas ferramentas visuais para COBOL podem aumentar
a produtividade em 20% ou mais.
Com ferramentas de desenvolvimento visual, agora é possível tirar partido da experiência dos programadores Cobol e ainda obter ganhos de produtividade do desenvolvimento de softwares em Desktop . "Se o desenvolvimento pode sermelhor implementado em outro lugar, ninguém vai querer mantê-lo no maiframe", pondera Don DePalma, analista sênior de estratégia de software da Forrester Research.
"A Micro Focus e a Computer Associates oferecem grandes ambientes de desenvolvimento que podem facilmente reduzir de 20% a 30% das necessidades de Mips (Milhões de instruções por segundo) de mainframe. Uma vez rompido o cordão umbilical com o mainframe, descobre-se que os programadores adoram trabalhar em máquinas mais velozes que lhes permitem diagnosticar e depurar código mil vezes mais rapidamente."
Alguns tipos de Cobol proporcionam
independência de plataforma.
Cobol Cliente-Servidor ? Por que não ? Fornecedores de Cobol que não se conformam em morrer com o mainframe desenvolveram produtos desenvolveram produtos para múltiplas plataformas, tornando-o uma das mais versáteis linguagens de programação existentes. Se alguém tem um aplicativo e está satisfeito com ele mas deseja fazer downsizing, basta envolvê-lo com uma interface gráfica com o usuário e ninguém nunca precisará saber que se trata de Cobol.
Os programadores são liberados de responder as requisições dos usuários, o número de Mips de mainframe é reduzido, evita-se a necessidade de atualizar o monstrengo e acaba-se com a preocupação de escrever aplicativos inteiramente novos.
O código pode ser
revisado facilmente
"Claro, todo mundo diz que Cobol é ‘verboso’ mas, por outro lado, daqui a cinco anos, será possível entender o que o programador escreveu", ressalta Mark Duckworth, membro da equipe técnica da US West Communications. "As companhias estão começando a descobrir que outras linguagens são ‘somente escrita’ – depois que o código é escrito, ninguém mais consegue lê-lo.".
"Mais do que qualquer outra linguagem, o Cobol é intuitivo", destaca Jon Hemming, gerente de desenvolvimento de aplicativos empresariais da Divisão Software Solutions da IBM. "É possível sentar e ler um programa Cobol. Código C++ se parece com uma sopa de letrinhas para quem não o escreveu.. Com Cobol, se trazemos uma pessoa nova para a empresa, o que se tem é código autodocumentado que reflete o problema empresarial que se está tentando resolver."
Os objetos fazem parte do caminho
de padronização do COBOL
Micro Focus e IBM tem agressivamente introduzido tecnologias de objetos em seus produtos Cobol, uma capacidade que está destinada a se tornar parte do padrão Cobol ANSI 1997. "Nosso enfoque é oferecer a tecnologia agora, mas também estamos sendo conservadores para evitar nos adiantarmos ao padrão", explica Hemming. "somente oferecemos aquilo que estamos altamente confiantes de que fará parte do padrão. Assim nossos clientes estarão no caminho certo quando ele for concluído em 1997.
E o Cobol oferece
padrões de Verdade
Há algumas vantagens em melhorar uma tecnologia antiga em vez de se adotar uma nova. Uma das vantagens é que, com o Cobol, sabe-se quem está no comando. O ANSI tornou-se a entidade definitiva para o estabelecimento de regras. Muito pode ser dito a favor disso, especialmente em contraste com as facções concorrentes que batalham para definir a padronização das 4GLs. O Cobol pode ser velho mas é estável e, com algumas cirurgias plásticas como ferramentas visuais, independência de plataforma e objetos fica bem bonito.
É claro que há uma armadilha: permanecer com o Cobol, será um poço sem fundo para o orçamento se a empresa continuar a trabalhar com programadores Cobol grudados na tela verde e amarrados ao mainframe. Eis como uma empresa pode tirar o máximo partido do Cobol.
Tornar aplicativos somente de leitura
acessíveis para os usuários já.
DePalma, da Forrester Recearch, estima que 30% dos recursos de programação Cobol podem ser liberados, proporcionando ao usuário acesso direto aos dados corporativos de que precisam via gateways de fabricantes como Cross Access, Trinzic e Information Builders, em vez de usar programadores Cobol para extrair as informações. "Muitos recursos são de programação são liberado ao se permitir que as pessoas façam seus próprios relatórios e consultas", assegura DePalma.
Decida se por um plano de atualização
que leve em conta todos os aplicativos empresariais
O furo do milênio força uma tomada de decisão sobre o que fazer com todos os aplicativos existentes atualmente rodando em uma versão de Cobol com campo de data de dois dígitos. Quais aplicativos devem ser convertidos para uma nova linguagem de programação mais nova, e quais para uma nova versão de Cobol ?
DePalma sugere um enfoque direto. Ficar com o Cobol para grandes tarefas em lote, aplicativos com os quais se está plenamente satisfeito e aplicativos são uma total bagunça que não vale a pena desperdiçar preciosos recursos neles. Para novos aplicativos, a equação precisa pesar a experiência dos programadores comas vantagens que se deseja ganhar passando para uma nova linguagem de desenvolvimento.
Adotar como padrão a versão mais recente de Cobol
que satisfaça as necessidades
Uma vez sabendo quais os aplicativos legados se deseja manter em Cobol, pleneje atualizar seus sistemas para tirar vantagem das novas ferramentas de produtividade ofereceidas pelos fornecedores de Cobol. "Normalmente, há uma lentidão nos padrões Cobol", observa DePalma. "Quem fica para trás, fica como um homem no gelo dos Alpes, Fica preso a uma tecnologia velha demais e inflexível demais."
Embora o último padrão ANSI tenha sido concluído em 1985, muitos usuários Cobol ainda estão por converter seus aplicativos. A IBM, por exemplo, estima que cerca de 30% de seus clientes rodam ainda antigas versões de Cobol que a empresa já não suporta, com programas que não funcionarão no ano 2000.
Se você é um destes retardatários, provavelmente está preso a um ambiente de desenvolvimento que limita a escolha de sistemas operacionais e plataformas e que não permite desfrutar dos benefícios das novas versões dos Compiladores. De fato, a dependência de versões antiquadas de Cobol condena a empresa ao purgatório dos sistemas legados e do mainframe.
O treinamento dos veteranos
programadores Cobol é crítico
É certo que o Cobol ainda é o Cobol. Mas funcionários que estão acostumados ao velho ambiente precisarão de treinamento antes de poderem beneficiar-se da passagem do desenvolvimento para um ambiente visual e uma máquina mais veloz. "Quem ficar com o Cobol precisa romper com maus hábitos". Adverte DePalma. "Estes programadores estão acostumados a programas tipo ‘monte de espaguete’ . Eles precisam reaprender a programar. Precisam aprender a usar as extensões orientadas a objetos."
Talvez o ponto mais forte do novo Cobol é que ele permite tirar partido do investimento em pessoas e aplicativos, ao mesmo tempo aumentando a produtividade. "A principal coisa a lembrar é que você pode programar até em grego, mas o realmente importa é tirar vantagem das novas tecnologias a medida que elas surgem", lembra DePalma. "Isso significa pensar em sair da caixa do Cobol tradicional".