Skip to main content

Requirements Concepts

Confusion over product requirements terminology and concepts is pervasive. Companies are producing MRDs, PRDs, and SRSes without even understanding what "requirement" means. Despite this wasteful and unnecessary requirements document proliferation, companies are neglecting key nonfunctional requirements.

To help educate the product management and development community, I have put together a comprehensive model of concepts relating to requirements. To view or download the full-size conceptual model, click the image below:


(See my post on conceptual models if you have trouble understanding the diagram.)

A sampling of the terms that the conceptual model explicates:

  • functional requirement
  • nonfunctional requirement
  • attribute
  • constraint
  • metric
  • specification
  • condition
  • user
  • stakeholder
  • use case
You are free to distribute, copy, or print out the diagram, but please do not remove the copyright information on the bottom right.

Comments

Unknown said…
Where in your Requirements Concept would I identify my need/problem to reduce my operating costs and that by investing in a new application, say an ERP, I will achieve a Return on Investment such that my operating costs will be reduced by 30% within 2 years.
Roger L. Cauvin said…
Leonard, in the example, it sounds like excessive operating costs are the problem.

If the problem we commit to solving is

"Annual operating costs exceed x."

Then the requirement is

"Use of the product shall result in annual operating costs not to exceed x."

But in all likelihood we wouldn't commit to solving this problem. Instead, we would identify a lower-level set of problems such as:

"The amount of time spent planning resources exceeds x hours per month."

and

"The frequency of non-optimal resource planning decisions exceeds x per month."

Then the functional requirement would be:

"The product shall enable the user to plan resources."

And among the nonfunctional requirements would be:

"For users with profile y and resource profile z, the amount of time spent planning resources shall not exceed x hours per month."

and

"For users with profile y and resource profile z, the frequency of non-optimal resource planning decisions shall not exceed x per month."
Unknown said…
You might like to check out the BA BOK at theiiba.org. I would describe your definition as a tailoring of the IIBA definition - which means it is made more useful for the situation you are in.
Roger L. Cauvin said…
Jules, thanks for pointing me to the BABoK document. The definition of "requirement" is essentially similar to the IEEE definition. The difference between my definition and the BABoK/IEEE definition is the insertion of the "least stringent" wording.

Without the "least stringent" part, virtually any condition - including detailed design specifications - could be requirements. See here for details.
yasodhara said…
Roger:

I appreciate your analysis and formulation of statement of requirement.

This approach and conclusion are well defined in the TQM literature (7 methods 7 Tool of Quality Improvement). They are sound and applicable to most situations with a bit of tailoring or adaptation.

I particularly like

"Without the "least stringent" part, virtually any condition - including detailed design specifications - could be requirements."

This is the trap people fall into and get into endless arguments about there being no distinction between requirement and design. It is amazing how serious professionals of good standing plunge headlong into this.

Now about "requirement" the popular IEEE definition which is widely quoted is SRS which is more appropriately "System Capability Specification---NOT Business or User Need specification"

IEEE realized this mistake after decades of misapplication in 2011. Now the very basis of "requirement" specification by IIBA and IREB is knocked off. IIBA has a new definition based on their Core Concepts Model. IREB still sticks (without any justification) to the old IEEE definition which IEEE itself has discarded.

I have not recently checked what is the stand of BSC (UK based) on requirements. They were not in the spell of IEEE from what I recall.

So people may be more receptive to your definitions and explanations of requirements.

Best wishes,

Putcha V. Narasimham
09FEB14
Small correction:

Yasodhara used google account last on my notebook pc. So my previous message was attributed to her.

Anyway my name at the end of message indicates the real author.

Sorry for the error.

Putcha V. Narasimham
09FEB14
Roger L. Cauvin said…
Putcha, thanks for the interesting update on how the different organizations and standards bodies (IEEE, IIBA, IREB) have evolved their definitions of "requirement".

Can you point me to more information about the IEEE's 2011 change?

Popular posts from this blog

Why Spreadsheets Suck for Prioritizing

The Goal As a company executive, you want confidence that your product team (which includes all the people, from all departments, responsible for product success) has a sound basis for deciding which items are on the product roadmap. You also want confidence the team is prioritizing the items in a smart way. What Should We Prioritize? The items the team prioritizes could be features, user stories, epics, market problems, themes, or experiments. Melissa Perri  makes an excellent case for a " problem roadmap ", and, in general, I recommend focusing on the latter types of items. However, the topic of what types of items you should prioritize - and in what situations - is interesting and important but beyond the scope of this blog entry. A Sad but Familiar Story If there is significant controversy about priorities, then almost inevitably, a product manager or other member of the team decides to put together The Spreadsheet. I've done it. Some of the mos

Use Case as a Black Box

Consider the following use case: Purchase Items Actor: Purchaser Precondition: Purchaser types at least thirty words per minute and has a web navigation efficiency rating of at least 40. Postcondition: For the average Purchaser acting at full efficiency, the number of seconds elapsed is no more than 30 + 20 * n, where n is the number of items purchased. The name of the use case represents a functional requirement. What does the product do, or enable the user to do? Purchase items. What are we to make of the preconditions and postconditions? What relationship do they have to the requirements for the product? Answer: the preconditions and postconditions are the nonfunctional requirements attached to the functional requirement . Another way of expressing the nonfunctional requirement would be as an attribute and associated constraint: Usability: For a Purchaser who types at least thirty words per minute and has a web navigation efficiency rating of at least 40, it shall take no

Henry Ford's "Faster Horse" Quote

You may have heard the ( apocryphal ) Henry Ford quote: If I'd asked customers what they wanted, they would have said "a faster horse". Over at the On Product Management blog , Saeed gives his take on this infamous quote. He "hates" it, and gives some compelling reasons. Saeed is spot on in his explanations. Personally, I think the quote is great, but it's a matter of interpretation. The valid point of the quote is not that it's a bad idea to facilitate a conversation with your market to better understand it. The valid points are: You must ask the right questions to get valuable answers. You must interpret the answers thoughtfully - often outside their direct meaning - to glean reliable information. Asking questions is not always the best way to "listen" to your market. (E.g., sometimes pure observational studies are more reliable.) Nonetheless, I find the quote is helpful to combat "armchair product management" in the