Wednesday, October 03, 2007

Requirements and Refactoring

This is a dog story. Well the protagonists are dogs but this story is not about dogs, it is about requirements management.

Requirements management is one of those phrases that puts majority of the people in the software industry (well people in general) to sleep. It needn't and in fact it is VITAL.

Assume you are a young strapping gunslinger in the 1870's who just graduated from gunslinging school. You are excited and ready for some action, you are hoping to ride shotgun on the coach transporting the gold from one town to another. You are hoping to draw fast, fire true and make your name known. Instead you are told to spend time with the boring people who maintain the books, you are told to go talk to the bank president and understanding his concerns and his goals...blah..blah..blah.. at some point you stop listening and you fall asleep. After all, you came out of gunslinging school not good listening school.

Finally, you leave town with the coach carrying the gold. Oh No! it is Ben Wade !! You decide it is time to put your education to work. Wade's gang hits the back of the coach first and retrieves lot of the gold and loses interest in your crew.... but you decide you will kill as many of them as you can and make your president proud. There is a fierce firefight and for a while you take down two of them for every one of you who goes down. Eventually the shooting ends and you and the rest of the survivors drag yourself into town. You are expecting praise for your courage and determination - instead your president chews you out and he is MAD!!! what happened...?

Well it turns out, he did not care as much about the gold as he did about the chief accountant who was traveling with you. He wants to expand his franchise and he was planning on using his chief accountant to train a whole cadre of bankers. Since you decided to stay and fight back, the chief accountant is now dead and that is exactly what the president did not want.

Could you have avoided this? Oh yes this is what the old man was talking about when you were told to listen earlier..... costly lesson eh.

Wait didn't i say this was a dog story. Hrmm... well then, here is a less dramatic example: my wife and I got two puppies recently. Bella and Zooey are five months old and came straight from the breeder to our house. So as we went through the usual new puppy process we realized that we had three tags for each of them with their names and our phone numbers plus an additional number. How did this happen?
- my wife ordered custom tags for them with their names and my number
- the vet we took them to for their rabies shots saw they had no tags on them and made them tags with their shot info and the vets number on it. Of course it had their names also.
- I registered them with AKC and akc sold me on a recovery plan for them for the cheap one time price of 12$. This meant now they have a tag with their names, a unique AKC id and a 1-800 akc number to call.

This is mainly a communication issue but also a requirements issue. And you thought this was a boring subject ;-)

1. I saw two westerns recently, 3:10 to yuma and "annie get your gun". Ben wade is so the man!
2. I am aware that gunslingers are predominately men but that does not mean that requirements management is a male problem.

No comments: