Saw this on a Slashdot thread about how "software engineering" is not really engineering, and how if software emulated "real" engineering it would be better. This guy (girl) made the point that for construction, it's just as bad as for software.
Why not try to take a look at some of the long time methods used by engineering industries to see how they go about designing bridges and cars and stuff like?
I live in Boston, home of the Big Dig. Right now is not the best time to impress me with construction as a model for controllable effective on-time on-budget engineering of large-scale projects.
In fact, we get to hear this a lot as software engineers "Look at construction! They got it right!" Well, of all big construction projects I remember (Betuwe tunnels in the Netherlands, Stopera in Amsterdam, Big Dig in Boston) went into time and costs overruns, often by 100 to 400% on either variable.
And then there is my bathroom which I had remodeled a year ago, and the stories of my homeowner friends who did the same. On time? On budget? Don't make me laugh. Go do the rounds among people who have had remodeling done: horror story after horror story. Construction people were like software engineers in the dot-com boom: flooded with offers, so they would overbook and the customer who complained loudest would get his project done. Many sub-teams (projects, tilers) did and do not communicate, project leads are at the mercy of the scheduling of the sub-contractors, the quality is not standardized at all but incredibly variable so you have to get "lucky" with who has a slot free to do the work on your project, many of the people are overworked or "self-medicated" to deal with their stress and the conditions of labor.
I bought the whole "Look at construction!" mantra, and then I actually looked at how construction was done. These guys wing it as much as we do for the small projects, and when they can't wing it for the big ones, major shit happens like on our projects. And the old COBOL software is still running after 40 years and will keep running as long as the environment doesn't change, just like bridges stay up for decades as long as the environment doesn't radically change.
Do you think that GM people stand around and talk about Extreme Engineering for their engineers who design high tech engines?
Actually, yes, these people are constantly re-evaluating their process because their time-to-market requirements are constantly getting tighter and tighter. Just read Business Week for six months and follow the changes in the auto industry through their articles: they are all about faster, faster, and listen-to-the-customer constant process-reengineering, with CEO and design heads being hired and fired depending on how well they can make their human- and machine-assembly-lines line up and fire.