Стоит ли в программировании учитывать возможность экстренного обрыва выполнения сценария (например выключение электричества, поломки компьютера)?
Смотря насколько это критично. Если пользователь в результате потеряет деньги или два часа труда или не сможет зайти в свой аккаунт — надо думать, как обеспечить целостность при чтении в таких случаях. 
Параноить и заморачиваться нужно в меру.
Проблема в том, что выход железа из строя невозможно определить программно. Не запишется какой-то код в errno и не будет никаких исключений, поэтому так запросто свой код не обезопасить.
К программному обеспечению должны быть установлены какие-то требования, которые описывают его безопасность и отказоустойчивость. Вполне возможно не вся программа должна обладать такими характеристиками, а только её какая-то критическая часть. В таком случае, необходимо обеспечивать критически важные модули/участки дополнительными средствами, сохранением состояния, выполнением запросов в транзакциях и т.д.
В твоём случае добиться этого не так-то просто, потому что отказ во время создания бекапа всё равно приведёт к полному, тотальному и бесповоротному...