Non-functional Requirements
- •
def
- •
constraints on the services or functions offered by the system, such as timing constraints, development process constraints, and standards
- •
often apply to the system as a whole rather than to individual features
- •
may be more critical than functional requirements — if not met, the system may be useless
- •
- •
- •
classifications
- •
- •
product requirements — the delivered product must behave in a particular way (execution speed, reliability)
- •
organisational requirements — consequences of organisational policies and procedures (process standards, implementation requirements)
- •
external requirements — arise from factors external to the system (interoperability requirements, legislative requirements)
- •
common categories
- •
performance — how quickly does the system respond to user actions?
- •
scalability — what are the highest workloads under which the system still performs as expected?
- •
usability — how easy is it to use the product? what defines the user experience?
- •
compatibility — what hardware and operating system versions must be supported?
- •
reliability and availability — what is the acceptable failure rate? does the system need to be available 24/7?
- •
security — does the product store or transmit sensitive information? what security standards apply?
- •
capacity — what are the storage requirements today and in the future?
- •
- •
goals vs verifiable requirements
- •
specification metrics
- •
Property Measure Speed Processed transactions/second, user/event response time, screen refresh time Size Megabytes, number of ROM chips Ease of use Training time, number of help frames Reliability Mean time to failure, availability percentage Robustness Time to restart after failure, % of events causing failure Portability % of target-dependent statements, number of target systems
- •
- •
