Authors: Chris Inacio
In order to mitigate these problems, various techniques can be employed. Some of these techniques include classical hardware fault tolerance methods, graceful degradation, mecahnical or electrical fail safes, "idiot-proof" user interfaces, and functional diversity. By using a combination of these techniques in a well thought out approach the robustness of the system can be increased. Robustness is an emergent property, however, and so designing specifically for robustness is not possible. A system can be designed with robustness as a goal, and surely a system with robustness as a goal will be more robust than a system designed without that goal, but it does not gurantee a robust system.
A robustness benchmark can be used to measure how a system reacts to possible erroneous inputs or environmental factors. The robustness benchmark is used as an indentification of a system error detection mechanism. Unforuntately, it is not possible to fully determine how robust a system is. Using a robustness benchmark can only help in modeling and estimating the robustness of the system. (For more information on why you cannot measure this property, see the software testing section.)
An important part of many embedded systems, especially those embedded systems which are safety critical, are the fail safe mechanisms. Fail safes are an old concept in which, when a system detects that it is becoming unstable defaults into moving to a fail safe state. The fail safe state should put the system into the safest possible state and wait for either the user to intervene or reset the system.
Safety interlocks are a method of using additional subsystems within a complex embedded system in order to ensure that even if a different subsystems malfunctions, the system does not create a dangerous situation. For example, the doors on an elavator may use mechanical safety interlocks so that, unless the mechanical interlocks are released, the doors will not open between floors. The doors are generally controlled by an electronic motor and controller system, however, and the sole purpose of the mechanical system is for extra safety, increasing the robustness of the system.
Go To Project Page