Um erro de programação pode matar?

Publicado por Thiago Glauco Sanchez em 21/06/2010

[ Hits: 10.986 ]

 


Um erro de programação pode matar?



Os maiores acidentes causados por erros de programação.

Erros de software que foram fatais.

A inteligência artificial e sistemas automatizados vem se tornando parte constante da vida diária das pessoas. Câmeras digitais, fornos de microondas, automação residencial. Nestas condições, pequenos bugs de software podem causar prejuízos pequenos ou danos leves. Mas quando um software defeituoso é responsável por um sistema de missão crítica ou mesmo em um equipamento hospitalar, responsável pela saúde de pessoas? Se um programador errar em um sistema que será utilizado para especificação de materiais para construção de prédios residenciais?

Diferente dos médicos, nós programadores não sentimos o pulso das pessoas nem sua respiração perto de nós. Enquanto trabalho eu apenas ouço o som das teclas, o leve som do cooler e a minha rádio de internet preferida e codifico, testo, codifico... Apesar de não termos essa proximidade com a vida de outras pessoas, muitas vezes sistemas mal projetados podem custar milhões de dólares, ou até vidas humanas. Não estou sendo terrorista. Apenas quero trazer para você a responsabilidade do que é ser algo mais que um programador por hobby.

Uma das características que tornou o Perl um linguagem famosa e de vida longa é a qualidade suficiente para ser usada em sistemas de missão crítica ou non-stop além sistemas da NASA e da NSA - Agência Nacional de Segurança dos EUA. O Perl é utilizado com sucesso por grandes corporações cuja hora parada pode significar perdas de milhões de dólares. Projetos relacionados ao genoma e mesmo em perícia. E se você quer aprender Perl é por que deseja ir além de apenas programar aplicativos desktop.

Portanto, você deve se preocupar com a segurança e a qualidade do seu software em certas condições onde errar não é permitido - pelo menos não quando o sistema estiver em produção.

Veja esses casos:

Estádio Desaba em Hartford em 1978. Dano U$90.000.000 da época. Causa: Programador do sistema de CAD utilizou variáveis erradas no sistema que calculou esforços de barras de aço.

Sistema Soviético de Vigilância contra ataque nuclear alarmou acidentalmente em 1983, indicando um falso ataque dos Estados Unidos. Isso quase causou uma 3ª Guerra Mundial. Erro de software fez o sistema confundir a reflexão solar com mísseis.

Therac-25 matou 5 pessoas em 1985. Máquina de radio terapia gerou overdoses de radiação devido a erro na programação.

Sistema de Radio Terapia mata 8 pessoas e queima 20 em 2000. Erro de cálculo no software da Multidata System International que era utilizado para controlar a emissão de radiação em tratamentos de câncer matou 8 pessoas e causou queimaduras graves em outras 20.

No site 20 Desastres Famosos de Software você pode ver esses e outros desastres provocados por erros de software, ou melhor, erros dos programadores ao criarem os softwares.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Backup no Mozilla com Febe

Usando o tar.xz + várias threads e compactação extrema

Use o Android para ajudar a encontrar curas e procurar vida extraterrestre

Inkscape: Ajustando texto ao caminho

Finalmente, Gentoo e Arch Linux podem ser mais fáceis!

  

Comentários
[1] Comentário enviado por leandrox em 21/06/2010 - 10:55h

Ótimo artigo, Parabéns!
Esse é um tema muito importante para ser discutido e sempre lembrado, que pequenos erros podem causar grandes danos.
virou um Artigo Favorito meu...

[2] Comentário enviado por Teixeira em 21/06/2010 - 13:33h

Muito embora nosso tipo de arquitetura predileta (alvenaria) não leve em consideração "erros de computador": calcula-se tudo até o mínimo detalhe, até "a enésima fração de um cabelo de sapo" e em seguida dá-se uma margem de 40% para compensar variações de material e "outros" erros.

[3] Comentário enviado por wryel em 21/06/2010 - 16:13h

Minha frustração atual, é que uma grande parcela de culpa está em gerentes que não sabem determinar os prazos. HAHAHAHA

[4] Comentário enviado por Teixeira em 21/06/2010 - 19:00h

"Erros de computador" devem ser traduzidos como "erros humanos", já que por definição "computadores" são "seres" totalmente burros, porém ultra-rápidos...
Nessa comparação, NÓS somos inteligentes porém MUITO lerdos.

Dentre esses erros humanos podemos citar inicialmente uma falha no projeto do Pentium I, que errava nos cálculos com ponto flutuante. Flutuou, dançou.
Quem sabe se não existem outras falhas a nivel de arquitetura e ainda não descobertas?

Em segundo lugar, falhas na própria elaboração dos sistemas.
Falhas na codificação.
Falhas na revisão.
Gerentes, "gepones" e "aspones" cobrando prazos incrivelmente curtos.
A piãozada (os "marmitões", ou "digitoprogramalistas") sem querer, espichando esses prazos, apesar de dormir muito pouco e comer mal, à base de carboidratos, gorduras hipersaturadas e glutamato monossódico, com corantes sintéticos cancerígenos ou ainda outros à base de insetos...
Aì tem aquela história do hifen que fez a cápsula espacial que ia para Marte se perder no espaço infinto,e muitas outras histórias.
Mas não tenham medo: A culpa é sempre DO ESTAGIÁRIO!...

[5] Comentário enviado por albertguedes em 27/06/2010 - 21:04h

É impressão minha o artigo foi pró-perl e ninguém percebeu ? hahaha

Brincadeiras a parte, muito legal o artigo.

[6] Comentário enviado por removido em 23/01/2012 - 23:20h

o windows deveria estar nesta lista

[7] Comentário enviado por Teixeira em 24/01/2012 - 12:39h

Mais um tópico exumado... rsrs



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts