There are knowing nods amongst readers who have sat across from the client, pen and paper in hand, waiting to hear what they want the system to do for them.

When I say “gathering requirements is like pulling teeth,” what I mean, though, is not that clients find the exercise unpleasant (it doesn’t have to be). I certainly do not mean they are reluctant to help us help them. There is a good chance they are at the table, engaged, and looking forward to the solution your team will ultimately give them.

When it comes to dental extractions, only a professional who knows what they are doing should perform such a difficult and potentially dangerous exercise. Only a dentist should pull teeth.

Gathering requirements is like pulling teeth because only a skilled practitioner should do it – it’s not the client’s responsibility. The all-too-common problem I’m discussing here is this line of thinking: The client owns the requirements. I must ask them to give them to me.

You would look at your dentist funny, though, if she asked you to give her your tooth.

You might be doing requirements gathering wrong if you ask the client:

  • Can you list the requirements for me?
  • What do you want the system to do?
  • Would you rather have a button here or a drop-down?
  • What features are you looking for?

Questions like these focus on the solution, not the problem.

Watching a skilled requirements gathering practitioner is a joy to behold. As a software developer, I have greater confidence that what I am making will be used, enjoyed, and will add value to the customer. I won’t go into the many stories I have experienced working from bad requirements. To illustrate the difference let me delve into parable.

The parable of the ½” drill bit

Imagine a customer enters a hardware store. She says, “I want a ½” drill bit.” There’s a good chance the store will sell her one of these (admit it – this is what popped into your mind too):

A ½” drill bit – problem solved!

You may have heard the expression “No one wants a ½” drill bit. They want a ½” hole.” Knowing this is a big deal. If you are more interested in solving a problem than selling a solution, you will have questions. What material will the hole be drilled into? Will it be a through-hole or partial? Centre hole or offset?

Each of these is a ½” drill bit, designed to solve a different problem

What if you discover she is attaching two boards at a right angle to make a shelf. She wants to drill guide holes for screws to hold them together. That shelf will not be very strong – books are heavy, after all! You recommend she cut a groove instead and use glue for a stronger joint (then sell her a 3/4″ router bit). This solves her problem in a way a ½” drill bit cannot.

The moral of the story: the customer owns the requirements, yes, but it takes a skilled analyst to surface the actual need before one can propose a solution. If your team engages in requirements gathering, hire a trained analyst – or learn the techniques yourself. Do not rely on your client to pull their own teeth!

By Michael Ottoson

Welcome to pointw.com. I first created this site for my personal use - literally a place for me to put stuff so I can find it wherever I go. Some of the stuff I put here might be useful to others, so I started making some of it public. Please enjoy your stay, and don't be shy in the comments.

Leave a Reply

Your email address will not be published. Required fields are marked *