I have an opportunity to review process documentation (actual and proposed) from many organizations. I admit, I have a prejudice for more Agile techniques (integrated into any lifecycle). But non-Agile techniques work too.
Here’s what I find doesn’t work: making the process dependent on the personalities of the people who have to carry out the process. One of the reasons a waterfall or phase-gate lifecycle more often fails than succeeds is because it’s dependent on the project manager policing the people on the project to perform all the paperwork deliverables. Now, these documents may well be valuable during the project. But as soon as the perceived schedule pressure becomes too great, the technical staff stops producing useful documentation. They may spend time on the docs, but they don’t serve the intent of the docs. Same thing with reviews (design reviews, code reviews, any review).
The process has to be independent of the people. Reasonable and capable people should be able to use the process to push back on unreasonable schedules–or explain why they won’t use the defined process. If the process pushes staff to stop using the process in the face of schedule pressure, depending on one person, the PM, to push back on management or the sponsor, the process is doomed. As soon as management pushes the crazy schedule button, the process goes out the window.
If you’re a process person, make sure the process you define is robust in the face of schedule pressure, and does not require one lone person to stand up for the project team, but allows the project team to stand up for itself.