Zeppelins and Jet Planes
Posted on March 16th, 2007 in Agile by siddharta || 1 Comment
I was reading through some of the archives of the Communications of the ACM when I came across an article titled “Zeppelins and Jet Planes: A Metaphor for Modern Software Projects.” It’s on page 13 of the October 2001 issue of the CACM.
The story goes like this:
In World War 1, zeppelins were used by Germany to bomb London and Paris. Huge and slow, they were easily shot down. That started a race to build anti-aircraft artillery. The early artillery were based on prediction. If you knew the position and velocity of the aircraft, you could plug the details into a ballistics computer which would run through some complex formulae and tell you where to aim so that you hit the aircraft. Initial efforts concentrated on better data collection on the position and velocity of the target as well as refining the mathematical models in order to accurately aim and hit the target.
All that changed with the arrival of jet planes. These planes were too fast and too maneuverable to predict their position. The already low hit rates of the anti-aircraft artillery were made even smaller with the arrival of the jets. To tackle them, something new was needed. That came in the form of guided surface-to-air missiles. Unlike artillery, these missiles weren’t aimed. Rather, they worked on feedback. Once locked on the target, they continuously adjusted their aim based on feedback about the current position of the target.
The analogy to software development is that our old projects were like zeppelins: large, slow moving, predictable. Such projects could be planned by up front estimation, using techniques to plug in project values like size and complexity into formulae and using that to estimate, staff and control the project. Today’s projects are like jet planes: small, fast, rapidly changing direction. The way to tackle these kinds of projects are like guided missiles, using rapid feedback cycles to continuously re-aim at the target.
Related posts:

December 12th, 2007 at 2:44 am
I’m uncomfortable with this metaphor since it’s unnecessary and odd to jump from zeppelins straight to jet planes. Military jet planes were really only being used near the end of WW2 and there’s plenty of evolution of AAA technology from WW1 until then. The analogy of tracers or fire, aim, fire (vs ready, aim, fire) works well enough without requiring such a large leap from zeppelins to jet fighters.