BUG DO
MILÊNIO
Entenda o problema... e fique arrepiado!
Carlos Pimentel Mendes
Editor
Se o
leitor não entendeu o que é o Bug do Milênio, está
em boa companhia. A maioria dos dirigentes de empresas e mesmo seus administradores
de redes e gerentes de informática também desconhece o que
está ocorrendo, e isso em todo o mundo.
Na essência, entretanto, ele
é simples de entender: devido a problemas de custo de fabricação
de componentes e à necessidade de economizar o uso de memória
e o espaço em discos rígidos, então extremamente caros
e limitados, os primeiros computadores, duas a três décadas
atrás, utilizaram dois dígitos para representar o ano. Assim,
[1999] é representado como [99] apenas. Porém, uma data como
[2000] é registrada nesse sistema como [00]. Acontece que, ao efetuar
operações com datas, [00] é inferior a [99], e portanto
os sistemas tendem a interpretar 2000 como 1900 (ou a data mais antiga
que estejam preparados para informar). Falhas como essa são chamadas
de bugs, devido a uma história sobre falhas causadas por
insetos durante os primeiros testes com os computadores, meio século
atrás.
Agora, imagine que um débito,
que deveria ser pago no dia 31 de dezembro de 1999, seja atrasado por apenas
um dia. O computador que não estiver preparado vai calcular juros
sobre um século de suposto atraso no pagamento, em vez de considerar
apenas um dia. E se você programar seu videocassete para gravar um
programa nos primeiros dias de janeiro próximo, não conte
totalmente que essa gravação aconteça: ele também
usa processadores como os computadores, e pode falhar da mesma forma.
O pavio aceso – O que parece
simples vai se complicando, na medida em que muitos sistemas informatizados
usam o relógio interno do sistema para efetuar automaticamente determinadas
operações programadas. Por exemplo, acionar as máquinas
de uma fábrica para a confecção de um produto encomendado
para determinada data. Se o computador dessa fábrica receber a data
errada de outro computador, ou ele mesmo tiver essa falha, a ordem para
a produção poderá ser dada muito antes do previsto,
causando um grande prejuízo com excesso de produção
sem comprador, ou nem ser dada, deixando de ser atendida a encomenda. Um
gerente atento, numa pequena empresa, talvez perceba algo errado, mas numa
grande corporação isso será bem mais difícil
de ocorrer.
É por isso que podem por exemplo
faltar combustíveis nos postos, ou alimentos nos supermercados:
por trás da bomba de gasolina ou da prateleira existem complexos
sistemas de intercâmbio eletrônico de informações
entre produtores, atacadistas e varejistas/consumidores. Se o supermercado
não recebe as mercadorias na data prevista, fica com as prateleiras
vazias, e só vai descobrir isso quando a mercadoria não chegar.
Mesmo que o fornecedor seja avisado imediatamente, ainda assim vai ser
necessário um tempo para encaixar o novo pedido no sistema. Até
porque, provavelmente, esse fornecedor vai estar enfrentando dezenas, centenas
ou milhares de clientes enfurecidos com a não entrega dos produtos
prometidos. Todos, no mínimo, ameaçando processar a empresa
por quebra de contrato etc.
E a complexidade vai aumentando:
existem sistemas que cancelam automaticamente encomendas de clientes inadimplentes.
Mesmo que o cliente seja pontual nos pagamentos, e que o fornecedor esteja
compatível com o uso da data com quadro dígitos, se o banco
enviar ao fornecedor uma informação errada devido ao problema
das datas, pode parecer que a fatura anterior não foi paga e portanto
o crédito do cliente será cortado, a encomenda não
será processada. Pior: o cadastro da empresa supostamente devedora
poderá ficar negativado em sistemas de proteção ao
crédito, de forma que tal empresa poderá ter encomendas sucessivamente
canceladas, de outros fornecedores que consultaram tal cadastro negativo.
Mais: mesmo que tudo esteja certo
com a encomenda, pode faltar transporte, se uma empresa de navegação
programar erroneamente seus navios em função da existência
do bug em seus computadores. Ou um aeroporto pode ficar subitamente
congestionado de vôos, porque seus computadores de programação
de pousos e decolagens possuem uma falha pela qual o avião a jato,
que já sobrevoa a pista e pede autorização de pouso,
em tese deveria ter pousado há cem anos, antes mesmo de Santos Dumont
fazer suas primeiras experiências aéreas em Paris. Veja como
a bola de neve vai crescendo...
Até que alguém de bom
senso perceba que ocorreu uma falha num terceiro interveniente no negócio
(o banco, por exemplo) e se empenhe pessoalmente para resolver a questão,
grandes prejuízos já terão ocorrido - o cliente mal
servido procura o fornecedor concorrente e ainda processa a companhia que
não entregou a encomenda. A soma destes dois fatores pode significar
a falência de empresas que, de outra forma, teriam uma situação
confortável no mercado.
Veja mais:
Sem
bug!
Dez
anos para acabar com o bug
Verificação
é feita em sete níveis
Maioria
da organizações sequer sabe que o problema existe
Governos
crêem que não alertar sobre o caos ajuda a evitá-lo
Falha
foi prevista com muita antecedência |