More and more our society relies on the proper functioning of computer systems set up to control critical activities, whose failure may have catastrophic consequences on humans and the environment.
The course aims to introduce the issues related with the design, validation and certification of critical, real-time systems. It provides the knowledge about the basic concepts in dependable computing and the major techniques to deal with them, both at system architectural level and at the software le
Siewiorek, D.P, Swarz R."Reliable Computer Systems: Design and Evaluation", 3rd edition, A. K. Petres, Ltd., 1998
Avizienis, A.; Laprie, J.-C.; Randell, B.; Landwehr, C. “Basic concepts and taxonomy of dependable and secure computing” IEEE TDSC, Vol. 1 Page(s): 11- 33, 2004
Lyu, M., ed., "Software Fault Tolerance", John Wiley & Sons, 1995
B. Randell, "System Structure for Software Fault Tolerance," IEEE TSE, Vol. SE-1, pp. 220-232, 1975.
Bondavalli,A. Di Giandomenico, F. and Xu, J. ,"A Cost-Effective and Flexible Scheme for Software Fault Tolerance," Journal of Computer Systems Science and Engineering, Vol. 8, pp. 234-244, 1993.
P.G. Bishop, F.D. Pullen, "Failure Masking: a Source of Failure Dependency in Multiversion Programs", in Dependable Computing for Critical Applications, Santa Barbara, 1989, pp. 25-32
U. Voges, editor, Software Diversity in Computerized Control Systems, Springer Verlag, 1988
D. Powell Ed., "A Generic Fault-Tolerant Architecture for Real-Time Dependable Systems", Kluwer Academic Publishers, 2001.
T. Anderson & P.A. Lee, Fault Tolerance - Principles and Practice, Prentice-Hall International, INC, 1981
ISO 26262 International Standard - Road vehicles — Functional Safety — Parts 1 -10
F.Fabbrini, M.Fusani, G.Lami, Concepts and Practice of Software Certification, Proc. of 5rd Int.l Symposium on Software Process Improvement, Recife, 2003.
Fabbrini F., Fusani M., Lami G., Panaroni P., Sartori G., Safety in Automotive Software: an Overview of Current Practices, Int.l Workshop on Software Engineering Challenges in Automotive Domain. COMPSAC 2008 Proceedings. IEEE, 2008.
International Organization for Standardization. ISO/IEC 15504 International Standard, Information Technology – Software Process Assessment, 2008.
Automotive SPICE, Process Assessment Model (PAM) v2.5, 2010.
Automotive SPICE, Process Reference Model (PRM) v4.5, 2010.
Software Engineering Institute, +SAFE, V1.2 A Safety Extension to CMMI-DEV, V1.2, Technical Note CMU/SEI-2007-TN006. 2007.
GUPFI-ISMA Metriche del software Esperienze e ricerche, Franco Angeli ed., 2006.
Learning Objectives
More and more our society relies on the proper functioning of critical systems with important real-time constraints whose failure may have catastrophic consequences.
The course aims to introduce the problems related to the design, validation and certification of systems with critical requirements and time.
You will learn the basic concepts of the discipline and describes the main techniques at both the system architecture is increasingly important to the software.
At the end of the course, will be acquired ability to:
i) think about the implications of non-functional requirements regarding dependability especially on architectural choices for the system under development;
ii) orientation in fault tolerant solution for the second major schemes and techniques already established;
iii) orientation in the certification of critical systems according to international standards
Further information
Tools for Teaching:
UniFi E-Learning: http://e-l.unifi.it
Type of Assessment
The mode of Assessment consists of two parts:
- Development of a deeper or
project
- Oral
Condition of admission to the oral test is the acceptance of the report on the project.
Course program
Basic Concepts of Dependability:
• Dependability attributes: reliability, availability, safety, ...
• The chain failure - failure - failure
• The means for dependability: fault prevention, fault tolerance, fault removal, and fault forecasting
System dependability:
• Techniques for fault detection:
• redundancy techniques for masking.
Software dependability:
• Safety Net approach.
• Design diversity.
• Structure for Software Fault Tolerance: recovery blocks, N-version programming.
• Problems with design diversity: keypads inaccurate, masking errors
Examples of architectures for dependable systems
• SIFT, GUARDS
certification:
• Concepts and techniques for the assessment of software quality
• The certification process: the actors involved, procedures and techniques
• Scope and validity of the certification
• Reference standards for certification
• Purpose of the certification system, software, process
• Certification vs. quality
International standards for the certification of critical systems in different application domains
Learn through examples and case studies:
• The automotive sector and the ISO / IEC 26262