Saturday, December 19, 2009

Planning & Re-planning

Someone has said, "What gets measured, gets done".

Very apt in the IT world.

A Project Plan is a roadmap for the project, it tells the team, what activities and tasks get done, by whom, the sequence and by when these activities have to be done. The project plan helps the Project Manager measure the progress made in the project against plan at any point in time.

Let's begin at the beginning....

Stage 1: The customer states the "Business Problem". The IT company puts together a team to provide a solution to the customer's stated "problem". The Business Analyst documents the requirements.

Stage 2: A Project Manager is appointed to implement the solution. Then the Project Manager analyzes the requirements, puts together a team to implement the solution.

Stage 3: The PM also makes a high level Schedule. This high level Schedule contains Milestones that lead to the implementation of the solution.

Stage 4: The team analyzes the requirements and comes up with a Design. The Design is a Technical Solution to the customer's stated and implied requirements.

Stage 5: Once the design has been reviewed and approved, the PM, makes modifications to his earlier schedule and adds details to enhance the Plan.

Stage 6: The development team starts implementing the design.

Stage 7: The PM tracks the progress made against the plan, discusses with the team on a periodic basis, understands the issues faced during development, analyzes the risks, modifies the schedule to provide a realistic picture about the project at that point in time.

The rest of the project gets done by repeating Stages 6 and 7.

Let's pay attention to Stage 3. This is the PLANNING stage. A plan is made with the available information. An important to thing to remember is there are a number of assumptions made in the PLANNING stage. But, why Assumptions? can't we clarify from the customer upfront? can't we take a decision on the direction to take on the solution? I agree, "assumptions are the mother of all goof-ups", yet, assumptions are an important part of the Project Planning stage. Each of these assumptions are documented and agreed with the customer. Each assumption is eliminated and a hard decision is taken as the project progresses. An Assumption is a "stand" taken by the Project Manager and the Customer on a problem which has no solution at this point in time. To move ahead, the PM and the customer take a "stand" and say, ok, let's assume at this point that A will happen and move ahead. Hence the assumptions.

Let me give an analogy...

I have to travel between Point A to Point B, a 100 kilometers apart. I choose to travel by car, my car can do a 100 kmph, so I need 1 hour to travel from Point A to Point B. My car delivers a mileage of 10 kmpl, so I will need at least 10 liters of petrol to complete this journey.

What else would I need?
  • I need my sunglasses (Assumption: I will be traveling in day time), 
  • I need some sandwiches or short eats and water (Assumption: No hotels on the way), 
  • I need some extra clothes (Assumption: I will have to travel back next day), 
  • I need some Music CD's (Assumption: I will get bored on the way)
I have made my plan and made some assumptions. I am now ready to go on my journey.

Now, let's do some "What-if" analysis just to make sure that my plan is robust.
  • My car starts at speed = 0 kmph, it takes 15 seconds for my car to go from 0 to 100 kmph. This means, I have to add 15 more seconds my planned duration of 1 hour.
  • The road will not be empty, there will surely be some traffic and some signals. There goes another 15  mins. I have already added 15 mins and 15 seconds to my Original Plan of 1 hour.
  • If I have to travel at night, then I will not be able to travel at the planned 100 kmph, then I will have to reduce my speed to 50 kmph, so the journey will take an additional 1 hour. This means, my planned duration of 1 hour will get extended by 1hr, 15 mins and 15 seconds.
  • The last time I had travelled on this route, there was an accident that had blocked the road, so I had to take a detour, this detour added 25 kms and 30 mins to the journey through a village.

So, I must be prepared for a journey between 100 to 125 kms and duration of 1 hr to 2 hrs, 15 mins and 15 seconds against the original plan of 1 hr.

After the planning and considering all the possible points, I set off on my journey.

While I am on the journey, I am traveling at a 100 kmph as planned, if I see a truck coming towards me at a 100 kmph, what am I supposed to do? a) I wait for the truck driver to react and go on his lane, b) I react first, slow down, deviate from my path and save myself.

I will most probably choose option b, because, this is in my control and option a is not. So, I better do everything in "my control" to save my project and my self. I will be set back by a few more minutes on my journey, but that is ok.

End of Analogy...

To end this discussion, I would like to re-iterate on the following points
  1. Planning gives the project a direction and serves as a map for the customer and the project team.
  2. Assumptions are important as they help answer some questions for which we do not have an answer as yet.
  3. What-if analysis is another name for Risk Management and helps identify issues ahead of time. The effectiveness of the Risk Management depends on the experience and maturity of the people involved.
  4.  The Project Manager and team must re-align with the goals of the project when they face issues, like the truck coming at me at 100kmph. This is only possible thru' a periodic RE-PLANNING exercise.

To sum it up, success of the project depends to a large extent on the Planning and Re-planning exercise and not just on the team's competency and experience.

No comments:

Post a Comment