Fail-safe
Il principio progettuale secondo cui un guasto deve portare il sistema in uno stato innocuo, e non semplicemente in uno stato ignoto.
Il caso da manuale è il freno ad aria automatico di Westinghouse del 1872: la pressione dell'aria tiene i freni del treno sbloccati, così un tubo che scoppia ferma il convoglio invece di lasciarlo senza freni. I sistemi embedded seguono la stessa logica. Dopo un reset i pin di un microcontrollore sono ingressi ad alta impedenza, quindi un driver per motori ha bisogno di una resistenza di pull-down che lo tenga spento mentre il firmware riparte — altrimenti ogni reset del watchdog è un breve istante di motore incontrollato.
Che cosa sia «sicuro» dipende dall'applicazione. Un robot industriale si ferma; un aereo non può, e deve essere invece fail-operational: continuare a funzionare nonostante il guasto, il che richiede ridondanza. Norme come la IEC 61508 impongono che lo stato sicuro sia definito esplicitamente e che si dimostri che il sistema lo raggiunge.