The usefulness of analogies is limited. Sometimes a thing is simply itself, and not like anything else.

I have another analogy for you.

I buy a DVD of a movie that has received good reviews. When I get it home I find that the disk is scratched and won't play, so I take it back to the shop and they are happy to give me a replacement.

However, once I get it home again and start watching the film, I begin to have doubts. There are some continuity problems that I can put up with - after all most people would not notice them, but the lead actor's supposed English accent is appalling; but he does make the most of his part, so I grudgingly accept that.

However, when the hero and the love interest finally get into space on their rocket ship...ohmigod what is this - the space ship is whizzing around like an aeroplane, and there is an almighty, thunderous explosion when they blow up the alien mothership. This is too much, totally unrealistic and I start an email campaign demanding the studio release a director's cut that is scientifically accurate.

Is this analogy any more helpful?

I often think so-called software engineering is much more an art than a science; the most fun I get out of programming for a living is when I can be creative. As an art, should we not compare software to other arts, and not harder disciplines? In many aspects, a large software game is created in a similar way to a movie, with visuals, audio, motion, animation, branding and marketing.