I would say that that is a very valuable activity, and the linked question (without going deeply into it) was a valid worry. With any system I design, or develop, I have to think about what happens if the process or program fails in a particular way, and what the system or code should do.
It can be overdone though. For example, if I'm writing a Trading System for some regulated commodity I don't worry about what will happen to the trades if the Trading Company using my software goes bust. (There are several things that have to happen to the Trades but they are not the concern of either me or the Trading Company.)
For the same system, it is totally legitimate for me to wonder about what should happen is e.g. a trade confirmation doesn't arrive in a reasonable time (process failure) or my code encounters an unexpected error trying to e.g. save data to the database (system failure: how to recover?), plus anything else I can foresee.