So often, when a project or product doesn't go well or fails, organizations do "post-mortems" - they go over what went wrong, why, sometimes rushing to blame people first instead of looking at processes.
What if we started doing pre-natals instead of post-mortems? What if our cross-functional teams, at various steps in project or product development, examined why, what and how they were doing, what was working and why, what wasn't and why, and discussed all the things that could go wrong from that point on and why they could go wrong and how they could mitigate or eliminate those risks? Then they could prioritize all that based on probability and possibility, make sure they are on top of those and do this regularly throughout development.
This isn't a fail-safe, but chances are a lot of problems could be caught, corrected and learned from before they happen and the more you do pre-natals, the better you'd get!
Worth a shot isn't it?