Are there any good metaphors for explaining project complexity to a non-programmer?

Viewed 11051

It was just mentioned that I'm "not exactly building the Sistine Chapel." This is true, but I am building a freight management application, which isn't exactly as simple as drawing controls on a form (even though the vendors would have you believe it is).

I don't hold this against the person who said it, but I do feel the complexity of what I'm doing is a little misunderstood, or that statement would not have been made.

Are there any good metaphors which might illustrate a project's complexity to non-programmers?

35 Answers

I like to compare programming projects to airplanes. There is a wide range of complexity in aircraft. A low-level, simple but functional app may be a WWII biplane. It’s got limited use but in the right context it’s the right tool. On the other hand when you start looking at a commercial jet liner and the level of detail/complexity needed to build one you have an entirely different story. Not only does it have to be able to fly the people using it need to be safe and comfortable while using it. If the plane (app) crashes or has excessive delays the passenger (user) gets frustrated/dissatisfied. If it happens enough they’ll find a new airline. You can run with the intricacies of the plane along whatever path you need.

The other massive difference in the planes is the skill level and number of people needed to fly/maintain the aircraft. One man can fly/maintain a biplane, but you need a larger crew with more training/man hours to deal with a commercial airliner.

Related