Login

Functional & Non-Functional Requirements: Definition & Documents

Instructor: David Gloag
Product design is a fundamental activity these days, and creating requirements goes hand-in-hand. In the lesson, we'll take a look at what it is, the two fundamental types, and where you might find them.

Making an Idea Real

We use various products every day. Our houses are full of them. We use cleaning products to tidy up our messes, we use clothing products to preserve our modesty when heading off to work, and we use electronic products when we listen to music, or watch TV. But have you ever wondered how these products came to be? How they went from an idea in someone's head, to an item we can use and touch? Well, it isn't easy, and it takes several formalized steps. The first of which is to gather requirements.

What is a Requirement?

A requirement is a written description of a characteristic or capability that a new or upgraded product design must incorporate. They are often quite detailed, and describe what must be provided, not how it is to be provided. In other words, they exclude implementation details. Requirements, and the documents they appear in, are legally binding so the language used for them is very specific. In particular, a requirement that must be provided includes the words shall, or will. For example:

  • 3.1.4 The background color for all windows in the application shall be blue, and have a hexadecimal RGB color value of 0x0000FF.

or

  • 3.1.4 The background color for all windows in the application will be blue, and have a hexadecimal RGB color value of 0x0000FF.

If the requirement is nice-to-have, or might be provided, the word used is may. For example:

  • 3.1.5 The application may provide the ability to change the window background color.

What is a Functional Requirement?

A functional requirement is a requirement that describes an operation, or activity. For example:

  • 3.1.6 Clicking the 'Add' button in the 'User Add Window' will take the input data, and add it to the list of users.

Note that this requirement doesn't describe HOW that activity will be done, only WHAT is to be done. Similarly, if you think about an everyday product, say a pen, then a functional requirement might indicate that the casing will be green. Another might indicate that there will be a button that extends the stylus from the case.

What is a Non-Functional Requirement?

A non-functional requirement is a requirement that describes how you will measure whether a functional requirement is met. For example:

  • 3.1.7 Clicking the 'Add' button in the 'User Add Window' will allow you to enter a maximum of 200,000 users.

This one is a little trickier because you are not describing an operation. Rather, you are describing the metric used to determine the performance of the operation described. If you think back to the pen example, a non-functional requirement might be that the button will allow for a minimum of 30,000 stylus extensions.

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

Register for a free trial

Are you a student or a teacher?
I am a teacher
What is your educational goal?
 Back

Unlock Your Education

See for yourself why 30 million people use Study.com

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

Earning College Credit

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

Create an account to start this course today
Try it free for 5 days!
Create An Account
Support