Wednesday, April 11, 2007

A lesson in Project Management

I've had my fair share of failed projects. Not as little as I'd wanted, but nonetheless, fair. One day, I realized I've had one too many and have since then embarked upon a number of project management courses.

My main area of trouble was properly estimating the timeframe for a project, and then sticking to that timeframe. Seems easy enough, only it ain't. You see, there is a very large number of unforeseen variables, that kinda pop up on you.

First of all, allow me to introduce 2 facts. One: a project is a set of tasks. Two: a successful project is one that is completed on time, within budget and meets the defined specifications / features it was set out to complete. Anything other than that is deemed a failed project.

According to that latter piece of information, almost 75% of all software projects are failures. In fact, according to that fact, all my projects are failures.

Now, when planning for a project, the simplest and perhaps the most important piece of information you should know is that there are 3 pivots to every project; features, timeframe and resources.

  • Features: what is the project set out to complete. In other words 'the scope of the project.'
  • Timeframe: the period of time within which the project should be completed.
  • Resources: the budget within which the project is to be completed and / or the number of people involved.

When communicating with project sponsor (the owner of the project and most importantly who will pay for it) you should say "You have 3 important factors; features, timeframe and resources; pick any two?" What this means, is that if 2 factors are set, the third factor is affected either upwards or downwards.

To explain this better, here's an example. A project has 20 tasks, and must be completed within 3 days. This means that the number of people to work on this project should be increased to 5. The same project, but to be completed in 10 days would require only 2 people.

Another project with 50 tasks, where ONLY 4 people (maybe because of money shortage) can work on, would require 30 days to be completed. Get the drift?

Another issue to take care of is: scope creep. Scope creep is when the number of features / tasks in the project seems to increase as time goes by. This would result in a never ending project, and a sure failure.

One parting piece of information: if you fail to plan, you plan to fail.

Enjoy!

1 comment:

Anonymous said...

i would like to comment on the last point "scope creep", i've been working in CRM Implementation for almost 9 months now,in a small company in a team consisting of 5 members,as you can see we are short on resources,but we managed to cover this area by increasing the time frame needed for each project thus we managed the time frame issue...the only problem that still consists is that as the customer sees more and more of the new functionality wer delivering the more he wants, by that 85% of the projects we'r handling are failures....

please post more on the subject..

Mahmoud Lulu