4 - Software Requirements Flashcards
What is requirements engineering ?
A process that establishes the services and constraints of a system and under which is operates.
Give the 3 types of requirements?
- User
- System
- Software specification
requirements
What are functional requirements?
Statements of services the system should provide.
Describe functionality or system services.
eg:
Adjustments and cancellations
Administrative functions
Authentication
Authorisation levels
Describe system services in detail
What are non-functional requirements?
Constraints on the services offered by the system.
Define system properties and constraints.
eg:
Performance Scalability Capacity Availability Reliability Response time
Usually more critical than functional reqs. If not met, system could be useless (e.g. key length for encrypting secure email must be >=256 bits).
Give non-functional classifications?
- Product requirements
- Organisational requirements
- External requirements
What are domain requirements ?
Requirements that come from the application domain of the system reflect its characteristics.
What is a verifiable non-functional requirement ?
A statement that can be objectively tested.
Difference between shall and should in writing reqs?
- Shall > Mandatory
- Should > Desirable