Adaptação dos Sistemas de Informação ao Ano 2000

 

Pedro Veiga

FCUL

Missão para a Sociedade da Informação

pedro.veiga@missao-si.mct.pt

 

Resumo

 

O funcionamento de muitos sistemas informáticos poderá ser afectado devido a um tratamento inadequado de datas por só usarem 2 dígitos para representação do ano.

Com efeito os programas concebidos durante décadas foram preparados para assumir que as datas se referiam todas ao século XX e assim só era necessário guardar os dígitos das unidades e dezenas do ano. Esta decisão, correcta do ponto de vista de engenharia informática por o custo de disco e memória ser então muito elevado, não foi complementada pelas medidas de alteração gradual destes programas quando a transição de século se aproximou.

A correcção dos sistemas informáticos que não tratam adequadamente as datas é relativamente simples do ponto de vista técnico mas tem, em muitos casos, uma enorme extensão difícil de avaliar. Deste modo torna-se urgente que nas organizações onde ainda nada foi feito se arranque de imediato com um plano de acção para corrigir e testar estas aplicações. O início do ano 2000 não pode ser adiado!

 

1. Introdução

 

Só no início da década de 90 o custo da memória e do disco desceu para valores que tornam possível um programador não ter grandes preocupações com o espaço de memória gasto pelas suas aplicações e ficheiros.

 

Com efeito durante muitos anos uma decisão correcta dos engenheiros e programadores informáticos consistia em truncar os dígitos 19 nas datas. Assim o ano de 1998 seria representado por 98 numa aplicação informática, do mesmo modo que muitos de nós os fazemos quando escrevemos datas. Deste modo poupava-se espaço em disco e memória que era um recurso muito escasso e dispendioso.

 

Naturalmente muitos sectores de actividade, cientes das limitações que estas decisões de concepção e programação representavam, cedo tomaram a decisão de começar a alterar os seus sistemas informáticos para tratar adequadamente datas com 4 dígitos na representação de anos.

 

Um dos primeiros sectores que começou a analisar e tratar este problema de um modo sistemático foi a indústria e serviços ligados à indústria da aviação. Tratando-se de uma área de actividade onde os sistemas informáticos tem um maior ciclo de vida, os técnicos envolvidos na sua concepção e manutenção aperceberam-se, no início da década de 80, que precisavam de adaptar as suas aplicações e ficheiros para poderem tratar adequadamente as datas com 4 dígitos para o ano.

 

Noutras áreas de actividade, como a banca e os seguros, em que é tradicional tratar datas com muitos anos de avanço (por exemplo, a data final de um empréstimo amortizável a 20 anos), o problema do ano 2000 também começou a ter impacto e a ser resolvido com muita antecipação.

 

É nossa opinião que em todos os sectores de actividade, empresas e instituições onde há técnicos de informática competentes a tratar das aplicações que este problema já deverá ter sido começado a tratar atempadamente. Tradicionalmente costuma indicar-se que as alterações a todas as aplicações deverão estar concluídas durante 1998 para que 1999 seja o ano dedicado a realizar os últimos testes.

 

2. Alguns aspectos técnicos

 

Os problemas de tratamento inadequado da componente do ano nas datas, usando só 2 dígitos em vez de 4, tem muitas causas e origens apresentando-se de seguida algumas destas situações:

 

o hardware de muitos computadores só guarda os dígitos de ano e dezena de ano para poupar espaço de memória ou para simplificar a introdução de datas (por exemplo, o BIOS de muitos computadores pessoais mais antigos)

as rotinas de sistema de muitos computadores só devolviam os dois dígitos menos significativos do ano para a data

para poupar espaço em disco a parte os registos dos ficheiros, na parte respeitante à data, só guardavam os 2 dígitos do ano conseguindo-se assim uma economia assinalável no espaço em disco (6 dígitos para guardar datas em vez de 8 dígitos)

para comodidade dos utilizadores as rotinas de entrada de datas só pediam os 2 dígitos menos significativos do ano, assumindo automaticamente o século XX para os 2 dígitos restantes do ano

os programas, na parte respeitante às datas só guardam espaço e só tratam os 2 dígitos menos significativos do ano

muitos outros casos poderiam ser enumerados mas neste aspectos não achamos necessário sermos exaustivos, deixando para cada leitor a análise das simplificações que foram feitas nos seus sistemas informáticos.

 

3. Que problemas?

 

Os problemas resultantes das simplificações referidas na secção anterior podem ser múltiplos e implicar alterações simples ou radicais nos sistemas informáticos das empresas. Estas alterações podem ir de uma necessidade de fazer ou antecipar migrações para novas plataformas hardware, instalar novas versões do software de sistema, alterar as diferentes aplicações ou ainda reformular o património de dados contido nas bases de dados antigas.

 

Na recente resolução do Conselho de Ministros de trata das implicações deste problemas são enumerados os seguintes problemas:

 

os dados exibidos ou listados, ordenados por data/hora, figurarão fora de ordem;

os dados calculados ou processados com base em datas, quer sejam obtidos dos sistemas, compiladores ou programas ficarão incorrectos;

a idade dos registos dos ficheiros será calculada em erro;

muitos registos históricos serão eliminados por impropriamente lhes ser calculada uma data de expiração no ano 2000 e subsequentes;

