In this episode, Roxanne Miller shares her approach to discovering non-functional requirements, which will help reduce the risk of missing requirements.
After listening to this episode, you'll understand:
- The six activities you can use to reduce the risk of missing non-functional requirements
- Why missing non-functional requirements can cost an organization millions
- How to start building a requirements repository to accelerate requirements discovery
The consequences of missing non-functional requirements can include the inability for users to access a system, allowing the wrong people to access confidential information, and can cost organizations millions of dollars.
Non-functional requirements (NFRs) describe the attributes of the system such as scalability, maintainability, usability, and security. It’s a type of requirement that specifies the operation of a system rather than functionality.
To ensure that you discover all of the needed non-functional requirements, Roxanne recommends six activities to reduce the risk of missed non-functional requirements.
Use a defined classification
A classification will help stakeholders and the development teams build a consistent language for discussing non-functional needs. Using a classification for your requirements types helps you identify high level types of non-functional requirements that may apply to your project.
The classifications you and your organization uses will depend of the type of products and services you offer. Example categories include:
- Security: How well the system is protected against attempts to access information from internal and external sources.
- Availability: How dependable the system is (e.g., up time).
- Reliability: How well the software can consistently perform its function without failure.
- Survivability: How well the system continues to function and recovers after a system failure.
- Usability: How easily a user is able to learn and operate the system.
Use a pre-defined list of elicitation questions
Having a list of pre-defined elicitation questions can increase the productivity of the team. It also helps reduce the time it takes to discover the system requirements and avoid missing requirements.
You can tie your list of elicitation questions to one of the categories mentioned above for further clarity and organization.
Use a structure to ask good questions
Roxanne created the Requirements Framework, which is based on the Zachman Framework developed by John Zachman. It’s tailored for use in eliciting requirements from the perspective of two key roles: requirement suppliers and requirement receivers.
For each of the two roles, ask questions based on what, who, why, when, where, and how. This helps you to identify:
- What data or materials are needed?
- Who needs the data?
- Why is the data needed?
- When will the data be used?
- Where will the data and materials be used?
- How will the data be used?
Engage the right stakeholders
Using a stakeholder profiling technique can help you identify not only who should be involved in requirements elicitation, but also when they should be engaged and expectations from that stakeholder.
Use Invented Wheels
Don’t reinvent the wheel. Leverage elicitation questions and non-functional requirements from previous projects so you don’t need to start from scratch.
Reuse and modify non-functional requirements for previous projects or other systems to fit your project and your needs.
Use State-of-the-Art Tools
When possible, use an automated tool to identify software requirements to work faster and more efficiently. There are several software tools available that maintain a repository of questions and sample requirements you can use on your project. They often will help you identify where you may have missing requirements.
Listen to the full episode to understand the consequences of missed non-functional requirements and how to develop a repository of elicitation questions and NFR examples.
Find other Business Analysts or requirements producers and start comparing notes on eliciting requirements. You can then compile and share your predefined list of questions as well as examples of non-functional requirements. This will allow you to start building a repository of non-functional requirements and elicitation questions to accelerate requirements discovery.
President, Requirements Quest
Roxanne Miller is a self-proclaimed Requirements Super Freak and author of he book, The Quest for Software Requirements. She has been involved in the Information Technology industry since 1984 and founded Requirements Quest® in 2001. She has been consulting on requirements process improvement and business analysis practices for over 20 years.
Thank you for listening to the program
To get more valuable content to enhance your skills and advance your career, you can subscribe on iTunes.