1. To provide a critical and in-depth understanding of all aspects of software safety and dependability; including issues realting to security, reliability and trustworthiness.
2. To provide a broad understanding of the state-of-the-art software engineering techniques currently used to address safety and dependability issues.
3. To provide an overview of the contemporary research issues relating to software safety and dependability.
Introduction to safety critical systems (1 week)
Partial and total correctness (3.5 weeks)
Dependability, reliability, and discrete stochastics (1.5 weeks)
Markov chains and decision processes (4 weeks)
(LO1) At the end of the module, a student will understand some of the problems associated with the use of computer software in critical applications where safety, security and trust are issues.
(LO2) At the end of the module, a student will understand some of the contemporary mechanisms for ensuring dependability and reliability.
(LO3) At the end of the module, a student will understand a variety of approaches to the design and development of safe and dependable systems.
(LO4) At the end of the module, a student will understand formal verification techniques in relation to the assessment of safety and dependability.
(LO5) At the end of the module, a student will be aware of some of the contemporary research problems in the areas of safety, security, dependability and trust.
(S1) Working in groups and teams - Group action planning
(S2) Skills in using technology - Using common applications (work processing, databases, spreadsheets etc.)
(S3) Numeracy/computational skills - Reason with numbers/mathematical concepts
(S4) Numeracy/computational skills - Problem solving
(S5) Communication skills - Presenting
(S6) Problem solving - Co-designing a program and a correctness proof
(S7) Problem solving - Model (MDP) design analysis
(S8) Business and customer awareness - Brief discussion of the cost of software bugs and the cost of applying formal techniques
(S9) Information Technology (IT) skills - Formulating (probabilistic) models as Markov chains and decision processes, and using of-the-shelf tools for their analysis
Teaching Method 1 - Lecture
Attendance Recorded: Yes
Teaching Method 2 - Tutorial
Attendance Recorded: No