confiabilidade de sistemas prof. avelino f. zorzo pucrs
Post on 21-Apr-2015
105 Views
Preview:
TRANSCRIPT
Confiabilidade de Sistemas
Prof. Avelino F. ZorzoPUCRS
Agenda
• Motivação– Ariane 5– Therac 25
Motivação
• Errar é inerente a natureza humana. Precaver-se contra os erros é uma atitude inteligente.
• O processo de desenvolvimento de software é sujeito a defeitos. Sendo assim, a atividade de teste é fundamental para se obter produtos de software com garantia de qualidade.
• Discordar ou ignorar a frase acima revela grande amadorismo.
Motivação
• A preocupação com qualidade vem crescendo:– Aumento na complexidade dos produtos.– Maior riqueza de ferramentas.– Crescimento do número de variáveis a considerar.
• Ambiente mainframe:– Ambiente de HW/SW imutável. Apenas uma versão
por produto.– Usuários compartilham a mesma cópia da aplicação– Sistema altamente centralizado. Fácil de manter.
Motivação
• Microcomputadores:– Variedade de plataformas. Necessidade de várias
versões.– Equipamentos isolados. Alto custo na distribuição de
correções/atualizações (disquetes pelo correio).– Custo das equipes de apoio (esclarecimento de dúvidas)
• Internet:– Custo das atualizações: minimizado– Variedade de plataformas:
• cresceu muito (considera inclusive o navegador usado)
Variedade de plataformas
Escalável
PalmsCliente
Servidor
Sensores
Culler, 1999
Motivação
• Nesse ambiente qualidade passa a ser um diferencial:– O acesso a produtos concorrentes é facilitado.– Não se toleram “pequenos problemas”.– É preciso manter os produtos sempre atualizados e
com qualidade.
Exemplos
Ariane 5
Ariane 5
• Ariane 5 e sua carga foram destruídos 37 segundos depois de levantar vôo
• Erro devido a uma falha de software:– Conversão de número em ponto flutuante para
inteiro de 16 bits– Conversão gerou uma exceção que não foi tratada
• Custo total do projeto: Us$ 7B• Custo da carga: Us$ 500M
Ariane 501
"The failure of the Ariane 501 was caused by the complete loss of guidance and attitude information 37 seconds after start of the main engine ignition sequence (30 seconds after lift-off). This loss of information was due to specification and design errors in the software of the inertial reference system. The internal SRI* software exception was caused during execution of a data conversion from 64-bit floating point to 16-bit signed integer value. The floating point number which was converted had a value greater than what could be represented by a 16-bit signed integer. "
*SRI stands for Système de Référence Inertielle ou Sistema de Referência Inercial.
Ariane 5
Programa de vôo
Laser Gyro Aceleradores
Computador
OBC
SRI
Therac-25
• Therac-25 é um acelerador de partículas para tratamento de radioterapia.
• Dependia de software para segurança (diferente do Therac-20, Therac-6).
• Máquina foi utilizada inúmeras vezes sem problemas, mas causou queimaduras e mortes.
• Problemas de software:– Sem proteção para variáveis compartilhadas
(race conditions).– Interface com usuário sensível a velocidade do
usuário.
Fox and Dill, 1999
Therac-25
Therac-25
Therac-25
• Acidentes– 3 de junho de 1985: paciente recebeu overdose
– 26 de julho de 1985: paciente recebeu queimaduras graves – morreu em novembro
– Dezembro de 1985: paciente recebe overdose
– 21 de março de 1986: acidente – paciente morreu
– 11 de março de 1986: acidente – paciente morreu
– 17 de janeiro de 1987: nova overdose
Therac-25
top related