Problem Analysis:
Create Non-Functional Requirements
Copyright 2007 Isotope28
Purpose
Steps
Heuristics
Artifacts
The non-functional requirements capture constraints not related to the behavioral aspects of the product. For example, platform or language choices may be dictated the the environment, or by the available skills of the staff (e.g. The implementation must use MS .NET). There may also be performance-related constraints that are related to the system as a whole, rather than as individual behaviors (e.g. The system must handle 1000 transactions per hour.) Performance constraints related to a particular use case can be noted in association with that use case, or annotation added to sequence or activity diagrams for the use case graphical representation.
1. Begin with a blank templates for non-functional requirements. We suggest one of the variations on the IEEE Standard 830-1998.
2. Peruse the problem statement and identify any non-functional requirements. Add them to the template.
3. Investigate the problem domain and identify environmental constraints that may limit implementation choices.
4. Review the target market for your solution and determine if one platform is more suitable than another (or not, as the case may be!)
• As with all requirements, functional or not, they must be testable.
Non-Functional Requirements