Generating a good set of system requirements involves asking a lot of questions. What follows is a list of requirements questions to help spur the discussion. Questioning may take the form of interviewing stakeholders, using questionnaires, or asking questions to yourself.
The list of requirements questions below can be used as a framework to develop stakeholder questions as well as act as a personal checklist when writing requirements. The list can be used on all types of systems such as hardware or software, though some requirements questions may not be applicable for all systems. Obviously you may have additional requirements specific to your product or industry, but this list is intended to get you thinking.
General Requirements Questions
- What problem(s) does the proposed system solve?
- How will you know if the problem(s) has been solved?
- What are the desired outcomes of implementing the system?
- What is the target cost?
- What is the target market?
- Is this system a replacement or a novel solution?
- Is this system complementary to another system?
- Does the system need to be backward compatible to previous versions?
- Is it anticipated that the system be modified in the future to extend its life?
- Will the system serve as the basis for a platform of solutions? In other words, does the system need to be flexible and modular?
- What are the business risks associated with this system?
- What requirements can be added to mitigate risk?
- Are there any regulatory requirements?
- What are any underlying assumptions?
- What functions does the system perform?
- Describe the current process that the system will replace.
- Describe problems with the current process that the system will replace.
- How fast?
- How slow?
- How long?
- How short?
- How high?
- How low?
- How accurate?
- Minimum rates?
- Maximum rates?
- Minimum quality of output?
Interfaces to the System
- What are the inputs to the system?
- What are the outputs of the system?
- Does the system interact with humans (see user section)?
- Does the system interact with animals?
- Does the system interact with other systems?
- What are the utility requirements? Electrical, gas, water, telephone, internet, networking, etc.
- Are there any weight requirements?
- Are there any size requirements?
- Will the system be subjected to (or create) shock loads?
- Will the system be subjected to (or create) vibration?
- What are the safety issues?
- What is the age range of users?
- What is the age range of the majority of users?
- Does the user need to read a specific language?
- Are there any pre-existing body dimension requirements of the users? Minimum height, maximum height, etc.
- Are there any physical capability requirements? Ability to lift a minimum amount of weight, etc.
- Are there any special needs requirements of the users such as visual impairment, etc.?
- What are the environmental conditions under which the user will interact with the system?
- How long will the user interact with the system?
- What are the user interface requirements?
- What types of diagnostics are required to know system status?
- Where will the system be located?
- What is the expected temperature range?
- Are there possible electrical or magnetic effects on the system?
- Describe the air quality of the environment. Particles, chemicals, humidity, salinity, etc.
- Will the system be exposed to weather such as rain, snow, hail, and wind?
- Will the system be exposed to sunlight?
- Will the system be exposed to animal attack?
- What are possible natural disasters that would affect system availability or performance? Earthquake, hurricane, tsunami, flood, etc.
- What effect will the system have on its environment? Heat generation, pollution, noise, etc.
- Are there any mean time between failure requirements?
- Are there any availability requirements?
- Are there any fail safe requirements in the event of failure?
- Are there any contingency requirements in the event of failure?
Testing and Verification
- Are there any testing or verification requirements such as testing must be accomplished at a certain facility?
Manufacturing and Supply Chain
- What are the manufacturing requirements?
- What are the supplier requirements?
- What are the maximum shipping dimensions?
- What is the maximum shipping time?
- Shipping cost target?
- What are the environmental condition requirements during shipment?
- What is the maximum deployment time?
- Will deployment be accomplished by technicians, the user, automated deployment, or some other way?
- Will software be deployed by software as a service, download, or shipped?
- What are the training requirements?
Maintenance and Repair
- What is the intended maintenance concept?
- What are the repair parts requirements? Spare parts policy, time to ship replacements, etc.
- Are there any mean time to repair requirements?
- Are there any mean time between maintenance requirements?
Life Cycle Considerations
- Is there a target life time for the system?
- Are there any life cycle cost requirements?
- Requirements for the disposal of the system.
- Recycling requirements.
- Hazardous waste requirements.