I was wondering what would happen if Cooking is treated as Software development, following all the Software Development Life Cycle steps. To keep it gender neutral I will use terms like Honey and Spouse to refer to either sex.
The Non-cooking spouse sends his/her requirement for dinner to the Cooking Spouse via e-mail:
“Honey, I would like Venn Pongal and Sambar for tonight’s dinner. Luv – XXX”
Cooking spouse replies to the e-mail:
“I am sorry but your requirements are unclear. What kind of Sambar do you need? Do you also need Coconut Chutney? I know it is not mentioned but I have to ask to keep my customer delighted”
Non-Cooking spouse now gets careful and writes up a Requirment document and sends it to the Cooking spouse, the excerpts of the document is given below:
“Objective: To have dinner tonight
Req 1: Venn Pongal made using Sona masoori rice with less usage of Pepper corn and more Ginger. Rice has to be slightly over cooked for better taste.
Req 2: Onion Sambar with bits of carrot. Sambar can be made using MTR Powder if home made powder is unavailable. (Note: Use less tamarind paste as it will be too sour from me).
Platform: Standard Indian Kitchen with Standard Crockery items.
Contact List: XXX – +91 123456789.
Constraints: Internet Recipe References strictly prohibited. Use Mother in law’s provided Supplemental copy of Cooking for Dummies along with the Encyclopedia of South Indian Cooking by Grandma.”
Cooking spouse gets enraged by the non-standard compliant Requirement document and insulted by the Constraints statement, conducts a review with the Mother in Law and replies back with 10 defects and 15 corrections. A review workbook is filled and filed for Auditing purposes. After a few rounds of email the Spouses agree on what has to be made for the dinner.
Cooking spouse now sends an estimation workbook totalling the cost of the project as $400.
Non-Cooking spouse is now completely bewildered looking at the figure and hence resorts to a phone call over email:(N – Non-Cooking Spouse, C – Cooking spouse).
N: “Hello dear, How are you?”
C:”I am fine, whatsup?”
N:”What’s with this $400?”
C:”Estimated cost for today’s dinner.”
N:”But we are in India, why did you bill it in $?”
C:”We need to think global, so we should only transact in $”
N:”But can’t you use the money from the House eating budget Bucket?”
C:”No, that is not applicable for special requests. If I use that bucket you will be eating leftovers from afternoon lunch”
(N is caught in a diplomatic documental evidence loop)
N:”But Pongal won’t cost $20 even in a Five star hotel”
C: “Oh $400 includes the cost of Father in law even though he is in your hometown and doesn’t contribute anything, Phone support with Mother in Law and a new innovative idea for dinner making – iPod. Yes It includes the cost of iPod and it is just one time cost. I believe I can cook better if I listen to music while cooking. It will improve Quality Standards”
N: Sigh …ok!
The Cooking spouse finishes the office work and heads home to perform the design and implementation of Venn Pongal and Sambar. On the way, Cooking spouse collects the check for $400 and stops by the store to get the iPod. Cooking Spouse makes the Venn pongal sambar in an hour with the power of iPod and that is the only mention I am going to give above the actual cooking, to keep it realistic with Software Development. (Development is the peaceful, less noisy phase to the outside world. No one knows what happens during this time, only when things go to testing and production everything comes out!).
In the middle of cooking, the Non-cooking spouse calls up home and says “Hey, Can you also make Coconut chutney please? Just thought I would like that too with Pongal”
Cooking Spouse: “You will need to raise a change request and will have to pay an extra $20 for that and it may not get done until tomorrow morning. Is that ok with you?”
N: “phew! Never mind!”
Cooking spouse makes a mild noise “Meoow…Meooww…” and the neighbours cat comes to the window thinking “It’s time for testing!”. Cooking spouse feeds a little bit of pongal to the cat and monitors it for 5 minutes. The cat is all merry and goes home unaffected and the testing is certified.
Dinner is now ready and served:
N: “Honey, the pongal is wonderful. I am completely satisfied”
C: “Can you please fill out the feedback form for Customer satisfaction? Also please send this in an email,so I can send it to my Manager (Mother in Law) for an Award and my performance review for the year”
N: “Oh, but I had to add one comment. Sambar needs a little bit of salt.”
C: “I had followed your requirements word by word and it was assumed that we will use Standard amount of Salt for the dishes. I will have to analyze the problem and then will look into it.”
N:”Can we simply not add a pinch of salt to the sambar and kalakkufy (mix/stir)?”
C:”I will have to open a conference bridge with the mother in law and my mother and find out the severity of the problem. Only then I can decide what to do”
(N keeps eating slowly…)
(Conference bridge is open)
Mother in Law: “Lets start by systematically analyzing the problem. Has N fainted?”
C: “No, N is still wide awake munching down the Pongal”
Mother: “So this is definitely not a Severity 1 (High severity) issue then! Is he atleast choking, begging for life, anything at all?”
MIL: “It is not even Severity 2 (Medium Severity) then. We have to categorize it as Severity 3 (Low Severity) and you don’t need to fix it until a week. That is what the service level agreement says”
(N keeps eating and is almost done now)
C says to N: “Did you hear that? I don’t need to fix it until next week!”
N mumbles as he finishes the pongal and C finishes off the pongal too. N fills the Customer satisfaction form and gives a 9 out of 10 rating.
N and C walk to the bedroom and crash. Now, in Software terminology Crashing is not good, the program needs to keep running unless it is Microsoft Windows. But since it is life and cooking, Crashing after dinner is perfectly ok and is a sign of successful cooking.
So, My dear fellow Software Engineers, just be glad that Cooking is not handled as Software Engineering.
My beloved Non-Software Engineers, from this please understand the frustrations we go through everyday. Also, Please don’t take any clue from the $400 estimation, it was just a joke, you won’t get an iPod for Cooking.