Cuando cumple mínimamente con estos tres aspectos:
No puede ser forzado intencionalmente a fracasar, en el cumplimiento de sus requerimientos funcionales, y aún después de intensos esfuerzos por comprometer su funcionamiento, continúa siendo fiable y adecuado para la tarea para la que se lo construyo.
Fue diseñado, implementado y configurado para seguir funcionando correctamente ante la presencia de la mayoría de los ataques, fallas o debilidades conocidas en el software, tolerando los errores y fracasos que resulten de tales ataques, fallas o debilidades.
Fue diseñado, implementado y configurado para aislar, contener y limitar los daños ocasionados por fallas o defectos causados por los ataques que el software fue incapaz de resistir o tolerar y recuperarse lo más rápidamente posible a partir de los fracasos.