Wednesday, May 19, 2010

Fail Safe; Fail Deadly

Lawnmowers, subway trains, electric pallet jacks, and nuclear power plants all have something in common with a well designed CRM system; what is it?  They are designed with fail safe technology.

The picture above is an example of a simple, electro-magnetic fail safe device.  So long as the operator keeps her foot pressed on the red switch, the circuit is energized.  Lift her foot off, the circuit goes dead and the subway train stops.  Why is this important?  What if the train operator fainted or for some crazy reason, left the cab?  We certainly don’t want the passengers hurtling down the track, do we?

Similarly, when you build a CRM system, keep the worst case in mind.  For example, if there is an approval process for opportunities coming from your partners, what happens if your operator “faints”—that is, fails to take action?  Some people will suggest that after a certain time, the opportunity should be automatically approved.  This is a fail deadly setup and must be avoided. 

What does fail deadly mean?  It means the “dead hand” of the operator takes a final action.  An example is a nuclear missile that has to have a do not launch code fed to it every so often.  If it doesn’t receive the code, the missile will fire with no further intervention.  The purpose is to destroy the enemy if their first strike has knocked out the command structure and no one is able to trigger revenge.

Ethics aside, that might make sense for vengeance, but do you really want or need potentially harmful actions to be taken by your system?  What if it is an undesirable, large, opportunity is  approved?  What if something else contrary to the best interests of your company happens, simply because a salesman forgot to do his job in a timely fashion?

A CRM tool must always either wait for a human command—even if it never comes—or if takes action, it must fail safely.  No approval in 14 days?  Deny the opportunity.  Better to have to redo it than to try and undo the legal ramifications of it failing deadly.

Keep this principle in mind as you design GUI’s, rules, and actions.  Always anticipate a “dead” operator and make sure your CRM train doesn’t crash into the station!


No comments:

Post a Comment

Google+ Followers