Search This Blog

Tuesday, March 28, 2006

The importance of Process

A good process is really like a well designed resilient network. No one really appreciates it when everything is working as it should. But when something does not work and suddenly ‘well designed individual elements’ fail miserably as a complete network while interacting with each other, all hell breaks loose.

I noticed an interesting email the other day where a poster mentioned that he was running a ‘Session Border Controller’ (those ugly things that act as security gateways in a network). Obviously the maker of the SBC convinced the user that at most, he should not see more than 100 transactions per second in the network, even if the network had a total of 10,000 phones. And the vendor was correct, under normal conditions. Unfortunately, for the user, his network had a power failure and his backup power failed too - and all of a sudden, all the 10,000 phones rebooted and tried to contact the SBC at the same time to ‘re-register’. *BOOOM* the SBC crashed. Will the user ever go back to an SBC from a vendor who did not guard for exceptions (even if it is 20% cheaper) ? Once bitten, twice shy.

A well defined process is very similar to the experience above. As long as an ‘activity’ is going well, every body complains why they should spend 10% extra time with check points and defect logging. Till the time something goes wrong, you just don’t see the value of a good process. A live example: I bought a home where I chose not to go with the mortage department of my builder. The market was offering far better interest rates than the incumbent builder mortgate department. I went with a well known mortgage lender and they selected a settlement agent in turn. Individually, the bank, the settlement agency and the builders were all superb people. It was a pleasure interacting with them. However, a day before settling I just thought of chatting up with my settlement lawyers, and to my distress, realized:
  • The exact loan amount was not communicated between my builder, my bank and my settlement company
  • ­My builder thought I was settling at their office and my settlement agent thought I was settling in theirs.
  • My understanding of what ‘Good Faith Estimate’ meant was different from what the settlement agent called ‘Good Faith Estimate’ (here in the US one needs to get a banker's cheque for the 'GFE' - so the exact amount is important)
I spent a good part of that day double checking with each one and ensuring that the information flow was correct and complete and things got in place so that I could get the keys the next day. The good news is that as I mentioned, the individual components (builder, bank, settlement agents) were all wonderful and they fixed it, but one wonders,
if everyone was so fantastic, how did everything almost crash and burn ?
The answer: Lack of process.

Points to Ponder:
  • Efficient people does not mean efficient communication : a process ensures that the output is on time and per quality expectations
  • The fact that it works once does not mean it will work again: a process ensures repeatability and predictability
  • Humans need ‘checkpoints’ and ‘cross checks’ – we often take things for granted or obvious. Think back, when you leave for a long vacation, even if you are sure you switched off your gas and turned off your heater, you still go back and double check before you lock the house don’t you ? When you travel internationally, you check that you have your passport and tickets more than once, don’t you ? : A process does exactly that – it is an external source of verification, repeat-verification and cross-verification that what you say you really have, you really have !
  • Saying the same thing does not imply meaning the same thing. Remember my example of ‘Good Faith Estimate’ above ? A process takes care of meaning the same thing.

1 comment:

  1. [...] The importance of Process - It can’t be said enough. A good process is critical for software developement. You’d be surprise how process oriented most of us are, even though you may not realize it. [...]