Gathering User Requirements: Meetings, Observation & Surveys

  • 0:05 Introduction
  • 1:59 Document Review
  • 2:23 Observation
  • 3:20 Meetings & Surveys
  • 4:10 The Requirements Document
  • 6:28 Lesson Summary
Create An Account
To Start This Course Today
Used by over 10 million students worldwide
Create An Account
Try it free for 5 days
Lesson Transcript
Instructor: Lee Webber

Lee holds a master's degree in Information Systems Management. He has taught college-level computer classes.

This lesson introduces requirements gathering and describes the four tools programmers use to find out what their customers want: document gathering, interviews, observation and surveys.

Introduction

Before you start writing any program, you need to know what it is supposed to do. And that is the definition of requirements gathering - finding out what the program you are going to write is supposed to do.

Requirements gathering has four different tools that you may use: document gathering, interviews, observation and surveys.

As you gather your requirements, you will write them up in a requirements document. You will have the customer review this document to make sure that you both are in agreement about what the program will do.

In this lesson, we'll look at each of these tools used to start and update the requirements document. We will look at updating and refining it in another lesson.

Requirement Gathering: The Pancake House

Fred says, 'So, Lee, you're going to try and program Foobar to make pancakes. I've been thinking of getting a robot like him to replace my grill man, who is retiring in three months. I want to name it 'Foober.' Do you think I could use your program in my new grill-bot?'

My answer to Fred is, 'Let me get back to you...'

Before I can program Foober, I need to know what Fred wants him to do. I have a general idea of what a grill cook does, and I also know that what a cook does at one place is probably different from what another cook does somewhere else. Does Fred want Foober to make just pancakes? What kind of pancakes - just plain ones, or should they be fancy too, like blueberry or with bacon cooked in? What about crepes? Are pancakes the only thing that the grill cook makes, or is he responsible for other things, like bacon and eggs?

Document Review

Here's how I approach the problem: for starters, I get a copy of the menu. That will tell me what kind of pancakes Foober will have to be able to make.

Then, I'll need copies of the recipes for each flavor of pancake on the menu. The recipes will tell me what ingredients Foober will need for each pancake and how to mix and cook each one.

But wait, there's more!

Observation

Fred and I decide that I will need to spend some time in the kitchen, observing and taking notes about what the cook does. So, I do. I take a few days and hang out in the kitchen. I discover that the cook not only cooks up the pancakes, she also 'plates' them and garnishes each plate based on the flavor of the pancakes. She then puts the order at the pick-up station and notifies the appropriate server that it's ready.

Observation is important when gathering information for program requirements.
Requirments Gathering Observation Step

She tells me that she not only makes the pancakes, but is also responsible for cooking up anything else on the menu that comes from the grill, like bacon, sausage or eggs.

She also tells me that she doesn't do prep work. Someone else whips the whipped cream or washes and slices the fruit. Someone else also makes the pancake batter.

As I suspected, I'm not just writing code so Foober can make pancakes. I'm writing code to make Foober a competent grill-bot.

Meetings and Surveys

When a business is being automated for the first time, that may be a good time to look at what the business is doing and how it does what it does.

In this case, Fred thinks that making some changes to the menu might be in order, so he and I sit down and put together a customer survey. Because Fred's customers are important to his business, he wants to find out what the customers like (and don't like) about The Pancake House and the menu.

Finally, I need to know when he wants me to deliver the programs. Fred tells me that Foober won't be delivered for three months, and that the code needs to be ready to run when he arrives.

The good news is, I can develop and test my code using Foobar at home - but this is definitely going to cost them more than just a few free pancake breakfasts!

Getting feedback from customers can help you decide what to include in your program.
Requirements Gathering Customer Survey Step

The Requirements Document

I now have enough information to write up a requirements document, defining what I think the customer wants from the project. Notice that I didn't say, 'What the customer wants!' That's because with just one round of requirements gathering, it's very likely that both Fred and I have missed things. This is why part of the process includes 'requirements validation,' which is discussed elsewhere.

Based on what I found out talking with Fred and hanging out in the kitchen, the outline of my requirements document looks like:

  • Write program to make Foober a competent grill-bot:
    • Know how to make each pancake dish on the menu
    • Know how to prepare other grill items on the menu, such as eggs, sausage or bacon
    • Know how to plate and garnish each dish on the menu
    • Know how to place orders at the pick-up station
    • Know how to call the appropriate server to pick up an order

To unlock this lesson you must be a Study.com Member.
Create your account

Unlock Your Education

See for yourself why 10 million people use Study.com

Become a Study.com member and start learning now.
Become a Member

Already a member? Log In

Earning College Credit

Did you know… We have over 100 college courses that prepare you to earn credit by exam that is accepted by over 2,900 colleges and universities. You can test out of the first two years of college and save thousands off your degree. Anyone can earn credit-by-exam regardless of age or education level.

To learn more, visit our Earning Credit Page

Transferring credit to the school of your choice

Not sure what college you want to attend yet? Study.com has thousands of articles about every imaginable degree, area of study and career path that can help you find the school that's right for you.

You now have full access to our lessons and courses. Watch the lesson now or keep exploring.
You've watched a video! Check out the next video or take the quiz to keep learning.
Getting a perfect score on a quiz is how you earn course progress. If you aced it, great job! If not, try again.
You now have full access to our lessons and courses, watch the lesson now or keep exploring.
You just finished your first lesson. Study.com has thousands of lessons to help you meet your educational goals.
You're making great progress. Keep it up!
Congrats on viewing 10 lessons! You're doing great.
Getting a perfect score on a quiz is how you earn course progress. If you aced it, great job! If not, try again.
You're getting the hang of this! Keep taking quizzes to make progress on your learning goals.
Look how far you've come! Take all the quizzes in a chapter and you'll master this topic in no time.
Keep clicking that 'next lesson' button whenever you finish a lesson and its quiz.
You're 25% of the way through this course! Keep going at this rate and you'll be done before you know it.
Two days in a row, nice! Keep your streak going to get the most of your learning and reach your goal faster.