I'm beginning to think the real answer for software development is to stop wanting a process. A team either clicks, or it doesn't. I think this happens no matter what process is attempted.
EDIT: Obviously there should be acceptance criteria for the product, especially where safety is a concern; but the day-to-day process is just going to be what it is.