Проблема надежности ПО была объектом пристального внимания с самого начала развития средств машинной обработки информации. Основной акцент в начальной стадии делается на аппаратурную надежность, но уже тогда те, кто занимался написанием программ, на своем опыте убедились, что исправление ошибок в программах составляло большую часть времени процесса программирования.