Monday, April 23, 2007

What can you do when the project goes terribly wrong?

The key is to recognize the warning signs to prevent a disaster. It is really not too hard to do but does require discipline. Maintaining an open communication pathway between consultant and client is the cornerstone of any successful strategy.

Let’s start with identification of the problem(s). Usually multiple problems becomes intertwined. Through the use of good debugging skills one can get at the underlying causes. A clear statement of the problem is necessary before a solution can be undertaken. This is a good time to alert the client. Even though a clear-cut solution is not ready, it is a good thing to let the client know early that there is a problem and your current understanding.

Tackle the cause of the problem. Most often the initial statement of the problem is merely a symptom. It is important to step back and seek underlying causes and question assumptions. I usually go back to the architecture and design documents to see why certain decisions were made that could influence the stated problem.  The most dangerous thing to do at this stage is rush to judgment. Immediate action does not necessarily mean effective change. It may look good to be taking action but until you are confident that you have identified the root of the problem you could be making the situation worse. Once again keep the client informed but do not yet suggest a solution.

Develop a strategy for change. There will probably be multiple potential solutions to consider. Take the time to consider the effect of the change within the context of the requirements, design and current project plan. The optimal solution will address all of the above with appropriate trade-offs and compromises. Now is the time to really involve the client. Explain the pros and cons of each solution and your reason for choosing a selected pathway. Buy-in here is important because it will usually require change to project schedule and / or budget.

Ok we are halfway there, next blog is what comes next (hint it is not coding!)

No comments:

Post a Comment