Conceitos de Confiabilidade “ Dependability Concepts ”
Sumário <ul><li>Motivação </li></ul><ul><li>Conceitos introdutórios </li></ul><ul><li>Modelo de sistema  </li></ul><ul><li...
Motivação   (1/2) <ul><li>NENHUM SISTEMA É 100% CORRECTO: </li></ul><ul><ul><li>erros na especificação, desenho e realizaç...
Motivação   (2/2) <ul><li>O que é importante nos sistemas: </li></ul><ul><ul><li>o reconhecimento de que podem falhar </li...
Conceitos introdutórios  (1/3) <ul><li>Confiabilidade  é a qualidade do sistema que nos permite confiar,  justificadamente...
<ul><li>fiabilidade  ( reliability ): </li></ul><ul><ul><li>medida do tempo de funcionamento de um sistema até falhar, ou ...
Conceitos introdutórios  (3/3) <ul><li>segurança contra acidentes   durante funcionamento  ( safety ):  </li></ul><ul><ul>...
Modelo de sistema <ul><li>Cada sistema: </li></ul><ul><ul><li>obedece a uma especificação </li></ul></ul><ul><ul><li>ofere...
Impedimentos à confiabilidade  (1/4) <ul><li>São tudo aquilo que queríamos que não existisse  :-( </li></ul><ul><li>Os obs...
Impedimentos à confiabilidade  (2/4) <ul><ul><li>erros  ( errors ): são estados inconsistentes em que o sistema foi coloca...
Impedimentos à confiabilidade  (3/4) <ul><ul><li>falhas  (cont.): </li></ul></ul><ul><ul><ul><li>exemplo:  </li></ul></ul>...
Impedimentos à confiabilidade  (4/4) <ul><li>Exemplo de falha no componente “A” causando uma falta no componente “B”: </li...
Realização de sistemas confiáveis  (1/5) <ul><li>Como desenvolver sistemas que funcionem como esperado ? </li></ul><ul><li...
Realização de sistemas confiáveis  (2/5) <ul><li>Como não introduzir faltas ou evitar a sua ocorrência ? </li></ul><ul><li...
Realização de sistemas confiáveis  (3/5) <ul><li>E se um raio cair vindo do nada ? Funcionará depois ? </li></ul><ul><li>T...
Realização de sistemas confiáveis  (4/5) <ul><li>E se os “pontos de falta” forem conhecidos ? </li></ul><ul><li>Supressão ...
Realização de sistemas confiáveis  (5/5) <ul><li>E se tudo para trás tiver falhado, só nos resta prever ! </li></ul><ul><l...
Conclusões <ul><li>Nenhum sistema é 100% correcto ! </li></ul><ul><li>O impossível acontece mesmo [ Murphy’s Law ] ! </li>...
Próximos SlideShares
Carregando em…5
×

Conceitos de confiabilidade

1.324 visualizações

Publicada em

Publicada em: Educação, Tecnologia, Negócios
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.324
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
92
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Conceitos de confiabilidade

  1. 1. Conceitos de Confiabilidade “ Dependability Concepts ”
  2. 2. Sumário <ul><li>Motivação </li></ul><ul><li>Conceitos introdutórios </li></ul><ul><li>Modelo de sistema </li></ul><ul><li>Impedimentos à confiabilidade </li></ul><ul><li>Realização de sistemas confiáveis </li></ul><ul><li>Conclusões </li></ul>
  3. 3. Motivação (1/2) <ul><li>NENHUM SISTEMA É 100% CORRECTO: </li></ul><ul><ul><li>erros na especificação, desenho e realização </li></ul></ul><ul><ul><li>“ time-to-market” cada vez mais importante (e curto !) </li></ul></ul><ul><ul><li>imprevisibilidades internas e externas ao sistema </li></ul></ul><ul><li>Nas empresas: </li></ul><ul><ul><li>dependência de sistemas de informação críticos </li></ul></ul><ul><ul><li>sistemas são factor de concorrência </li></ul></ul><ul><ul><li>falhas nos sistemas podem parar o negócio (na aviação podem resultar em perda de vidas humanas !) </li></ul></ul>
  4. 4. Motivação (2/2) <ul><li>O que é importante nos sistemas: </li></ul><ul><ul><li>o reconhecimento de que podem falhar </li></ul></ul><ul><ul><li>a compreensão das causas de falha </li></ul></ul><ul><ul><li>diminuição do impacto de falhas (interno e externo) </li></ul></ul><ul><ul><li>a comprovação do seu bom funcionamento </li></ul></ul><ul><li>Abordagem sistemática destes problemas é urgente </li></ul><ul><li>Necessidade de acordo na terminologia a utilizar </li></ul><ul><li>Base comum para estudo e discussão </li></ul>
  5. 5. Conceitos introdutórios (1/3) <ul><li>Confiabilidade é a qualidade do sistema que nos permite confiar, justificadamente, no serviço oferecido. </li></ul><ul><li>Confiabilidade é um conceito global, que se decompõe em vários vectores quantificáveis: </li></ul><ul><ul><li>fiabilidade ( reliability ) </li></ul></ul><ul><ul><li>disponibilidade ( availability ) </li></ul></ul><ul><ul><li>reparabilidade ( maintainability ) </li></ul></ul><ul><ul><li>segurança contra acidentes (safety) </li></ul></ul><ul><ul><li>segurança contra acesso não autorizado ( security) </li></ul></ul>
  6. 6. <ul><li>fiabilidade ( reliability ): </li></ul><ul><ul><li>medida do tempo de funcionamento de um sistema até falhar, ou da probabilidade de não falhar durante o tempo de missão (ex.:MTTF, MTBF, 10 -5 falhas/hora, 99.9%) </li></ul></ul><ul><li>disponibilidade ( availability ): </li></ul><ul><ul><li>medida do tempo (ou %) em que o sistema está operacional (ex.: MTBF/(MTBF+MTTR), 5000h/ano) </li></ul></ul><ul><li>reparabilidade ( maintainability ): </li></ul><ul><ul><li>medida do tempo de reposição em serviço do sistema (ex.: MTTR) </li></ul></ul>Conceitos introdutórios (2/3)
  7. 7. Conceitos introdutórios (3/3) <ul><li>segurança contra acidentes durante funcionamento ( safety ): </li></ul><ul><ul><li>medida da fiabilidade do sistema relativa a faltas que ocasionem efeitos catastróficos </li></ul></ul><ul><li>segurança contra acesso não autorizado ( security ): </li></ul><ul><ul><li>idem, relativo a faltas contra integridade, confidencialidade e autenticidade </li></ul></ul>
  8. 8. Modelo de sistema <ul><li>Cada sistema: </li></ul><ul><ul><li>obedece a uma especificação </li></ul></ul><ul><ul><li>oferece serviços ao exterior </li></ul></ul><ul><ul><li>possui um estado interno de execução </li></ul></ul><ul><ul><li>pode ser composto por subsistemas internos </li></ul></ul><ul><ul><li>pode utilizar os serviços de sistemas externos </li></ul></ul><ul><ul><li>modelo “Caixa Preta” ( “black box”) </li></ul></ul>sistema sa sb
  9. 9. Impedimentos à confiabilidade (1/4) <ul><li>São tudo aquilo que queríamos que não existisse :-( </li></ul><ul><li>Os obstáculos são vários (“ the impairments ”): </li></ul><ul><ul><li>faltas ( faults ): são a raiz do mau funcionamento do sistema </li></ul></ul><ul><ul><ul><li>podem ser vistas quanto à: </li></ul></ul></ul><ul><ul><ul><ul><li>natureza: acidentais / intencionais </li></ul></ul></ul></ul><ul><ul><ul><ul><li>origem: fenomenais / no sistema / na criação (ex.: desenho) </li></ul></ul></ul></ul><ul><ul><ul><ul><li>persistência: permanentes / temporárias / intermitentes </li></ul></ul></ul></ul><ul><ul><ul><li>exemplos: </li></ul></ul></ul><ul><ul><ul><ul><li>circuito que se queimou por sobreaquecimento </li></ul></ul></ul></ul><ul><ul><ul><ul><li>posição de memória sempre com o valor ‘0’ </li></ul></ul></ul></ul><ul><ul><ul><ul><li>pode resultar em erro do sistema ! </li></ul></ul></ul></ul>
  10. 10. Impedimentos à confiabilidade (2/4) <ul><ul><li>erros ( errors ): são estados inconsistentes em que o sistema foi colocado em resultado de faltas </li></ul></ul><ul><ul><ul><li>exemplo: </li></ul></ul></ul><ul><ul><ul><ul><li>escrita de ‘1’ seguida de leitura de ‘0’ </li></ul></ul></ul></ul><ul><ul><ul><ul><li>pode resultar em falha </li></ul></ul></ul></ul><ul><ul><li>falhas ( failures ): são manifestações para o exterior de erros internos no sistema (desvios do especificado). Podem ser vistas quanto a: </li></ul></ul><ul><ul><ul><ul><li>domínio: valor / temporal </li></ul></ul></ul></ul><ul><ul><ul><ul><li>percepção: consistente / inconsistente </li></ul></ul></ul></ul><ul><ul><ul><ul><li>consequência: benigna / catastrófica </li></ul></ul></ul></ul>
  11. 11. Impedimentos à confiabilidade (3/4) <ul><ul><li>falhas (cont.): </li></ul></ul><ul><ul><ul><li>exemplo: </li></ul></ul></ul><ul><ul><ul><ul><li>entrega de resultado indevido </li></ul></ul></ul></ul><ul><ul><ul><ul><li>quem conhece o “Blue Screen” ? ;-) </li></ul></ul></ul></ul><ul><ul><ul><li>representa uma falta se não for reconhecida como falha </li></ul></ul></ul><ul><li>Modelo de “cascata” de impedimentos: </li></ul>Componente A falta > erro > falha Componente B falta > erro > falha > > ...
  12. 12. Impedimentos à confiabilidade (4/4) <ul><li>Exemplo de falha no componente “A” causando uma falta no componente “B”: </li></ul><ul><ul><li>“ A” falha na leitura da temperatura do forno sobreaquecido, e retorna um valor muito baixo (“A” pode ser sensor avariado) </li></ul></ul><ul><ul><li>“ B” lê a temperatura (a falta), verifica que está dentro dos limites (o erro), e não faz nada </li></ul></ul><ul><ul><li>“ B” falhou porque não tomou as acções devidas para baixar a temperatura (falha catastrófica !) </li></ul></ul><ul><ul><li>entretanto o forno rebenta ! :-( </li></ul></ul>
  13. 13. Realização de sistemas confiáveis (1/5) <ul><li>Como desenvolver sistemas que funcionem como esperado ? </li></ul><ul><li>Métodos de desenvolvimento de sistemas confiáveis ou como obter confiança no funcionamento ( “the means ” ): </li></ul><ul><ul><li>prevenção de faltas ( prevention ) </li></ul></ul><ul><ul><li>tolerância a faltas ( tolerance ) </li></ul></ul><ul><ul><li>supressão de faltas ( avoidance ) </li></ul></ul><ul><ul><li>previsão de faltas ( forecasting ) </li></ul></ul>
  14. 14. Realização de sistemas confiáveis (2/5) <ul><li>Como não introduzir faltas ou evitar a sua ocorrência ? </li></ul><ul><li>Prevenção de faltas: </li></ul><ul><ul><li>auto-teste ( self-check ), assinaturas </li></ul></ul><ul><ul><li>correcta reutilização de componentes fiáveis </li></ul></ul><ul><ul><li>especificação rigorosa </li></ul></ul><ul><ul><li>ambientes e linguagens apropriados </li></ul></ul><ul><ul><li>protecção de HW </li></ul></ul>
  15. 15. Realização de sistemas confiáveis (3/5) <ul><li>E se um raio cair vindo do nada ? Funcionará depois ? </li></ul><ul><li>Tolerância a faltas: </li></ul><ul><ul><li>exemplos: replicação, votadores, transacções, assinaturas e checkpoints , temporização/repetição </li></ul></ul><ul><ul><li>técnicas de processamento de erros: </li></ul></ul><ul><ul><ul><li>mascaramento de erros ( error masking ) </li></ul></ul></ul><ul><ul><ul><li>detecção/recuperação ( detection/recovery ) </li></ul></ul></ul>
  16. 16. Realização de sistemas confiáveis (4/5) <ul><li>E se os “pontos de falta” forem conhecidos ? </li></ul><ul><li>Supressão de faltas: </li></ul><ul><ul><li>depuração ( debug ) </li></ul></ul><ul><ul><li>simulação </li></ul></ul><ul><ul><li>validação </li></ul></ul>
  17. 17. Realização de sistemas confiáveis (5/5) <ul><li>E se tudo para trás tiver falhado, só nos resta prever ! </li></ul><ul><li>Previsão de faltas: </li></ul><ul><ul><li>injecção de faltas em software </li></ul></ul><ul><ul><li>injecção de faltas em hardware </li></ul></ul>
  18. 18. Conclusões <ul><li>Nenhum sistema é 100% correcto ! </li></ul><ul><li>O impossível acontece mesmo [ Murphy’s Law ] ! </li></ul><ul><li>Sistemas críticos devem ser tolerantes a faltas ! </li></ul><ul><li>Confiabilidade deve ser pensada desde o início ! </li></ul><ul><li>Credibilidade é importante … </li></ul><ul><li>… e talvez um dia o Murphy esteja errado ;-) </li></ul>PERGUNTAS ? www.portaldotecnico.net

×