Gathering User Requirements: Meetings, Observation & Surveys

An error occurred trying to load this video.

Try refreshing the page, or contact customer support.

Coming up next: Using Validation Tools: Prototyping, Survey Review, Document Review & User Requirements

You're on a roll. Keep up the good work!

Take Quiz Watch Next Lesson
Your next lesson will play in 10 seconds
  • 0:05 Introduction
  • 1:59 Document Review
  • 2:23 Observation
  • 3:20 Meetings & Surveys
  • 4:10 The Requirements Document
  • 6:28 Lesson Summary
Add to Add to Add to

Want to watch this again later?

Log in or sign up to add this lesson to a Custom Course.

Login or Sign up


Recommended Lessons and Courses for You

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.


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!


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

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

Register to view this lesson

Are you a student or a teacher?

Unlock Your Education

See for yourself why 30 million people use

Become a member and start learning now.
Become a Member  Back
What teachers are saying about
Try it risk-free for 30 days

Earning College Credit

Did you know… We have over 160 college courses that prepare you to earn credit by exam that is accepted by over 1,500 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? 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.

Create an account to start this course today
Try it risk-free for 30 days!
Create An Account