Windows & .NET Watch: Shun the Gantt, embrace the burn-down



Email    print   
July 1, 2009 —  (Page 1 of 3)
I once, heaven forgive me, described a software project with a 5-foot-tall Gantt chart. A Gantt chart is the staple of project management software: time on the X-axis, tasks on the Y-axis, tasks starting the instant their dependencies are finished.

The center of gravity of the tasks shifts as you travel down the page(s), until finally all of the little waterfalls end in a little zero-duration diamond-shaped milestone. Nov. 14, a Tuesday. Not the 13th, not the 15th, but the Tuesday of the week before Thanksgiving. Management loved that chart: dozens, if not hundreds of tasks quantified and laid out, tick-tock deliverables culminating well before the end of the quarter, with a “buffer” that could be eaten up without interfering with Thanksgiving in Tahoe.

Gantt charts ought not be used in software development projects. Using a Gantt chart to estimate a software project is like designing a rocket ship by snapping together Lego blocks; it might give you an idea of the shape, it might flush out some constraints or hidden issues, it might be colorful and look good, but it fails to capture the complexity and variables of that which it is modeling.

Worse, it camouflages them. Toy blocks are of uniform size, snap together tightly, and hide the messy internals. Gantt chart estimates have the same characteristics, albeit disguised by the “feature” of arbitrary precision on estimated times (“That task will probably take 143.25 hours.”). Of course, no one would estimate a task like that, so instead the schedule is made from top-down decomposition, snapping together tiny little estimates of few-day tasks. Invest enough time snapping together things and lo! you’ve just given management a concrete delivery date.

Management needs delivery dates. Companies need to rely on projects coming to fruition a few quarters out. Any methodologist (or “process guru”) who urges you to “ship when it’s ready” is going to be long gone when you’re three months in to the death march that starts when your Gantt chart is about three-fourths covered in corrections, annotations and big swooping circles highlighting some task that turned into a multi-week digression.



Related Search Term(s): burn-down, Gantt

Pages 1 2 3 


Share this link: http://sdt.bz/33581
 
Most Read Latest News Blog Resources


Comments


07/08/2009 08:45:03 AM EST

When you say, "Using a Gantt chart to estimate a software project is like designing a rocket ship by snapping together Lego blocks," I would most certainly agree. Gantt charts aren't an "estimating tool" at all. If that is being done in anyone's organization, it's wrong. "it fails to capture the complexity and variables of that which it is modeling" -- as it should. There's nothing "modeling" about a Gantt. It is a vast over simplification intended to represent a time line and nothing more. It is not a model. The real problem with any kind of project representation is when we, project managers, analyst, or whatever we're called today, "sell" it to executives and stakeholders as a baseline road map and agree to perform according the (very tentative) time line. We shoot ourselves in the foot by giving in to that kind of pressure on projects where nothing is really known up front. In the Agile world and especially Scrum-world, a Gantt is particularly valueless. When the project is timeboxed, end dates and milestones don't slip... features and stories do. When the team is known (x number of people) and the project is timeboxed (for y number of weeks), the project is also fixed cost. Where's the cost estimation in this scenario? There isn't any... it's all about how many stories or features can be incrementally deployed in the allotted time with the allotted people. In cases where Agile is feasible (practice what's possible), the value of Gantt charts is debatable at best. In cases where Agile is not feasible, their value may be more. But never is a Gantt chart an "estimation tool" or "modeling" of a project. It is a graphical way to represent time lines especially in a way that is easy to understand by non-technical people. That's all. Nothing more. Don't confuse a Gantt chart with the Holy Grail of anything.

United StatesWoody Williams


Add comment


Name*
Email*  
Country     


  • Comment
Loading




close
NEXT ARTICLE

 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 

Download Current Issue
FEBRUARY 2012 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?


 
blogs tab
Are you at risk for burnout?
Burnout is a severe problem and it can strike at any time. Here's how to tell if you are nearing the edge.
02/09/2012 02:16 PM EST

Agility, mom, and apple pie
If we're to evaluate the state-of-the-art in software development, we should start with the values espoused in the Agile Manifesto.
02/07/2012 11:57 AM EST

RIM woos developers with free tablet
How do you get more apps ported to the BlackBerry PlayBook? By giving every developer a free tablet, of course!
02/04/2012 01:57 PM EST

GitHire: Use Headhunters to Find Your Perfect Programmer
Are you a hiring manager tired of scouring the job boards? Check out this new service that will find 5 people interested in your jobs.
02/03/2012 12:17 PM EST

Facebook claims hacker cred
Facebook's SEC S-1 filing form includes a short essay on the Hacker Way by Mark Zuckerberg himself.
02/02/2012 08:26 AM EST

Ryan Dahl steps down
Ryan Dahl, creator of Node.js, steps back from his position as gatekeeper for the project.
02/01/2012 04:58 PM EST

 
Events calendar tab
2/13/2012 to 2/16/2012
Santa Clara
TechWeb

2/26/2012 to 2/29/2012
San Francisco
BZ Media

2/27/2012 to 3/2/2012
San Francisco
RSA

3/4/2012 to 3/7/2012
Las Vegas
IBM Tivoli

3/5/2012 to 3/9/2012
San Francisco
TechWeb