« Project Server 2002 SP1: Good Stuff | Main | Another Sprial »

Can Project "Do" Sprial Methodolgies?

Several years ago I heard someone say that Microsoft Project was outdated because it was only suitable for projects that used a so called “waterfall” scheduling methodology. I heard it again recently and was struck again at how silly this seems to me. Im not sure if this kind of thinking comes from the need to reject the old and embrace the new in the current software development business or if it has to do with the zealotry with which people embrace their favorite software development methodologies but it has to stop. In my opinion saying that Project (or for that matter Primavera, Niku, Artemis or any other scheduling software) cannot model a spiral or iterative development lifecycle is just being intellectually dishonest.

What is a ‘waterfall’ methodology? It is the term given to a lifecycle where all the design is done before any of the development starts and where all the development is done before any of the testing starts. It’s Gantt chart looks like a waterfall with each phase joined with a finish-to-start relationship.

What is a spiral or iterative methodology? It is a lifecycle where the design, develop, test phases are repeated several times before the end product is complete. There are several different flavors of this methodology. Practitioners of this methodology like to describe this visually with a spiral diagram where each phase repeats as the spiral goes in toward the center (or sometimes out).

Both of these methods are valid for different kinds of projects. Just like no one Task Type in Project is appropriate for ALL tasks in a project and no one kind of hammer is best for all kinds of construction different software development methodologies are appropriate for different kinds of projects. If you have all the requirements up front and they will stay static then a waterfall methodology is fine. However, if you do not have all the facts up front or they will change then a form of spiral development might be best.

Here is the fun part. What do you suppose that nice spiral diagram would look like if you unrolled it and laid it out across a timescale? A waterfall maybe? :-) Yes! It would look like a waterfall remarkably like the one for the waterfall methodology. It is just that this waterfall would have more phases. It would have several design phases, several develop phases and yes even several test phases and then it would have a final test phase at the end.

If you can lay it out on a timescale then you can model it in Project (or any other scheduling application). I think that it is often the case that people that are involved in something new or innovative can get a little carried away with the whole cool nature of being cutting edge. Don’t get me wrong. I think that many of the “new” methodologies offer some great benefits. But anytime you start the coolness of your thing is intoxicating to the point that you stop seeing the benefits of other things that are different from your thing then there is a problem.

In the end the 3rd design iteration of a spiral project or a “sprint” in a SCRUM project or the Testing Phase in a waterfall project all have some things in common: they all have a start and finish date, they all require work to complete and they all need resources to complete them. No matter how special you make the framework these things exist in they are still just tasks that need to be scheduled.

April 17, 2004 in Microsoft Project | Permalink
Rate This Post: (via NewsGator Online)

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/t/trackback/643078

Listed below are links to weblogs that reference Can Project "Do" Sprial Methodolgies?:

Comments

I think in real life, projects in general do not strictly fit into types such as Waterfall or spiral; In real life a project can be a combination of both. Terms such as 'Spiral' or 'Waterfall' can loosely used only as a matter of conviniencefor describing nature of current project.

Posted by: Vijay Walvekar at May 25, 2004 10:29 PM

Post a comment