When the project is not yielding the results, it is time to take a close look at the processes. If people are following the processes, then seriously consider looking at changing them. Sometimes a process or methodology may be too cumbersome for the project and acts as a hindrance or unnecessary overhead. Sometimes the methodology may be too light and ignores necessary practices like spending enough time on design or requirements gathering and analysis.
This doesn’t mean that when things are going right, there is nothing wrong with the process. There may be problems that haven’t manifested themselves yet and the Project Manager should not be in a state of complacency.
But when things are definitely going wrong, continuing to do the same thing over and over again or trying to do them perfectly may not be the right solutions. People tend to get married to some favorite methodology such as CMMi or Extreme Programming and start exhibiting cult-like behavior in the sense that no dissent regarding the methodology is tolerated.
A typical behavior is when something goes wrong and the answer provided by the manager goes like “You are not doing it right. If you really did it right, you will face no problems.” Or something like “You are doing X, Y and Z. But you missed W. So do that”.
I am very suspicious of answers like that. Most of the time, the developer to whom the advice is given knows exactly what the problem is. For example, it could be a case of vague requirements. But the developer is told that it would be time-prohibitive to “waste” a lot of time on requirements and anyway he is “supposed to know” some of this stuff. He has to “stop thinking technically and more from a business standpoint”.
Now how stupid can the situation get! The manager has now turned the developer around so that he is now somehow to blame for the whole situation. Well, enough of that.
The effective manager never commits emotionally to one particular way of working. He or she understands that every situation has its unique demands and therefore, may require different paradigms or framework. He or she also understands that every situation is necessarily fluid and dynamic and that important decisions may need to be revisited, revised or reversed when necessary. That is true “Risk Management”. You understand why you make a decision. When the underlying causes for your decision change, the decision must evolve or change too.