muitos registos históricos a eliminar no ano 2000 não serão apagados o que provocará que as transacções e programas batch que ocorram posteriormente utilizarão datas incorrectas e produzirão resultados errados;

os programas de cálculo de datas específicas, com fins-de-semana, meses, trimestres, etc., produzirão resultados errados durante as semanas finais de 1999 e primeira parte do ano 2000;

programas de segurança que utilizem datas poderão comprometer a sua função de pois de 31 de Dezembro de 1999

 

4. Como proceder

 

É muito difícil apresentar soluções para problemas tão diversos e extensos como os resultantes da problemática que apresentámos nas secções anteriores.

 

Todavia para quem ainda não começou a tratar do problema do ano 2000 a recomendação inicial será a seguinte:

 

iniciar JÁ um levantamento rigoroso e exaustivo de todo o parque informático, seus sistemas operativos, outro software de base, software aplicacional e dados dos ficheiros e avaliar da sua conformidade (ou não) com a transição do ano 2000

caso este levantamento mostre que a dimensão do problema é grande e não há recursos suficientes para o resolver na totalidade, então identificar os sistemas críticos para o funcionamento da organização e tratar destes, deixando os sistemas não críticos para uma fase posterior

para cada componente dos sistemas informáticos que não estejam preparados para a transição do ano 2000 deve-se fazer:

substituição ou actualização das plataformas hardware

instalar novas versões do sistema operativo e/ou de software de base

rever todo o software aplicacional e identificar o que é que deve ser alterado; de seguida alterar

reconverter os ficheiros de dados em sintonia com as alterações do software

Em diversas situações poderá ser aproveitada a execução das tarefas acima enumeradas para fazer uma actualização tecnológica dos sistemas informáticos em uso.

 

Como sabemos a alteração de aplicações e sistemas informáticos necessita passar por intensos testes antes de ser lançado em exploração. Assim é necessário que no planeamento da execução de todo este processo se dedique um lapso de tempo confortável para a fase de testes, que como é sabido pode ser longo.

 

E o ano 2000 não pode ser adiado contrariamente a muitas outras actividades do nosso dia-a-dia.

 

Uma estratégia seguida por algumas organizações consiste em ter uma plataforma de testes que é uma réplica do sistema operacional. Mas esta plataforma de teste já está a funcionar com uma data depois de 1 de Janeiro de 2000.

 

Mas há muitos sistemas onde o teste não é simples. Recordemos que os computadores são usados em cada mais sectores de actividade e nalguns casos onde quase nos esquecemos disso. São tradicionalmente referidos como casos em que se podem verificar problemas, se não forem devidamente contemplados:

 

Sistemas que usam microprocessadores (sistemas de controlo industrial, sistemas de comunicações, elevadores de edifícios, automóveis, embebidos, gravadores de vídeo, …)

Sistemas de controlo de tráfego aéreo

Centrais térmicas e nucleares, bem como outros sistemas de controlo de processos

Hospitais e equipamentos médicos

Equipamentos militares

5. Ajuda na Internet

 

Na Internet é possível encontrar uma enorme quantidade de informação e ajuda sobre como proceder na resolução dos problemas que temos vindo a discutir.


Apresentamos de seguida uma série de URLs (Uniform Resource Locators) cuja análise aconselhamos (referências retiradas de SunExpert Magazine, Nov/1997, pp.80)

 

De fabricantes e vendedores de hardware e software:

 

http://www.software.hosting.ibm.com/year2000/#1

 

http://www.ibm.com/IBM/year2000

 

http://www.software.digital.com/year2000/

 

http://www.hp.com/gsy/year2000/index.html

 

http://www.sco.com/technology/y2k/

http://www.sun.com/y2000/index.html

 

http://www.microsoft..com/CIO/year.asp

 

http://www.microsoft.com/msoffice/officenews/960916/year2000.htm

 

http://www.devworld.apple.com/dev/technotes/tn/tn1049.html

 

 

De ajuda geral:

 

http://ano2000.mct.pt

http://www.year2000.com

 

http://www.wa.gov/dis/2000/y2000.htm

 

http://www.state.mn.us/ebranch/admin/ipo/2000/2000.html

 

http://mail.irm.state.fl.us/yr2kvend.html

 

http://www.usbr.gov/y2k/faq/y2kfaqi.htm

 

 

6. Conclusões

 

Do ponto de vista técnico o problema do ano 2000 é fácil de entender. Todavia, e como os sistemas baseados em hardware e software são cada mais vulgares em todos os sectores de actividade é preciso ser muito cuidadoso para não se esquecer nenhum sistema de fora da tarefa de migração.

 

Para quem não iniciou ainda esta actividade – cuidado pode já ser tarde – recomendamos que faça um inventário exaustivo do seu parque hardware, software e aplicacional em todas as áreas onde a empresa usa computadores (desde o grande sistema central ao pequeno computador pessoal antigo que ainda é usado para correr uma "aplicação antiga").

 

A seguir há que efectuar um planeamento detalhado e rigoroso de todo o plano de migração e adaptação do hardware e software. Pode até ser uma boa altura para se desfazer de aplicações e sistemas antigos e renovar o seu parque.

 

Nalguns casos é possível que aplicações e sistemas não possam ser actualizados a tempo e devem ser previstos planos de contingência para a execução manual das tarefas dos sistemas que falharão.