Sistemas Críticos
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Automação Industrial |
Ocorrência: 2010/2011 - 2S
Ciclos de Estudo/Cursos
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
Abrir os horizontes dos Engenheiros Informáticos, especialistas em desenvolvimento de software, para a área dos Sistemas Críticos. Abordar noções ligadas à cultura da Segurança, fundamentais para o ciclo de vida de desenvolvimento de Sistemas Críticos.
No final desta unidade curricular, espera-se que os estudantes tenham consolidado os seus conhecimentos sobre:
- A necessidade de uma abordagem sistémica da Segurança;
- As principais técnicas de tolerância a falhas baseadas em software;
- Os principais meios de verificação e validação de confiança no funcionamento em Sistemas Críticos.
Programa
Cap. 1
- Introdução aos Sistemas Críticos.
- Taxonomia.
- Apresentação de casos de estudo relevantes em termos de segurança.
- Critérios de segurança.
Cap 2.
- Desenvolvimento de Sistemas Críticos. ("safety-critical").
- Análise de situações perigosas ("hazards")
- Análise de risco.
Cap. 3
- Meios de obtenção de Confiança no funcionamento: Prevenção, e Tolerância a falhas
- Prevenção de falhas
- Gestão de qualidade para Sistemas Críticos
- Ambientes de Desenvolvimento
- Linguagens de programação
- Tolerância a Falhas em Software:
- Recuperação para trás vs Recuperação para a frente
- Técnicas, Linguagens e Ambientes de Programação
- Diversidade de Concepção/Implementação
- Diversidade de Dados
- Diversidade Temporal
- Formas de Adjudicação de Resultados
Cap. 4
- Meios de verificação e validação de Confiança no funcionamento:
- Modelação da confiança no funcionamento: conceitos básicos;
- Fiabilidade do Software: conceitos, modelos, estimação de parâmetros
- Técnicas de modelação: blocos de fiabilidade e redes de petri estocásticas;
- Modelação de arquitecturas HW/SW.
Bibliografia Obrigatória
Pullum, Laura L.;
Software fault tolerance techniques and implementation. ISBN: 1-58053-137-7
Storey, Neil;
Safety-critical computer systems. ISBN: 0-201-42787-7
Bibliografia Complementar
International Electrotechnical Commission; IEC 61078 Ed. 2.0 b:2006 Analysis techniques for dependability - Reliability block diagram and boolean methods , IEC, 2006
International Electrotechnical Commission; IEC 61025 Ed. 2.0 b:2006 Fault tree analysis (FTA) Edition: 2.0 , IEC, 2006
Shooman, Martin L.;
Realiability of computer systems and networks. ISBN: 0-471-29342-3
Rausand, Marvin;
System reliability theory. ISBN: 0-471-47133-X
IEC;
Application of Markov techniques
IEC 61703 Ed. 1.0 Bilingual - Mathematical expressions for reliability, availability, maintainability and maintenance support terms, IEC, 2001
IEC 60605-4 Ed. 2.0 - Equipment reliability testing - Part 4: Statistical procedures for exponential distribution - Point estimates, confidence intervals, prediction intervals and tolerance intervals, IEC, 2001
The Motor Industry Software Reliability Association;
MISRA-C 2004. ISBN: 0-9524156-2-3 (A Biblioteca da FEUP não sabe do exemplar que deveria ter.)
Métodos de ensino e atividades de aprendizagem
Aulas teóricas de exposição lectiva com apresentação de casos de estudo ilustrativos de Sistemas Críticos relevantes.
Aulas teórico-práticas para realização de pequenos trabalhos praticos de concepção e implementação de arquitecturas de software para tolerência a falhas.
Aulas teórico-práticas de modelação e análise da confiança no funcionamento de Sistemas Críticos.
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Participação presencial (estimativa) |
Participação presencial |
48,00 |
|
|
Arquitectura de software para sistemas confiáveis |
Trabalho escrito |
30,00 |
|
|
Verificação e Validaçao de software |
Trabalho escrito |
25,00 |
|
|
Exame escrito |
Exame |
3,00 |
|
|
|
Total: |
- |
0,00 |
|
Componentes de Ocupação
Descrição |
Tipo |
Tempo (Horas) |
Data Conclusão |
Estudo |
Estudo autónomo |
60 |
|
|
Total: |
60,00 |
|
Obtenção de frequência
Nota mínima de 8 valores na classificação distribuída.
Fórmula de cálculo da classificação final
2 Trabalhos práticos (concepção e implementação de arquitecturas de software para tolerência a falhas): 20% + 20%.
Exame escrito (prova sem consulta com a duração de 2h30m): 60%.
Provas e trabalhos especiais
Os alunos deverão elaborar dois trabalhos ao longo da disciplina. O primeiro trabalho versará as arquitecturas de software tolerantes a falhas, e o sgundo a verificação e validação de software.
Avaliação especial (TE, DA, ...)
Trabalhadores estudantes (e similares) não necessitam de acompanhar presencialmente a disciplina. Têm no entanto de efectuar os mesmos trabalhos que os alunos ordinários, sendo estes entregues nas mesmas datas. Estes alunos deverão no entanto periodicamente marcar reuniões com o docente da disciplina por forma a que este possa acompanhar a evolução do trabalho.
Melhoria de classificação
Melhoria de classificação final: poderá ser feita por exame na epoca de recurso.
Melhoria de classificação distribuida: poderá ser feita na ocorrência seguinte da disciplina.
Observações
As aulas poderão ser leccionadas em Português ou Inglês, consoante a existência de alunos ERASMUS inscritos à disciplina.