Requirements
-
The requirements must explain what the application will have to do. You should not focus on the particular problems, but exclusively on what you want the application to do
-
Goals must be clearly explained
- Requirements are divided into:
- Functional: describe the actual behaviour of the application
- Non-functional: requirements that do not directly concern behavioural aspects, such as safety, performance, etc.
- Implementation: constrain the entire phase of system realization, for instance by requiring the use of a specific programming language and/or a specific software tool.
- If there are unclear terms (ambiguous, very complex, etc.) these should be explained
- Each requirement must have its own acceptance criteria