Software development often gets criticized for various reasons, overrunning budgets, failing to meet expectations, producing a buggy product, the list is pretty long. Inevitably when this kind of criticism is levelled at the software development profession, someone will try to compare building software to some other field, most often construction. You all know the analogy I am talking about, it often starts like this, “If we built houses the way we build software…”, and then goes on to describe in great detail how misshapen and barely functional the houses would be. Well, I’ve always had a bone to pick with that analogy, so I decided to come up with a new analogy, and I picked a completely different industry, Medicine.
Having become a lot better acquainted with the medical profession than I ever wanted to be, over the last few years, I feel that I am qualified to make this comparison :). I also decided to look at the whole thing from another perspective, rather than comparing medicine to software development, I decided to do it the other way around – here is the story I came up with.
A Customer Has A Problem
One day John McCustomer, noticed that something wasn’t quite right with his business, it seemed he had a bit of a business need that was bothering him. So, he called up the offices of his local vendor (Bill von Software Vendor) to make an appointment, surely all he needs is some software to make his business need go away.
Vendor Reception (VR): Hi, how can I help you
J. McCustomer (JMcC): I have an appointment to see the software vendor at 2 o’clock
VR: Have a seat the vendor will be with you shortly.
…1 hours later
JMcC: “… yes honey I’ll have to miss little Suzie’s dance recital, yeah still at the vendors…”
VR: Go right in, the vendor will see you now.
Software Vendor (SV): How can I help you today
JMcC: You see, I have this business need that been bothering me lately, I think I just need a bit of software and it will be right as rain
SV: Well, you could be right but I’ll need to do some PoCs (Proof of Concepts) before I can prescribe the right software for you
JMcC: If you think it best, I guess that’s fine
SV: Unfortunately, we don’t do PoCs here, luckily we just happen to partner with a company that specialises in PoCs I’ll refer you to them
JMcC: I’ll have to make a special trip, but that’s OK. Could you get them to e-mail the results of the PoCs to my company?
SV: I am sorry, that’s just not done, against regulations and whatnot, you’ll have to come here for the results, the closest appointment I have is 3 weeks from now
JMcC: Well I don’t have much of choice, so I’ll see you in 3 weeks then, but what do I do about my business need in the meantime?
SV: Well, I could give you this generic accounting package, that you can purchase at the nearest software retailer, you should also, try to stress less about your business needs, and have you thought of changing your diet and getting more sleep
JMcC: You think all of that will help me manage my business need in the meantime?
SV: Probably, who knows, it is all good advice. Oh and by the way that will be $10000 for this initial consultation.
JMcC: *silently to himself* …@#$% … rip-off … &*^%
3 Weeks Later
SV: Hi John, hows that business need, still bothering you
JMcC: Sure is, that accounting package didn’t help at all, I already had an accounting package at my company
SV: Well I have the results of those PoCs right here, lets have a look shall we. Hmmm, hmmm that’s very interesting, veeeeery interesting
JMcC: *nervously* Well, what is it! What’s so interesting, should I be worried?
SV: Oh, no the results appear to be … inconclusive.
JMcC: Inconclusive? What does that mean?
SV: Well, they don’t really indicate anything about your particular business need, but not to worry, we can run another round of PoCs, I’ll write you a referral.
JMcC: This is somewhat inconvenient, but I guess if it will help solve my business need….
SV: Oh yes, we are definitely zeroing in on the problem now. You’ll have to make another appointment, how does 3 weeks from now sound?
JMcC: Sounds like I am wasting my time a little bit, but I guess I don’t have a choice
SV: That’s correct. By the way that will be $9999 (you get a discount as a repeat customer)
JMcC: *silently to himself* … ^&*%$ … I’ll repeat your customer …
Another 3 Weeks Later
JMcC: Look this business need is really starting to bother me, the lack of solution is affecting my relationship with my customers and my employees are a little annoyed that nothing is being done
SV: I understand, it is only logical that you are concerned. The good news is that I have your PoC results right here…
JMcC: Ah excellent…
SV: The bad news is that the results were again inconclusive
JMcC: What! Look it’s been 6 weeks already; I’ve been more than patient
SV: I do understand your concerns, but I have you considered that you don’t really have a business need at all you only think you do. Maybe it is all in your head
JMcC: Are you suggesting I don’t know my own business? I take offence to that
SV: Look, it was just something to consider, if you like I can refer you to a consultant, who can have a chat to you and explain exactly why your business need is imaginary.
JMcC: I am pretty sure it is real. Some helpful advice would be nice for a change.
SV: Well, alright I can refer you to a specialist software vendor; they are an expert at the area where your business need lies
JMcC: I thought you didn’t know where my business need lay?
SV: I don’t but I suspect
JMcC: You suspect! Why didn’t you tell me … Oh forget it, just refer me to the specialist
SV: No worries, of course specialists are in short supply, the nearest appointment is 6 weeks from now, hope that’s fine
JMcC: Yeah, yeah whatever, sign me in
SV: Excellent well good luck with your business need and all, come back any time. Oh and that will be $9999 again
JMcC: *silently to himself* … why I aught to … *sigh*
6 Weeks Later
Specialist Software Vendor(SSV): Well, SV says you have some sort of business need
JMcC: That’s right it’s been bothering me for a while now, but while I was waiting for you I went to an alternative business software specialist and they hacked up this Perl script for me, it didn’t solve my business need fully but it has been helping a little, they said I need to use for a few months before my business need disappears completely
SSV: Well if you want my recommendation I suggest you stop using that Perl script, you see alternative software engineering just doesn’t work, it is all voodoo programming, you can really get your business in trouble
JMcC: But it has been helping…
SSV: No it hasn’t you only think it has, it is called the software placebo effect, I wrote an article about it a couple of years ago, I am considered an expert in the field I’ll have you know
JMcC: Well I guess you know best, I’ll stop running the script, so what do you think I wrong with me
SSV: Hmmm, it is hard to say without doing some PoCs
JMcC: But, I’ve already done 2 rounds of PoCs, they didn’t show anything
SSV: Oh no, those were just generic PoCs, they are not very good in an economic climate that your industry is currently in. I can perform some much more sophisticated PoCs
JMcC: Ahhh, I see that makes sense I suppose
SSV: Now these PoCs require some specialised equipment which I only have at my headquarters, you’ll have to go there. These PoCs require a day of preparation, so you’ll have to stop doing business 1 day before, and I don’t recommend you do anything too strenuous the day after
JMcC: This will really play havoc with my schedule, but if you think you’ll get a conclusive answer I am prepared to do it
SSV: Oh definitely, I presented at an international conference about how good my PoC methods are, I am considered quite an expert in that area also
JMcC: I just bet you are, so when can we do this.
SSV: Lets see, the best I can do is 4 weeks from now. Oh and by the way that will be $50000 for the initial consultation, I take cheques.
JMcC: … … … … … …
… to be continued