Wednesday, October 13, 2010

Evidence Based IT

Evidence-based medicine is likely a term you've heard of.  It's a method doctors have developed to help properly diagnose and treat patients, as well as study the relative effectiveness of drugs and treatments with double-blind placebo controlled trials.  The advantage, of course, is that it's a method that is supposed to remove personal bias and drive decisions based on facts alone.  This sounds like a good scientific approach to lots of fields, not just medicine.  Including troubleshooting problems in IT.  Unfortunately, my experience has shown that that's a rarity in my field.

Instead, I've often found that people in my field prefer to come up with a conclusion first and then seek out the facts to support it.  Here's a typical example:
Manager: "There's a slowdown on the website, and the database is the most likely cause."
DBA: "I'll look, but what makes you think it's the database?"
Manager: "Past experience.  The database is always the cause."
DBA: "Everything seems fast.  No blocking, no errors logged, memory and processor looks good, and I/O is fine.  Who reported it and what were they doing?"
Manager: "Susie was browsing and she said things seemed slow. Something's up.  Keep an eye on it today."

...sometime later...

User: "There's a problem with my report"
Manager: "That's probably related to the database issues we've been having today"

Or, perhaps you're more familiar with this common phrase - "have you tried rebooting?"

Now, don't get me wrong.  There's no reason not to draw upon past experience for a hypothesis.  The trouble comes when we come up with firm conclusions based on little or no actual tests or evidence.  We do this because it's quicker and easier, or because we want to snow some ignorant user, or perhaps because we can't see past our view of the world.  Some people can get away with this if their intuition is really good, but I prefer to see the proof.