110 likes | 234 Views
Software Safety Chloe Sanderson CNS07U. Overview. What is software safety? What are its causes? How can it be overcome? Example of analysis technique Example of safety standards. What is Software Safety?.
E N D
Software Safety Chloe Sanderson CNS07U
Overview • What is software safety? • What are its causes? • How can it be overcome? • Example of analysis technique • Example of safety standards
What is Software Safety? • Software Safety is concerned with avoiding hazardous situationsand alerting the correct systems if the situation becomes unsafe • People damage • Environment damage
Safety Critical Software Classes • Primary • Can cause direct harm to a person or the environment • For example, by crashing into something • Secondary • Can only cause harm indirectly • For example, a system which dispenses incorrect drugs to • patients
Where do hazards come from? • Ambiguous definition • “Discrepancies between the documented requirements specifications and the requirements needed for correct functioning of the system” Lutz 1996 • Reusing software modules • Famous MCO/MGS example • Modules interaction with rest of system • Human monitoring error
Hazard solutions • Remove hazard completely • Minimise hazard probability to acceptable risk • Reduce hazards negative impact • Contingency plan
Software Safety Techniques • Formal requirement definition • Fault tree analysis
Component Software Safety Techniques • Back up system Component 1 Component 2 Outcome Work 99% Both work 98.01% chance Work 99% Fail 1% First works only 0.99% chance Work 99% Second works only 0.99% chance Fail 1% Fail 1% Both fail 0.01% chance
STAMP hazard analysis • Identify the system hazards • Identify safety related requirements and constraints • Define the basic system control structure • Identify inadequate control actions that lead to a hazard • Determine what constraints could be violated and eliminate, prevent or control them through the system design
Safety Standards • Guidelines for development and certification of safety • ISO examples: • Health Informatics – Classification of safety risks from health software • Safety of machinery – Safety related parts of control systems • Space systems – Safety requirements for ground support equipment for use at launch, landing or retrieval sites
References 1. Sommerville, Ian.Software Engineering. s.l. : Pearson Education. 2. Leveson, Nancy G and Weiss, Kathryn Anne. Making Embedded Software Reuse Practical and Safe. [Online] http://sunnyday.mit.edu/papers/fse04.pdf. 3. Ericson, Clifton A. Software Safety in a Nutshell. [Online] http://www.dcs.gla.ac.uk/~johnson/teaching/safety/reports/Clif_Ericson1.htm. 4. Leveson, Nancy. Completeness in Formal Specification Language Design for Process-Control Systems. [Online] http://sunnyday.mit.edu/papers/completeness.pdf. 5. Leveson, Nancy and Dulac, Nicolas. An Approach to Design for Safety in Complex Systems. [Online] http://sunnyday.mit.edu/papers/incose-04.pdf. 6. ISO. [Online] http://www.iso.org/.