I think another reason this hasn't happened is sheer complexity of the modern software stack. No one fully understand how everything works, in principle or in details. You can't certify someone or establish principles for things no one understands anything about.
That's just laziness. Analog systems are even messier, but they have procedures and regulations that keep the catastrophes to a minimum.