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!)

Friday, April 13, 2007

Can we do more for our customers?

Something I regularly wonder about is how can we help our customers even more? We often are called in to help with troubled projects or more often a portion of a troubled project. The help asked for is usually in the form of extra hands (i.e. we have too much work, can you do some of it for us). We can and do this, and do it well, but what about the reasons that the company is in this boat in the first place?

Some of the systemic issues make it nearly impossible to deliver what our customers want and need. A lack of requirements, difficulty getting questions answered, dependencies on other departments – all out of our control and all contributing to an unsuccessful outcome.

The one thing I’ve seen help relieve (but not eliminate) this is that as our clients get to know and trust our consultants, our consultants are given more responsibility and latitude to make decisions and get things done.

It’s frustrating to watch these projects and know that with better requirements, or stronger project management, or a clearer view of the market the project and therefore the client company would be much more successful.