Traditionally abused to create an IllusionOfControl:
There are FourVariables in software. Let's pretend we can accept variable quality.
Oh, then the rest is easy. We make a spec enumerating a bunch of function points. We put a box around each function point and we figure out which ones depend, finish to start, on other ones. We draw lines between the boxes to represent that. We fix a deadline on our project, take the number of developers and times them by the number of days, and divide by the number of boxes to figure out how long each box takes. Assign developers to boxes by their special skills, do a bit of load levelling in some automated tool - MicrosoftProject uber alles - and then we put that up on the wall.
That's called "the baseline".
Now we whip the developers until they agree to get things done as fast as the baseline says. Sure they will fail but that's okay, we already multipled by 1.5 to account for slippage and churn. When the most heroic developers crash and quit we hire new ones as fast as we can get 'em. They might call it a DeathMarch but it's more like the PonyExpress?, right?
Then when we finally ship a completely crap product we can't maintain because none of the original staff still work here, and hey, testing is something they do on another floor of the building, well, of course, the PM is the last man or woman standing, and gets to wear all the heroism and tell war stories to the executives so they'll fund the next crop of developers we hire to work on rewriting^H^H^H^H^H^H^H^H^H^Henterprise-integrating-with-real-worflows-and-newer-xml-standards this vital multimillion dollar investment in our corporate future.
Yes, we all love the GanttChart. It's reality because - hey listen to me - it's the baseline! We worked very hard to make that baseline and you better meet it! I mean it! Your bonus depends on it. Heck, all our jobs depend on it! It's The Baseline!
It is possible to short-circuit this illusion: AgileGantt