Thursday, June 08, 2006

Requirements are like Ogres

If ever I think I know everything I spend a little time talking to my eight year old daughter. She's very good at asking questions I can't answer, or at least have to think hard about. The thinking hard bit is important because she cuts through bullshit quickly. When she was five and her mother had been sending her to Sunday School, out of the blue one day she asked me:

"If God made us, and God loves us, why would God let us get sick?"

What would you have said? I squeaked by this one but "ask your mother" has limited effectiveness. When she asks me about my work I have to give her real answers and frame them in a way that makes sense to her. Recently she wanted to know if everyone who worked with computers was a programmer.

"No," I responded. "I'm not, I'm a Business Analyst."

"Do you know how to program computers?"

"Not really, no."

"And it's the programmers who make the computer work?"

"Basically, yes."

"So why do programmers need you?"

"That's what they keep saying to me."

"I'm serious Daddy, what do you do?"

"I write the business requirements. I work with the programmers to make sure the computer ends up doing the right thing."

"Does that mean you're in charge?"

"I wish. First, I talk to the people in charge about what they want. I work out what their requirements are, that's why we call it business requirements."

"Don't they know what they want?"

"Not always."

"That's silly, everyone knows what they want."

"Not always. And people aren't always good at explaining to someone else what they want. How about if I told you I wanted you to buy me a car, what car would you get me?"

"Ummm, a Smart car, they're cute."

"That's too small for me."

"Then I'll get you a 4WD."

That's too big and slow. I want something faster."

"I'll get you a Porsche."

"I don't have enough money for that."

"Well, what sort of car will I get you?"

"See, now you're asking me about my requirements. I want a Volkswagen Passat."

"OK, I'll get you that."

"What colour did you get me?"

"Red."

"I don't want red, I want black."

"Why didn't you say so?"

"You didn't ask."

"Is this what you have to do all day?"

"Pretty much, yeah."

"No wonder you're angry all the time."

"I AM NOT ANGRY ALL THE TIME! See, this is what I have to do - ask the right questions. The programmer is like the car dealer, they can get you whatever car you want. All you have to do is be clear about what car you want. It's like in Shrek, when Shrek said ogres are like onions because they have layers. Requirements have layers and I have to pull them off one layer at a time to get to the middle. Then I know what to tell the programmers."

"So the people you work with are like onions?"

"I guess."

"Do they stink?" Gotta love 8 year old humour.

"That's a bit harsh."

"Do they make you cry?"

"Sometimes I come close. Usually they make me want to scream."

"So they really are like an ogre? They're scary!"

Sometimes they are very scary. And I know I don't want to find one of them under my bed.

4 comments:

Deborah Eley De Bono said...

Do your co-workers ever read your blog?

Mr Angry said...

allmylovins: I actually hate 4WDs. I have attitude enough without needing an oversize vehicle to compensate for my inadequacies.

mooncrazy: ooooh I hope not. I'm a bit nervous about the moroccan chocolate one necause it's number 2 on most search engines for the words "moroccan chocolate". I think people would be scared to talk to me if they knew I was blogging. Or I'd get sacked.

epikles said...

i loved this entry. thanks! my recent company just made up requirements as they went along - they really had no idea what they wanted as long as it was cool and would sell. in the end, it wasn't and it didn't.

Mr Angry said...

Tom: it seems its the same all over the world. I like my current job but they're still driving me crazy. Plenty of blog fodder I guess.